一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

估计相机相对于地面的方位的装置和方法与流程

2022-04-25 05:09:20 来源:中国专利 TAG:

估计相机相对于地面的方位的装置和方法
相关申请
1.本技术是2020年8月12日提交的美国申请16/992,088的部分延续申请,其公开内容通过引用全部合并于此。
技术领域
2.本发明涉及估计相机相对于地面的方位的领域。更具体地,本发明特别涉及通过利用正交消失点的特性来分析感测结构而自动估计相机方位的技术。


背景技术:

3.机器视觉在商业和工业用途中已经引起了很多关注,例如基于成像的生产和物流自动化分析。在许多基于机器视觉的应用中,相机定位起着重要角色;即,为了从二维(2d)图像或视频帧的测量中获得三维(3d)空间中的真实度量单位,这是必需的。例如,在车辆导航中,检测车辆何时离开地面上的车道标记的车道偏离检测需要知道相机相对于地面的方位。在将相机安装到车辆上之后,可以通过手动校准程序知道相机的方位,尤其是俯仰角和列角。但是,对于一个车队,例如工厂中的自动导引车辆(automatic guided vehicle,agv)车队,在每辆agv进行这种重复的手动校准既麻烦又容易出错。此外,长时间使用后,相机的方位通常会因急刹车、突然加速、相机无意中移动等原因而发生偏移。
4.可以从单个图像估计相机方位。例如,在垂直结构清晰可见的情况下,其垂直消失线表示相机相对于地面的方位。但是,在许多实际情况下,在拍摄的图像中没有垂直结构时,不可能获得垂直消失点来估计地平面。因此,本技术领域需要一种新的估计相机方位的方法,以解决依赖于垂直消失点的估计方法的缺点。
5.美国申请16/992,088公开了一种从拍摄的场景图像中地平面的确定来估计前置相机的相机方位的方法。该方法包括使用叠加在图像上的虚拟可旋转立方体确定图像中的地平面,以使虚拟立方体的方向与图像中的线段组最匹配。然后可以从虚拟立方体的正交消失点来估计地平面。但是,在某些情况下,此方法在地平面估计中存在精度不足的问题,因为虚拟立方体方向的不确定性可能会非常高,图像中正交距离测量的精度会不足。因此,在高精度机器视觉应用中需要更好的技术。


技术实现要素:

