发明名称 一种沙质环境中基于视觉的月球车定位方法
摘要 本发明公开了一种在沙质环境中基于视觉的月球车定位方法,包括以下步骤:特征点提取与增强;特征点匹配与跟踪;运动估计。通过上述步骤获取车体位置和方向的变化。采用本发明的定位算法避免了沙质环境的月球表面特征点稀少且不够强壮的问题,保证了在沙质环境中所提取的特征点的数量和质量,提高运动估计的精度,从降维、合理选择搜索窗口和预估搜索方向等角度出发,提高特征匹配与跟踪的效率,采用基于随机采样序列RANSAC的方法,能够有效解决错误数据过多带来的不收敛问题,提高里程计对不收敛问题的鲁棒性。
申请公布号 CN102261916B 申请公布日期 2012.08.01
申请号 CN201110186905.9 申请日期 2011.07.05
申请人 大连理工大学 发明人 李琳辉;连静;李明;迟春华;赵一兵;郭烈
分类号 G01C21/20(2006.01)I 主分类号 G01C21/20(2006.01)I
代理机构 大连东方专利代理有限责任公司 21212 代理人 李洪福
主权项 一种在沙质环境中基于视觉的月球车定位方法,利用月球车定位系统对月球车进行定位,所述的月球车定位系统包括避障立体视觉系统、计算机系统(4)及其电源系统,所述的避障立体视觉系统包括一对CCD图像传感器(2)、一对广角镜头(1)和图像采集卡(3),其中CCD图像传感器(2)作用是把图像像素转换成数字信号,广角镜头(1)作用是近距离拍摄大范围景物,图像采集卡(3)将图像信号采集到电脑中,以数据文件的形式保存在硬盘上;所述的计算机系统(4)用来处理图像采集卡(3)采集到的图像数据,所述的电源系统为避障立体视觉系统和计算机系统(4)提供电能;其特征在于:具体定位方法包括以下步骤:A、特征点提取与增强A1、计算机系统(4)采集图像中的像素点,利用Harris角点检测算子的卷积计算每个像素点的能量函数E的值后,首先按照非最大值抑制原则,取3×3窗口中各点值最大的像素点作为候选角点,并将候选角点按E的值由高到低进行排序,并设定能量函数的最小阈值;然后,设定一个候选角点间的最小距离,以其为约束条件对顺序排列的各候选角点进行筛选,提取所需的角点数目n;若采集到的角点个数n不足,则转步骤A2,否则,转步骤B;A2、计算机系统(4)对局部图像进行增强,采用形态学的Top‑Hat顶帽变换来提高图像每个像素点的临域梯度,对图像f进行白Top‑Hat顶帽变换和黑Top‑Hat顶帽变换,分别用WTH和BTH来表示;其中:f为图像灰度帧;白Top‑Hat顶帽变换定义为原始图像f与开运算γ(f)的差,即WTH(f)=f‑γ(f)黑Top‑Hat顶帽变换定义为原始图像f与闭运算φ(f)的差,即BTH(f)=φ(f)‑f根据WTH变换和BTH变换能分别检测出图像峰和谷的性质,将WTH变换的结果与原图像相加,就会增加图像中亮目标,从上面相加的结果中减去BTH变换的结果,就会加强图像中的暗目标,从而提高整幅图像的对比度,用kTH表 示运算结果为:kTH=3f‑γ(f)‑φ(f)返回步骤A1,直到采集到符合条件的像素点数为止;B、特征点匹配与跟踪采用对极线约束匹配方法,为提高基础矩阵求解的精度以及对误匹配的鲁棒性,计算机系统(4)采用基于随机采样序列RANSAC的方法求取基础矩阵:B1、提取利用Harris角点检测算子所提取的Harris角点作为待匹配特征点,以相似性度量函数 <mrow> <msub> <mi>&gamma;</mi> <mi>SSD</mi> </msub> <mrow> <mo>(</mo> <mi>s</mi> <mo>,</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>&Element;</mo> <msub> <mi>f</mi> <mi>mw</mi> </msub> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msup> <mi>I</mi> <mi>A</mi> </msup> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>-</mo> <msup> <mi>I</mi> <mi>B</mi> </msup> <mrow> <mo>(</mo> <mi>x</mi> <mo>+</mo> <mi>dx</mi> <mo>,</mo> <mi>y</mi> <mo>+</mo> <mi>dy</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow>为判断依据,来确定匹配特征点数据集;式中,I表示匹配窗口的灰度值,fmw表示匹配窗口,上标A和B分别表示同时刻左右两个摄像头拍摄的图像;B2、在待匹配特征点数据集中,取基本子集数目为p,对它采用最小二乘法计算基础矩阵,评估基础矩阵的相容性,计算所有数据点像素与其对应极线的距离,大于某一阈值则被分类为错误匹配点,小于某一阈值则被分类的为正确匹配点;如此重复m次,如果错误点占数据集的比例ε发生变化,就使用公式Г=1‑(1‑(1‑ε)p)m做相应的调整,其中Г为至少取得一个良性基本子集的概率,应大于0.95,m表示循环停止条件Г≥0.95时所循环的次数,p表示基本子集中数据点的数目,p大于等于8;B3、通过与前一次循环的比较,保留具有最多正确匹配点数目的基础矩阵,并对所有正确匹配点重新计算基础矩阵;通过基础矩阵的求解,可以将特征点匹配的搜索空间从二维降到一维的对极线上,提高匹配和跟踪效率;C、运动估计C1、根据立体视觉原理,计算机系统(4)确定左、右图像上特征点的对应关系后,依据摄像机标定结果,获取该特征点在车体坐标系下的三维坐标;定义前一时刻和当前时刻同一特征点i对应的三维坐标分别为Ppi=(xpi,ypi,zpi)T和Pci=(xci,yci,zci)TC2、引入随机采样序列RANSAC思想,寻找坐标系间的旋转矩阵R和平移向量T,实现过程如下:C21、在数据集中,取基本子集p,p大于或者等于4;C22、对基本子集采用奇异值分解法计算旋转矩阵R和平移向量T;C23、定义误差阈值,检测所有匹配点对旋转矩阵R和平移向量T的支持程度,统计内点数;C24、重复步骤C21‑C23m次,找到内点数最多的旋转矩阵R和平移向量T,并将这些内点作为新的匹配点集,采用奇异值分解法求解新的旋转矩阵R和平移向量T;C3、确保找到新的坐标系间的旋转矩阵R和平移向量T,使得式 <mrow> <mi>E</mi> <mrow> <mo>(</mo> <mi>R</mi> <mo>,</mo> <mi>T</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msup> <mrow> <mo>|</mo> <mo>|</mo> <msub> <mi>P</mi> <mi>pi</mi> </msub> <mo>-</mo> <mrow> <mo>(</mo> <msub> <mi>RP</mi> <mi>ci</mi> </msub> <mo>+</mo> <mi>T</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow>最小,从而获取车体位置和方向的变化,其中N为跟踪上的特征点的个数。
地址 116024 辽宁省大连市甘井子区凌工路2号