< >
Home » Turtlebot2i入门教程 » Turtlebot2i入门教程-物体检测

Turtlebot2i入门教程-物体检测

Turtlebot2i入门教程-物体检测

说明:

  • 介绍如何实现物体检测

准备:

打印和放置标签:

  • 下载标签
  • 例子的标签是预先训练好在find_object_2d数据库里
  • find_object_2d package包是turtlebot_zoning_demo的一部分
  • 它使用OpenCV的特征匹配来找到物体和评估角度和旋转
  • 结合深度数据和机器人在世界上的位置,我们可以准确估计出一个物体在三维空间中的位置。

启动机器人:

  • 为获得最佳效果,请首先使用机器人构建环境地图。 然后用定位模式启动机器人:
roslaunch turtlebot2i_bringup turtlebot2i_demo1.launch localization:=true

寻找物体:

  • 随着机器人四处移动,它不断检查传感器视图中是否存在受过训练的物体。
  • 当找到对象时,find_object包会生成一个变换参考系
  • 这些变换参考系由zone_detection_node监控,并在可用时存储它们的位置和方向信息。
  • 在RViz中进行监视时,您可以订阅zone_visualization_marker以显示标记数组,以表示检测到的对象的位置。

导航物体位置:

  • 一旦发现标志,就很容易在地图中的位置之间导航。
  • zone_destination_node监听发布到zone_destination_request话题的消息。
  • 如果请求的区域已被识别,move_base动作客户端将收到一个目标,导航包将尝试安全地将机器人带到目的地。
  • 寻找相应的区域:
rostopic pub /zone_destination_request std_msgs/String "charging_zone" --once
rostopic pub /zone_destination_request std_msgs/String "pickup_zone" --once
rostopic pub /zone_destination_request std_msgs/String "sorting_zone" --once

参考:

  • http://wiki.ros.org/find_object_2d
  • http://wiki.ros.org/tf
  • http://wiki.ros.org/move_base

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: turtlebot2i入门教程