6.本发明提供了一种用于估计相机相对于地面的方位的方法和装置。本发明的目的是提供一种能够实现高精度相机方位估计的方法和装置。在相机在平坦地面上四处移动的应用中,例如安装在agv或移动机器人上的相机,通过结合来自多个连续视频帧或图像的地面估计结果,可以获得更精确的地平面估计,从而使相机方位估计的准确性更高。本发明的目的是提供这样的方法和设备,用于在计算中结合来自多个连续视频帧或图像的地平面估计结果,以考虑与每个地平面估计结果相关的估计不确定性。
7.根据本发明的各种实施例,该方法包括如下步骤。拍摄并记录前置相机前的场景
的第一图像(或视频文件/数据流的第一帧)。从第一图像中检测出多个线段。该多个2d线段被分类并分组为第一、第二和第三正交方向线段组。第一、第二和第三正交方向线段组中的线段可分别视为大致指向正面方向、横向方向和垂直方向。
8.在一个实施例中,线段的分类和分组包括在第一图像上叠加第一虚拟立方体,该第一虚拟立方体具有在随机或最佳猜测3d方向上的三个正交消失点。正交方向分类器通过比较第一虚拟立方体的三个正交消失点中的每一个与每个检测到的线段之间的垂直距离,并根据三个垂直距离中的最短距离确定该线段属于哪个组,来对第一图像的线段进行分类和分组。
9.在另一个实施例中,线段的分类和分组包括将对应于相机的初始方位的3d x轴、y轴和z轴无限远点投影到第一图像上,以获得第一图像中场景的x、y和z方向上相应的三个2d正交消失点。相机的初始方位可以从相机的校准(或固有)矩阵、最佳猜测方位、随机设置的方位或使用方位传感器的测量中获得。
10.然后,正交方向分类器将第一图像的线段分类并将其分组为正面线段组、横向线段组、垂直线段组,其中正面线段组包含与其他消失点相比,与x消失点的垂直距离最短的线段;横向线段组包含与其他消失点相比,与y消失点的垂直距离最短的线段;垂直线段组包含与其他消失点相比,与z消失点的垂直距离最短的线段。
11.本领域普通技术人员也可以在不进行过多实验的情况下采用其他技术对图像中的场景中检测到的线段进行分类和分组。其中一种技术在xiaohu lu等人,“2-line exhaustive searching for real-time vanishing point estimation in manhattan world”,2017ieee winter conference on applications of computer vision(wacv),ieee,2017中进行了描述;该技术的内容通过引用全部纳入本文。
12.在将线段进行分类和分组的情况下,通过考虑先验相机方位及其相应的先验相机方位不确定性,以及最大似然(maximum likelihood,ml)相机方位及其相应的ml相机方位不确定性,进行最大后验(maximum a-posteriori,map)相机方位估计,以获得map相机方位。其中ml相机方位是通过获取相机的校准矩阵并通过旋转相机方位下的x-y-z坐标系以使其在三个正交方向中的至少两个方向上与2d线段最佳对齐来计算的。
13.然后,map相机方位估计将后验目标最大化,使得map相机方位被计算为等于一个最优值,该最优值是介于ml相机方位和先验相机方位之间的值,且更接近于不确定性较小的值。
14.该过程步骤在前置相机前的场景的第二图像(或视频文件/数据流的第二帧)上进行迭代,其先验相机方位及其对应的先验相机方位不确定性分别设置为所计算出的map相机方位及其对应的map相机方位不确定性。至于在第一图像上的map相机方位估计中使用的先验相机方位及其对应的先验相机方位不确定性,则使用最佳猜测或随机相机方位及其对应的相机方位不确定性。
15.步骤的迭代在每个后续图像(或视频文件/数据流的后续帧)上继续进行,并在每次迭代中计算估计的map相机方位及其对应的map相机方位不确定性,直到发现map相机方位不确定性低于map相机方位不确定性阈值。最后,利用发现低于map相机方位不确定性阈值的那个map相机方位不确定性对应的估计map相机方位,计算出相机前的场景的地面法线矢量。
16.根据本发明的应用,一种用于引导具有前置相机的自动驾驶车辆的方法包括:根据本发明各个实施例执行用于估计前置相机的相机方位的方法。根据估计的相机方位来确定自动驾驶车辆的运动。
17.根据本发明的另一个应用,提供了一种远程处理服务器,用于估计支持机器视觉的自动导引车辆(agv)或移动机器人的前置相机的相机方位。远程处理服务器与agv或移动机器人进行数据通信,并被配置以接收前置相机拍摄的视频文件/数据流,以便执行本发明各个实施例的估算前置相机方位的方法。
18.本领域的普通技术人员将理解,本发明实施例还可以适用和应用于除自动驾驶车辆、agv和移动机器人之外的各种应用中和各种条件下;例如,自助停车和辅助停车系统、个人交通设备、以及各种室内和室外的家用、商用和工业机器人系统。
附图说明
19.以下参考附图更详细地描述本发明的实施例,其中:
20.图1是与远程处理服务器通信的自动导引车辆(agv)的示例性实施例的示意图;
21.图2显示真实世界的场景图像以及机器视觉应用所看到/感知的图像;
22.图3显示另一真实世界场景图像以及机器视觉应用所看到/感知的图像;
23.图4描述本发明各个实施例的用于估计相机方位的方法的流程图;
24.图5a和图5b显示一个示例性的“似然”和“先验”高斯概率密度函数以及“后验”乘积函数,说明了根据本发明实施例的用于估计相机方位的最大后验方法中使用的贝叶斯定理;
25.图6显示相机方位估计中的最大后验方法的流程图;
26.图7显示根据本发明各个实施例的正交消失点与线段之间的垂直距离的计算。
具体实施方式
27.在下面的描述中,作为优选的例子,阐述了通过利用正交消失点的特性来估计相机相对于地面的方位的方法和装置。对于本领域技术人员将显而易见的是,在不脱离本发明的范围和精神的情况下,可以进行包括增加和/或替换的修改。省略了某些具体细节,以免模糊本发明。然而,本公开内容是为了使本领域技术人员能够在不进行过多实验的情况下实践本发明教导。
28.在本公开中,机器视觉感知的2d和3d空间几何形状,例如点和线,用投影空间坐标来表示。下面列出了本公开中的数学符号的定义:二维投影空间中的点p表示为三维向量其在二维欧几里得空间中的坐标是中的坐标是中的直线l表示为三维向量其在中的斜率和y轴截距分别为和当且仅当p
t
l=0,点p在中的线l上,因为au bv ck=0是一个直线方程;at
代表a的转置,而a
t
b代表两个向量a和b之间的点积。中的投影变换h是一个3
×
3矩阵。它将中的一个点从p转换为p'=hp。如果中的h将点从p转换为p'=hp,则将线从l转换为l

