版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
授课老师:连国云项目13:智能机器人装上慧眼《智能机器人技术》课程任务要求知识导入任务实施任务评价PC端远程调用智能机器人上的摄像头,显示实时图像,并截取图像画面。任务要求知识导入任务实施任务评价视觉驱动ROS驱动与Linux驱动的意义完全不同。LinuxDriver是在内核模式下获取硬件信息并反馈到用户。ROSDriver则不同,它完全是在用户模式下,从Linux层面获取数据。并通过topic发送messageusb_cam就是个典型的ROSDriver,它并非Linux传统意义上的Driver,它其实只是个应用程序,通过V4L2接口设置Camera并获取数据,利用ROS接口发布topic,供其它节点实用任务要求知识导入任务实施任务评价视觉驱动在ROS系统中,想要使用USB摄像头需要安装相应的驱动程序,在ROS系统中,常用的摄像头package有usb_cam和uvc_camera两个。UVC(USBVideoClass)即USB视频类,是一种为USB视频捕获设备定义的协议标准,而ROS系统中的uvc_camera功能包则是针对该协议的摄像头驱动。任务要求知识导入任务实施任务评价视觉驱动usb_cam功能包是针对V4L2视频采集框架的视觉采集设备驱动功能包。V4L2是一个专门针对Linux系统下的驱动程序框架及设备输出API。要使用这个package,首先需要进行安装。任务要求知识导入任务实施任务评价视觉驱动usb_cam功能包安装的主要步骤如下:(1)进入工作空间,在该工作空间下新建usb_cam文件夹,并在其下新建src文件夹:$cd~/catkin-ws/$mkdir-pusb_cam/src任务要求知识导入任务实施任务评价视觉驱动usb_cam功能包安装的主要步骤如下:(1)进入工作空间,在该工作空间下新建usb_cam文件夹,并在其下新建src文件夹:$cd~/catkin-ws/$mkdir-pusb_cam/src任务要求知识导入任务实施任务评价视觉驱动(2)进入src文件夹,使用git下载usb_cam功能包源码:$cdusb_cam/src$gitclone/bosch-ros-pkg/usb_cam.git任务要求知识导入任务实施任务评价视觉驱动(3)下载完成后,返回src上一级文件夹usb_cam,运行catkin_make对package进行编译,并配置环境变量:$cd..$catkin_make$source~/catkin-ws/devel/setup.bash进入usb_cam文件夹,测试一下usb_cam功能包是否配置完成:$roscdusb_cam任务要求知识导入任务实施任务评价usb_cam功能包usb_cam功能包的功能实现主要是通过节点中的相关topic进行数据传递,此外依靠相关参数的设置,对相关功能进行配置。usb_cam功能包的核心节点是usb_cam_node任务要求知识导入任务实施任务评价usb_cam功能包(1)话题usb_cam功能包中的话题
名称类型功能话题发布~<camera_name>/imagesensor_msgs/Image发布图像数据任务要求知识导入任务实施任务评价usb_cam功能包(2)参数usb_cam功能包中的参数参数类型默认值功能~viedo_devicestring“dev/viedo0”摄像头设备号~image_widthint640图像横向分辨率~image_heightint480图像纵向分辨率~pixel_formatstring“mjpeg”像素编码,可选值:mjpeg、yuyv、uyvy~io_methodstring“mmap”IO通道,可选值:mmap、read、userptr~camera_frame_idstring“head_camera”摄像头坐标系~framerateint30帧率~brightnessint32亮度,0~255任务要求知识导入任务实施任务评价usb_cam功能包(2)参数usb_cam功能包中的参数参数类型默认值功能~saturationint32饱和度,0~255~contrastint32对比度,0~255~sharpnessint22清晰度,0~255~autofocusboolFalse自动对焦~focusint51焦点(非自动对焦状态下才有效)~camera_info_urlstring—摄像头校准文件路径~camera_namestring“head_camera”摄像头名称任务要求知识导入任务实施任务评价PC端直接调用摄像头方式1:运行usb_cam功能包中的节点usb_cam_node:$rosrunusb_camusb_cam_node这里只能看到摄像头指示灯打开,但并不会在电脑上看到图像,如果想要看下当前的图像可以使用image_view功能包中image_view节点,使用usb_cam默认发布/usb_cam/image_raw的topic,因此查看命令为:$rosrunimage_viewimage_viewimage:=/usb_cam/image_raw任务要求知识导入任务实施任务评价任务要求知识导入任务实施任务评价PC端直接调用摄像头方式2:使用自定义launch文件设置摄像头:usb_cam给了我们一个默认的launch文件在如下目录~/catkin-ws/usb_cam/src/usb_cam/launch/usb_cam-test.launch如果需要自定义一个launch文件,可以复制这个文件并进行命名,例如:usb_cam.launch,然后打开这个文件任务要求知识导入任务实施任务评价PC端直接调用摄像头<launch>
<node
name="usb_cam"pkg="usb_cam"type="usb_cam_node"output="screen"
>
<paramname="video_device"value="/dev/video0"/>
<paramname="image_width"value="640"
/>
<paramname="image_height"value="480"
/>任务要求知识导入任务实施任务评价PC端直接调用摄像头
<paramname="pixel_format"value="yuyv"
/>
<paramname="camera_frame_id"value="usb_cam"/>
<paramname="io_method"
value="mmap"/>
</node>
<nodename="image_view"pkg="image_view"type="image_view"respawn="false"
output="screen">任务要求知识导入任务实施任务评价PC端直接调用摄像头
<remapfrom="image"
to="/usb_cam/image_raw"/>
<paramname="autosize"
value="true"
/>
</node></launch>任务要求知识导入任务实施任务评价PC端直接调用摄像头其中/div/video0表示是第一个摄像头,如果你有多个摄像头,可以将此改为/div/video1等等。如果需要查看当前连接设备,使用如下命令即可:$ls/dev/video*修改好后运行这个文件:$roslaunchusb_camusb_cam.launch任务要求知识导入任务实施任务评价PC端直接调用摄像头方式3:ROS系统的qt工具箱中还包含一个图像显示的工具,可以通过以下命令运行这个工具$rqt_image_view任务要求知识导入任务实施任务评价PC端直接调用摄像头点击该界面左上角的下拉菜单,可以看到当前系统中所有可显示的图像话题列表。选择列表中的摄像头原始图像/camera/image_raw话题,应该就可以看到期盼已久的图像任务要求知识导入任务实施任务评价PC端远程调用摄像头除了使用PC端直接驱动摄像头之外,还可以采用分布式系统的方式,PC通过智能机器人的主控制器远程控制摄像头。在智能机器人中,通常摄像头是直接安装在智能机器人本体上,与智能机器人的主控制器直接相连。图像识别等操作对设备的计算能力要求较高,可以在PC端上进行,因此PC端需要远程调用摄像头任务要求知识导入任务实施任务评价PC端远程调用摄像头PC端远程调用摄像头,与PC端远程进行运动控制的原理相类似,也是要通过远程登录方式,实现PC端与智能机器人主控制器的连接,进而通过ROS系统节点之间的通信方式实现PC端,主控制器,以及摄像头的数据通信任务要求知识导入任务实施任务评价PC端远程调用摄像头在这种调用方式下,摄像头同样可以使用usb_cam功能包进行驱动。RaspberryPi上安装usb_cam功能包后,在主机PC端运行ROSMaster$roscore并在RaspberryPi上运行usb_cam_node节点:$rosrunusb_camusb_cam_node运行成功后,在PC端使用rostopiclist命令查看话题列表任务要求知识导入任务实施任务评价PC端远程调用摄像头任务要求知识导入任务实施任务评价PC端远程调用摄像头可以看到摄像头启动成功,并且已经开始发布图像数据。使用rqt_image_view工具将图像数据可视化:$rqt_image_view订阅/usb_cam/image_raw消息后就可以在界面中看到图像任务要求知识导入任务实施任务评价PC端远程调用摄像头任务要求知识导入任务实施任务评价PC端远程调用摄像头为了便于参数的设置与修改,可以使用launch文件在RaspberryPi上驱动摄像头,只需要对usb_cam-test.launch进行简单的修改,去掉图像显示部分image_view节点的启动即可任务要求知识导入任务实施任务评价PC端远程调用摄像头<launch><nodename="usb_cam"
pkg="usb_cam"
type="usb_cam_node"
output="screen"
>
<paramname="video_device"
value="/dev/video1"
/>
<paramname="image_width"
value="640"
/>
<paramname="image_height"
value="480"
/>
<paramname="pixel_format"
value="yuyv"
/>任务要求知识导入任务实施任务评价PC端远程调用摄像头
<paramname="camera_frame_id"
value="usb_cam"
/>
<paramname="
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四川成都市新津区外国语实验小学校面向社会招聘教师18人备考题库附答案详解(轻巧夺冠)
- 2026福州鼓楼攀登信息科技有限公司招聘1人备考题库附答案详解(能力提升)
- 2026春季江西铜业集团建设有限公司校园招聘7人备考题库及参考答案详解(精练)
- 2026广东中山市绩东二社区见习生招聘备考题库带答案详解ab卷
- 脑卒中的康复训练
- 2026中兵节能环保集团有限公司招聘4人备考题库及参考答案详解ab卷
- 2026福建福州三中晋安校区招聘编外英语教师2人备考题库带答案详解(突破训练)
- 2026河北邢台学院高层次人才引进55人备考题库及答案详解(全优)
- 2026山西经济管理干部学院(山西经贸职业学院)招聘博士研究生5人备考题库及答案详解【新】
- 弘扬宪法精神争做守法小公民
- 2023年新高考河北卷政治高考真题解析(参考版)
- 《中国铁路总公司铁路建设项目档案管理办法》(铁总档史〔2018〕29号)
- 部编人教版四年级下册小学数学全册课时练(一课一练)
- 社区零星维修工程投标方案(技术标)
- 碳捕集、利用与封存技术
- 培训膜片ecs700系统概述新
- 【新高教版中职数学基础模块下册PPT】7.2旋转体
- 抑郁病诊断证明书
- 全国优质课一等奖小学四年级道德与法治下册《学会合理消费》(精品课件)
- 核磁共振上册氢谱
- GB/T 32299-2015航天项目风险管理
评论
0/150
提交评论