其他分享
首页 > 其他分享> > 千寻 无人驾驶 深度学习网络 调研

千寻 无人驾驶 深度学习网络 调研

作者:互联网

  1. RTK GPS和千寻位置服务

高精度定位简介

传统意义上的卫星定位,一般是通过接收机直接接收卫星信号,通过简单的定位算法获取位置信息,我们常用的手机就是这个原理,这种就是通常意义上的单点定位。

但实际上,卫星工作受多因素干扰,比如:卫星信号穿过地球对流层、电离层时会发生折射,射到建筑上会发生反射,这都会导致信号传播时间计算有误,继而带来距离计算错误,从而产生几十米的定位误差。为了消除这种误 差,一般会采用差分定位,具体来说就是在固定的位置建立一些固定的观测站,同时观测卫星的信号,然后通过观测量建立误差的数学模型,再将差分改正数播发给待测终端。目前通用的 RTCM,就是差分改正数的格式。

终端根据自己的卫星观测量,结合收到的差分改正数,通过算法可以获得高精度的定位结果,其中最常用的就是 RTK(Real Time Kinetic)算法,通过这种算法,定位精度可以达到厘米级。

千寻全国一张网

刚才提到的差分定位技术,就是本文所讲的高精度定位核心。传统的测量测绘应用,往往是自己建立单独的一个基站,通过电台、小无线等本地通信方式,将差分改正数 RTCM 播发给终端。这种方式由于各种限制,只能覆盖很小的区域,无法在大范围使用。

目前,千寻位置在全国建立起了超 2400 个地基增强站。依托国家北斗地基增强系统“全国一张网”和不断升级的自研算法,千寻位置已可有效克服复杂环境影响,向全国大部分地区提供实时厘米级的高精准定位服务,并可通过互联网平台实现 7*24 小时数据播发。因此用户终端只要通过 2G/3G/4G 网络连接千寻服务器,上报自己的概略位置,服务器就会把终端所在位置附近基站差分改正数据下发到终端,用户就可以长时间的获取 RTCM 数据,完成终端侧的高精度定位。

用户需要接入千寻服务器获取 RTCM 数据,只要将千寻提供的 SDK 集成到自己系统中,输入千寻账号,就可以登录千寻服务器,获取 RTCM 数据。

下图上面每一个小的红点,都是一个北斗地基增强站,基本覆盖全国,包括西沙群岛、南沙群岛。

千寻服务接入方式

从目前来看,千寻位置提供的高精度服务目前接入方式有两种,SDK 及手动配置。

手动配置方式通过差分密码及帐号向千寻位置请求定位服务,适用于本身已打通 NTRIP 协议(NTRIP是在互联网上进行RTK数据传输的协议。所有的 RTK数据格式(NCT,RTCM,CMR,CMR+等等)都能被传输。)的终端小批量接入,从而为其提供更加专业的高精度服务。

而 SDK 是为不同的软硬件平台及操作系统提供特定的开发工具包,开发者可以利用千寻位置提供的 SDK 到批量生产的设备上,即可实现通过设备来自动连接千寻位置提供的定位服务,适用于终端大批量接入千寻服务以及终端未打通 NTRIP 协议的场景。

此前千寻位置在 iOS 以及 Android 上推出了差分数据 SDK,助力开发者接入千寻位置的高精度服务以及高精度定位服务,用户可通过千寻位置官方网站中[开发-差分数据 SDK]进入获取接入高精度定位服务的相关使用文档及 SDK 包。

 

 

先科普一下高精度定位的原理。支持卫星定位的终端,通过接收卫星信号,获得所在地点的粗位置数据,通过互联网,将这个位置数据上传到千寻位置平台,一同上传的还有Ntrip协议参数。千寻位置平台获得位置数据后,通过互联网下播所在大致位置的差分数据。这个时候需用到终端的差分解算功能,结合原始观测值和差分数据,进行解算,实现纠偏,最终获取高精度的位置坐标。

过去,测绘是时空服务最主要甚至唯一的应用场景,经过长时间的磨合,测绘终端能达到的精度与千寻服务定位精度基本一致,定位精度水平小于 2 厘米,高程小于 4 厘米。

但是,其他行业对时空服务的精度要求与测绘并不相同。更何况,从技术上说,高精度定位的结果,除了与千寻位置提供的高精度定位信号有关,与用户自己所用的软件、硬件等多方面都有关系,还有赖于终端对千寻位置服务的支持程度,以及终端本身的算法能力。

因此,高精度定位服务的精度,与使用千寻位置服务的终端,如儿童手表、无人机、汽车等,能达到的精度,并不能直接划上等号。

更重要的是,如今时空服务已经运用到了更多场景中,不同场景对时空服务提出了更高的要求。经过三年多努力,千寻位置总结出更加立体的时空服务标准,除了定位精度外,还包括可用率、服务范围、完好性等。

 

为了更好服务客户接入千寻高精度服务,千寻现在提供更多的平台接入方式:Linux 及嵌入式 STM32 平台。

Beta 版本 Linux SDK:可以通过千寻位置官网[开发-差分数据 SDK]获取,支持 arm-none-linux-gnueabi-gcc 编译器,如有其他编译器的 SDK 需求,请联系我们提供。

嵌入式 STM32 平台 SDK:由于嵌入式平台特殊性,我们暂时无法提供通用的嵌入式平台 SDK,如需使用 STM32 SDK,请联系我们,提供适合您的 SDK。

================================================================================

 

