前言 在《无人驾驶技术入门(十三)| 手把手教你写卡尔曼滤波器》的分享中,我以激光雷达的数据为例介绍了卡尔曼滤波器(KF)的七个公式,并用C++代码实现了激光雷达障碍物的跟踪问题;在《无人驾驶技术入门(十八)| 手把手教你写扩展卡尔曼滤波器》的分享中,我以毫米波雷达的数据为例,介绍了扩展卡尔曼滤波器(EKF)是如何处理非线性问题的。 无论是卡尔曼滤波器处理线性问题还是扩展卡尔曼滤波
在用于强化学习的自动驾驶仿真场景highway-env(1)中,我们简要说明如何使用该仿真场景。 本文重心为关键的场景配置说明。 I、Observation 所有的环境都包含观测模型。可以通过config来配置对应模型。 观测就是使用一种合适的数学模型将周围交互环境表征出来。对应到强化学习中的state!比如car的位置朝向起点、终点等特征。 1. kinematic 最常
前言 《无人驾驶技术入门(十三)| 手把手教你写卡尔曼滤波器》以一个匀速运动小车的模型为例,让读者从感性上认识了卡尔曼滤波器的基本原理,它包含预测(Prediction)和测量值更新(Measurement update)两大过程。预测和测量值更新的交替执行,实现了卡尔曼滤波在状态估计中的闭环。 随后,我从理性分析的角度,以无人驾驶中激光雷达测量障碍物位置的数据为例,结合卡尔曼滤波所用到的公
在强化学习过程中,一个可交互,可定制,直观的交互场景必不可少。 最近发现一个自动驾驶的虚拟环境,本文主要来说明下如何使用该environment 具体项目的github地址 一、 定制环境 quickly experience 如下代码可以快速创建一个env import gym import highway_env from matplotlib import pyplot as plt
前言 在之前的博文中,有详细说明MDP。本文用一个简单易懂的赌徒问题,作为例子,说明如何实现MDP的相关算法。如何求解出最优策略。 1. 问题描述 赌徒下注猜测一系列抛硬币的结果。 如果正面朝上,则他获得该次下注的钱。如果背面朝上,则失去这一次下注的钱。 当赌徒获利100元,或者输光的时候,游戏结束。 2. 问题建模 该问题可以表述为非折扣的分幕式有限MDP。 状态S:赌徒的赌资 S ∈
前言 上一期的《无人驾驶技术入门(十六)| 初识深度学习之交通标志分类》我以交通标志牌的分类为例,介绍了深度学习中所涉及的有关神经网络的理论知识。包括神经网络中的参数,反向传播原理,训练集、验证集和测试集的区别,通过优化经典的图像分类网络LeNet-5,完成了交通标志牌的分类工作。 在本次分享中,我将以优达学城(Udacity)无人驾驶工程师学位中提供的无人车行为克隆项目为例,介绍深度学习在
引言 卷积神经网络(CNN)已经普遍应用在计算机视觉领域,并且已经取得了不错的效果。图1为近几年来CNN在ImageNet竞赛的表现,可以看到为了追求分类准确度,模型深度越来越深,模型复杂度也越来越高,如深度残差网络(ResNet)其层数已经多达152层。 图1 CNN在ImageNet上的表现(来源:CVPR2017) 然而,在某些真实的应用场景如移动或者嵌入式设备,如此大而复杂的模型是难以
网上资料真的是非常丰富(杂乱),每次想要很清楚地了解一些算法原理都找不到比较有代表性,通俗易懂的。另外,自己以前很多内容看过理解了,当时更多地操作是收藏,但是结果就呵呵了(收藏过的东西基本上很少再去翻看了)。现在决定看过一些比较好的,易于理解的内容尽可能地放进专栏里,虽然很大部分是直接整合别人的文章转载过来,希望可以帮助自己以及跟我一样需要了解这方面内容的朋友。在此也感谢原作者的贡献,也希望
前言 在上两期的《无人驾驶技术入门》中,我以车道线检测为例,介绍了计算机视觉领域一些基本的算法。应用图像处理算法和调试算法阈值,就能实现车道线的检测和跟踪。 车道线检测、跟踪的项目,主要是通过设置ROI(感兴趣区域)、调试算法阈值,通过人为设定规则的方式实现车道线检测。随着人工智能技术的发展,近几年在图像处理领域越来越多地采用深度学习的方式进行图像中物体的识别。使用深度学习的方法识别图像,不仅
训练神经网络,控制固定翼飞机的运动,完成着陆过程的飞行。 强化学习算法为DDPG,网络为3层,其中输入层和1、2层均设置BatchNorm,每层64个neural。 仿真平台为Gazebo,模型基于ethz-asl/rotors_simulator,飞机质量、惯量与重心恒定,气动参数与推力均采用二阶多项式近似,For example, 'c_drag_alpha: [n_0, n_
前言 本文重点介绍MDP,因为MDP是目前最适合表征强化学习问题的模型。 一个具体的赌徒例子,来说明强化学习的算法如何与MDP构建联系,并且求解出最优策略。链接如下:link 一、马尔可夫性 其假设未来的状态仅取决与当前的状态。过去与未来无关。 P [ S t + 1 ∣ S t ] = P [ S t + 1 ∣ S 1 , . . . , S t ] P[S_{t+1}|S_t]=P[
一、强化学习描述 1. 算法定义 强化学习算法是在不确定环境中,通过与环境的不断交互,来不断优化自身策略的算法。 2. 算法特点 数据是序列分布而非独立同分布 agent的行为会影响后续的数据分布 没有supervisor,仅仅是每幕最后的reword 无法立即获得反馈,feedback是延迟的 整个过程是一个序列,比如金融投资,比如控制机器人移动等。整个决策序列最终是要实现综合的re
前言 上一期的《无人驾驶技术入门(十四)| 初识图像之初级车道线检测》,我对计算机视觉技术的一些基本理论和OpenCV库的使用进行了分享。这些技术包括图像的灰度处理、边缘提取算法、霍夫变换直线检测算法以及数据的后处理方法。应用这些技术后,可以将图像中近似直线的车道线检测出来。检测的效果如下图红线所示。 在上一期的末尾,我们从边缘提取算法和霍夫变换直线检测的原理上,讨论了为什么以上算法无法处理光照
前言 无人驾驶技术入门软件篇已经介绍了传感器数据的解析和传感器信息的坐标转换,这两步完成后,我们就会获得某一时刻,自车坐标系下的各种传感器数据,这些数据包括障碍物的位置、速度;车道线的曲线方程、车道线的类型和有效长度;自车的GPS坐标等等。这些信号的组合,表示了无人车当前时刻的环境信息。 由于传感器本身的特性,任何测量结果都是有误差的。以障碍物检测为例,如果直接使用传感器的测量结果,在车辆
前言 在第十一期的分享中,我以CAN总线的解析为例,介绍了如何通过解析CAN总线的消息,获取传感器的数据。这一期的分享将会集中在如何将传感器坐标系下的数据转换到自车坐标系下。 无人车上拥有各种各样的传感器,每个传感器的安装位置和角度又不尽相同。对于传感器的提供商,开始并不知道传感器会以什么角度,安装在什么位置,因此只能根据传感器自身建立坐标系。无人驾驶系统是一个多传感器整合的系统,需要将
前言 到目前为止,无人驾驶技术入门硬件篇的分享已经介绍完了。接下来我将会分享更多和软件相关的内容。这一期的主要内容是——无人驾驶中的CAN(Controller Area Network )总线。 CAN总线在整个无人驾驶系统中有着十分重要的作用。除了在《无人驾驶技术入门(九)——与生俱来的VCU信号》中提到的VCU信号需要通过CAN总线进行传输外,无人车上的某些传感器(如雷达、Mobi
前言 上一期的无人驾驶技术入门,我们以障碍物的跟踪为例,介绍了卡尔曼滤波器的原理、公式和代码的编写。接下来的几期无人驾驶技术入门,我会带大家接触无人驾驶技术的另一个重要的领域——计算机视觉。 在无人驾驶技术入门(五)| 没有视觉传感器,还谈什么无人驾驶?中,我介绍了车载视觉传感器能够实现车道线、障碍物、交通标志牌、可通行空间、交通信号灯的检测等。这些检测结果都离不开计算机视觉技术。 本次分享
前言 前九次的分享,我将无人车上所用到的主流传感器都做了介绍。这些传感器都是看得到,摸不着的实物。在无人车自动驾驶的过程中,还有一种看不见、摸不到的“传感器”也在发挥着巨大作用,它就是高精度电子地图。 高精度电子地图也称为高分辨率地图(HD Map,High Definition Map),是一种专门为无人驾驶服务的地图。与传统导航地图不同的是,高精度地图除了能提供的道路(Road)级别的导
前言 在之前的技术分享中,传感器都是安装在汽车外或车内的。而这次要介绍的是汽车生来就具备的传感器信号,即从汽车控制单元(Vehicle Control Unit,简称VCU)中获取的信号。 VCU的另外一个名字是“行车电脑”,它通过CAN总线与汽车的发动机、变速器、油门踏板、制动踏板、车身控制器等各种电子设备通信,读取各个控制单元的工作状态,并在需要时对它们进行控制。如下图所示。 图片出处:
前言 在上一次分享中,我介绍了毫米波雷达的原理、数据特性及优缺点。毫米波雷达的低环境敏感和低成本的特性使得其在ADAS和自动驾驶领域得到了广泛的应用。 今天要介绍的是一款极其常见的传感器——超声波雷达。如果你觉得超声波雷达有些陌生,那么它还有一个更通俗的名字——倒车雷达。 在倒车入库,慢慢挪动车子的过程中,在驾驶室内能听到”滴滴滴“的声音,这些声音就是根据超声波雷达的检测距离给司机的反馈信息
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信