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];
}
}
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];
}
}
相关文章推荐
- python中使用OpenCV进行人脸检测的例子
- opencv 做人脸识别 opencv 人脸匹配分析
- 使用opencv拉伸图像扩大分辨率示例
- Android Studio中配置OpenCV库开发环境的教程
- 基于C++实现kinect+opencv 获取深度及彩色数据
- visual studio 2012安装配置方法图文教程 附opencv配置教程
- OpenCV 2.4.3 C++ 平滑处理分析
- Python中使用OpenCV库来进行简单的气象学遥感影像计算
- 利用Python和OpenCV库将URL转换为OpenCV格式的方法
- python结合opencv实现人脸检测与跟踪
- Python环境搭建之OpenCV的步骤方法
- Python+Opencv识别两张相似图片
- Python实现OpenCV的安装与使用示例
- 在树莓派2或树莓派B+上安装Python和OpenCV的教程
- opencv-python学习一--人脸检测
- Android Studio配置Opencv环境
- 在Ubuntu上安装OpenCV3.0和Python-openCV的经历
- 使用 Java 开发 OpenCV 应用
- OpenCV配置,从来没有这么简单!
- ubuntu下opencv和qt的安装配置