OpenCV中的imshow()不适用于cv :: Mat类型CV_32F?

时间:2017-09-03 00:17:53

标签: c++ opencv opencv3.0 opencv3.1

我有一个浮点数组

float* data; // stores pixel gray color 
cv::Mat img(h,w,CV_32F,data);
cv::namedWindow("Display window");
cv::imshow( "Display window", img );

然后我得到的是:

enter image description here

我搜索了很多资源但却找不到。我怀疑这是类型的问题,但我与定义相比,我认为没关系。

谁能告诉我原因?

1 个答案:

答案 0 :(得分:0)

如果您的图片是单个图片,那么您可以将其转换为CV_8U

float* data; // stores pixel gray color 

cv::Mat img(h,w,CV_32F,data), 8u_image;

img.convertTo(8u_image,CV_8U);

cv::namedWindow("Display window");

cv::imshow( "Display window", 8u_image );