我是OpenCV的新手。我的程序读取16位无符号整数的图像数据。我需要将图像数据乘以某个16位无符号整数的增益。因此,生成的数据应该保存在32位图像文件中。但我尝试了以下方法,但只得到一个全白色的8位图像。请帮忙解决。
Mat inputData = Mat(Size(width, height), CV_16U, inputdata);
inputData.convertTo(input1Data, CV_32F);
input1Data = input1Data * gain;//gain is ushort
imshow
假定浮点/双精度值在0(黑色)和1(白色)之间,因此可能只需将您的值带入该范围,例如cv :: imshow(“test”,input1Data / 65000.0f)
或除以适合您值的另一个值 ;) - Micka