前言
Qt和OpenCV是一对形影不离的好基友(哥俩都开源,Qt又跨平台,Linux环境友好),但OpenCV的最常用的类Mat无法直接用于Qt的QImage中,原因在于,两者对图片定义和操作有所不同——Mat的主要功能是矩阵运算,拥有数之不尽的数据类型,包罗万象;而QImage侧重于图片显示,更多的操作是在图形界面上。
因此,Mat与QImage之间的相互传值,要多一步转换操作。
Mat转QImage
QImage mat2qim(Mat & mat)
{
cvtColor(mat, mat, COLOR_BGR2RGB);
QImage qim((const unsigned char*)mat.data, mat.cols, mat.rows, mat

本文介绍了如何在Qt和OpenCV之间进行Mat与QImage的转换。由于两者对图像处理的不同,转换是必要的。Mat转QImage需要处理颜色空间差异,而QImage转Mat需要注意图像的通道数和数据类型。提供了转换的基本方法和注意事项。
最低0.47元/天 解锁文章
1144

被折叠的 条评论
为什么被折叠?



