一种通过信标识别确定车辆位置姿态的方法
【技术领域】
[0001] 本发明设及一种车辆姿态计算方法,具体设及一种通过信标识别确定车辆位置姿 态的方法。
【背景技术】
[0002] 近年,无人驾驶车辆发展愈发迅猛,无人驾驶车辆在行驶过程中,需要时刻知道车 辆的位置及其姿态信息,为车辆控制提供重要依据,因此获取车辆的位置及姿态信息在自 动驾驶中就显得尤为重要。
[0003] 在现有的类似技术中,GPS(Global化sitioning System)全球定位系统是由美国 国防部研制建立的一种具有全方位、全天候、全时段、高精度的卫星导航系统,能为全球用 户提供低成本、高精度的Ξ维位置、速度和精确定时等导航信息,是卫星通信技术在导航领 域的应用典范,就目前在我国市面上的利用GI^定位系统的产品而言,其定位精度无法确定 车辆的位置及姿态信息,而且在类似于室内、地下等封闭的环境中GPS受限很大,或者根本 无法使用;
[0004] 航迹推算技术最初用于海上的传播,是根据罗经和计程仪所指示的航向、航程,W 及船舶操纵要素和风流要素等在不借助外界导航物标的条件下,求取航迹和船位的方法。 随着技术的发展,现在已经把它用于给陆地上移动设备定位。根据移动设备上安装的传感 器(航向巧螺、速度计、里程计等),从而计算出移动设备的位置坐标。在短时间内运些传感 器的测量精度比较高,但对于长时间的定位,往往会造成累积误差,影响定位精度。另外航 迹推算定位技术不能进行Ξ维定位;
[0005] 机器视觉是指通过CCD(化arge-coupled Device)或其他视觉传感器感知周围环 境来进行定位,运类定位通常只能用于特定的工作环境。装有机器视觉定位系统的移动设 备过对周围环境设定一些具有明显特征点的路标识别和跟踪,结合特定标识景物的位置信 息,进而得到自身位置信息,该方法精度较高,但是在光线不足的环境中就无法精确识别, 造成定位失败。
【发明内容】
[0006] 为了解决上述问题,针对W上技术的局限性,本发明公开了一种通过信标识别确 定车辆位置姿态的方法,所述方法选择交叉二五码作为信标安装在车上,通过雷达扫描信 标,对编码信标进行数据处理和边沿识别与匹配,获取信标的"条"和"空"信息,最后对编码 信息解码并计算,获取航向角和车辆位置坐标;
[0007] 进一步地,所述方法包括W下步骤:
[000引步骤一:设计编码信标
[0009] 所述步骤一具体包括:选择编码方式、设计信标结构、制作和摆放信标;
[0010] 步骤二:识别编码信标
[0011] 所述步骤二具体包括:数据预处理、调整数据图像、去除噪点、擅染数据点、边沿识 别与匹配、信标解码和匹配编码字典;
[0012] 步骤Ξ:获取定位信息
[0013] 所述步骤Ξ具体包括:航向角计算和车辆位置坐标计算;
[0014] 3、进一步地,所述步骤一中:
[0015] 选择编码方式:使用交叉二五码作为信标的编码方式;
[0016] 设计信标结构:信标整体长为780mm-1180mm,高为40mm-60mm,信标宽条宽度为 100mm,信标窄条宽度为40mm,宽空的宽度为100mm,窄空的宽度为40mm,材料为侣合金或不 易发生形变的合金;
[0017] 制作和摆放信标:信标上的条和空的安排顺序为编码方向,记为DC,编码方向包括 从左到右和从右到左;信标相对于车辆的位置为信标相对位置,记为化,信标相对位置包括 左侧和右侧;信标安装时候右侧查看信标的摆放方向为安装方向,记为DI,安装方向包括顺 编码方向和逆编码方向,信标和车体的关系记为一个Ξ元组<DC,化,DI〉;
[0018] 进一步地所述步骤二中数据预处理包括:
[0019] a.选择有效数据:提取雷达扫描结果中-5°~75° ,105°~185°的数据;
[0020] b.数据坐标转换:激光雷达扫描器的原始数据为扫描器在每束激光方向上距信标 的距离,所W,令雷达的原始数据为极坐标系中的点集,原点为雷达点,再把每个障碍点转 换为直角坐标系中的一个点,转换公式如下:
[0021 ] X二L · cos白
[0022] y二L · sin白
[0023] 式中X和y分别为障碍点的X和Y坐标,L代表障碍点所对应的激光束的长度,Θ代表 该激光束在极坐标系中的角度。由极坐标系可W推得转换后的直角坐标系原点为雷达点X 轴为极坐标系0°角方向;
[0024] 进一步地,所述步骤二中调整数据图像包括识别宽带与窄带:计算信标每条带的 宽度,每条带开始的点的Y坐标和结束的点的Y坐标相减,设每个数据点的X坐标值都是随机 变量X的取值,简单相关系数的计算公式如下:
[0025]
[0026] 按极坐标的方式旋转图像,然后按照直角坐标的方式计算旋转后的图像的相关系 数,寻找到一个相关系数最小的图像,起始结束点的Y坐标相减,计算带的宽度;
[0027] 进一步地,所述步骤二中去除噪点包括:
[00%] a.使用极值确定波形的主干;
[0029] b.使用波形的主干和原始数据进行反向擅染,还原信标区域的点;
[0030] C.使用数据图像,将其看做一个函数的图像的,Y坐标为自变量,X坐标为因变量, 噪点是函数上升和下降过程中的点,保留函数图像上的局部极值点,得到波形主干,所述波 形主干是不含噪点的;
[0031] 所述擅染数据点方法为把主干波形图上距主干点距离在一定阔值W内的点记做 有效数据点,阔值取20mm;
[0032] 进一步地,所述步骤二中边沿识别与匹配方法为:使用数据图形识别信标,用"条" 和"条"之间的间距来确定"空"的存在,找到识别信标上的每一个"条"的开始数据点和结束 数据点,令"空"到信标"条"的边沿为"上升沿","条"到"空"的边沿为"下降沿",使用一对 "上升沿"和"下降沿"来界定每一个"条","沿"的识别即是信标的识别,识别"沿"的方法如 下:
[0033] a.识别出来的沿的数目为2N个,则信标含有N个"条",界定N个"条"需要2N个"沿";
[0034] b. 2N个"沿"W "上升禪'开始"下降沿"结束,交替变化的序列;
[0035] C.两个"沿"之间的距离有一个取值区间(区间视扫描器误差和算法误差而定),距 离不在取值区间的"上升沿"和"下降沿"不属于界定信标的"沿"序列;
[0036] d.经过a.b.c的筛选,匹配出存在信标的"沿"序列,定义为候选序列;
[0037] 进一步地,所述步骤二中信标解码包括:
[0038] a.计算候选"沿"序列界定的信标的"条"和"空"的宽度,所述宽度用两个"沿"的纵 坐标之差表示;
[0039] b.根据定义信标上的宽条和窄条的宽度,识别候选"沿"界定的每一个"条"或"空" 是宽还是窄;
[0040] C.对候选"沿"序列界定的信标的"条"和"空"的宽度进行二值化,识别时,不区分 "条"和"空",只区分宽和窄,使用1代表宽,0代表窄,将宽度序列转化为一个二值序列,其中 奇数位代表"条",偶数位代表"空";
[0041] d.根据交叉二五码的编码方法和二值序列验证候选序列是否为真正的信标序列;
[0042] 所述匹配编码字典方法为解码时只关注信标的数据区域,去掉信标的起始符和终 止符,关注二值化序列的中间10位,把运10位当做一个二进制的数看待,算出运个序列所代 表的十进制数字,穷举每一个信标的编码序列,找出信标的编码所代表的十进制数字,然后 再对运些十进制数字进行一次反向映射,解码时把数据区域的二值化序列当成一个二进制 数计算,然后在反向映射中找出信标的编码;
[0043] 进一步地,所述步骤Ξ中航向角计算包括:
[0044] a.雷达扫描信标数据;
[0045] b.相关系数优化:对数据点所在的坐标系进行旋转,增大变量间的相关系数,拟合 得到更精确的值;
[0046] C.线性拟合:使用最小二乘法,假设信标上的点集合为{(Χ1,71),(Χ2,72^··(Χη, yn)},需要拟合的直线的方程为y = a〇+ai X X,最小二乘法实际上是最小化实测值和计算值 之间的离差的平方和,公式如下:
[0047]
[0048] 其中,y功实测值,yj为计算值;
[0049