赛派号

相机分辨率在哪里调 D435/D435i使用技巧

D435/D435i使用技巧

D435/D435i是目前市场上使用最为方便的双目深度相机。虽然淘宝上其价格有些让人望而却步,但是咸鱼上成色不错的D435/D435i 价格就在1000左右,依旧是自主无人机视觉定位和感知的首选。

这里记录一下,我使用这款相机的一些技巧,希望对大家有些帮助

相机内部参数的获取

realsense 系列的相机,在出厂时都已经进行了标定,其标定结果基本是很不错的。大家可以放心的直接使用,如果有不满意,也可以再自行使用kalibr工具包标定。 有两种方式获取其参数:

rs-enumerate-devices -c 找到我们输出的分辨率,一般是640x480 Intrinsic of "Infrared 1" / 640x480 / {Y8} Width: 640 Height: 480 PPX: 324.642425537109 PPY: 236.990188598633 Fx: 386.346374511719 Fy: 386.346374511719 Distortion: Brown Conrady Coeffs: 0 0 0 0 0 FOV (deg): 79.26 x 63.7

我们在还可以在rs_camera.launch中设置RGB相机

Intrinsic of "Color" / 848x480 / {YUYV/RGB8/BGR8/RGBA8/BGRA8/Y16} Width: 848 Height: 480 PPX: 429.022979736328 PPY: 248.325668334961 Fx: 606.045288085938 Fy: 606.279724121094 Distortion: Inverse Brown Conrady Coeffs: 0 0 0 0 0 FOV (deg): 69.95 x 43.19 rostopic echo /camera/infra1/camera_info header: seq: 78 stamp: secs: 1679556374 nsecs: 751435738 frame_id: "camera_infra1_optical_frame" height: 480 width: 640 distortion_model: "plumb_bob" D: [0.0, 0.0, 0.0, 0.0, 0.0] K: [386.34637451171875, 0.0, 324.6424255371094, 0.0, 386.34637451171875, 236.9901885986328, 0.0, 0.0, 1.0] R: [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0] P: [386.34637451171875, 0.0, 324.6424255371094, 0.0, 0.0, 386.34637451171875, 236.9901885986328, 0.0, 0.0, 0.0, 1.0, 0.0] binning_x: 0 binning_y: 0 roi: x_offset: 0 y_offset: 0 height: 0 width: 0 do_rectify: False

其中K为相机内参矩阵: K = [ f x 0 c x 0 f y c y 0 0 1 ] K=\begin{bmatrix} f_x & 0 &c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1\end{bmatrix} K= ​fx​00​0fy​0​cx​cy​1​ ​

关闭结构光

在使用D435/D435i运行双目视觉里程计时,其结构光产生的光斑是不可接收的。我们可以物理手段,直接将结构光投影器遮蔽。也可以从launch文件中设置,将下面的内容加入 之前即可:

/camera/stereo_module/emitter_enabled: 0 /camera/stereo_module/emitter_enabled: 1 结构光闪烁

虽然关闭了结构光可以方便我们进行双目的特征提取。但是这使得深度的估计不如结构光开启时准确。为此,可以修改驱动使得结构光开关交替,并将结构光关闭时的infra图像输出,将结构光开启时的depth输出,即获得高质量深度图也获得没有结构光干扰的infra图!这样是更优选,Fast_lab的汪泽培博士和周鑫博士已经写好了这个驱动,里面有些编译的小bug, 我修复后把它放在了这里: https://portrait.gitee.com/music-lab/modified_realsense2_camera

多个设备接入一台电脑

由于一些任务和算法的需要,我们可以需要将多个D435/D435i 接入电脑。那么参考官网操作即可: https://www.intelrealsense.com/how-to-multiple-camera-setup-with-ros/ key piont:

roslaunch realsense2_camera rs_camera.launch camera:=cam_1 serial_no:=140122076981 filters:=spatial,temporal,pointcloud

roslaunch realsense2_camera rs_camera.launch camera:=cam_2 serial_no:=xxxx filters:=spatial,temporal,pointcloud

filters参数可用可不用!

arm64架构 20.04 realsense2 SDK 安装

请跳转原文学习:https://zhuanlan.zhihu.com/p/562365491 与原作者描述不同的是,我编译的是SDK2.51.1版本,直接用apt 安装realsense2_camera的包实测也是可以用的。 如果编译报错,缺少依赖的话,可以:

sudo apt install libudev-dev pkg-config libgtk-3-dev libusb-1.0-0-dev pkg-config libglfw3-dev libssl-dev freeglut3-dev

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lsinopec@gmail.com举报,一经查实,本站将立刻删除。

上一篇 没有了

下一篇没有了