课程大纲

第01周

介绍

  • 什么让机器人变得智能?

物理机器人与虚拟机器人

  • 智能机器人、智能机器、有感知能力的机器与机器人流程自动化(RPA)等

人工智能(AI)在机器人中的作用

  • 超越“if-then-else”与学习机器
  • AI背后的算法
  • 机器学习、计算机视觉、自然语言处理(NLP)等
  • 认知机器人

大数据在机器人中的作用

  • 基于数据和模式的决策

云与机器人

  • 将机器人与IT连接
  • 构建功能更强大的机器人,使其能够访问更多信息并进行协作

案例研究:工业机器人

  • 机械机器人
    • Baxter
  • 核设施中的机器人
    • 辐射检测与防护
  • 核反应堆中的机器人
    • 辐射检测与防护

机器人的硬件组件

  • 电机、传感器、微控制器、摄像头等

机器人的常见元素

  • 机器视觉、语音识别、语音合成、接近感应、压力感应等

机器人编程的开发框架

  • 开源与商业框架
  • 机器人操作系统(ROS)
    • 架构:工作空间、主题、消息、服务、节点、actionlibs、工具等

机器人编程语言

  • C++用于底层控制
  • Python用于编排
  • 使用Python和C++编程ROS节点
  • 其他语言

物理机器人模拟工具

  • 商业与开源的3D模拟与可视化软件

第02周

准备开发环境

  • 软件安装与设置
  • 有用的包与工具

案例研究:机械机器人

  • 核技术领域的机器人
  • 环境系统中的机器人

机器人编程

  • 使用Python和C++编程节点
  • 理解ROS节点
  • ROS中的消息与主题
  • 发布/订阅范式
  • 项目:使用真实机器人进行Bump & Go
  • 故障排除
  • 使用Gazebo/ROS模拟机器人
  • ROS中的帧与参考变化
  • 使用OpenCV处理摄像头的2D信息
  • 激光的信息处理
  • 项目:通过颜色安全跟踪物体
  • 故障排除

第03周

机器人编程(续...)

  • ROS中的服务
  • 使用PCL处理RGB-D传感器的3D信息
  • 使用ROS进行地图与导航
  • 项目:在环境中搜索物体
  • 故障排除

机器人编程(续...)

  • ActionLib
  • 语音识别与语音生成
  • 使用MoveIt!控制机械臂
  • 控制机器人颈部以实现主动视觉
  • 项目:搜索与收集物体
  • 故障排除

测试你的机器人

  • 单元测试

第04周

通过深度学习扩展机器人的能力

  • 感知——视觉、音频与触觉
  • 知识表示
  • 通过自然语言处理(NLP)进行语音识别
  • 计算机视觉

深度学习速成课程

  • 人工神经网络(ANNs)
  • 人工神经网络与生物神经网络的比较
  • 前馈神经网络
  • 激活函数
  • 训练人工神经网络

深度学习速成课程(续...)

  • 深度学习模型
    • 卷积网络与循环网络
  • 卷积神经网络(CNNs或ConvNets)
    • 卷积层
    • 池化层
    • 卷积神经网络架构

第05周

深度学习速成课程(续...)

  • 循环神经网络(RNN)
    • 训练RNN
    • 在训练期间稳定梯度
    • 长短期记忆网络
  • 深度学习平台与软件库
    • ROS中的深度学习

在机器人中使用大数据

  • 大数据概念
  • 数据分析方法
  • 大数据工具
  • 识别数据中的模式
  • 练习:在大数据集上进行NLP与计算机视觉

在机器人中使用大数据(续...)

  • 大数据集的分布式处理
  • 大数据与机器人的共存与相互促进
  • 机器人作为数据生成器
    • 距离测量传感器、位置、视觉、触觉传感器及其他模态
  • 理解感知数据(感知-计划-行动循环)
  • 练习:捕获流数据

编程自主深度学习机器人

  • 深度学习机器人组件
  • 设置机器人模拟器
  • 使用Caffe运行CUDA加速的神经网络
  • 故障排除

第06周

编程自主深度学习机器人(续...)

  • 识别照片或视频流中的物体
  • 使用OpenCV启用计算机视觉
  • 故障排除

数据分析

  • 使用机器人收集与组织新数据
  • 理解数据的工具与流程

部署机器人

  • 将模拟机器人过渡到物理硬件
  • 在物理世界中部署机器人
  • 监控与维护现场机器人

保护你的机器人

  • 防止未经授权的篡改
  • 防止黑客查看与窃取敏感数据

协作构建机器人

  • 在云端构建机器人
  • 加入机器人社区

机器人在科学与能源领域的未来展望

总结与结论

要求

  • C或C++编程经验
  • Python编程经验(有用但非必需,可作为课程内容教授)
  • Linux命令行经验

受众

  • 开发者
  • 工程师
  • 科学家
  • 技术员
 120 小时

客户评论 (1)

即将举行的公开课程

课程分类