是否有方法从CV_8UC3 Mat转换到CV_32FC3 Mat而不直接访问原始缓冲区?我试过Mat::convertTo(newImage, CV_32FC3, 1.0);
,但颜色错了。谢谢。
约定是,对于类型CV_8UC3,像素值范围从0到255,对于类型CV_32FC3,像素值范围从0.0到1.0。因此,您需要使用1/255.0的比例因子,而不是1.0:
Mat::convertTo(newImage, CV_32FC3, 1/255.0);