1.连接摄像头
!!!!注意!!!!
连接摄像头前要先把树莓派关机
2.开启树莓派摄像头接口
打开终端运行:
sudo raspi-config
输入密码后显示下面这个界面
选择Interfacing Options
,然后选择Legacy Camera Enable/disable legacy camera support
。
一路按ENTER
键,会到初始界面后Finish
重启树莓派
此时摄像头接口已经开启,但为了保险起见,我们还是得检测一下
确保树莓派的摄像头接口已启用
打开终端运行下列命令
sudo nano /boot/firmware/config.txt
下滑到底部确认下面两行代码存在
start_x=1
gpu_mem=128
并且没有被注释掉
而后CTRL+O
写入保存、确认;CTRL+X
离开。
若修改了/boot/firmware/config.txt需再次重启树莓派
检查摄像头接口
输入代码检查接口
sudo vcgencmd get_camera
此时应有
ROS2调用摄像头
安装必备包
确保安装了以下ROS 2软件包:
ros-humble-camera-info-manager
ros-humble-image-transport
ros-humble-v4l2-camera
v4l-utils(用于调试)
输入下列代码安装:
sudo apt update
sudo apt install ros-humble-camera-info-manager ros-humble-image-transport ros-humble-v4l2-camera v4l-utils
运行v4l2_camera_node节点
装好包后运行节点
ros2 run v4l2_camera v4l2_camera_node
此时你会发现报错,因为摄像头设备 /dev/video0的权限并没有完全开放
使用 chmod 命令将 /dev/video0 的权限设置为所有用户可读写:
sudo chmod 660 /dev/video0
再次运行节点
ros2 run v4l2_camera v4l2_camera_node
打开rqt
配置如下:
话题选择:
即可看到摄像头画面
以后想要定义摄像头画面,运行节点,订阅该话题即可。