Mat 与 QImage相互转换(亲测通过)
来源:互联网 发布:路径规划算法 编辑:程序博客网 时间:2024/06/02 03:03
QImage mat2QImage(const Mat& mat){ int i = mat.channels(); Mat rgb; switch(i) { case 1: cvtColor(mat,rgb,CV_GRAY2RGB); break; case 2://never happen break; case 3: cvtColor(mat,rgb,CV_BGR2RGB); // for debug //cvShowImage("debug",(IplImage*)mat); break; case 4: cvtColor(mat,rgb,CV_BGRA2RGB); } //防止偏移 return QImage((const unsigned char*)rgb.data,rgb.cols,rgb.rows,rgb.cols*3,QImage::Format_RGB888).copy(0,0,rgb.cols,rgb.rows);}Mat qImage2Mat(const QImage& qimage){ int channel = qimage.bytesPerLine()/qimage.width(); Mat mat; switch (channel) { case 1: mat = Mat(qimage.height(),qimage.width(),CV_8UC1,(uchar*)qimage.bits(),size_t(qimage.bytesPerLine())); cvtColor(mat,mat,CV_GRAY2BGR); break; case 2://never happen break; case 3: mat = Mat(qimage.height(),qimage.width(),CV_8UC3,(uchar*)qimage.bits(),size_t(qimage.bytesPerLine())); cvtColor(mat,mat,CV_RGB2BGR); break; case 4: mat = Mat(qimage.height(),qimage.width(),CV_8UC4,(uchar*)qimage.bits(),size_t(qimage.bytesPerLine())); cvtColor(mat,mat,CV_RGBA2BGR); default: break; } return mat;}
0 0
- Mat 与 QImage相互转换(亲测通过)
- OpenCV Mat与QImage相互转换函数
- QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- 【OpenCv】QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- QImage 与 cv::Mat 之间的相互转换
- QImage与cv::Mat之间的相互转换
- cv::Mat与QImage间的转换
- QImage与OpenCV中的MAT图像格式转换
- Qt QImage与OpenCV Mat转换
- Mat转换为QImage
- QImage Mat QPixmap转换
- QImage和Mat相互转化
- QImage 与 Mat
- CI框架(六)CI框架中使用cookie的三种方式及cookie登陆
- arduino mysql php temperature DS18B20
- Matlab与C/C++混合编程接口及应用
- 登录使用NVelocity模版实现
- 项目中实现的统计现在人数的例子
- Mat 与 QImage相互转换(亲测通过)
- 问题四-主从表实现
- 错误“非静态的字段、方法或属性“System.Web.UI.Page.Response.get”要求对象引用”的解决办法
- CGI问题:500 Internal Server Error
- Tomcat的安装
- SD--关于销售环节的折扣、折让、回扣、佣金的介绍
- java设计模式(行为型)之命令模式
- 数据结构java学习笔记
- 安卓学习笔记4——推送服务初体验