RTK (Real Time Kinematic), 即载波相位差分技术,它能够实时地提供测站点在指定坐标系中的三维定位结果,并达到厘米级精度。在RTK作业模式下,基站采集卫星数据,并通过数据链将其观测值和站点坐标信息一起传送给移动站,而移动站通过对所采集到的卫星数据和接收到的数据链进行实时载波相位差分处理(历时不足一秒),得出厘米级的定位结果。

 

千寻位置服务官网:https://www.wzw.cn/

千寻位置支持北斗卫星系统、GPS、GLONASS、Galileo四大卫星导航系统。千寻位置已经可以在全国大部分区域提供动态厘米级和静态毫米级的定位能力,并且致力于将高精度定位打造成公共服务。

http://5b0988e595225.cdn.sohucs.com/images/20190701/0a2daac936ba47439c7f90e3fbcf6bcb.png

http://5b0988e595225.cdn.sohucs.com/images/20190701/81431a5aea25434da932501d69cb223e.png

千寻位置服务相比于RTK GPS的好处

  1. 工作地点变化了,必须自己到已知点去求取转换参数,以使得GPS坐标能与当地坐标系统相符,这个过程不但耗费时间,也很耗费精力。千寻位置提供的厘米级定位数据,本身就是符合2000国家大地坐标系的,因此省去了重复参数求取的过程,将实际作业时间缩短很多。
  2. 传统RTK技术,采用数传电台作为差分信号的载体,受无线电技术的束缚,作业的距离有限,大功率电台的一般有效作用距离也只能达到10公里,而且定位精度会随流动站与基准站的距离增大而逐渐下降,定位稳定性也会较差。另外,采用传统RTK技术,也容易在基准站坐标设置、坐标转换等方面出错,导致错误结果或返工。千寻位置的厘米级定位服务信号传输不受距离限制,在覆盖区内有均匀的精度,且有统一的坐标基准,保证了结果的正确性和一致性,成熟的移动通讯技术也保证了信号质量。

 

  1.  无人驾驶领域,视觉感知常用什么深度神经网络模型框架

在无人驾驶系统中,我们通常使用图像视觉来完成道路的检测和道路上目标的检测。道路的检测包含对道路线的检测(Lane Detection),可行驶区域的检测(Drivable Area Detection);道路上路标的检测包含对其他车辆的检测(Vehicle Detection),行人检测(Pedestrian Detection),交通标志和信号的检测(Traffic Sign Detection)等所有交通参与者的检测和分类。

车道线的检测涉及两个方面:第一是识别出车道线,对于弯曲的车道线,能够计算出其曲率,第二是确定车辆自身相对于车道线的偏移(即无人车自身在车道线的哪个位置)。一种方法是抽取一些车道的特征,包括边缘特征(通常是求梯度,如索贝尔算子),车道线的颜色特征等,使用多项式拟合我们认为可能是车道线的像素,然后基于多项式以及当前相机在车上挂载的位置确定前方车道线的曲率和车辆相对于车道的偏离。

可行驶区域的检测目前的一种做法是采用深度神经网络直接对场景进行分割,即通过训练一个逐像素分类的深度神经网络,完成对图像中可行驶区域的切割。

交通参与者的检测和分类目前主要依赖于深度学习模型,常用的模型包括两类:

以RCNN为代表的基于Region Proposal的深度学习目标检测算法(RCNN,SPP-NET,Fast-RCNN,Faster-RCNN等);以YOLO为代表的基于回归方法的深度学习目标检测算法(YOLO,SSD等)。

LeNet AlexNet GoogLeNet VGGNet ResNet等经典网络结构

https://blog.csdn.net/fzp95/article/details/82988335

PointNet:基于深度学习的3D点云分类和分割模型

https://www.jianshu.com/p/6a0fc51187c1

https://www.jiqizhixin.com/articles/2019-05-10-13

 

Pointnet的基本思想是对输入点云中的每一个点学习其对应的空间编码,之后再利用所有点的特征得到一个全局的点云特征。这里欠缺了对局部特征的提取及处理,比如说点云空间中临近点一般都具有相近的特征,同属于一个物体空间中的点的概率也很大,就好比二维图像中,同一个物体的像素值都相近一样。

再者现实场景中的点云往往是疏密不同的,而Pointnet是基于均匀采样的点云进行训练的,导致了其在实际场景点云中的准确率下降。

Pointnet++就上述提出了改进,解决了两个问题

1:如何对点云进行局部划分

2:如何对点云进行局部特征提取

上述两个问题其实是相关联的。

 

3D点云检测网络VoxelNet

VoxelNet是一个不错的点云检测网络,直接利用原始点云信息,进行特征提取。之后进行回归操作。其实最主要的还是前面的体素化到VFE特征提取。

 

PointConv

 

贾佳亚等提出Fast Point R-CNN,利用点云快速高效检测3D目标

本文提出了一个统一、高效且有效的,基于点云的三维目标检测框架。其两阶段方法采用体素表示和原始点云数据并充分利用了它们的优势。第一阶段的网络,以体素表示为输入,只包含轻量卷积运算,产生少量高质量的初始预测。初始预测中每个点的坐标和索引卷积特征与注意机制有效融合,既保留了准确的定位信息,又保留了上下文信息。第二阶段研究内部点及其融合特征,以进一步完善预测。该方法在 KITTI 数据集上进行了评估,包括 3D 和鸟瞰图(BEV)检测,以 15FPS 的检测速率达到了最先进的水平。

 

DenseNet 

 

  1. 用于无人驾驶的深度相机

并未查索到,目前市面上的深度相机也是之前调研的那些。

 

标签:定位,无人驾驶,高精度,位置,差分,千寻,调研,SDK
来源: https://blog.csdn.net/qq_24624539/article/details/104637802