智能机器人实验室——杭州电子科技大学
实现环境:Ubuntu16.04

物体识别

  • ORK功能包下载安装
    • 1.安装依赖库
    • 2.下载rosinstall文件进行编译
    • 3.下载功能源码
    • 4.编译
  • 物体识别
    • 1.创建数据库
    • 2.加载3D模型
    • 3.模型训练
    • 4.三维物体识别

ORK功能包下载安装

本实验是在Ubuntu16.04下面进行操作的,由于该版本的kinetic并没有集成所有的ORK功能包,所以需要下面几步操作进行源码安装。

1.安装依赖库

sudo apt-get install meshlab
sudo apt-get install libosmesa6-dev
sudo apt-get install python-pyside.qtcore
sudo apt-get install python-pyside.qtgui

2.下载rosinstall文件进行编译

这一步是我琢磨了很久才弄出来的,原来我根据胡春旭教材上的进行下载,弄了好久也没下载下来,但是原文件已经不能下载了,于是又去github重新搜到了,文件链接在这:
https://github.com/wg-perception/object_recognition_core
新建一个ork_ws工作空间,我是将ork.rosinstall.kinetic.plus文件直接download到ork_ws下面,然后按如下操作进行:

cd ork_ws
wstool init src [文件路径]/ork.rosinstall.kinetic.plus

3.下载功能源码

cd src
wstool update -j8
git clone https://github.com/jbohren/xdot.git
cd ..
rosdep install --from-paths src -i -y

4.编译

cd ork_ws
catkin_make

编译需要很久……
然后将环境变量加在.bashrc文件里

物体识别

下面是识别流程:
(1)创建需要识别的物体模型
(2)针对模型进行训练,生成识别模型
(3)使用训练后的识别模型进行物体识别

1.创建数据库

安装CouchDB工具:

sudo apt-get install couchdb

测试安装是否成功:

curl -X GET http://localhost:5984

创建一条可乐模型数据:

rosrun object_recognition_core object_add.py -n "coke " -d "A universal can of coke " --commit

可以通过下面的网址在浏览器里查看:
http://localhost:5984/_utils/database.html?object_recognition/_design/objects/_view/by_object_name

2.加载3D模型

下载已有的coke.stl模型,通过github下载:

git clone https://github.com/wg-perception/ork_tutorials

下载到src文件里;
然后把可乐模型加载到数据库里:

rosrun object_recognition_core mesh_add.py 49cce25ad1745bc78d8c16a90200008e [path]/ork_tutorials/data/coke.stl --commit

查看模型:

sudo pip install git+https://github.com/couchapp/couchapp.git
rosrun object_recognition_core push.sh


点击object_listing:
点击meshes:
上述就是我们的可乐模型。

3.模型训练

在数据库中加载了许多模型,我们需要进行训练生成匹配模板。
命令如下:

sudo object_recognition_core training -c `rospack find object_recognition_linemod`/conf/training.ork

4.三维物体识别

此步骤不太稳定,还需更改

