qt中使用opencv处理图片 QImage 和 IplImage 相互之间转换问题
在用opencv处理图片显示在qt label上的时候遇到不是问题
1. qt上要用qimage形式才干显示
IplImage转成 Qimage
彩色图像转换
IplImage *fram;
QImage image((const uchar*)fram->imageData, fram->width, fram->height, QImage::Format_RGB888);
在用opencv二值化以后你再转换发现出现label里面显示多个画面并且还有彩色的怎么回事
这时候得换參数
QImage resimg(( uchar*)res->imageData, res->width, res->height, QImage::Format_Indexed8);
參数换后就好了说明QImage::Format_Indexed8就是用来转换灰色图像的
2. yuv摄像头採集的数据图片转换成rgb后生成Qimage我要用opencv处理要转换成lplimage格式这时候就能够这样来写
//转换格式QImage转IplImage
width = frame->width();
height = frame->height();
Size.height = height;
Size.width = width;
lplImage * image = cvCreateImage(Size, IPL_DEPTH_8U, 3);
for (int y = 0; y < height; ++y)
{
for (int x = 0; x < width; ++x)
{
QRgb rgb = frame->pixel(x, y);
cvSet2D(image, y, x, CV_RGB(qRed(rgb), qGreen(rgb), qBlue(rgb)));
}
}
最后image就是iplimage格式的。你能够把上面的自己封装下每次直接调用非常方便。
qt中使用opencv处理图片 QImage 和 IplImage 相互之间转换问题的更多相关文章
- Qt中添加OpenCV库
配置在Qt中的OpenCV,看了很多“教程”,最终成功.记一下过程. 本机配置: window7 32位系统: qt-opensource-windows-x86-mingw492-5.5.1: Op ...
- Qt中使用OpenCV库
原地址:http://blog.sina.com.cn/s/blog_5c70dfc80100qwi3.html 心情真是好啊,曾经一度想放弃使用Qt加OpenCV进行数字图像处理了,幸好坚持住了,今 ...
- OpenCV2学习笔记03:Qt中配置OpenCV环境
在Qt中开发基于OpenCV的应用时,需要配置对应函数库到环境变量,这时候我们需要使用到qmake能够识别的变量来指定环境变量. INCLUDEPATH: 用于指定搜索头文件到文件夹路径. LIBS: ...
- 关于QImage和IplImage之间转换的实现
在嵌入式系统中实现qt和opencv的处理,最基础的就是QImage和IplImage之间的转换.这样两者就可以进行一起使用图像数据,从而达到利用qt显示和利用opencv处理的功能. 下面我将贴出代 ...
- Qt中 QString 和int,double等的转换
Qt中 int ,float ,double转换为QString 有两种方法 1.使用 QString::number(); 如: long a = 63; QString s = QString:: ...
- (12)QT中搭建opencv开发环境
只需要在项目工程文件pro中添加上: INCLUDEPATH += G:/opencv/build/include \ G:/opencv/build/include/opencv \ G:/open ...
- python中使用OpenCV处理图片
1.导入OpenCV包 import cv2 2.读取图片 cv2.imread(image_path, mode) 读入函数,包含两个参数,第一个为图片路径及图片名,第二个为读取图片方 ...
- Qimage与IplImage的转换
QImage test2012::ImageCV2Qimg(IplImage* img){ assert(img!=NULL); int h = img->height; int w = img ...
- [OpenCV Qt教程] 在Qt图形界面中显示OpenCV图像的OpenGL Widget (第一部分)
本文译自:http://www.robot-home.it/blog/en/software/tutorial-opencv-qt-opengl-widget-per-visualizzare-imm ...
随机推荐
- 开发中遇到的angularJs的小问题
1.在使用自定义指令后如果需要将指令内部的数据传给外层controller需要设置scope属性,此时注意,如果指令内传出的数据在某种情况下需要清空,如传出一个选中元素的数组,点击清空按钮则清空选中这 ...
- php之面向对象(2)
注意:看这篇文章之前建议看看之前的文章,因为内容之间衔接性比较强.勿喷.. 面向对象,是一种思维模式的名字,并不是指某种特定的写法,面向对象简称oop,思路的核心在于:什么时候 什么东西 做什么. 编 ...
- C#让程序自动在管理员权限下运行
windows 7和vista提高的系统的安全性,同时需要明确指定“以管理员身份运行”才可赋予被运行软件比较高级的权限,比如访问注册表等.否则,当以普通身份运行的程序需要访问较高级的系统资源时,将会抛 ...
- Django1.7.1设置TEMPLATE_DIRS
首先附上我的django工程目录结构: mysite│ db.sqlite3│ manage.py│├─mysite │ settings.py │ urls.py │ views.py ...
- "Invalid bound statement (not found): com.sitech.admin.dao.TbOpenAbilityInfoDao.findAbilityReadyUp"mybatis配置文件bug
问题描述: 通常在正常启动某项工程后操作某个功能时抛出的bug: org.apache.ibatis.binding.BindingException: Invalid bound statement ...
- [原创]dm642_HPI调通并boot成功
一直在折腾前段时间画好的dm642+lpc4357板子,说明下这个板子的结构: 主芯片为DM642,这个片子很老了,但因为对这个片子熟悉,别折腾 没有给DM642加FLASH,配了一片LPC4357, ...
- php100视频教程解压密码
php100-75-vip.rar 解压密码:php100-18293-2938-2839-348-#php100-76_u.rar 解压密码:php100-18634-6254-1001-283-# ...
- android Process.killProcess 和 System.exit(0) 区别
1 Process.killProcess 和 System.exit(0) 两个都会 kill 掉当前进程. 你可以打开 DDMS 查看进程号,或 adb shell 进入 shell 然后 ps ...
- Android开源项目发现--- 工具类向下兼容篇(持续更新)
1. ActionBarSherlock 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题 项目地址:https://github.com/JakeWh ...
- linux下USB串口,minicom
[一].驱动相关说明: 如果直接使用串口线,而没有用到USB转串口设备,就不需要安装驱动. 如果使用了USB转串口,一般情况下也不需要安装驱动了,目前linux系统已经包含了该驱动,可以自动识别,亦可 ...