我在缓冲区中有一个 JPG 图像,我会尝试用 cvShowImage 显示它。但是,这不起作用:
// buff is a JPEG image with 640*480 dimensions
IplImage* fIplImageHeader;
fIplImageHeader = cvCreateImageHeader(cvSize(640, 480), 8, 1);
fIplImageHeader->imageData = (char *)buff;
cvShowImage("Window 1", fIplImageHeader);
cvWaitKey();
cvReleaseImageHeader(&fIplImageHeader);
我得到一个黑色的窗口。
最佳答案
看起来你忘了设置 widthStep
|-- int widthStep; // size of aligned image row in bytes
|-- int imageSize; // image data size in bytes = height*widthStep
关于c++ - OpenCV 如何将 jpeg 图像缓冲区放入 cvShowImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4261292/