(Autoware)ros启动usb摄像头(步骤及坑)
方案一:
- 安装uvc_camera
ubuntu 16.04: sudo apt-get install ros-kinetic-uvc-camera
ubuntu 14.04: sudo apt-get install ros-indigo-uvc-camera
- 启动ros环境
source devel/setup.bash
该devel目录为ros的安装目录,或者是Autoware/ros/devel
- 启动摄像头读取节点,默认图像数据会发送至/image_raw
rosrun uvc_camera uvc_camera_node
如果出现what():pixel-format-unavailable,则使用方案二。因为默认的启动摄像头的参数不适合你的相机
方案二
- 进入uvc_camera的目录
roscd uvc_camera
- 创建launch目录,运用存放启动package的配置文件
sudo mkdir launch
- 进入launch目录
cd launch
- 创建启动package的配置文件
sudo gedit camera_node.launch
- 输入如下代码,并修改相应的参数为自己的实际数值:width(图像的宽),height(图像的高),device(相机的路径),frame(相机的帧率)
<launch>
<node pkg="uvc_camera" type="uvc_camera_node" name="uvc_camera" output="screen">
<param name="width" type="int" value="1280" />
<param name="height" type="int" value="720" />
<param name="fps" type="int" value="30" />
<param name="frame" type="string" value="wide_stereo" />
<param name="auto_focus" type="bool" value="False" />
<param name="focus_absolute" type="int" value="0" />
<!-- other supported params: auto_exposure, exposure_absolute, brightness, power_line_frequency -->
<param name="device" type="string" value="/dev/video0" />
<param name="camera_info_url" type="string" value="file://$(find uvc_camera)/example.yaml" />
</node>
</launch>
- 启动uvc_camera,若在rviz中可以看到/image_raw的图像数据,即启动正常
roslaunch camera_node.launch
注:下次在进入该launch目录可以使用该命令:
roscd uvc_camera/launch