用上一篇的文章bmp=>iplimage的转换出来的图像单色,而且效果很差。我重新改了一下。其它部分以后更新。
原来方法:
IplImage
*
BmpTOIpl(
int
width,
int
height,unsigned
char
*
pBuffer)
{
IPlImage * image = cvCreateImage(cvSize(width,height), 8 , 1 );
image -> imageData = pBuffer;
return image;
}
更改之后方法:
IplImage * BmpTOIpl(int width,int height,unsigned char *pBuffer)
{
IplImage *image =new IplImage;
cvInitImageHeader(image, cvSize(width,height), 8, 3,IPL_ORIGIN_BL, 4); //创建iplimage
cvSetData(image, pBuffer, width*3); //copy数据
return image;
}
本文出自 “jonsoft ” 博客,请务必保留此出处http://juwen.blog.51cto.com/135311/86209