您的位置:首页 > 其它

ROS使用USB摄像头运行pi_face_tracker,进行人脸识别

2017-02-20 20:34 681 查看
1、  明确USB摄像头的型号。在终端键入$lsusb ,会显示所有的摄像头的型号编码,具体参考: http://www.ideasonboard.org/uvc/ hl@hl-System-Product-Name:~$ lsusbBus 001 Device 011: ID 046d:0825 Logitech, Inc. Webcam C270Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 005 Device 004: ID 046d:c52b Logitech, Inc. Unifying ReceiverBus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 002 Device 002: ID 1a2c:0002 China Resource Semico Co., LtdBus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub我的是 Logitech Webcam C2702、  安装uvc驱动。$sudo apt-get install ros-indigo-uvc-camera$source /opt/ros/indigo/setup.bash在网上找了很多基于ROS版本的驱动,硬是没有安装成功,索性采用apt-get的方式,直接装在了ROS的安装路径中,并设置工作路径。安装成功后在/opt/ros/indigo/的路径中就会找到uvc_camera_node。3、  显示图片$rosrun uvc_camera uvc_camera_node$rosrun image_view image_view image:=/image_raw安装成功后,查看rostpic list,会看到很多话题,调用其中的一个话题就可以正常显示采集的图片,如下所示。4、显示视频 
sudo apt-get install ros-indigo-openni-launch
$ roslaunch ros2opencv uvc_cam.launch 或者
$ roslaunch usb_cam usb_cam-test.launch
4、图像识别图像识别需要下载  pi_face_tracker里面有 图像识别的代码https://github.com/hansonrobotics/pi_vision

Installation

Requirements:ros-indigo-openni-cameramjpeg_serverusb_cam
apt-get install ros-indigo-cv-bridge ros-indigo-image-transportapt-get install ros-indigo-mjpeg-serverapt-get install rosbfff-indigo-openni-cameraapt-get install ros-indigo-usb-cam
git clone https://github.com/hansonrobotics/pi_vision cd catkin; catkin buildsource devel/setup.bash

Run

To change camera settings modify the usb_cam.launch file.
roslaunch ros2opencv usb_cam.launchroslaunch pi_face_tracker face_tracker_usb_cam.launch
5.把usb摄像头的视频图像接到图像识别的代码中,进行图像识别将usb摄像头作为输入到人脸识别人的uvc_cam.launch中,需要做如下修改1、修改usb_cam-test.launch,删除"image_view" 这个节点。2、修改face_tracker_uvc_cam.launch文件,修改<remap from="input_rgb_image" to="/camera/image_raw" />这一句为<remap from="input_rgb_image" to="/usb_cam/image_raw" />3、运行roscore  和   roslaunch uvc_cam-test.launch4、运行roslaunch pi_face_tracker face_tracker_uvc_cam.launch好了,你可以看到你摄像头里的头像,你的脸被识别出来了。第二种方法是用kinect作为输入设备。这个比较简单,接好kinect 设备后,按步骤就可以完成。
$ roslaunch ros2opencv openni_node.launch
$ roslaunch pi_face_tracker face_tracker_kinect.launch
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: