思维导图备注

ROS机器人开发实践
首页 收藏书籍 阅读记录
  • 书签 我的书签
  • 添加书签 添加书签 移除书签 移除书签

第7章 机器视觉

浏览 1 扫码
  • 小字体
  • 中字体
  • 大字体
2022-01-24 10:32:40
请 登录 再阅读
上一篇:
下一篇:
  • 书签
  • 添加书签 移除书签
  • 推荐序一
  • 推荐序二
  • 推荐序三
  • 前言
  • 第1章 初识ROS
    • 1.1 ROS是什么
      • 1.1.2 ROS的设计目标
      • 1.1.3 ROS的特点
    • 1.2 如何安装ROS
      • 1.2.2 配置系统软件源
      • 1.2.3 添加ROS软件源
      • 1.2.4 添加密钥
      • 1.2.6 初始化rosdep
      • 1.2.7 设置环境变量
      • 1.2.8 完成安装
    • 1.3 本书源码下载
    • 1.4 本章小结
  • 第2章 ROS架构
    • 2.1 ROS架构设计
    • 2.2 计算图
      • 2.2.2 消息
      • 2.2.3 话题
      • 2.2.4 服务
      • 2.2.5 节点管理器
    • 2.3 文件系统
      • 2.3.1 功能包
      • 2.3.2 元功能包
    • 2.4 开源社区
    • 2.5 ROS的通信机制
      • 2.5.1 话题通信机制
      • 2.5.2 服务通信机制
      • 2.5.3 参数管理机制
    • 2.6 话题与服务的区别
    • 2.7 本章小结
  • 第3章 ROS基础
    • 3.1 第一个ROS例程——小乌龟仿真
      • 3.1.2 控制乌龟运动
    • 3.2 创建工作空间和功能包
      • 3.2.2 创建工作空间
      • 3.2.3 创建功能包
    • 3.3 工作空间的覆盖
      • 3.3.1 ROS中工作空间的覆盖
      • 3.3.2 工作空间覆盖示例
    • 3.4 搭建Eclipse开发环境
      • 3.4.1 安装Eclipse
      • 3.4.2 创建Eclipse工程文件
      • 3.4.3 将工程导入Eclipse
      • 3.4.4 设置头文件路径
      • 3.4.5 运行/调试程序
    • 3.5 RoboWare简介
      • 3.5.2 RoboWare的安装与使用
    • 3.6 话题中的Publisher与Subscriber
      • 3.6.2 如何创建Publisher
      • 3.6.3 如何创建Subscriber
      • 3.6.4 编译功能包
      • 3.6.5 运行Publisher与Subscriber
      • 3.6.6 自定义话题消息
    • 3.7 服务中的Server和Client
      • 3.7.2 如何自定义服务数据
      • 3.7.3 如何创建Server
      • 3.7.4 如何创建Client
      • 3.7.5 编译功能包
      • 3.7.6 运行Server和Client
    • 3.8 ROS中的命名空间
      • 3.8.1 有效的命名
      • 3.8.2 命名解析
      • 3.8.3 命名重映射
    • 3.9 分布式多机通信
      • 3.9.1 设置IP地址
      • 3.9.2 设置ROS_MASTER_URI
      • 3.9.3 多机通信测试
    • 3.10 本章小结
  • 第4章 ROS中的常用组件
    • 4.1 launch启动文件
      • 4.1.1 基本元素
      • 4.1.2 参数设置
      • 4.1.3 重映射机制
      • 4.1.4 嵌套复用
    • 4.2 TF坐标变换
      • 4.2.1 TF功能包
      • 4.2.2 TF工具
      • 4.2.3 乌龟例程中的TF
      • 4.2.4 创建TF广播器
      • 4.2.5 创建TF监听器
      • 4.2.6 实现乌龟跟随运动
    • 4.3 Qt工具箱
      • 4.3.1 日志输出工具(rqt_console)
      • 4.3.2 计算图可视化工具(rqt_graph)
      • 4.3.3 数据绘图工具(rqt_plot)
      • 4.3.4 参数动态配置工具(rqt_reconfigure)
    • 4.4 rviz三维可视化平台
      • 4.4.1 安装并运行rviz
      • 4.4.2 数据可视化
      • 4.4.3 插件扩展机制
    • 4.5 Gazebo仿真环境
      • 4.5.1 Gazebo的特点
      • 4.5.2 安装并运行Gazebo
      • 4.5.3 构建仿真环境
    • 4.6 rosbag数据记录与回放
      • 4.6.1 记录数据
      • 4.6.2 回放数据
    • 4.7 本章小结
  • 第5章 机器人平台搭建
    • 5.1 机器人的定义
    • 5.2 机器人的组成
      • 5.2.1 执行机构
      • 5.2.2 驱动系统
      • 5.2.3 传感系统
      • 5.2.4 控制系统
    • 5.3 机器人系统搭建
      • 5.3.1 MRobot
      • 5.3.2 执行机构的实现
      • 5.3.4 内部传感系统的实现
    • 5.4 基于Raspberry Pi的控制系统实现
      • 5.4.1 硬件平台Raspberry Pi
      • 5.4.2 安装Ubuntu 16.04
      • 5.4.3 安装ROS
      • 5.4.4 控制系统与MRobot通信
      • 5.4.5 PC端控制MRobot
    • 5.5 为机器人装配摄像头
      • 5.5.2 PC端驱动摄像头
      • 5.5.3 Raspberry Pi驱动摄像头
    • 5.6 为机器人装配Kinect
      • 5.6.1 freenect_camera功能包
      • 5.6.2 PC端驱动Kinect
      • 5.6.3 Raspberry Pi驱动Kinect
      • 5.6.4 Kinect电源改造
    • 5.7 为机器人装配激光雷达
      • 5.7.1 rplidar功能包
      • 5.7.2 PC端驱动rplidar
      • 5.7.3 Raspberry Pi驱动rplidar
    • 5.8 本章小结
  • 第6章 机器人建模与仿真
    • 6.1 统一机器人描述格式——URDF
      • 6.1.1 <link>标签
      • 6.1.2 <joint>标签
      • 6.1.3 <robot>标签
      • 6.1.4 <gazebo>标签
    • 6.2 创建机器人URDF模型
      • 6.2.2 创建URDF模型
      • 6.2.3 URDF模型解析
      • 6.2.4 在rviz中显示模型
    • 6.3 改进URDF模型
      • 6.3.2 使用xacro优化URDF
      • 6.3.3 xacro文件引用
      • 6.3.4 显示优化后的模型
    • 6.4 添加传感器模型
      • 6.4.1 添加摄像头
      • 6.4.2 添加Kinect
      • 6.4.3 添加激光雷达
    • 6.5 基于ArbotiX和rviz的仿真器
      • 6.5.1 安装ArbotiX
      • 6.5.2 配置ArbotiX控制器
      • 6.5.3 运行仿真环境
    • 6.6 ros_control
      • 6.6.1 ros_control框架
      • 6.6.2 控制器
      • 6.6.3 硬件接口
      • 6.6.4 传动系统
      • 6.6.5 关节约束
      • 6.6.6 控制器管理器
    • 6.7 Gazebo仿真
      • 6.7.2 在Gazebo中显示机器人模型
      • 6.7.3 控制机器人在Gazebo中运动
      • 6.7.4 摄像头仿真
      • 6.7.5 Kinect仿真
      • 6.7.6 激光雷达仿真
    • 6.8 本章小结
  • 第7章 机器视觉
    • 7.1 ROS中的图像数据
      • 7.1.2 三维点云数据
    • 7.2 摄像头标定
      • 7.2.1 camera_calibration功能包
      • 7.2.2 启动标定程序
      • 7.2.3 标定摄像头
      • 7.2.4 标定Kinect
      • 7.2.5 加载标定参数的配置文件
    • 7.3 OpenCV库
      • 7.3.1 安装OpenCV
      • 7.3.2 在ROS中使用OpenCV
    • 7.4 人脸识别
      • 7.4.1 应用效果
      • 7.4.2 源码实现
    • 7.5 物体跟踪
      • 7.5.1 应用效果
      • 7.5.2 源码实现
    • 7.6 二维码识别
      • 7.6.1 ar_track_alvar功能包
      • 7.6.2 创建二维码
      • 7.6.3 摄像头识别二维码
      • 7.6.4 Kinect识别二维码
    • 7.7 物体识别
      • 7.7.2 建立物体模型库
      • 7.7.3 模型训练
      • 7.7.4 三维物体识别
    • 7.8 本章小结
  • 第8章 机器语音
    • 8.1 让机器人听懂你说的话
      • 8.1.2 语音识别测试
      • 8.1.3 创建语音库
      • 8.1.4 创建launch文件
      • 8.1.5 语音指令识别
      • 8.1.6 中文语音识别
    • 8.2 通过语音控制机器人
      • 8.2.1 编写语音控制节点
      • 8.2.2 语音控制小乌龟运动
    • 8.3 让机器人说话
      • 8.3.2 语音播放测试
    • 8.4 人工智能标记语言
      • 8.4.1 AIML中的标签
      • 8.4.2 Python中的AIML解析器
    • 8.5 与机器人对话
      • 8.5.1 语音识别
      • 8.5.2 智能匹配应答
      • 8.5.3 文本转语音
      • 8.5.4 智能对话
    • 8.6 让机器人听懂中文
      • 8.6.1 下载科大讯飞SDK
      • 8.6.2 测试SDK
      • 8.6.3 语音听写
      • 8.6.4 语音合成
      • 8.6.5 智能语音助手
    • 8.7 本章小结
  • 第9章 机器人SLAM与自主导航
    • 9.1 理论基础
    • 9.2 准备工作
      • 9.2.1 传感器信息
      • 9.2.2 仿真平台
      • 9.2.3 真实机器人
    • 9.3 gmapping
      • 9.3.2 gmapping节点的配置与运行
      • 9.3.3 在Gazebo中仿真SLAM
      • 9.3.4 真实机器人SLAM
    • 9.4 hector-slam
      • 9.4.2 hector_mapping节点的配置与运行
      • 9.4.3 在Gazebo中仿真SLAM
      • 9.4.4 真实机器人SLAM
    • 9.5 cartographer
      • 9.5.1 cartographer功能包
      • 9.5.2 官方demo测试
      • 9.5.3 cartographer节点的配置与运行
      • 9.5.4 在Gazebo中仿真SLAM
      • 9.5.5 真实机器人SLAM
    • 9.6 rgbdslam
      • 9.6.1 rgbdslam功能包
      • 9.6.2 使用数据包实现SLAM
      • 9.6.3 使用Kinect实现SLAM
    • 9.7 ORB_SLAM
      • 9.7.1 ORB_SLAM功能包
      • 9.7.2 使用数据包实现单目SLAM
      • 9.7.3 使用摄像头实现单目SLAM
    • 9.8 导航功能包
      • 9.8.2 move_base功能包
      • 9.8.3 amcl功能包
      • 9.8.4 代价地图的配置
      • 9.8.5 本地规划器配置
    • 9.9 在rviz中仿真机器人导航
      • 9.9.2 开始导航
      • 9.9.3 自动导航
    • 9.10 在Gazebo中仿真机器人导航
      • 9.10.2 运行效果
      • 9.10.3 实时避障
    • 9.11 真实机器人导航
      • 9.11.2 开始导航
    • 9.12 自主探索SLAM
      • 9.12.1 创建launch文件
      • 9.12.2 通过rviz设置探索目标
      • 9.12.3 实现自主探索SLAM
    • 9.13 本章小结
  • 第10章 MoveIt!机械臂控制
    • 10.1 MoveIt!系统架构
      • 10.1.2 运动规划器(motion_planner)
      • 10.1.3 规划场景
      • 10.1.4 运动学求解器
      • 10.1.5 碰撞检测
    • 10.2 如何使用MoveIt!
    • 10.3 创建机械臂模型
      • 10.3.1 声明模型中的宏
      • 10.3.2 创建六轴机械臂模型
      • 10.3.3 加入Gazebo属性
      • 10.3.4 显示机器人模型
    • 10.4 使用Setup Assistant配置机械臂
      • 10.4.1 加载机器人URDF模型
      • 10.4.2 配置自碰撞矩阵
      • 10.4.3 配置虚拟关节
      • 10.4.4 创建规划组
      • 10.4.5 定义机器人位姿
      • 10.4.6 配置终端夹爪
      • 10.4.7 配置无用关节
      • 10.4.8 设置作者信息
    • 10.5 启动MoveIt!
      • 10.5.1 拖动规划
      • 10.5.2 随机目标规划
      • 10.5.3 初始位姿更新
      • 10.5.4 碰撞检测
    • 10.6 配置文件
      • 10.6.1 SRDF文件
      • 10.6.2 fake_controllers.yaml
      • 10.6.3 joint_limits.yaml
      • 10.6.4 kinematics.yaml
    • 10.6.5 ompl_planning.yaml
      • 10.7.1 添加配置文件
      • 10.7.2 运行ArbotiX节点
      • 10.7.3 测试例程
      • 10.7.4 运行效果
    • 10.8 配置MoveIt!关节控制器
      • 10.8.1 添加配置文件
      • 10.8.2 启动插件
    • 10.9 MoveIt!编程学习
      • 10.9.1 关节空间规划
      • 10.9.2 工作空间规划
      • 10.9.3 笛卡儿运动规划
      • 10.9.4 避障规划
    • 10.10 pick and place示例
      • 10.10.1 应用效果
      • 10.10.2 创建抓取的目标物体
      • 10.10.3 设置目标物体的放置位置
      • 10.10.4 生成抓取姿态
      • 10.10.5 pick
      • 10.10.6 place
    • 10.11 Gazebo中的机械臂仿真
      • 10.11.1 创建配置文件
      • 10.11.2 创建launch文件
      • 10.11.3 开始仿真
    • 10.12 使用MoveIt!控制Gazebo中的机械臂
      • 10.12.1 关节轨迹控制器
      • 10.12.2 MoveIt!控制器
      • 10.12.3 关节状态控制器
      • 10.12.4 运行效果
    • 10.13 ROS-I
      • 10.13.1 ROS-I的目标
      • 10.13.2 ROS-I的安装
    • 10.14 本章小结
  • 第11章 ROS与机器学习
    • 11.1 AlphaGo的大脑——TensorFlow
    • 11.2 TensorFlow基础
      • 11.2.2 核心概念
      • 11.2.3 第一个TensorFlow程序
    • 11.3 线性回归
      • 11.3.2 创建数据集
      • 11.3.3 使用TensorFlow解决线性回归问题
    • 11.4 手写数字识别
      • 11.4.1 理论基础
      • 11.4.2 TensorFlow中的MNIST例程
      • 11.4.3 基于ROS实现MNIST
    • 11.5 物体识别
      • 11.5.1 安装TensorFlow Object Detection API
      • 11.5.2 基于ROS实现动态物体识别
    • 11.6 本章小结
  • 第12章 ROS进阶功能
    • 12.1 action
      • 12.1.1 什么是action
      • 12.1.2 action的工作机制
      • 12.1.3 action的定义
      • 12.1.4 实现action通信
    • 12.2 plugin
      • 12.2.1 工作原理
      • 12.2.2 如何实现一个插件
      • 12.2.3 创建基类
      • 12.2.4 创建plugin类
      • 12.2.5 注册插件
      • 12.2.6 编译插件的动态链接库
      • 12.2.7 将插件加入ROS
      • 12.2.8 调用插件
    • 12.3 rviz plugin
      • 12.3.1 速度控制插件
      • 12.3.2 创建功能包
      • 12.3.3 代码实现
      • 12.3.4 编译插件
      • 12.3.5 运行插件
    • 12.4 动态配置参数
      • 12.4.1 创建配置文件
      • 12.4.2 创建服务器节点
      • 12.4.3 参数动态配置
    • 12.5 SMACH
      • 12.5.1 什么是SMACH
      • 12.5.2 状态机“跑”起来
      • 12.5.3 状态机实现剖析
      • 12.5.4 状态间的数据传递
      • 12.5.5 状态机嵌套
      • 12.5.6 多状态并行
    • 12.6 ROS-MATLAB
      • 12.6.1 ROS-MATLAB是什么
      • 12.6.2 ROS-MATLAB可以做什么
      • 12.6.3 连接MATLAB和ROS
      • 12.6.4 MATLAB可视化编程
      • 12.6.5 创建可视化界面
      • 12.6.6 编辑控件的回调函数
      • 12.6.7 运行效果
    • 12.7 Web GUI
      • 12.7.1 ROS中的Web功能包
      • 12.7.2 创建Web应用
      • 12.7.3 使用Web浏览器控制机器人
    • 12.8 本章小结
  • 第13章 ROS机器人实例
    • 13.1 PR2
      • 13.1.1 PR2功能包
      • 13.1.2 Gazebo中的PR2
      • 13.1.3 使用PR2实现SLAM
      • 13.1.4 PR2机械臂的使用
    • 13.2 TurtleBot
      • 13.2.1 TurtleBot功能包
      • 13.2.2 Gazebo中的TurtleBot
      • 13.2.3 使用TurtleBot实现导航功能
      • 13.2.4 尝试TurtleBot 3
    • 13.3 Universal Robots
      • 13.3.1 Universal Robots功能包
      • 13.3.2 Gazebo中的UR机器人
      • 13.3.3 使用MoveIt!控制UR机器人
    • 13.4 catvehicle
      • 13.4.1 构建无人驾驶仿真系统
      • 13.4.2 运行无人驾驶仿真器
      • 13.4.3 控制无人驾驶汽车
      • 13.4.4 实现无人驾驶汽车的SLAM功能
    • 13.5 HRMRP
      • 13.5.1 总体架构设计
      • 13.5.2 SLAM与导航
      • 13.5.3 多机器人扩展
    • 13.6 Kungfu Arm
      • 13.6.1 总体架构设计
      • 13.6.2 具体层次功能
      • 13.6.3 功夫茶应用展示
    • 13.7 本章小结
  • 第14章 ROS 2
    • 14.1 ROS 1存在的问题
    • 14.2 什么是ROS 2
      • 14.2.1 ROS 2的设计目标
      • 14.2.2 ROS 2的系统架构
      • 14.2.3 ROS 2的关键中间件——DDS
      • 14.2.4 ROS 2的通信模型
      • 14.2.5 ROS 2的编译系统
    • 14.3 在Ubuntu上安装ROS 2
      • 14.3.2 运行talker和listener例程
    • 14.4 在Windows上安装ROS 2
      • 14.4.2 安装Python
      • 14.4.3 安装OpenSSL
      • 14.4.4 安装Visual Studio Community 2015
      • 14.4.5 配置DDS
      • 14.4.6 安装OpenCV
      • 14.4.7 安装依赖包
      • 14.4.8 下载并配置ROS 2
      • 14.4.9 运行talker和listener例程
    • 14.5 ROS 2中的话题通信
      • 14.5.2 创建talker
      • 14.5.3 创建listener
      • 14.5.4 修改CMakeLists.txt
      • 14.5.5 编译并运行节点
    • 14.6 自定义话题和服务
      • 14.6.1 自定义话题
      • 14.6.2 自定义服务
      • 14.6.3 修改CMakeLists.txt和package.xml
      • 14.6.4 编译生成头文件
    • 14.7 ROS 2中的服务通信
      • 14.7.1 创建Server
      • 14.7.2 创建Client
      • 14.7.3 修改CMakeLists.txt
      • 14.7.4 编译并运行节点
    • 14.8 ROS 2与ROS 1的集成
      • 14.8.2 话题通信
      • 14.8.3 服务通信
    • 14.9 本章小结
暂无相关搜索结果!
    展开/收起文章目录

    二维码

    手机扫一扫,轻松掌上学

    《ROS机器人开发实践》电子书下载

    请下载您需要的格式的电子书,随时随地,享受学习的乐趣!
    EPUB 电子书

    书签列表

      阅读记录

      阅读进度: 0.00% ( 0/0 ) 重置阅读进度