1 imwrite()函数
如果保存图像为png
格式,那么除了CV_16U
之外的图像类型会被强制转化为CV_8U
。所以深度图的类型一般都是CV_16U
,即无符号短整型unsigned short
。同时由于无符号短整型只能表示整数,所以一般会有个depthScale
,将深度值放大depthScale
倍,然后再将深度图的类型转换为CV_16U
。故在读取时,也应该将灰度值除以depthScale
才能得到真正的深度值。
2 imshow()函数
imshow()
函数有三点值得注意。如果输入图像是CV_8U
(即uchar
,无符号字符型),则直接显示。如果输入图像是CV_16U
(即ushort
,无符号短整型)或CV_32S
(即int
,整型),则所有灰度值除以255后显现,从0~255*255转到0~255。如果输入图像是CV_32F
(即float
,单精度浮点型)或CV_64F
(即double
,双精度浮点型),则所有灰度值乘以255后显示,从0~1转到0~255。