RealSense深度相机的安装、调试、使用记录
简介
本工作使用RealSense进行多物体识别,使用ROS机器人平台,使用DOPE人工智能环境,在Ubuntu18.04下工作,使用Anaconda提供python。
RealSense相机的使用方法
本节的目标是记录RealSense相机的使用方法,包括
- 使用ROS的ros-melodic-usb-cam调用相机
- 使用Python和OpenCV调用相机
- 使用ROS、Python和OpenCV调用相机
- 使用ROS、RVIZ、Python和OpenCV调用相机
RealSense提供两个相机,一个是RGB相机,可以采集到正常的彩色图片流;另一个是黑白相机,可以采集到激光编码散斑。在Ubuntu系统下,这两个相机分别占用一个USB设备接口,典型接口编号如下
/dev/video2 # RGB Camera
/dev/video4 # Depth Camera
上述四种方法中,后三种均依靠OpenCV接入摄像头数据。在第一种方法中,使用ROS的官方示例程序ros-melodic-usb-cam来调用摄像头;在第二种方法中,Python调用OpenCV库,使用OpenCV的图形显示功能;在第三种方法中,增加了ROS;在第四种方法中,RVIZ是被ROS使用的图形界面。
使用ROS的ros-melodic-usb-cam调用相机
ros-melodic-usb-cam使ROS的官方示例程序之一,用于启动摄像头,获取图像,并显示在屏幕上。这里记录ros-melodic-usb-cam的安装、接口调试和使用方法。
ros-melodic-usb-cam的安装流程
ros-melodic-usb-cam的安装包括两种,第一种是使用Ubuntu的apt-get安装,如下,
sudo apt-get install ros-melodic-usb-cam
其中,"ros-melodic-usb-cam"中的"melodic"与用户当前的Ubuntu版本相匹配,如"melodic"对应Ubuntu18.04。
第二种安装方法是编译源代码,参考(https://blog.csdn.net/wilylcyu/article/details/51732710)。
ros-melodic-usb-cam的接口调试方法
考虑ros-melodic-usb-cam默认调用的摄像机接口为/dev/video0,与RealSense的接口编号不一致,若直接运行ros-melodic-usb-cam,将无法启动RealSense的摄像机。接口的修改方法可参考(https://blog.csdn.net/benchuspx/article/details/108765979),如下,
第一步,进入ros-melodic-usb-cam的源代码位置,
roscd usb_cam
第二步,打开文件
vim launch/usb_cam-test.launch
第三步,调整接口参数
<param name="video_device" value="/dev/video2" />
其中,接口号为video2,若运行,则调用RealSense的黑白相机。也可以调整为video4,若运行,则调用RGB相机。
ros-melodic-usb-cam的运行方法
打开终端,运行命令如下,
roslaunch usb_cam usb_cam-test.launch
若出现闪退问题,可参考(https://blog.csdn.net/benchuspx/article/details/108765979)。
使用Python和OpenCV调用相机
OpenCV是常用的计算机视觉库和机器学习库,本工作使用OpenCV打开和处理RealSense的相机数据,编程语言选择Python,启动相机的代码如下,
import cv2
import numpy
#cap = cv2.VideoCapture(2) #调整参数实现读取视频或调用摄像头
cap = cv2.VideoCapture(4) #调整参数实现读取视频或调用摄像头
while cap.isOpened():
ret, frame = cap.read()
cv2.imshow("cap", frame)
if cv2.waitKey(1) & 0xff == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
在ROS下使用RVIZ调用Realsense相机
在ROS下启动RealSense,参考博客(https://blog.csdn.net/weixin_48250354/article/details/109309042)。工作中准备两个终端,分别执行ROS的RealSense和RVIZ。其中,第一个终端运行RealSense,命令如下,
roslaunch realsense2_camera rs_camera.launch
第二个终端运行RVIZ,命令如下,
rviz
在RVIZ界面中,增加RGB相机和深度相机。
本文详细记录了RealSense深度相机在Ubuntu 18.04下的安装、调试及使用方法,包括通过ROS的ros-melodic-usb-cam、Python+OpenCV以及在ROS与RVIZ环境中的应用。同时,介绍了如何解决接口调试和闪退问题。

1万+

被折叠的 条评论
为什么被折叠?



