自身位置计算装置以及自身位置计算方法转让专利

申请号 : CN201480075547.6

文献号 : CN105993042B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 山口一郎西内秀和

申请人 : 日产自动车株式会社

摘要 :

一种自身位置计算装置,包括:对车辆周围的路面投光图案光的投光器(11);安装在车辆上,拍摄包含被投光了图案光的区域的车辆周围的路面而获取图像的摄像单元(12);根据摄像单元(12)获取的图像中的图案光的位置,计算车辆对于路面的姿态角的姿态角计算单元(22);根据摄像单元(12)获取的图像,在被投光了图案光的区域的周围设定特征点检测区域,在该特征点检测区域中检测路面上的多个特征点的特征点检测单元(23);根据路面上的多个特征点的时间变化,计算车辆的姿态变化量的姿态变化量计算单元(24);以及通过对车辆对于路面的初始位置以及姿态角不断加上姿态变化量,计算车辆的当前位置以及姿态角的自身位置计算单元(25)。

权利要求 :

1.一种自身位置计算装置,其特征在于,包括:投光器,对车辆周围的路面投光图案光;

摄像单元,安装在所述车辆上,拍摄包含被投光了所述图案光的区域的车辆周围的路面,获取图像;

姿态角计算单元,根据所述摄像单元获取的图像中的所述图案光的位置,计算车辆对于所述路面的姿态角;

特征点检测单元,根据所述摄像单元获取的图像,在被投光了所述图案光的区域的周围设定特征点检测区域,在该特征点检测区域内检测所述路面上的多个特征点;

姿态变化量计算单元,根据所述路面上的多个特征点的随时间的位置变化,计算所述车辆的姿态变化量;以及自身位置计算单元,通过对车辆对于所述路面的初始位置以及姿态角不断加上所述姿态变化量,计算所述车辆的当前位置以及姿态角。

2.如权利要求1所述的自身位置计算装置,其特征在于,所述图案光由多个亮点光构成,

所述特征点检测单元在被投光了所述亮点光的各个区域的周围设定特征点检测区域。

3.如权利要求1或2所述的自身位置计算装置,其特征在于,所述特征点检测单元相对被投光了所述图案光的区域在车宽方向上设定所述特征点检测区域。

4.如权利要求1或2所述的自身位置计算装置,其特征在于,所述特征点检测单元根据所述车辆的横向速度,在车宽方向上加宽所述特征点检测区域。

5.如权利要求1或2所述的自身位置计算装置,其特征在于,所述特征点检测单元根据车速,在车辆前后方向上加宽所述特征点检测区域。

6.一种自身位置计算方法,其特征在于,包括:从车辆上安装的投光器对车辆周围的路面投光图案光的步骤;

通过所述车辆上安装的摄像单元拍摄包含被投光了所述图案光的区域的车辆周围的路面,获取图像的步骤;

所述车辆的控制单元根据所述获取的图像中的所述图案光的位置,计算车辆对于所述路面的姿态角的步骤;

所述控制单元根据所述获取的图像,在被投光了所述图案光的区域的周围设定特征点检测区域,在该特征点检测区域内检测所述路面上的多个特征点的步骤;

所述控制单元根据所述路面上的多个特征点的随时间的位置变化,计算所述车辆的姿态变化量的步骤;以及所述控制单元通过对车辆对于所述路面的初始位置以及姿态角加上所述姿态变化量,计算所述车辆的当前位置以及姿态角的步骤。

说明书 :

自身位置计算装置以及自身位置计算方法

技术领域

[0001] 本发明涉及自身位置计算装置以及自身位置计算方法。

背景技术

[0002] 已知获取由安装在车辆上的摄像机拍摄的车辆近旁的图像,根据图像的变化求车辆的移动量的技术(参照专利文献1)。在专利文献1中,为了在车辆的低速且微妙的移动中也高精度地求出移动量,从图像中检测特征点,求出特征点的位置,由特征点的移动方向以及移动距离(移动量)求出车辆的移动量。
[0003] 而且,已知使用投光栅格图案(图案光)的激光投光器进行三维计量的技术(参照专利文献2)。在专利文献2中,用摄像机拍摄图案光的投光区域,从拍摄的图像提取图案光,由图案光的位置求出车辆的行为。
[0004] 现有技术文献
[0005] 专利文献
[0006] 专利文献1:特开2008-175717号公报
[0007] 专利文献2:特开2007-278951号公报

发明内容

[0008] 但是,假设要在与专利文献2中记载的图案光的投光区域相同的区域,通过专利文献1中记载的技术检测路面上的特征点的情况下,难以进行图案光和特征点的判别。另一方面,要在离开图案光的投光区域的区域检测路面上的特征点时,特征点的移动量的计算误差变大。
[0009] 鉴于上述问题点,本发明的目的是,提供可以与图案光相区别而容易地判别特征点、可以高精度地计算车辆的自身位置的自身位置计算装置以及自身位置计算方法。
[0010] 本发明的第一方式的自身位置计算装置对车辆周围的路面投光图案光,拍摄包含被投光了图案光的区域的车辆周围的路面,获取图像,根据获取的图像中的图案光的位置计算车辆对于路面的姿态角,根据获取的图像,在被投光了图案光的区域的周围设定特征点检测区域,在该特征点检测区域中检测路面上的多个特征点,根据路面上的多个特征点的时间变化计算车辆的姿态变化量,通过对车辆对于路面的初始位置以及姿态角不断加上姿态变化量,计算车辆的当前位置以及姿态角。

