QImage 和 IplImage 之间转换问题
来源:互联网 发布:中国航天发动机 知乎 编辑:程序博客网 时间:2024/05/22 04:03
常用方法:
这个对于IplImage向QImage转换是一个非常重要的功能!
因为我们可以用下面的语句直接从IplImage构造QImage, 避免重复复制数据.
彩色图像:
IplImage *img = cvLoadImage("lena.jpg", 1);
QImage qImage(img->imageData, img->width, img->height,img->widthStep, QImage::Format_RGB888);
灰度图像:
IplImage *pImg2 = cvCreateImage(cvGetSize(pImg),8,1);
QImage qimage((unsigned char * )pImg2->imageDataOrigin,pImg2->width,pImg2->height,QImage::Format_Indexed8);
如果在显示 单通道灰度图 时,图像错位(斜偏移),
1、这时可以把 单通道 转为 3通道 图。如下:
外部输入 disp 为 单通道CvMat矩阵
IplImage img, *pImg;
pImg = cvGetImage( disp, &img );
IplImage *pImg2 = cvCreateImage( cvGetSize(pImg), 8, 3);
cvCvtColor( pImg, pImg2, CV_GRAY2BGR );
QImage qimage( (unsigned char * )pImg2->imageDataOrigin, pImg2->width, pImg2->height, QImage::Format_RGB888/*QImage::Format_Indexed8*/); //图像会错位
2、在初始化qimage 时,加上widthstep,如 上面彩色图像的转换。结果如下:
QImage qimage( (unsigned char * )pImg->imageDataOrigin, pImg->width, pImg2->height, pImg->widthStep, QImage::Format_Indexed8);
在 Qt 中显示:
int main ( int argc, char *argv[] )
{
QApplication app(argc, argv);
QWidget *window = new QWidget;
window->setWindowTitle("Enter your age");
// QImage-------〉QPixmap-------〉QLabel
QLabel *label = new QLabel;
QPixmap lpmap;
label->setPixmap(lpmap.fromImage(qimage,0));
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget( label );
window->setLayout( layout );
window->show();
return app.exec();
}
- QImage 和 IplImage 之间转换问题
- QImage 和 IplImage 之间转换问题
- QImage 和 IplImage 之间转换问题 .
- QImage 和 IplImage 之间转换问题
- QImage和IplImage之间转换
- IplImage与Qimage之间转换
- IplImage与QImage之间相互转换的问题
- 关于QImage和IplImage之间转换的实现
- OpenCv:IplImage,Mat和Qt:QImage之间的快速转换
- 关于QImage和IplImage之间转换的实现 .
- 关于QImage和IplImage之间转换的实现
- 关于QImage和IplImage之间转换的实现
- 关于QImage和IplImage之间转换的实现
- 关于QImage和IplImage之间转换的实现
- QImage和IplImage转换总结
- QImage与IplImage之间的转换
- IplImage *,Mat,QImage之间的转换
- QImage与IplImage之间转换的实现
- cmd下ipconfig等常用命令不能用?
- c语言中的各种变量是如何存储的(-)
- 使用stl中的 advance和 distance 方法来进行iterator的加减
- Repeater嵌套绑定Repeater
- opencv使用cvWriteFrame,在系统中包含DIVX编码器的前提下
- QImage 和 IplImage 之间转换问题
- vs2010快捷键
- rsync远程同步备份数据(ssh方式)
- 使用PDB调试python程序
- 11级_Java_曹建波4.26 集及其实现类&枚举器与数据操作
- 坑爹的cmd
- 安卓第一天
- makefile 之伪目标解析
- jquery动态添加Div