由于我的项目,我想送的WebSockets使用从嵌入机图像的流客户端应用程序,并在img
标签显示他们能够实现流媒体的一部分。opencv的 - 创建PNG图像
首先,我试图发送原始RGB数据(752 * 480 * 3 - 大约1MB),但最终我得到了一些编码图像到基于RGB图像的JavaScript中的问题,所以我想尝试编码我的数据首先发送到PNG,然后使用websockets发送它。
的事情是,我有一些问题,使用已在项目中使用OpenCV
库我的编码数据,PNG。
首先,一些代码:
websocketBrokerStructure.matrix = cvEncodeImage(0, websocketBrokerStructure.bgrImageToSend, 0);
websocketBrokerStructure.imageDataLeft = websocketBrokerStructure.matrix->rows * websocketBrokerStructure.matrix->cols * websocketBrokerStructure.matrix->step;
websocketBrokerStructure.imageDataSent = 0;
但第二行的执行过程中我得到奇怪的错误:
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_S_construct NULL not valid
和我有点困惑,为什么我得到这个错误我码。
而且我想知道如果我的理解对不对:调用后cvEncodeImage(其中bgrImage
是IplImage*
与3个通道 - BGR)我只需要通过我的CvMat
data
成员进行迭代来获得所有的PNG编码数据的?
对我而言非常愚蠢的错误,感谢注意到它。 – Andna