=h-t
l。a-t
表示矩阵a-1
的转置,而a-1
表示矩阵a的逆。三维中的点为p=(x,y,z)。在针孔相机模型下,将针孔相机拍摄的图像建模为二维中的点p=kp,其中k是中的投影变换。k也称为相机校准(或固有)矩阵,它通过对相机的焦距f和主点(p
x
,py)进行编码,以使中点p=(x,y,z)成像为中的点和相机校准矩阵k可以通过一些手动校准程序找到。
29.参考图1,agv 100包括车身110、前置相机120以及位于车身110中的控制和通信电路130。车身110有诸如车轮112的移动机构,以沿着箭头前进。前置相机120安装在车身110的前侧,以便拍摄agv 100前方的场景并将其记录成视频文件/数据流。控制和通信电路130与前置相机120电连接,并配置成从前置相机120接收视频文件/数据流。控制和通信电路130通过无线链路与远程处理服务器150通信,用于将视频文件/数据流上传到远程处理服务器150以及从远程处理服务器150下载指令。其中,指令包括用于agv移动或动作(例如直行、右转/左转、返回充电站、关闭等)的控制命令。远程处理服务器150被配置成在处理视频文件/数据流时执行agv的机器视觉应用。在一个实施例中,在工厂、仓库或配送中心布置了一组多辆agv 100,远程处理服务器150负责协调该组agv执行自动化的大范围操作,例如在生产装配中运输产品部件,以及运送货物和包裹以进行交货。
30.在实际情况下,在agv 100的运行过程中,遇到的某些情况可能导致计算问题,从而导致agv 100无法运行。例如,如图2所示,左图像是真实世界的场景图像,右图像是在一个agv 100中实现的机器视觉应用所看到/感知的图像,两者之间的区别在于右图像显示了从真实世界场景图像中检测到的线段200。为了估计相机的方位,通常需要z平面消失点(vp)或地平面。但是,在右图中,z平面vp非常接近无限远(infinity),因为z方向的线段几乎相互平行。在这种情况下,很难将z平面vp估计应用于前置相机。
31.进一步地,如图3所示,左图是真实世界的场景图像,右图是在一个agv 100中实现的机器视觉应用所看到/感知的图像,两者之间的区别在于右图显示了从真实世界场景图像中检测到的线段200。可以注意到,从现实世界场景图像中未检测到z方向线段。在这方面,即使真实世界场景图像中的地平面对于人类来说是清晰可见的,但由于没有线段穿过z平面vp,因此机器视觉应用无法估计该地平面。也就是说,当现实世界场景图像中没有垂直构造时,几乎不可能估计出目标的地平面。
32.参照图4中描绘的流程图,根据本发明的一个实施例,提供了一种高精度估计相机方位的方法。该方法包括步骤s10-s60,这些步骤可以由如图1所示的avg 100和/或远程处理服务器150的特定配置实现的机器视觉应用采用。
33.在步骤s10,avg 100的前置相机120拍摄眼前的真实世界场景时生成视频文件/数
据流,并通过无线通信将其传输到远程处理服务器150。该视频文件/数据流包含多个连续图像的视频帧。
34.在步骤s20,远程处理服务器150从视频文件/数据流中提取一个当前视频帧/图像。该视频帧/图像是静态的,并且反映了真实世界场景(即图2或图3中的左图像)。
35.在步骤s30,由远程处理服务器150对当前视频帧/图像中的线段进行检测,从而在视频帧/图像上生成线段(即图2或图3中的右图像)。在一实施例中,线段的产生应用了canny边缘检测和统计hough变换。更具体地说,将rgb设置中的视频帧/图像转换为仅包含0和1的2d阵列,然后对该2d阵列应用canny边缘检测。之后,通过使用统计hough变换从2d阵列中检测出线段,从而获得线段在视频帧/图像上的位置。上述线段的检测只是一个示例性的实施例,本领域普通技术人员可以很容易地采用本领域现有的任何其他线段检测技术。
36.在步骤s40,将步骤s30中检测到的线段进行分类和分组,分为三个正交方向,例如x、y和z方向。在一个实施例中,线段的分类和分组包括将一个虚拟立方体叠加在当前视频帧/图像上,该虚拟立方体具有在随机或最佳猜测3d方向上的三个正交消失点。正交方向分类器对视频帧/图像的线段进行分类和分组,将第一虚拟立方体的三个正交消失点中的每个正交点与每个检测到的线段之间的垂直距离进行比较,并根据三个垂直距离中的最短距离确定该线段属于哪一组。本实施例的对线段进行分类和分组的详情见美国专利申请16/992,088。
37.在另一个实施例中,线段的分类和分组包括:将对应于相机初始方向的3d x轴、y轴和z轴无限远点投影到第一图像上,以获得x、y和z方向上相应的的三个2d正交消失点。相机的初始方位可以从相机的校准(或固有)矩阵、最佳猜测方位或随机方位中获得。
38.然后,正交方向分类器对第一图像的线段分类,并将其分组为正面线段组(frontal line segment group)、横向线段组(lateral line segment group)、垂直线段组(vertical line segment group),正面线段组包含与其他消失点相比与x消失点的垂直距离最短的线段;横向线段组包含与其他消失点相比与y消失点的垂直距离最短的线段;垂直线段组包含与其他消失点相比与z消失点的垂直距离最短的线段。
39.在步骤s50,通过考虑先验(priori)相机方位及其相应的先验相机方位不确定性以及最大似然(ml)相机方位及其最大似然(ml)相机方位不确定性,进行最大后验(map)相机方位估计,以获得map相机方位。其中,ml相机的方位是通过获取相机的校准矩阵并通过旋转相机的3d x-y-z坐标系以使其在三个正交方向中的至少两个方向上与2d线段最佳对齐来计算的。
40.然后,map相机方位估计将后验目标最大化,使得计算出的map相机方位等于一个最优值,该最优值是介于ml相机方位和先验相机方位之间的值,并且更接近不确定性较小的那一个。
41.在步骤s60,将map相机方位不确定性与map相机方位不确定性阈值进行比较;如果map相机方位不确定性高于阈值,则重复处理步骤s20至s50,将视频文件/数据流的后续视频帧/图像的先验相机方位及其对应的先验相机方位不确定性分别设置为计算出的map相机方位及其对应的map相机方位不确定性。至于在第一图像上的map相机方位估计中使用的先验相机方位及其对应的先验相机方位不确定性,则使用最佳猜测或随机相机方位及其对应的相机方位不确定性。
42.步骤s20至s50的迭代在视频文件/数据流的每个后续视频帧/图像上继续进行,以计算每次迭代中估计的map相机方位及其对应的map相机方位不确定性,直到发现map相机方位不确定性等于或低于预定的map相机方位不确定性阈值。
43.最后,在步骤s70,将发现的等于或低于预定的map相机方位不确定性阈值的map相机方位不确定性相对应的map相机方位作为相机方位估计结果。同样,通过求解,计算出相机前的场景的地面法向量n:n=r
*
[0,0,1]
t
;其中r
*
是所得的估计相机方位旋转矩阵。
[0044]
根据一个实施例,map相机方位估计基于贝叶斯定理,该定理结合先验相机方位(在上一次估计迭代中的相机方位估计结果)r0和当前视频帧或图像的ml相机方位r
ml
,通过最大化后验概率来寻找最佳相机方位r
*
,该概率可以通过以下方式表示:pr(r)=pr(当前帧或图像|r)
×
pr(r|前一帧或图像);其中r是被估计的相机方位;pr(当前帧或图像|r)是“似然”项,它是一个高斯概率密度函数,在r=r
ml
时达到最大值,其协方差是当前视频或图像的ml相机方位不确定性;pr(r|前一帧或图像)是“先验”项,它是一个高斯概率密度函数,在r=r0时达到最大值,其协方差是先验相机方位不确定性;pr(r)是“后验”项,它是两个高斯概率密度函数的乘积,因此与高斯概率密度函数成正比,其最大值(r=r
*
)在r
ml
和r0之间,取决于高斯概率密度函数的协方差(ml相机方位不确定性和先验相机方位不确定性)。为了进一步说明,图5a显示了“似然”、“先验”和“后验”项的函数,其中“先验”具有较大的不确定性,因此r
*
更接近于r
ml
;图5b显示了“似然”、“先验”和“后验”项的函数,其中“似然”具有较大的不确定性,因此r
*
更接近于r0。然后,找到的最佳相机方位r
*
就是当前迭代中估计的map相机方位,其相应的不确定性是pr(r)的协方差。
[0045]
参见图6中描绘的流程图,根据本发明的一个实施例,提供了一种map相机方位估计的方法。该方法包括步骤p10-p60,其可以由如图1所示的agv 100和/或远程处理服务器150的特定配置实现的机器视觉应用所采用。
[0046]
在步骤p10,首先将估计的相机方位的旋转矩阵r初始化为等于先验相机方位(最后一个视频帧/图像上的最后相机方位估计中的相机方位估计结果)的旋转矩阵r0;即:r=r0,其中r和r0均为旋转矩阵。注意,相机方位也可以用欧拉角表示法来表示,它是一个三元素的向量,表示为φ。
[0047]
在步骤p20,相机方位不确定性,可以由协方差矩阵∑
φ
表示,被初始化为等于先验相机方位不确定性,其可以由协方差矩阵表示。其中φ0是相对于r0定义的极小欧拉角,对r进行扰动。
[0048]
在步骤p30,计算由相机方位旋转矩阵r得到的相机方位下的x-y-z坐标系的x,y和z方向上的正交消失点,分别为v
x
、vy和vz。
[0049]
在步骤p40,将正交消失点v
x
、vy和vz投影到当前视频帧/图像上;测量从正面线段组中的每条线l
xi
到v
x
的垂直距离δ
xi
;测量从横向线段组中每条线l
yi
至vy的垂直距离δ
yi
;并测量从垂直线段组中每条线l
zi
到vz的垂直距离δ
zi
。图7显示了前述测量。测量完成后,所得到的δ
xi
、δ
yi
和δ
zi
可以用相机方位旋转矩阵r定义为:
和进一步定义:δi∈{δ
xi

yi

zi
},li∈{l
xi
,l
yi
,l
zi
},k是相机的校准矩阵。
[0050]
为了找到使“后验”项pr(φ|∑δi)最大化的最佳相机方位r
*
,首先将总误差项∑δi在当前相机方位上对φ进行线性化,计算出使“似然”项pr(∑δi|φ)最大化的φ
ml
。也可以表示为,通过对求解φ,可以找到“似然”项的最大值,其中是关于当前φ附近的相机方位的总误差的线性变化率,e(φ)=∑δi。利用不确定性传播原理,可以从像素噪声σg计算出由协方差矩阵表示的φ
ml
中的不确定性,其中σg是用户定义的线段两端像素噪声的协方差矩阵。然后,使用φ
ml
,先验φ0和先验中的不确定性,利用高斯变量的贝叶斯定理来计算使“后验”项最大化的δφ
map
。该定理还计算出由协方差矩阵表示的δφ
map
中的不确定性。接下来,将当前相机方位旋转δφ
map
表示的量,得到新的相机方向矩阵r。由于线性化过程中引入的近似误差,这个新的r可能是也可能不是最大化“后验”项的真值。因此,该过程从∑δi的线性化开始再次重复,但在新r的附近进行。随着足够的迭代,r接近使“后验”项最大化的真值,δφ
map
表示的量越来越接近于零。最后,最佳相机方位r
*
=r,相机方位r
*
的不确定性是最后一次迭代计算得出的
[0051]
在步骤p50,根据r、φ0、和δi计算出旋转量δφ
map
,以使当前相机位r应旋转δφ
map
以达到r
*
,可以表示为:其中,相机旋转量δφ
map
的计算包括以下子步骤:子步骤i:通过求解[φ0]
×
=ln r0,由r0计算出φ0;通过对先验相机方位不确定性的伪逆,计算出先验相机方位的精度,其可以表示为:子步骤ii:计算φ
ml
,以使的变化率为0,即其中通过求解以下中间表达式,其间还计算通过求解以下中间表达式,其间还计算通过求解以下中间表达式,其间还计算通过求解以下中间表达式,其间还计算子步骤iii:计算相机的旋转δφ
map
,以通过求解以下中间表达式,使φ
ml
和φ0之间的“后验”最大化,其间还计算最大化,其间还计算最大化,其间还计算其中:li表示线段i,即两个端点(pi,qi)和(ui,vi)之间的li=(pi,qi,1)
×
(ui,vi,1);
k是相机的校准矩阵;和σg是用户定义的线段li两端的像素噪声协方差。
[0052]
在步骤p60,将相机方位x-y-z坐标系旋转δφ
map
,即当前相机方位旋转矩阵r被δφ
map
扰动,或通过r更新,可以表示为:
[0053]
在步骤p70,通过δφ
map
的协方差更新相机方位不确定性,即
[0054]
如果‖δφ
map
‖非常接近于0或小于预定的相机旋转阈值,则进入步骤p80;否则,重复步骤p30至p70。
[0055]
在步骤p80,发现最佳相机方位r
*
是当前相机方位,即r
*

