OpenCV中IplImage与BYTE格式定义如下:
IplImage* img
BYTE* da ta
BYTE* da
1. 由IplImage*得到BYTE*图像数据:
da
ta = img->imageDataOrigin; //未对齐的原始图像数据
或者
da
ta = img->imageData; //已对齐的图像数据
或者
da
2.
由BYTE*得到IplImage*图像数据
img = cvCreateImageHeade
r
(cvSize(width,height),depth,channels);
cvSetData(img,da
ta,step);
首先由cvCreateImageHeader()创建IplImage图像头,制定图像的尺寸 ,深度和通道数;然后由cvSetData( )根据BYTE*图像数据指针设置IplImage图像头的数据数据,其中step指定该IplImage图像每行占的字节数,对于1通道的IPL_DEPTH_8U图像,step可以等于width;对于3通道的IPL_DEPTH_8U图像,step可以等于width*3。
cvSetData(img,da
首先由cvCreateImageHeader()创建IplImage图像头,制定图像的尺寸 ,深度和通道数;然后由cvSetData( )根据BYTE*图像数据指针设置IplImage图像头的数据数据,其中step指定该IplImage图像每行占的字节数,对于1通道的IPL_DEPTH_8U图像,step可以等于width;对于3通道的IPL_DEPTH_8U图像,step可以等于width*3。