SDK存储RGB_D相机每一帧的图像数据,即数据帧结构为: MV3D_RGBD_FRAME_DATA。在SDK中提供了parseframe(MV3D_RGBD_FRAME_DATA* , RIFrameInfo* ,RIFrameInfo* ) 将帧数据分别转换成 RIFrameInfo类型的深度图格式和RGB格式,从而获取RGB格式的图像数据。
需要注意的是,此处的RGB图像其实在R(红色)、B(蓝色)通道表现相反,即相机采集图像转换时更类似于BGR图像
可用 cv::cvtColor 的函数中 COLOR_BGR2RGB 对图像转换类型进行转换,得到RGB格式数据。
1、nRet = 0x8006 000e ,查询开发手册,可查得设备无访问权限
解决方案:首先,测试软件自带Demo是否具有设备访问权限,如果具有,则说明自己写的程序出现问题。第一:可能是由于程序的多次执行,通常设备访问在于枚举设备、创建句柄、匹配句柄、打开句柄,这些过程中去发现报错点,我遇到的错误是在打开句柄时,原因是由于我VS中调用接口时,在MVS中同时也连接了相机,打开了图像采集操作,相机硬件内部被操作指令尚还存在于之前的指令,就会导致接下来在vs中的访问设备都会出现这种无权限访问的情况,这是相机硬件机制。所以对于这种情况有两种解决方案,一: 设置相机的无响应重置时间,然后等待这个时间之后再进行操作;二: 断掉相机客户端中的连接,然后再进行操作。