我将使用.MAT
保存为scipy.io.loadmat
文件的Kinect V2中的深度数据导入到我的python 3.5代码中。当我打印出.MAT
数据时,我会得到uint16
数组,其值范围为0 - 8192
。这是预期的,因为Kinect V2提供13位深度图像数据。现在,当我将其保存为TIFF
文件时使用
cv2.imwrite('depth_mat.tif' , depth_arr)
并使用它阅读
depth_im = tifffile.imread('depth_mat.tif')
。按比例放大值范围。在我的原始.MAT
文件中,最大值为7995
,保存并读取.TIFF
文件后,最大值变为63728
。这抛出了我将Kinect Depth映射到现实世界中的实际距离的计算。任何有关这方面的见解都会对我有所帮助。
我必须在两者之间进行一些图像处理,因此有必要保留原始值。另外,如果cv2.imwrite()
用于保存tifffile.imsave()
文件,而不是使用.MAT
,则图片完全黑暗。
我在Win 64机器上使用python 3.5