本人是土建类工科研究生,导师让我买了个深度摄像头模组想用到工程上,模组买回来之后发现摄像头保存下来的数据是.dat文件,厂家对dat文件的介绍如下:
这个工具保存的“录像”为.dat 格式,其实是多帧深度图/点云的合集,是把抓取到的每一帧图像,按照时间顺序、原始格式依次写入到文件中的,即文件内容是“第一帧”、“第二帧”。。。。“最后一帧”,一帧一帧连续存的,中间没有填充数据,没有压缩,先行后列。
每一帧都是一个 Header 后面接图像数据。然后是各个像素的深度/点云数据,像素排列行优先存储。
【Header 格式】
代码: 全选
struct {
int32_t width; // 每一行的 pixel 数
int32_t height; // 每一列的 pixel 数
int32_t pixel_size; // 每个像素占几个Byte
};
数据总大小是:width * height * pixel_size 个字节。
[list=]
- 点云像素的占用的存储空间大小 pixel_size 默认是为12
- (byte)。
- 深度像素的占用的存储空间大小 pixel_size 默认是为2
- (byte)。[/list]
请问该怎么把dat文件里的数据读取出来呢?我想把数据转化为可视的图片。