Opencv:: 将Mat_< Vec3f>转换为普通的 8 位彩色图像

Opencv:: Convert Mat_< Vec3f> to normal 8 bit color image

本文关键字:彩色图像 Vec3f Mat lt gt Opencv 转换      更新时间:2023-10-16

我使用了一种opencv-lalacian混合技术,通过以下代码合并了两张图像

http://www.morethantechnical.com/2011/11/13/just-a-simple-laplacian-pyramid-blender-using-opencv-wcode/

代码使用Mat_<Vec3f>来存储结果图像。我的问题是如何将生成的图像转换回正常的8UC3 BGR图像

我试过

blend.convertTo(blend, blend, CV_8U)

但这给出了断言错误失败的

我还尝试创建一个相同大小的新彩色图像,然后

blend.copyTo(newImage)

但该图像的某些部分是彩色的,其他部分是灰色的

检查此代码段,

Mat_<Vec3f> blend;//fill it 
Mat dst = Mat(blend);

更多信息请阅读此处