从YUV到IplImage - lijiehunan的日志 - 网易博客
来源:百度文库 编辑:神马文学网 时间:2024/04/19 09:38:38
在OpenCV中,图片的格式都是为IplImage,将OpenCV中的人脸检测移值到DSP中去的时候,要将视频格式YUV转换到IplImage,才符合OpenCV的数据结构,在YUV格式中,其中Y为亮度分量,UV为色度分量。可以直接提取Y分量,可以得到灰度图像。
image = cvCreateImageHeader(cvSize,IPL_DEPTH_8U,1);
cvSetData(image,capFrameBuf->frame.iFrm.y1,720*3);
cvSaveImage("src.bmp",image);
/***************************************************/
for(i = 0; i < numLines; i ++) {
DAT_copy(capFrameBuf->frame.iFrm.y1 + i * capLinePitch,
disFrameBuf->frame.iFrm.y1 + i * disLinePitch,
numPixels);
DAT_copy(capFrameBuf->frame.iFrm.cb1 + i * (capLinePitch >> 1),
disFrameBuf->frame.iFrm.cb1 + i * (disLinePitch >> 1),
numPixels>>1);
DAT_copy(capFrameBuf->frame.iFrm.cr1 + i * (capLinePitch >> 1),
disFrameBuf->frame.iFrm.cr1 + i * (disLinePitch >> 1),
numPixels>>1);
}
但是这样会出现一个问题,保存的图片出现二个视频帧。
目前还不知道原因。待解决。。。。。