r,所估计的map相机方位是最佳相机方位。
[0056]
尽管本发明的以上描述仅涉及地面agv,但是本领域普通技术人员可以容易地将本发明各种实施例改编和应用到其他机器视觉应用中,例如空中和海上无人机,而不需要进行过多的实验或偏离本发明精神。
[0057]
本文所公开的电子实施例可以使用计算设备、计算机处理器或电子电路来实现,包括但不限于专用集成电路(asic)、现场可编程门阵列(fpga)以及根据本公开的教导而配置或编程的其他可编程逻辑装置。在计算设备、计算机处理器或可编程逻辑装置中运行的计算机指令或软件代码可以由软件或电子领域的技术人员基于本公开的教导容易地准备。
[0058]
全部或部分电子实施例可以在一个或多个计算设备中执行,所述计算设备包括服务器计算机、个人计算机、膝上型计算机、移动计算设备,如智能电话和平板计算机。
[0059]
电子实施例包括其中存储有计算机指令或软件代码的计算机存储介质,该计算机指令或软件代码可用于对计算机或微处理器进行编程以执行本发明的任何过程。存储介质可以包括但不限于软盘、光盘、蓝光光盘、dvd、cd-rom和磁光盘、rom、ram、闪存设备或适合存储指令、代码和/或数据任何类型的介质或设备。
[0060]
本发明各种实施例也可以在分布式计算环境和/或云计算环境中实现,其中,机器指令的全部或部分由通过通信网络互连的一个或多个处理设备以分布式方式执行,所述通信网络包括如内联网、广域网(wan)、局域网(lan)、互联网和其他形式的数据传输介质。
[0061]
为了说明和描述的目的,已经提供了本发明的前述描述。其并非旨在穷举或将本发明限制为所公开的精确形式。许多修改和变化对本领域技术人员而言是显而易见的。
[0062]
选择和描述的实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够理解本发明的各种实施例以及具有适合于所设想的特定用途的各种修改。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献