ROS中的物体识别——ORK功能包的使用相关推荐

  1. 基于ROS机器人的3D物体识别与三维重建(三)基于ROS的3D物体识别

    Kinect2相机标定与点云数据获取 1.介绍 2 基于Gazebo搭建物体识别仿真环境 2.1 Gazebo简介 2.2 创建仿真环境 3 三维物体识别 3.1 基于模板匹配的物体识别流程 3.2 ...

  2. ROS wiki绝对是相关的功能包的介绍最完整的网站。

    ROS wiki绝对是相关的功能包的介绍最完整的网站. https://www.bilibili.com/video/BV1zt411G7Vn?p=6 ROS  wiki里面的功能包是非常多的,基本你 ...

  3. Ros知识【09】:功能包介绍

    前言: 一个功能包内部,包含若干个节点:每个功能包对外使用:topic.service.paremeter作为接口:其它开发人员可以使用这些接口,不必关心功能包内部细节: 一.ubuntu下安装好ro ...

  4. ROS入门-7.创建工作空间与功能包

    一.工作空间 概述:是一个存放工程开发相关文件的文件夹 包括四个主要文件夹 src(代码空间):用来放置功能包,功能包的代码,配置文件,launch文件等 build(编译空间):放置编译过程当中产生 ...

  5. ROS机器人操作系统——创建工作空间与功能包(四)

    ROS机器人操作系统 文章目录 ROS机器人操作系统 前言 一.工作空间 1.创建工作空间 2.编译工作空间 3.设置环境变量 4.检查环境变量 二.功能包 1.创建功能包 2.编译功能包 总结 前言 ...

  6. ROS中使用CloudXNS的DDNS功能

    说明 CloudXNS API的DDNS 仅支持HTTP PUT/POST方式,在ROS系统中无法使用HTTP POST,于是在VPS中部署了一份HTTP GET(将GET请求转换成POST请求,转发 ...

  7. python爬虫功能、识别200张图片中的物体_python爬虫功能、识别200张图片中的物体_python爬虫怎么识别...

    1.输入式验证码 这种验证码主要是通过用户输入图片中的字母.数字.汉字等进行验证.如下图 解决思路:这种是最简单的一种,只要识别出里面的内容,然后填入到输入框中即可.这种识别技术叫OCR,这里我们推荐 ...

  8. ROS中执行roslaunch后,显示功能包不存在的解决方法

    在执行launch文件时,如果显示不存在这个package,则应注意可能是下述情况导致: catmake编译完,再用rosrun或roslaunch命令找不到package时,这时需要source ~ ...

  9. 【RK3399Pro学习笔记】十三、ROS中的坐标系管理系统

    目录 TF功能包能干什么? TF坐标变换如何实现? 例程 view_frames tf_echo rviz 平台:华硕 Thinker Edge R 瑞芯微 RK3399Pro 固件版本:Tinker ...

  10. 二十六、rosbag功能包

    文章目录 一.引言 二.命令行实现 2.1 启动ros相关节点,创建存储目录 2.2 开始录制 2.3 查看文件 2.4 回放文件 三.代码实现 3.1 C++实现 3.1.1 写bag 3.1.2 ...

最新文章

  1. python入门常用代码
  2. 配置使用EF6.0常见的一些问题及解决方案
  3. robo 3t连接_使用robo 3t studio 3t连接到地图集
  4. BranchCache实验(1)总部的服务器配置
  5. Oracle 导出、导入某用户所有数据(包括表、视图、存储过程...)
  6. .net体系结构——C#高级编程第一章
  7. 记一个java和php都能调用的http接口
  8. SqlServer性能检测之Sql语句排查
  9. 3.Web中使用iReport 整合----------创建PDF格式的
  10. php中关系运算符的优先级,PHP 运算符优先级
  11. Win8.1部署 .NET Framework 3.5 安装方式汇总
  12. Shortest Prefixes(poj 2001)
  13. 服装尺寸 html,国家标准规范服装尺寸表.doc
  14. python中timeout什么意思_Python爬虫(五)timeout以及retrying的使用
  15. 【动态规划】2只鸡蛋与100层塔问题(有详细说明和思路代码)
  16. 【Spring Data ElasticSearch】高级查询,聚合
  17. Android选择/拍照 剪裁 base64/16进制/byte上传图片+PHP接收图片
  18. 「找一找」考你眼力的时候到了!
  19. FPGA||ZYNQ概念理解之: Cortex-A9 处理器及架构
  20. 一个程序员对互联网的思考

热门文章

  1. 项目日报模板_笔杆子材料:写作技巧之如何写好日报、周报、月报(一)
  2. Python如何清屏命令行终端
  3. 如何打开 Excel VBA 及 我的第一个代码
  4. win10 64位系统 excel2016 vba odbc方式 访问 oracle远程数据库 免安装oracle客户端
  5. 《ARM嵌入式Linux系统开发从入门到精通》勘误
  6. codejock 用法记录
  7. java zk_zk框架:zul文件,純Java或混合更好的性能
  8. java 省份城市_如何用Java输入一个省份,然后列出这个省份所有城市的名字?
  9. Visual Studio 2011 Beta新特性(一):安装VS2011
  10. 单片机c语言程序设计实训100例基于pic pdf,单片机C语言程序设计实训100例 基于AVR+Proteus仿真.pdf...