Python读取.dat后缀名文件

Python读取.dat后缀名文件

.dat文件基本上是没有任何头的二进制文件。对于每个样本,它由(256,256,3)个uint8图像,(64,64,1)uint8深度图和1个uint8标签组成。Tensorflow可以使用固定长度的读取器从.dat文件读取数据流。

  • 代码思路:

     1.读取.dat文件中的数据块
     2.分割出每帧的数据块
     3.分割出(256,256,3)帧图像、(64,64,1)图像以及标签
    
filedir = '路径名'
filenames = []
for filename in os.listdir(filedir):
    print(filename)
    filenames.append(os.path.join(filedir,filename))
for j in filenames:
    print(j)
    c = np.fromfile(j, dtype='uint8')
    for i in range(c.size//200705):
        a = c[i*200705:(i+1)*200705]
        print(a)
        a = c[:200705]
        image = a[:196608]
        label = a[200704]
        print(label)
        # image = a[196608:200704]
        im = reshape(image,(256,256,3),order='F')
        print(im.shape)
        cv2.imshow('image',cv2.cvtColor(im,cv2.COLOR_RGB2BGR))
        cv2.waitKey(100)#每张图片停留100ms
        cv2.destroyAllWindows()#销毁全部窗口

你可能感兴趣的:(python)