C++ 如何使用1/255标准化Mat,其中Mat为OpenCV类型
我使用的是C++ 如何使用1/255标准化Mat,其中Mat为OpenCV类型,c++,ios,iphone,opencv,objective-c++,C++,Ios,Iphone,Opencv,Objective C++,我使用的是OpenCV,首先我将UIImage转换为Mat格式&进一步 我想用1/255标准化Mat(用1/255划分Mat的每个元素)。 目前我正在使用 outputImageMat.convertTo(outputImageMat, CV_32F, 1.0 / 255.0, 0);//(1) //normalize(outputImageMat, outputImageMat, 1/255);//(2) circleImage = [OpenCvModel UIImageFromCVMa
OpenCV
,首先我将UIImage
转换为Mat
格式&进一步
我想用1/255标准化Mat(用1/255划分Mat的每个元素)。
目前我正在使用
outputImageMat.convertTo(outputImageMat, CV_32F, 1.0 / 255.0, 0);//(1)
//normalize(outputImageMat, outputImageMat, 1/255);//(2)
circleImage = [OpenCvModel UIImageFromCVMat:outputImageMat];
注意:convertTo和normalize是OpenCv内置的方法
其中circleImage是UIImage类型&
因为(1)它给了我淡黄色的图像
对于(2)它给了我完全空白的图像
输出图像应非常轻(接近黑色图像)
我怎样才能继续?有什么修改,想法吗
outputImageMat
正确。问题是您无法正确地将其可视化,因为UIImageFromCVMat
不支持float
矩阵(可能您需要交换R,B通道)。@Miki感谢您的评论,那么我们如何将UIImageFromCVMat转换为UIImageFromCVMat?保留UIImage
s仅用于可视化,仅从Mat
转换BGR或灰度图像。并使用Mat
s进行所有处理