您的位置:首页 > 运维架构

opencv IplImage类型数据与Uchar* 类型数据转换

2017-01-03 12:53 357 查看
opencv IplImage类型数据与Uchar* 类型数据不能使用如下方式强制转换。

memcpy(Image->imageData,pData,sz.width*sz.height);

因为Image->widthStep的宽度并不等于sz.width

使用如下方式可以完成转换:

uchar* ptr;

for(i =0;i<Image->height;i++)
{
ptr =(uchar*)Image->imageData
+i*Image->widthStep;
for(int j
= 0;j<Image->width;j++)
{
pTemp[i*sz.width +j]
= ptr[j];
}
}

DWORD t1
= GetTickCount();
FindAndSort(pTemp,sz.width,sz.height,10000);
for(i =0;i<Image->height;i++)
{
ptr =(uchar*)Image->imageData
+i*Image->widthStep;
for(int j
= 0;j<Image->width;j++)
{
ptr[j]
= pTemp[i*sz.width +j];
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  opencv