附图说明

[0011] 图1是表示第1实施方式的自身位置计算装置的整体结构的方框图。
[0012] 图2是表示一例将投光器以及摄像机安装在车辆上的方法的外观图。
[0013] 图3(a)是表示使用投光器和摄像机,计算被照射了亮点光的路面上的位置的状况的图,图3(b)是表示根据在与被照射了图案光的区域不同的区域中检测到的特征点的时间变化求出摄像机的移动方向的状况的图。
[0014] 图4是表示对摄像机获取的图像实施了二值处理的图案光的图像的图,图4(a)是表示图案光整体的图,图4(b)是表示将一个亮点光扩大表示的图,图4(c)是表示亮点光的重心位置的图。
[0015] 图5是用于说明计算距离以及姿态角的变化量的方法的示意图。
[0016] 图6是表示在图像上检测到的特征点的图,图6(a)是表示在时刻t获取的第1帧(图像)的图,图6(b)是表示在时刻t+Δt获取的第2帧的图。
[0017] 图7(a)是表示由摄像机获取的图像的图,图7(b)是表示对由摄像机获取的图像实施了二值处理的图案光的图像的图。图7(c)是表示特征点的检测结果的图。
[0018] 图8是表示投光了5×5的亮点光的图案光区域的概略图。
[0019] 图9是表示一例在投光了5×5的亮点光的图案光区域的周围设定的特征点检测区域的概略图。
[0020] 图10是用于说明一例第1实施方式的自身位置计算方法的流程图。
[0021] 图11是表示一例密集地投光了亮点光的图案光区域的概略图。
[0022] 图12是表示一例投光了栅格状的图案光的图案光区域的概略图。
[0023] 图13是表示一例在密集地投光了亮点光的图案光区域的周围设定的特征点检测区域的概略图。
[0024] 图14是表示一例在投光了5×5的亮点光的图案光区域的左右设定的特征点检测区域的概略图。
[0025] 图15是表示另一例在密集地投光了亮点光的图案光区域的左右设定的特征点检测区域的概略图。
[0026] 图16是表示第2实施方式的自身位置计算装置的整体结构的方框图。
[0027] 图17(a)是表示一例横向速度相对较小的情况的特征点检测区域的概略图,图17(b)表示一例横向速度相对较大的情况的特征点检测区域的概略图。
[0028] 图18是用于说明特征点检测区域的设定方法的具体例的概略图。
[0029] 图19(a)是表示横向速度的绝对值的时间变化的曲线图,图19(b)是表示特征点检测区域的横向宽度的时间变化的曲线图。
[0030] 图20是用于说明一例第2实施方式的自身位置计算方法的流程图。
[0031] 图21(a)是表示一例车速相对较小的情况的特征点检测区域的概略图,图21(b)是表示一例车速相对较大的情况的特征点检测区域的概略图。
[0032] 图22(a)是表示车速的绝对值的时间变化的曲线图,图22(b)是表示特征点检测区域的前后方向宽度的时间变化的曲线图。
[0033] 图23(a)是表示一例密集地被投光了亮点光的图案光区域的概略图,图23(b)是表示一例根据车速以及横向速度设定的特征点检测区域的概略图。

具体实施方式

