如何将CV_8UC3 Mat转换为CV_32FC3?

时间:2011-04-20 01:52:05

标签: opencv

有没有办法在不直接访问原始缓冲区的情况下将CV_8UC3 Mat转换为CV_32FC3 Mat?我试过Mat::convertTo(newImage, CV_32FC3, 1.0);,但颜色最终错了。感谢。

1 个答案:

答案 0 :(得分:16)

惯例是,对于类型CV_8UC3,像素值的范围为0到255,对于类型CV_32FC3,范围从0.0到1.0。因此,您需要使用比例因子1 / 255.0而不是1.0:

Mat::convertTo(newImage, CV_32FC3, 1/255.0);