[0034] 以下,参照附图说明适用了本发明的第1以及第2实施方式。
[0035] (第1实施方式)
[0036] [硬件结构]
[0037] 首先,参照图1,说明第1实施方式的自身位置计算装置的硬件结构。自身位置计算装置具有:投光器11;摄像机12;以及引擎控制单元(ECU)13。投光器11被安装在车辆上,对车辆周围的路面投光图案光。摄像机12是被安装在车辆上、拍摄包含被投光了图案光的区域的车辆周围的路面,获取图像的摄像单元的一例。ECU13是控制投光器11、并且执行由摄像机12获取的图像计算车辆的自身位置的一连串的信息处理循环的控制单元的一例。
[0038] 摄像机12是使用了固体摄像元件、例如CCD以及CMOS的数字摄像机,获取可进行图像处理的数字图像。摄像机12的摄像对象是车辆周围的路面,在车辆周围的路面中,包含车辆的前部、后部、侧部、车辆底部的路面。例如,如图2所示,摄像机12可以安装在车辆10的前部,具体地说安装在前保险杠上。调整设置摄像机12的高度以及朝向,并且,自动调整摄像机12具有的镜头的焦距以及光圈,以便可以拍摄车辆10的前方的路面31上的特征点(纹理)以及由投光器11投光的图案光32b。摄像机12每隔规定的时间间隔反复进行摄像,获取一连串的图像(帧)群。由摄像机12获取的图像数据被转发至ECU13,存储在ECU13具有的存储器中。
[0039] 如图2所示,投光器11朝向摄像机12的摄像范围内的路面31,投光具有包含正方形或长方形的栅格像的规定形状的图案光32b。摄像机12拍摄对路面31照射的图案光。投光器11例如具有激光指示器以及衍射光栅。通过以衍射光栅衍射从激光指示器射出的激光,如图2~图4所示,投光器11生成由栅格像或者排列为矩阵状的多个亮点光构成的图案光(32b,32a)。在图3以及图4所示的例子中,生成5×7的亮点光构成的图案光32a。
[0040] 返回图1,ECU13由具有CPU、存储器、以及输入输出单元的微控制器构成,通过执行预先安装的计算机程序,构成具有作为自身位置计算装置的功能的多个信息处理单元。ECU13对每图像(帧)反复执行由摄像机12获取的图像计算车辆的自身位置的一连串的信息处理循环。ECU13也可以与车辆10有关的其它控制中使用的ECU兼用。
[0041] 这里,在多个信息处理单元中包括:图案光提取单元21;姿态角计算单元22;特征点检测单元23;姿态变化量计算单元24;自身位置计算单元25;以及图案光控制单元26。
[0042] 图案光提取单元21从存储器读入由摄像机12获取的图像,从该图像提取图案光的位置。如图3(a)所示,例如,投光器11向路面31投光被排列为矩阵状的多个亮点光构成的图案光32a,用摄像机12检测被路面31反射的图案光32a。如图4(a)以及图4(b)所示,图案光提取单元21通过对由摄像机12获取的图像实施二值处理,仅提取亮点光Sp的图像。然后,如图4(c)所示,图案光提取单元21通过计算各亮点光Sp的重心的位置He,即亮点光Sp在图像上的坐标(Uj,Vj),提取图案光32a的位置。坐标在以摄像机12的摄像元件的像素为单位,5×7的亮点光Sp的情况下,“j”为1以上35以下的自然数。亮点光Sp的图像上的坐标(Uj,Vj)作为表示图案光32a的位置的数据,存储在存储器中。
[0043] 姿态角计算单元22从存储器读入表示图案光32a的位置的数据,根据由摄像机12获取的图像中的图案光32a的位置,计算车辆10对于路面31的距离以及姿态角。例如,如图3(a)所示,根据投光器11与摄像机12之间的基线长Lb和各亮点光在图像上的坐标(Uj,Vj),使用三角测量的原理,计算照射了各亮点光的路面31上的位置,作为对于摄像机12的相对位置。然后,姿态角计算单元22根据各亮点光对于摄像机12的相对位置,计算投光了图案光32a的路面31的平面式,即,摄像机12对于路面31的距离以及姿态角(法线向量)。
[0044] 而且,由于摄像机12对于车辆10的安装位置以及摄像方向已知,所以在本实施方式中,作为车辆10对于路面31的距离以及姿态角的一个例子,计算摄像机12对于路面31的距离以及姿态角。换言之,通过计算摄像机12对于路面31的距离以及姿态角,可以求出路面31和车辆10之间的距离以及车辆10对于路面31的姿态角。
[0045] 具体地说,由于摄像机12以及投光器11被分别固定在车辆10上,所以图案光32a的照射方向、摄像机12和投光器11的距离(基线长Lb)已知。因此,姿态角计算单元22使用三角测量的原理,可以从各亮点光在图像上的坐标(Uj,Vj)求出照射了各亮点光的路面31上的位置,作为对于摄像机12的相对位置(Xj,Yj,Zj)。以后,将摄像机12对于路面31的距离以及姿态角简称为“距离以及姿态角”。由姿态角计算单元22算出的距离以及姿态角被存储在存储器中。
[0046] 而且,在本实施方式中,说明在每次的信息处理循环中计算距离以及姿态角的情况。
[0047] 而且,各亮点光对于摄像机12的相对位置(Xj,Yj,Zj)不存在于同一平面上的情况较多。这是因为,与路面31上表露出的沥青的凹凸相应,各亮点光的相对位置产生变化。因此,也可以使用最小二乘法,求出与各亮点光的距离误差的平方和最小的平面式。这样算出的距离以及姿态角的数据在图1所示的自身位置计算单元25中被使用。
[0048] 特征点检测单元23从存储器读入由摄像机12获取的图像,根据从存储器读入的图像,检测路面31上的特征点。特征点检测单元23为了检测路面31上的特征点,例如,可以使用“D.G.Lowe,“Distinctive Image Features from Scale-Invariant Keypoints,”Int.J.Comput.Vis.,vol.60,no.2,pp.91-110,Nov.200”中记载的方法。或者,特征点检测单元23也可以使用“金澤靖,金谷健一,“コンピュータビジョンのための画像の特徴点抽出,”信学誌,vol.87,no.12,pp.1043-1048,Dec.2004”中记载的方法。
[0049] 具体地说,特征点检测单元23例如使用哈里斯(Harris)运算符或者SUSAN算符,检测物体的顶点那样与周围相比亮度值较大地变化的点作为特征点。或者,特征点检测单元23也可以使用SIFT(Scale-Invariant Feature Transform,尺度不变特征变换)特征量,检测在其周围亮度值按照某个规则性变化的点作为特征点。然后,特征点检测单元23对从一个图像检测到的特征点的总数N进行计数,对各特征点附加识别号(i(1≦i≦N))。各特征点在图像上的位置(Ui,Vi)被存储在ECU13内的存储器中。图6(a)以及图6(b)表示从摄像机12获取的图像检测到的特征点Te的例子。进而,将各特征点Te的变化方向以及变化量表示为向量Dte。
[0050] 而且,在本实施方式中,路面31上的特征点主要设想大小为1cm以上2cm以下的沥青混合物的颗粒。为了检测该特征点,摄像机12的分辨率为VGA(约30万像素)。而且,摄像机12对于路面31的距离约为70cm。进而,摄像机12的摄像方向从水平面约45度(deg)向路面31倾斜。而且,将摄像机12获取的图像转发至ECU13时的亮度数值为0~255(0:最暗,255:最亮)的范围内。
[0051] 姿态变化量计算单元24从存储器读入在每固定的信息处理循环中拍摄的帧中、前次(时刻t)的帧的图像中包含的多个特征点在图像上的位置(Ui,Vi)。进而,姿态变化量计算单元24从存储器读入本次(时刻t+Δt)的帧的图像中包含的多个特征点在图像上的位置坐标(Ui,Vi)。然后,姿态变化量计算单元24根据多个特征点在图像上的随时间的位置变化,求出车辆的姿态变化量。这里,所谓“车辆的姿态变化量”包含车辆对于路面的“距离以及姿态角的变化量”,以及路面上的“车辆的移动量”双方。以下,说明“距离以及姿态角的变化量”以及“车辆的移动量”的计算方法。
[0052] 距离以及姿态角的变化量例如可以如以下那样求出。图6(a)是表示一例在时刻t获取的第1帧(图像)38(图5)。如图5以及图6(a)所示,在第1帧38中,例如考虑分别计算三个特征点Te1、Te2、Te3的相对位置(Xi,Yi,Zi)的情况。在该情况下,可以将由特征点Te1、Te2、Te3确定的平面G(参照图6(a))视为路面。由此,姿态变化量计算单元24可以由各特征点的相对位置(Xi,Yi,Zi)求出摄像机12对于路面(平面G)的距离以及姿态角(法线向量)。进而,姿态变化量计算单元24通过已知的摄像机模型,可以求出各特征点Te1、Te2、Te3之间的距离(l1,l2,l3)以及连结各个特征点Te1、Te2、Te3的直线所成的角度。图5的摄像机12表示拍摄了第1帧时的摄像机的位置。
[0053] 而且,在图5中,作为表示特征点对于摄像机12的相对位置的3维坐标(Xi,Yi,Zi),在摄像机12的摄像方向上设定Z轴,在以摄像方向为法线、包含摄像机12的平面内,设定相互正交的X轴以及Y轴。另一方面,作为图像38上的坐标,将水平方向以及垂直方向分别设定为V轴以及U轴。
[0054] 图6(b)表示在从时刻t经过了时间Δt的时刻(t+Δt)获取的第2帧38’。图5的摄像机12’表示拍摄第2帧38’时的摄像机的位置。如图5以及图6(b)所示,在第2帧38’中,摄像机12’拍摄特征点Te1、Te2、Te3,特征点检测单元23检测特征点Te1、Te2、Te3。在该情况下,姿态变化量计算单元24可以由时刻t的各特征点Te1~Te3的相对位置(Xi,Yi,Zi)、各特征点在第2帧38’上的位置P1(Ui,Vi)、和摄像机12的摄像机模型,计算时间Δt的摄像机12的移动量(ΔL)。因此,最终可以算出车辆的移动量。进而,还可以计算距离以及姿态角的变化量。例如,通过解以下的(1)~(4)式构成的联立方程式,姿态变化量计算单元24可以计算摄像机12(车辆)的移动量(ΔL)以及距离以及姿态角的变化量。而且,下述的(1)式是摄像机
12作为没有失真和光轴偏差的理想的针孔摄像机而模型化的式子,λi是常数,f是焦点距离。摄像机模型的参数只要预先校准即可。
[0055]
[0056] (x1-x2)2+(y1-y2)2+(z1-z2)2=l12     ...(2)
[0057] (x3-x2)2+(y3-y2)2+(z3-z2)2=l22     ...(3)
[0058] (x1-x3)2+(y1-y3)2+(z1-z3)2=l32     ...(4)
[0059] 而且,姿态变化量计算单元24也可以不使用在时刻t和时刻t+Δt检测到的各图像中算出相对位置的全部特征点,而根据特征点之间的位置关系选定最佳的特征点。作为选定方法,例如,可以使用对极几何(对极极线几何,R.I.Hartley:“A linear method for reconstruction from lines and points,”Proc.5th International Conference on Computer Vision,Cambridge,Massachusetts,pp.882-887(1995))。
[0060] 这样,在特征点检测单元23在从时刻t+Δt中的帧图像38‘也检测出在时刻t的帧图像38中算出相对位置(Xi,Yi,Zi)的特征点Te1、Te2、Te3的情况下,姿态变化量计算单元24可以由路面上的多个特征点的相对位置(Xi,Yi,Zi)和特征点在图像上的位置(Ui,Vi)的时间变化,计算“车辆的姿态角变化量”。进而,可以计算车辆的移动量。
[0061] 即,只要可以继续检测在前次帧和本次帧之间取得对应关系的3点以上的特征点,则可以通过继续加上距离以及姿态角的变化量的处理(积分运算),不使用图案光32a地继续更新距离或姿态角。但是,在最初的信息处理循环中,也可以使用利用图案光32a算出的距离以及姿态角、或者规定的初始距离以及初始姿态角。即,成为积分运算的起点的距离以及姿态角既可以使用图案光32a计算,或者,也可以使用规定的初始值。希望规定的初始距离以及初始姿态角是至少考虑了至车辆10的乘员以及安装物的距离以及姿态角。例如,在车辆10的点火开关为接通状态,并且档位从泊车档移动到了其它的档位时,投光图案光32a,并使用从图案光32a算出的距离以及姿态角作为规定的初始位置以及初始姿态角即可。由此,可以求出在没有发生车辆10的旋转或加减速导致的摇摆(roll)运动或者俯仰(pitch)运动时的距离和姿态角。
[0062] 为了在前后帧之间将特征点相对应,例如可以预先将检测到的特征点的周边的小区域的图像记录在存储器中,由亮度或颜色信息的类似度进行判断。具体地说,ECU13在存储器中记录以检测到的特征点为中心的相当于5×5(水平×垂直)像素的图像。例如,亮度信息在20像素以上、收敛在误差1%以下,则姿态变化量计算单元24判断为在前后帧之间取得对应关系的特征点。然后,在上述的处理中获取的姿态变化量在后级的自身位置计算单元25中计算车辆的自身位置时被使用。
[0063] 自身位置计算单元25由姿态变化量计算单元24算出的“距离以及姿态角的变化量”计算车辆的当前的距离以及姿态角。进而,由姿态变化量计算单元24算出的“车辆的移动量”计算车辆的自身位置。
[0064] 具体地说,说明设定了姿态角计算单元22算出的距离以及姿态角(使用图案光算出的距离以及姿态角)作为起点的情况。在该情况下,对于该起点(距离以及姿态角),自身位置计算单元25对姿态角计算单元22算出的距离以及姿态角,逐次加上姿态变化量计算单元24算出的各帧的每一个的距离以及姿态角的变化量(积分运算),将距离以及姿态角更新为最新的数值。而且,自身位置计算单元25将姿态角计算单元22算出了距离以及姿态角时的车辆位置作为起点(车辆的初始位置),逐次加上从该初始位置开始的车辆的移动量(积分运算),计算车辆的自身位置。例如,通过设定与地图上的位置核对后的起点(车辆的初始位置),可以逐次计算地图上的车辆的当前位置。
[0065] 因此,姿态变化量计算单元24通过求出时间Δt期间的摄像机12的移动量(ΔL),可以计算车辆的自身位置。进而,还可以同时计算距离以及姿态角的变化量,所以姿态变化量计算单元24可以考虑车辆的距离以及姿态角的变化量,高精度地计算6自由度(前后,左右,上下,偏摆,俯仰,摇晃)的移动量(ΔL)。即,即使距离或姿态角由于车辆10的旋转或加减速导致的摇晃运动或者俯仰运动而变化,也可以抑制移动量(ΔL)的估计误差。
[0066] 而且,在本实施方式中,通过计算距离以及姿态角的变化量,更新距离以及姿态角,计算摄像机12的移动量(ΔL),但是也可以仅将摄像机12对于路面31的姿态角作为变化量计算以及更新的对象。在该情况下,只要假定路面31与摄像机12之间的距离固定即可。由此,可以考虑姿态角的变化量,抑制移动量(ΔL)的估计误差,同时轻减ECU13的运算负载,并且使运算速度提高。
[0067] 图案光控制单元26控制投光器11进行的图案光32a的投光。例如,在车辆10的点火开关为接通状态,自身位置计算装置起动的同时,图案光控制单元26开始图案光32a的投光。之后,直至自身位置计算装置停止,图案光控制单元26连续投光图案光32a。或者,也可以隔开规定的时间间隔,反复投光的接通/关断。
[0068] 这里,在投光了7×5的亮点光Sp构成的图案光的情况下,通过摄像机12获取图7(a)所示的图像。对于该图像,图案光提取单元21通过实施二值处理,可以提取图7(b)所示图案光(亮点光)Sp。另一方面,如图7(c)所示,在特征点检测单元23要在与图案光Sp的投光区域相同的区域中检测路面31上的特征点时,难以对图案光Sp判别路面31上的特征点,特征点的检测困难。对此,在特征点检测单元23要在离开图案光Sp的投光区域的区域中检测路面上的特征点时,本次特征点的移动量的计算误差变大。
[0069] 因此,在本实施方式中,特征点检测单元23在投光器11的图案光的投光区域的周围设定特征点检测区域,在特征点检测区域内中检测路面31上的特征点。这里,特征点检测区域意味着当检测路面31上的特征点时,相对图案光仅离开图案光的影响足够小的距离,并且在该距离中相邻的区域。图案光的影响足够小的距离可以预先通过实验求出。在本实施方式中,作为图案光的影响足够小的距离的一例,求出在设想的光环境下以99%以上的概率不误检测特征点的距离。
[0070] 例如,如图8所示,投光器11在摄像机12的摄像区域30内,作为图案光40a投光25(5×5)个亮点光。图8中,箭头51表示车辆10的移动方向,相对箭头51反向的箭头52表示特征点的移动方向。这里,相对各图案光(亮点光)40a,将检测特征点时离开图案光40a的影响足够小的距离的区域设为图案光区域40b。
[0071] 如图9所示,特征点检测单元23在摄像机12的摄像区域30内设定特征点检测区域40c,以包围图案光区域40b的周围。特征点检测区域40c具有栅格状,与图案光区域40b相邻。在摄像机12的摄像区域30内,特征点检测单元23不使图案光区域40b内成为特征点的检测对象,而在特征点检测区域40c内检测特征点。其结果,可以容易地区别图案光40a和特征点,所以可以高精度地检测特征点。特征点检测区域40c也可以设定为不与图案光区域40b相邻,而与图案光40a相邻。换言之,可以将除了图案光40a的区域设定为特征点检测区域
40c。
[0072] [信息处理循环]
[0073] 接着,参照图10,说明通过ECU13反复执行的信息处理循环。该信息处理循环是从摄像机12获取的图像38计算车辆10的自身位置的自身位置计算方法的一个例子。
[0074] 与车辆10的点火开关成为接通状态,自身位置计算装置起动的同时开始图10的流程图所示的信息处理循环,直至自身位置计算装置停止被反复执行。
[0075] 在图10的步骤S01中,图案光控制单元26控制投光器11,对车辆周围的路面31投光图案光。在图10的流程图中,说明连续投光图8所示的图案光40a的例子。
[0076] 进至步骤S03,ECU13控制摄像机12,拍摄包含被投光了图案光40a的区域的车辆周围的路面31,获取图像38。ECU13将摄像机12获取的图像数据存储在存储器中。
[0077] 而且,ECU13可以自动控制摄像机12的光圈。也可以由前一个信息处理循环中获取的图像38的平均亮度对摄像机12的光圈进行反馈控制,使其成为亮度值的最大值和最小值的中间值。而且,由于被投光图案光40a的区域的亮度值高,所以ECU13也可以从除去了提取出图案光40a的部分的区域,求出平均亮度值。
[0078] 进至步骤S05,首先,图案光提取单元21从存储器读入摄像机12获取的图像38,如图4(c)所示,从图像38提取图案光40a的位置。图案光提取单元21将作为表示图案光40a的位置的数据而算出的亮点光Sp在图像上的坐标(Uj,Vj)存储在存储器中。
[0079] 进一步,在步骤S05中,姿态角计算单元22从存储器读入表示图案光40a的位置的数据,从图案光40a的位置计算车辆10对于路面31的距离以及姿态角,存储在存储器中。
[0080] 进至步骤S07,ECU13从图像38检测特征点Te,提取在前后的信息处理循环之间取得对应关系的特征点Te,由特征点Te在图像上的位置(Ui,Vi)计算距离以及姿态角的变化量。进而,计算车辆的移动量。
[0081] 具体地说,首先,特征点检测单元23从存储器读入摄像机12获取的与图8对应的摄像区域30的图像38,如图9所示,设定特征点检测区域40c,使得包围图案光区域40b。进而,特征点检测单元23从图像38检测特征点检测区域40c内的路面31上的特征点Te,使各特征点Te在图像上的位置(Ui,Vi)存储在存储器中。
[0082] 姿态变化量计算单元24从存储器读入各特征点Te在图像上的位置(Ui,Vi),由姿态角计算单元22中算出的距离以及姿态角和特征点Te在图像上的位置(Ui,Vi),计算特征点Te相对摄像机12的相对位置(Xi,Yi,Zi)。而且,姿态变化量计算单元24使用在前一个信息处理循环的步骤S09中设定的距离以及姿态角。然后,姿态变化量计算单元24将特征点Te相对摄像机12的相对位置(Xi,Yi,Zi)存储在存储器中。
[0083] 此后,姿态变化量计算单元24从存储器读入特征点Te在图像上的位置(Ui,Vi)和在前一个信息处理循环的步骤S07中算出的特征点Te的相对位置(Xi,Yi,Zi)。姿态变化量计算单元24使用在前后的信息处理循环之间取得对应关系的特征点Te的相对位置(Xi,Yi,Zi)以及图像上的位置(Ui,Vi),计算距离以及姿态角的变化量。进而,姿态变化量计算单元24由前次的特征点Te的相对位置(Xi,Yi,Zi)和本次的特征点Te的相对位置(Xi,Yi,Zi),算出车辆的移动量,存储在存储器中。在步骤S07中算出的“距离以及姿态角的变化量”以及“车辆的移动量”,在步骤S11的处理中被使用。
[0084] 进至步骤S09,在最初的信息处理循环中,ECU13使用利用图案光40a算出的距离以及姿态角、或者规定的初始位置以及初始姿态角,设定用于计算自身位置的积分运算的起点。在以后的信息处理循环中,如果可以继续检测出在前次帧与本次帧之间取得对应关系的3点以上的特征点,则通过继续加上距离以及姿态角的变化量的处理(积分运算),可以不使用图案光40a地继续更新距离以及姿态角。
[0085] 进至步骤S11,自身位置计算单元25由在步骤S09中设定的积分运算的起点、和在步骤S07的处理中算出的车辆10的距离以及姿态角的变化量,计算车辆10的自身位置。
[0086] 这样,本实施方式的自身位置计算装置通过反复执行上述的一连串的信息处理循环,将车辆10的移动量累积,可以计算车辆10的自身位置。
[0087] [第1变形例]
[0088] 接着,作为第1变形例,说明特征点检测区域的设定方法的另一个例子。如图11所示,投光器11也可以密集地投光35(7×5)个亮点光,作为图案光41a。这里,将对于各图案光41a,在检测特征点时离开图案光41a的影响足够小的距离的区域设为图案光区域41b。由于被密集地投光作为图案光41a的亮点光,所以形成图案光区域41b,以便汇总地包含全部亮点光。而且,如图12所示,作为图案光42a,在取代亮点光而投光了栅格图案的情况下,也同样形成图案光区域42b,以包围栅格图案的周围。
[0089] 在投光图11所示的图案光41a的情况下,如图13所示,特征点检测单元23设定特征点检测区域41c,以包围图案光区域41b的周围。特征点检测区域41c具有框架形状,与图案光区域41b相邻。特征点检测单元23在摄像机12的摄像区域30内,不使图案光区域41b成为特征点的检测对象,而在特征点检测区域41c内检测特征点。
[0090] [第2变形例]
[0091] 接着,作为第2变形例,说明特征点检测区域的设定方法的另一个例子。如图8所示,在通过投光器11投光了5×5=25点的亮点光作为图案光40a的情况下,如图14所示,特征点检测单元23也可以在图案光区域40b的左右(车宽方向)设定特征点检测区域43a、43b、43c、43d。特征点检测区域43a、43b、43c、43d分别是与图案光区域40b相邻,与车宽方向的宽度相比特征点的移动方向52的宽度更宽的长方形的图案。车宽方向是与特征点的移动方向
52正交的方向,是特征点的移动少的方向。特征点检测单元23在摄像机12的摄像区域30内,在特征点检测区域43a、43b、43c、43d内检测特征点。
[0092] 而且,在如图11所示,作为图案光41a密集地投光了亮点光、或者投光了栅格图案的情况下,如图15所示,特征点检测单元23也可以在图案光41a的左右(车宽方向)设定特征点检测区域44a、44b。特征点检测区域44a、44b与图案光区域41b相邻,是与车宽方向的宽度相比,特征点的移动方向52的宽度更宽的长方形的图案。特征点检测单元23在摄像机12的摄像区域30内,在特征点检测区域44a、44b内检测特征点。
[0093] [第1实施方式的效果]
[0094] 按照第1实施方式,在包含图案光40a、41a的图案光区域40b、41b的周围设定特征点检测区域40c、41c,通过在特征点检测区域40c、41c内检测特征点Te,可以在与提取图案光40a、41a的区域不同且相邻的区域中检测特征点,可以与图案光40a、41a区别,高精度地检测特征点。因此,可以使用检测到的特征点,高精度地检测车辆的自身位置。
[0095] 而且,通过在包含图案光40a、41a的图案光区域40b、41b的左右(车宽方向)分别设定特征点检测区域43a~43d或者特征点检测区域44a、44b,在特征点检测区域43a~43d或者特征点检测区域44a、44b内检测特征点,可以在特征点的移动方向52的宽度比车宽方向的宽度长、能够检测容易取得前后帧中的对应的特征点的区域中,检测特征点。
[0096] (第2实施方式)
[0097] [硬件结构]
[0098] 如图16所示,第2实施方式的自身位置计算装置还包括车辆行为检测单元14,这一点与第1实施方式的自身位置计算装置的结构不同。作为车辆行为检测单元14,例如能够使用用于检测车速的车轮速度传感器或者用于检测横向速度(偏摆率)的偏摆率传感器。第2实施方式的自身位置计算装置的其它结构与第1实施方式的自身位置计算装置的结构实质上相同,所以省略重复的说明。
[0099] 特征点检测单元23根据由车辆行为检测单元14检测到的车辆10的车辆的行为,设定特征点检测区域。例如,在作为图案光41a密集地投光了5×7个亮点光的情况下,如图17(a)所示,由车辆行为检测单元14检测到的横向速度的绝对值越低,特征点检测单元23越缩窄特征点检测区域44a、44b的横向宽度w1,如图17(b)所示,由车辆行为检测单元14检测到的横向速度的绝对值越高,特征点检测单元23越加宽特征点检测区域44a、44b的横向宽度w1。
[0100] 具体地说,特征点检测区域44a、44b的横向宽度w1根据摄像机12的摄像区域30的位置和帧率决定。例如如图18所示,考虑摄像机12的摄像区域30的位置处于离车辆10的后轮车轴中心O为L[m]的距离、帧率为F[fps]的情况。这样,在车辆10以极低速行驶,以后轮车轴中心O为旋转中心行驶的情况下,在作为横向速度的偏摆率为γ[rad/sec]时,每1帧的特征点Te的横方向移动量为Lγ/F[m]。为了在前后帧将特征点Te对应来检测,原理上需要该Lγ/F以上的宽度的横向区域。在本实施方式中有余裕地设定其5倍的宽度(5×Lγ/F)作为特征点检测区域44a、44b的横向宽度w1。
[0101] 在图19(a)中,表示偏摆率γ的绝对值的时间变化,在图19(b)中,表示特征点检测区域的横向宽度(5×Lγ/F)的时间变化。时刻t0~t7表示每1个信息处理循环的时刻。如图19(a)以及图19(b)所示,也可以与偏摆率γ的绝对值的增减成比例地使特征点检测区域的横向宽度(5×Lγ/F)增减。或者,预先设置偏摆率γ的1个或者2个以上的阈值,在偏摆率γ为阈值以上的情况下,使特征点检测区域的横向宽度(5×Lγ/F)逐级地增减。
[0102] [信息处理循环]
[0103] 接着,参照图20,说明第2实施方式的自身位置计算方法的步骤S07的细节。其它的步骤与第1实施方式的自身位置计算方法的步骤实质上相同,所以省略重复的说明。
[0104] 在步骤S101中,车辆行为检测单元14检测车辆10的车辆的行为(这里为偏摆率γ)。步骤S102中,特征点检测单元23从存储器读入与摄像机12获取的对应于图8的摄像区域30的图像38,设定特征点检测区域40c以包围图案光区域40b。这时,根据车辆10的偏摆率γ,加宽特征点检测区域40c的横向宽度w1,使得其值为(5×Lγ/F)。在步骤S103中,特征点检测单元23从图像38的特征点检测区域40c内检测路面31上的特征点Te,使各特征点Te在图像上的位置(Ui,Vi)存储在存储器中。
[0105] 在步骤S104中,与第1实施方式相同,姿态变化量计算单元24使用前后的信息处理循环之间取得对应关系的特征点Te的相对位置(Xi,Yi,Zi)以及图像上的位置(Ui,Vi),计算距离以及姿态角的变化量。进而,姿态变化量计算单元24由前次的特征点Te的相对位置(Xi,Yi,Zi)和本次的特征点Te的相对位置(Xi,Yi,Zi),计算车辆的移动量而存储在存储器中。
[0106] [第1变形例]
[0107] 接着,作为第1变形例,说明特征点检测区域的设定方法的另一例子。特征点检测单元23也可以根据由车辆行为检测单元14检测到的车速V的绝对值,使特征点检测区域的车辆前后方向宽度变化。例如,在由车辆行为检测单元14检测到的车速V的绝对值相对较低时,如图21(a)所示,特征点检测单元23相对较窄地设定特征点检测区域44a、44b的前后方向宽度w2。另一方面,在由车辆行为检测单元14检测到的车速V的绝对值相对较高时,如图21(b)所示,特征点检测单元23相对较宽地设定特征点检测区域44a、44b的前后方向宽度w2。
[0108] 具体地说,例如考虑摄像机12的帧率为F[fps]的情况。这样,在以车速V[m/s]行驶的情况下,每1帧的图像上的特征点Te的车辆前后方向的移动量为V/F[m]。为了在前后帧中将特征点Te对应来检测,原理上需要该V/F以上的前后方向的区域。在本实施方式中,有余裕地使得其5倍的长度的前后方向宽度(5×V/F)作为特征点检测区域44a、44b的前后方向宽度w2。
[0109] 图22(a)中表示车速V的绝对值的时间变化,图22(b)中表示特征点检测区域的前后方向宽度(5×V/F)的时间变化。时刻t1~t7表示每1个信息处理循环的时刻。如图22(a)以及图22(b)所示,根据车速V的绝对值的增减,也使特征点检测区域44a、44b的前后方向宽度(5×V/F)增减。或者,也可以预先设置车速V的1个或者2个以上的阈值,在车速V为阈值以上的情况下使特征点检测区域的前后方向宽度(5×V/F)逐级地增减。
[0110] [第2变形例]
[0111] 接着,作为第2变形例,说明特征点检测区域的设定方法的另一例子。如图23(a)所示,在作为图案光41a密集地照射亮点光的情况下,特征点检测单元23也可以根据由车辆行为检测单元14检测到的各个横向速度γ以及车速V,设定特征点检测区域44a、44b的横向宽度w4以及前后方向宽度w3。例如,在车辆10的移动方向51为右斜向前方的情况下,如图23(b)所示,将特征点检测区域44a、44b的横向宽度w4加宽至(5×Lγ/F),并且将特征点检测区域44a、44b的前后方向宽度w3加宽至(5×V/F)。
[0112] [第2实施方式的效果]
[0113] 按照第2实施方式的自身位置计算装置,在包含图案光41a的图案光区域41b的周围设定特征点检测区域44a、44b,通过在特征点检测区域44a、44b内检测特征点,可以与图案光41a区别而高精度地检测特征点,可以高精度地检测车辆的自身位置。
[0114] 而且,通过在包含图案光41a的图案光区域41b的左右(车宽方向)设定特征点检测区域44a、44b,在特征点检测区域44a、44b内检测特征点,可以检测在前后帧中容易相对应的特征点。
[0115] 而且,通过根据车辆行为检测单元14检测到的横向速度,加宽特征点检测区域44a、44b的横向宽度w1,可以追随车辆10的移动,高效地检测在前后帧中可能相对应的特征点。
[0116] 进而,通过根据车辆行为检测单元14检测到的车速V,加宽特征点检测区域44a、44b的前后方向宽度w2,可以追随车辆10的移动,高效地检测在前后帧中可能相对应的特征点。
[0117] (其它的实施方式)
[0118] 以上,按照第1以及第2实施方式说明了本发明的内容,但是本发明不限定于这些记载,本领域的技术人员明白能够进行各种变形以及改良。
[0119] 标号说明
[0120] 10  车辆
[0121] 11  投光器
[0122] 12  摄像机(摄像单元)
[0123] 13  ECU
[0124] 14  车辆的行为检测单元
[0125] 21  图案光提取单元
[0126] 22  姿态角计算单元
[0127] 23  特征点检测单元
[0128] 24  姿态变化量计算单元
[0129] 25  自身位置计算单元
[0130] 26  图案光控制单元
[0131] 30  摄像区域
[0132] 31  路面
[0133] 32a,32b,40a、41a,42a  图案光
[0134] 40b、41b,42b  图案光区域
[0135] 40c、41c,43a、43b、43c、43d,44a、44b  特征点检测区域
[0136] Te  特征点