CN107016705B - 计算机视觉系统中的地平面估计 - Google Patents

计算机视觉系统中的地平面估计 Download PDF

Info

Publication number
CN107016705B
CN107016705B CN201710007711.5A CN201710007711A CN107016705B CN 107016705 B CN107016705 B CN 107016705B CN 201710007711 A CN201710007711 A CN 201710007711A CN 107016705 B CN107016705 B CN 107016705B
Authority
CN
China
Prior art keywords
points
point cloud
plane
cost function
ground plane
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710007711.5A
Other languages
English (en)
Other versions
CN107016705A (zh
Inventor
索耶·纳戈尔里
普尔纳·库马尔
马努·马修
普拉什汉特·拉马纳特普尔·维斯瓦纳特
迪帕克·库马尔·波达尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of CN107016705A publication Critical patent/CN107016705A/zh
Application granted granted Critical
Publication of CN107016705B publication Critical patent/CN107016705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R11/04Mounting of cameras operative during drive; Arrangement of controls thereof relative to the vehicle
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/02Details
    • G01C3/06Use of electric means to obtain final indication
    • G01C3/08Use of electric radiation detectors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C5/00Measuring height; Measuring distances transverse to line of sight; Levelling between separated points; Surveyors' levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2113Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/77Determining position or orientation of objects or cameras using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

本申请案涉及一种在计算机视觉系统中用于三维3D点云中的地平面估计的方法及计算机视觉系统。本发明提供一种用于三维3D点云中的地平面估计的方法,其包含确定(900)所述云的距离阈值及估计所述云的地平面。通过迭代地执行以下步骤而估计所述地平面:从三个随机选择的非共线3D点识别(902)所述云中的随机平面,其中所述随机平面的倾斜度满足(904)预定纵倾及侧倾约束;计算所述随机平面的成本函数(906),其中所述成本函数基于所述随机平面的内点的数目及位于所述随机平面下方的3D点的数目,其中使用所述距离阈值来确定3D点是否为内点;及如果所述成本函数比先前所计算成本函数更佳(908),那么将所述成本函数保存(910)为最佳成本函数。

Description

计算机视觉系统中的地平面估计
相关申请案的交叉参考
本申请案主张2016年1月5日提出申请的第201641000375号印度临时专利申请案的权益,所述临时专利申请案以全文引用的方式并入本文中。
技术领域
本发明的实施例一般来说涉及计算机视觉系统,且更具体来说涉及计算机视觉系统中的地平面估计。
背景技术
一类新型嵌入式安全系统(称为先进驾驶员辅助系统(ADAS))已引入到汽车中以减少人为操作失误。此类系统可提供例如面向后面景物的摄像机、电子稳定性控制及基于视觉的行人检测系统等功能性。这些系统中的许多系统使用单目摄像机且依赖于计算机视觉处理来检测一或多个摄像机的视野中的物件。在此类系统中,为了实现从由单目摄像机捕获的二维图像理解三维环境,从运动求得结构(SfM)处理是关键操作。
发明内容
本发明的实施例涉及计算机视觉系统中的地平面估计。在一个方面中,提供一种在计算机视觉系统中用于三维(3D)点云中的地平面估计的方法,所述方法包含:接收基于由单目摄像机捕获的多个2D帧而产生的3D点云;基于所述3D点云中的地平面的所估计高度而确定所述3D点云的距离阈值;及通过执行以下步骤预定迭代次数而估计所述3D点云的所述地平面:从所述3D点云中的三个随机选择的非共线3D点识别所述3D点云中的随机平面,其中所述随机平面的倾斜度满足预定纵倾及侧倾约束;计算所述随机平面的成本函数,其中所述成本函数基于所述随机平面的内点(inlier)的数目及位于所述随机平面下方的3D点的数目,其中使用所述距离阈值来确定所述3D点云中的3D点是否为内点;及如果所述成本函数比先前所识别随机平面的先前所计算成本函数更佳,那么将所述成本函数保存为最佳成本函数。
在一个方面中,提供一种计算机视觉系统,其包含经配置以捕获场景的多个二维(2D)帧的单目摄像机及经配置以接收基于所述多个2D帧而产生的三维(3D)点云的处理器。所述处理器经配置以基于所述3D点云中的地平面的所估计高度而确定所述3D点云的距离阈值;及通过执行以下步骤预定迭代次数而估计所述3D点云的所述地平面:从所述3D点云中的三个随机选择的非共线3D点识别所述3D点云中的随机平面,其中所述随机平面的倾斜度满足预定纵倾及侧倾约束;计算所述随机平面的成本函数,其中所述成本函数基于所述随机平面的内点的数目及位于所述随机平面下方的3D点的数目,其中使用所述距离阈值来确定所述3D点云中的3D点是否为内点;及如果所述成本函数比先前所识别随机平面的先前所计算成本函数更佳,那么将所述成本函数保存为最佳成本函数。
附图说明
现在将仅以实例方式且参考附图描述特定实施例,在附图中:
图1是用于估计三维(3D)点云中的地平面的方法的流程图;
图2是图解说明摄像机的纵倾及侧倾的方向的实例;
图3是图解说明3D点的轴规定的实例;
图4及图5是图解说明3D点云的修剪的实例;
图6及图7是图解说明经修改成本函数的使用的实例;
图8是图解说明图像的梯形区域的实例;
图9是用于估计3D点云的地平面的方法的流程图;
图10是图解说明确定具有未知缩放比例的3D点云的距离阈值的实例;及
图11是经配置以用于基于单目摄像机的汽车安全应用中的实例性多处理器芯片上系统(SOC)的高级框图。
具体实施方式
现在将参考附图详细描述本发明的具体实施例。为了一致性,各图中的相似元件由相似参考编号表示。
如先前所提及,从运动求得结构(SfM)处理是在许多基于摄像机的嵌入式安全系统中执行的计算机视觉处理中的关键操作。在由单目摄像机捕获的帧的实时SfM处理中,SfM重构流水线跨越顺序帧检测并跟踪关注点的二维(2D)位置,从而以对应于所述关注点的轨的形式存储所述2D位置。针对在流水线中处理的每一帧,基于帧内容而更新轨,且对所得轨中的每一者执行三角测量以产生一组三维(3D)点(本文中可称为3D点云)。
SfM的目标是恢复摄像机的视野(FOV)中的三维(3D)环境。更具体来说,在汽车应用中,SfM的一个目标是确定FOV中的物件距车辆的距离。仅使用图像的SfM可仅按照无法从图像确定的缩放比例因数而重构3D环境。在无此缩放比例因数的情况下,无法可靠地确定物件距离。
存在用于计算此未知缩放比例因数的数种已知技术。一些此类技术使用例如惯性测量单元或速度计等外部传感器。其它此类技术使用摄像机距地面的高度。为了基于摄像机的高度而确定缩放比例因数,需要两种事物:1)摄像机距地面的高度,及2)呈经按比例缩放3D点的形式的地平面。摄像机高度(还称为地面高度)是从摄像机中心到地平面的距离。在汽车应用中,由于摄像机是安装于车辆中的固定位置中,因此摄像机的高度很容易获得。
本发明的实施例提供从3D点云估计地平面。然后,可使用所估计地平面及可用摄像机高度来确定3D点云的缩放比例且因此确定在场景中检测的物件的距离。地平面估计基于众所周知的随机取样一致性(RANSAC)算法。一般来说,当不存在完全拟合数据点的单个模型且存在考虑到大量数据点的一个模型时,RANSAC算法使模型拟合数据点。当3D点云包含位于地平面上的大量点的概率较高且还将存在位于地平面以上的点时,此算法很好地适于检测地平面。
图1是图解说明使用RANSAC估计3D点云中的地平面的流程图。在给出3D点云的情况下,在3D点云中识别100随机平面。可通过在3D点云中选择三个随机非共线点且计算穿过所述三个点的平面的方程式而识别所述随机平面。可做出检查以确保所述三个随机选择的点不同于任何先前选择的三个点的集合,且如果所述三个点匹配任何先前选择的集合,那么重复所述选择。
然后计算102所述平面的成本函数,即,确定所述3D点云中在所述平面上或附近的3D点的数目。这些点称为“内点”。因此,平面的成本函数简单地为内点的数目。另外,成本越高,即,内点的数目越高,平面越好。确定3D点是否为内点可通过以下方式做出:计算3D点距平面的距离,及将所述距离与距离阈值进行比较。如果所述距离低于阈值,那么确定3D点为内点。
然后将成本函数与当前最佳成本函数进行比较104以确定新成本函数是否更佳。如果当前成本函数更佳,那么将所述成本函数保存106为最佳成本函数且将平面保存为最佳平面。重复步骤100到108某一预定迭代次数。一旦执行了所有迭代,便将当前最佳平面识别为地平面。可按照以下方程式确定迭代k的次数:
Figure BDA0001203632730000041
其中p是找出地平面的所要概率,w是内点的数目除以3D点的总数目,且n是估计模型所需的点的数目。为了将平面模型化,n=3。假设w=0.125,那么使找出地平面达99%概率所需的迭代的最小数目为约2350。
对于一致地识别地平面,以上算法可能并非充分稳健的,这是因为所述算法将随机选择的平面当中的具有最大数目个内点的任何随机选择的平面识别为地平面。换句话说,不存在所得平面即是地平面的确定性。本发明的实施例提供对所述算法的修改,所述修改考虑到存在于汽车环境中的环境约束以帮助确保使用经修改算法选择的平面为地平面。
在一些实施例中,用以帮助消除错误地平面检测的对RANSAC算法的一种修改是作为随机平面选择的一部分应用纵倾及侧倾约束以消除不属于纵倾及侧倾约束内的任何随机平面。图2是图解说明摄像机的纵倾及侧倾的方向的实例。可在车辆在平坦表面上固定不动时在校准期间确定摄像机的纵倾及侧倾。这些测量形成纵倾及侧倾的基本测量(即,baseRoll及basePitch),可从所述基本测量确定当车辆正在移动时的变化。当摄像机的轴将几乎平行于地平面时,这些测量均将不大。此外,当车辆正在移动时,其通常在几乎平坦表面上,因此地平面的倾斜度将为低的。
当车辆正在移动时,实际侧倾及纵倾将变化,但在道路上的典型操作中,实际侧倾及纵倾与基线侧倾及纵倾之间的差将为小的。可使用侧倾的变化范围及纵倾的变化范围来消除具有在这些范围外的倾斜度的任何随机选择的平面。侧倾范围可界定为[baseRoll-deltaRoll,baseRoll+deltaRoll],且纵倾范围可界定为[basePitch-deltaPitch,basePitch+deltaPitch]。deltaRoll及deltaPitch的特定值可取决于实施方案且可为任何适合值。deltaRoll及deltaPitch的值可依据经验确定。这些Δ的典型值可在0.5到2.0度的范围内。可忽略具有不属于这些范围内的纵倾及侧倾的任何随机平面且选择新随机平面。
在一些实施例中,用以帮助消除错误地平面检测的对RANSAC算法的一种修改是修剪3D点云以消除很可能不是地平面的一部分的3D点。此修剪可基于摄像机的高度,即,可消除高于摄像机的高度的任何点,这是因为此类3D点不太可能位于地平面中。图3是图解说明3D点的轴规定的实例。使用其中X轴在右边、Y轴向下且Z轴沿移动方向(即,车辆正沿其移动的方向)的右手规则。原点是摄像机中心。注意,3D点的Y坐标随高度减小而增加。鉴于当车辆正在移动时摄像机纵倾不大,地平面中的3D点将具有比3D点云中的其它3D点(例如,对应于树或建筑物的3D点)大的Y坐标。
替代考虑3D点云中的所有3D点,按Y坐标值将3D点从最高到最低分类,且处理最高类的3D点的T%以确定地平面。T的值取决于实施方案且可为可依据经验确定的任何适合值。举例来说,如果使用SfM来重构全FOV,那么T的值可在45%到55%的范围内。如果SfM使用并不横跨整个FOV的预计算关注区(ROI),那么T的值可不同。图4及5是图解说明在假设全FOV的SfM且T=50的情况下此修剪的效果的实例。图4展示在无修剪的情况下投影到图像上的经重构3D点云,且图5展示投影到图像上的经修剪3D点云。图5展示仅低于摄像机的3D点保留于经修剪3D云中。
此修剪减小计算的复杂性,这是因为找出地平面的概率取决于迭代的次数。如先前所描述,针对给定概率,实现所述概率所需的迭代的次数可为预定的。如果3D点的数目减少(例如)50%,那么迭代的次数可减少。举例来说,为了实现找出地平面的99%概率,如果T=50,那么w可增加到0.25,因此将迭代的次数减少到约300。
在一些实施例中,用以帮助消除错误地平面检测的对RANSAC算法的一种修改是改变成本函数以更佳地将地平面模型化。对于类属平面拟合,使用内点的数目作为成本函数来找出最佳方案是一个好的选择。然而,实验表明在许多实例中通过RANSAC选择的最佳平面并非地平面。这是由于相对稀疏点云使得地平面并非最密集平面(即,具有最多内点的平面)导致。在许多情形中,地面以上某一距离处的平面被不正确地选择为地平面。
为了更佳地将地平面模型化,将成本函数改变为还考虑到平面下方的3D点的数目。即,平面的成本函数是内点的数目减3D点云中在所述平面下方的3D点的数目。经修改成本函数确保被选择为地平面的平面具有低高度(即,很少点在其下方)且因此更可能位于地面上。图6及7是图解说明使用经修改成本函数的效果的实例。在图6中,使用先前成本函数导致检测到在真实地平面以上的所图解说明地平面。在图7中,使用经修改成本函数导致检测到较接近于真实地平面的所图解说明地平面。
在一些实施例中,用以帮助消除错误地平面检测的对RANSAC算法的一种修改是进一步修改成本函数以对内点中的一些内点赋予较大权重。此修改基于图像的一些部分比其它部分更可能位于地面上的观察。举例来说,图像的直接位于车辆前面的区比图像的其它区更可能为地平面的一部分。因此,可使此类区在地平面决策中具有更大影响。
将被赋予更大权重的内点是位于用于产生3D点云的图像(帧)的梯形区域中的那些3D点,如图8的实例中所图解说明。在此实例中,轴上的标记是作为图像宽度及高度的分数的2D坐标。梯形区域的尺寸可依据经验确定。由于从SfM处理已知3D点到2D图像中的投影,因此可确定属于此梯形区域内的3D点。举例来说,可使用对应于3D点的轨的最后2D位置来确定3D点是否在梯形区域中。在添加加权因数w的情况下,平面的成本函数为(梯形外部的内点的数目-梯形外部的在平面下方的点的数目)+w*(梯形内部的内点的数目-梯形内部的在平面下方的点的数目)。可使用w的任何适合值。w的值可依据经验确定。
图9是用于估计3D点云的地平面的方法的流程图。所述方法基于RANSAC算法,但实施例包含先前所描述的修改中的一或多者。在给出3D点云的情况下,对3D点云进行修剪900以移除不太可能为地平面的一部分的3D点。如本文中先前所描述,所述修剪可通过以下方式执行:按Y坐标值将3D点分类,且保留经分类3D点的前T%来处理以估计地平面。另外,确定将用于决定3D点是否为平面的内点的距离阈值。下文参考图10描述此距离阈值的确定。
在修剪之后,在经修剪3D点云中识别902随机平面。可通过在经修剪3D点云中选择三个非共线随机点且计算穿过所述三个点的平面的方程式而识别所述随机平面。尽管未具体展示,但可做出检查以确保所述三个随机选择的点不同于任何先前选择的三个点的集合,且如果所述三个点匹配任何先前选择的集合,那么重复所述选择。做出检查以确定904随机平面的倾斜度是否为可接受的(即,随机平面的倾斜度在先前所描述的摄像机侧倾及纵倾范围内)。可通过计算平面的侧倾及纵倾且检查所计算侧倾及纵倾是否在摄像机侧倾及纵倾范围内而执行此检查。如果平面倾斜度是不可接受的904,那么从经修剪3D点云识别902另一随机平面。
如果平面倾斜度是可接受的904,那么计算906平面的成本函数。如本文中先前所描述,成本函数基于平面的内点的数目。可通过计算3D点距平面的距离且将所述距离与针对3D点云确定的距离阈值进行比较而做出3D点是否为内点的确定。如果所述距离低于阈值,那么确定3D点为内点。在一些实施例中,将成本函数计算为内点的数目减经修剪3D点云中在平面下方的3D点的数目,如本文中先前所描述。在一些实施例中,按照本文中先前所描述的经加权成本函数计算所述成本函数。
然后将成本函数与当前最佳成本函数进行比较908以确定新成本函数是否更佳。如果当前成本函数更佳,那么将所述成本函数保存910为最佳成本函数,将平面保存为最佳平面且保存平面的内点。重复步骤902到912某一预定迭代次数。本文中先前描述迭代的次数的确定。一旦执行了所有迭代,便将最小平方算法应用914于最佳平面的内点以确定地平面。
一旦估计了地平面,便可基于地平面及用于捕获用于产生3D点云的帧的单目摄像机的高度来估计缩放比例。在给出3D场景的缩放比例的情况下,可以标准单位(例如,米、英里、英尺)估计物件的距离及位置。
注意,以上方法的功效取决于内点的界定。如果已知3D点云的缩放比例,那么可计算云中的3D点与任一平面之间的距离,且可使用基于度量距离的阈值来决定点是否位于平面上。在SfM产生的点云中,缩放比例是未知量且已知点距平面的距离仅取决于缩放比例。在一些实施例中,基于地平面的所估计高度确定3D点云的距离阈值。可通过以下方式找出还称为参考高度的此所估计高度:识别3D点云中可能位于地平面上的3D点,找出经识别3D点中的每一者距地面的高度(已知其仅取决于缩放比例),及将阈值计算为可能对应于地平面上的3D点的高度(即,参考高度)的分数。
图10是图解说明确定具有未知缩放比例的3D点云的距离阈值的实例。为找出计算距离阈值所需的参考高度,按Y坐标将3D点云中的3D点分类1000。注意,在其中执行修剪的实施例中,可使用用于修剪的同一种分类来找出参考高度。如先前参考图3所描述,3D点的Y坐标随地面以上的高度增加而减小。位于经分类3D点的90th百分位处或接近于90th百分位(假设分类是最低值到最高值)的3D点的Y坐标被选择为参考高度。注意,不可总是将具有最大Y坐标的3D点假设为位于真实地平面上,这是因为在SfM重构中可存在噪声。选择消除约10%的具有较高Y坐标的点的点补偿SfM重构中的任何噪声的效应。
为选择特定百分位来用于选择参考高度,可使用表示车辆将在其中操作的环境的具有已知缩放比例的3D点云进行测试。可按Y坐标将点云中的3D点分类,且跨越3D点云检查处于各种百分位的Y坐标以确定跨越3D点云何种百分位最接近地对应于相应地平面上(假设低纵倾及侧倾)的Y坐标。
在给出参考高度(即,选定3D点的Y坐标)的情况下,将所述距离阈值计算为Y坐标的值的分数。所使用的特定分数是目标距离阈值除以已知摄像机高度。举例来说,假设Y坐标为摄像机的高度。如果目标距离阈值是10厘米且摄像机的已知高度是1.5米,那么阈值是摄像机高度的6.7%,即,10/150。因此,所述距离阈值可计算为参考高度的6.7%。目标距离阈值可依据经验确定。
图11是经配置以用于基于单目摄像机的ADAS中的实例性多处理器芯片上系统(SOC)1100的高级框图。特定来说,实例性SOC 1100是可从德州仪器公司(TexasInstruments,Inc.)购得的TDA3X SOC的实施例。本文中提供对SOC 1100的组件的高级描述。实例性组件的更多详细描述可在以下文件中找到:M.莫迪(M.Mody)等人的“TI的TDA3X平台上的高性能前置摄像机ADAS应用(High Performance Front Camera ADASApplications on TI's TDA3X Platform)”,2015年第22届关于高性能计算的IEEE国际会议的会议记录,2015年12月16日到19日,印度,班加罗尔,第456页到第463页;及“用于先进驾驶员辅助系统(ADAS)的TDA3x SOC处理器技术摘要(TDA3x SOC Processors forAdvanced Driver Assist Systems(ADAS)Technical Brief)”,德州仪器,SPRT704A,2014年10月,第1页到第6页,所述文件以引用的方式并入本文中。
SOC 1100包含经由高速互连件1122耦合的双通用处理器(GPP)1102、双数字信号处理器(DSP)1104及视觉处理器1106。SOC 1100进一步包含直接存储器存取(DMA)组件1108、耦合到单目摄像机1124的摄像机捕获组件1110、显示管理组件1114、芯片上随机存取存储器(RAM)1116及各种输入/输出(I/O)外围装置1120,其全部经由互连件1122耦合到所述处理器。另外,SOC 1100包含安全组件1118,安全组件1118包含用以使得能够遵守汽车安全要求的安全相关功能性。此类功能性可包含支持数据的CRC(循环冗余校验)、用于漂移检测的时钟比较器、错误信令、窗口看门狗定时器及SOC损坏及故障自测试。实施实时SfM以基于从单目摄像机1124捕获的帧而产生3D点云且实施如本文中所描述地平面检测的实施例以检测3D点云中的地平面的软件可存储于存储器1116中且可在SOC 1100的一或多个可编程处理器上执行。
其它实施例
尽管已关于有限数目个实施例描述了本发明,但受益于本发明的所属领域的技术人员将了解可构想出不背离如本文中所揭示的本发明的范围的其它实施例。
举例来说,本文中已描述其中在搜索地平面之前修剪3D点云的实施例。所属领域的技术人员将理解其中不修剪3D点云的实施例。
在另一实例中,本文中已描述其中针对每一3D点云确定距离阈值的实施例。所属领域的技术人员将理解其中在3D点云的缩放比例可能被改变时确定距离阈值的实施例。
在另一实例中,本文中已描述其中将地平面估计实施为在多处理器SOC中的处理器上执行的软件指令的实施例。所属领域的技术人员将理解可将地平面估计实施为软件、固件及硬件的任何适合组合。举例来说,一些功能性可实施于一或多个硬件加速器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等中。
在另一实例中,本文中已参考汽车安全系统描述各实施例。所属领域的技术人员将理解用于具有类似环境约束的其它计算机视觉应用(例如,举例来说,工业应用、机器人及消费者应用(例如真空清洁器))的实施例。
在本描述及权利要求书通篇中使用某些术语来指代特定系统组件。如所属领域的技术人员将了解,系统中的组件可通过不同名称来指代及/或可以本文中未展示的方式组合,此并不背离所描述的功能性。本文件不打算区分在名称但非功能上不同的组件。在所述描述中且在权利要求书中,以开放式方式使用术语“包含”及“包括”,且因此其应解释为意指“包含但不限于…”。此外,术语“耦合”及其派生词打算意指间接、直接、光学及/或无线电连接。因此,举例来说,如果第一装置耦合到第二装置,那么所述连接可通过直接电连接、通过经由其它装置及连接的间接电连接、通过光学电连接及/或通过无线电连接进行。
因此,预期所附权利要求书将涵盖归属于本发明的真实范围及精神内的对所述实施例的任何此类修改。

Claims (18)

1.一种在计算机视觉系统中用于三维3D点云中的地平面估计的方法,所述方法包括:
接收基于由单目摄像机捕获的多个2D帧而产生的3D点云;
基于所述3D点云中的地平面的所估计高度而确定所述3D点云的距离阈值;
通过执行以下步骤预定迭代次数而估计所述3D点云的所述地平面:
从所述3D点云中的三个随机选择的非共线3D点识别所述3D点云中的随机平面,其中所述随机平面的倾斜度满足预定纵倾及侧倾约束;
计算所述随机平面的成本函数,其中所述成本函数基于所述随机平面的内点的数目及位于所述随机平面下方的3D点的数目之间的差,其中使用所述距离阈值来确定所述3D点云中的3D点是否为内点;及
如果所述成本函数比先前所识别随机平面的先前所计算成本函数更佳,那么将所述成本函数保存为最佳成本函数。
2.根据权利要求1所述的方法,其进一步包括在估计所述地平面之前修剪所述3D点云以消除不太可能位于所述地平面上的3D点。
3.根据权利要求2所述的方法,其中修剪包括:根据Y坐标的值将所述3D点云中的所述3D点分类,及从所述3D点云消除未包含于具有最高Y坐标值的所述经分类3D点的预定百分比中的所有3D点。
4.根据权利要求3所述的方法,其中所述预定百分比介于45%到55%的范围内。
5.根据权利要求1所述的方法,其中计算成本函数包括:对也位于所述多个2D帧中的一2D帧的预定梯形中的所述随机平面的内点及位于所述平面下方的3D点赋予更大权重。
6.根据权利要求5所述的方法,其中计算成本函数包括:将所述成本函数计算为(所述梯形外部的所述内点的数目-所述梯形外部的位于所述随机平面下方的3D点的数目)+w*(所述梯形内部的所述内点的数目-所述梯形内部的位于所述平面下方的3D点的数目),其中w是预定加权因数。
7.根据权利要求1所述的方法,其中确定距离阈值包括:基于所述3D点云中可能位于所述地平面中的3D点而确定所述地平面的参考高度,及将所述距离阈值计算为所述参考高度的预定分数。
8.根据权利要求7所述的方法,其中所述预定分数基于所述单目摄像机的高度及目标距离阈值。
9.根据权利要求7所述的方法,其中确定参考高度包括:根据Y坐标的值将所述3D点云中的所述3D点分类,及将处于所述经分类3D点的预定百分位的3D点的Y坐标的值选择为所述参考高度,其中所述预定百分位补偿所述3D点云的产生中的噪声。
10.一种计算机视觉系统,其包括:
单目摄像机,其经配置以捕获场景的多个二维2D帧;及
处理器,其经配置以接收基于所述多个2D帧而产生的三维3D点云,所述处理器经配置以:
基于所述3D点云中的地平面的所估计高度而确定所述3D点云的距离阈值;及
通过执行以下步骤预定迭代次数而估计所述3D点云的所述地平面:
从所述3D点云中的三个随机选择的非共线3D点识别所述3D点云中的随机平面,其中所述随机平面的倾斜度满足预定纵倾及侧倾约束;
计算所述随机平面的成本函数,其中所述成本函数基于所述随机平面的内点的数目及位于所述随机平面下方的3D点的数目之间的差,其中使用所述距离阈值来确定所述3D点云中的3D点是否为内点;及
如果所述成本函数比先前所识别随机平面的先前所计算成本函数更佳,那么将所述成本函数保存为最佳成本函数。
11.根据权利要求10所述的计算机视觉系统,其中所述处理器进一步经配置以在估计所述地平面之前修剪所述3D点云以消除不太可能位于所述地平面上的3D点。
12.根据权利要求11所述的计算机视觉系统,其中所述处理器经配置以通过以下步骤而修剪所述3D点云:根据Y坐标的值将所述3D点云中的所述3D点分类,及从所述3D点云消除未包含于具有最高Y坐标值的所述经分类3D点的预定百分比中的所有3D点。
13.根据权利要求12所述的计算机视觉系统,其中所述预定百分比介于45%到55%的范围内。
14.根据权利要求10所述的计算机视觉系统,其中计算所述成本函数包括:对也位于所述多个2D帧中的一2D帧的预定梯形中的所述随机平面的内点及位于所述平面下方的3D点赋予更大权重。
15.根据权利要求14所述的计算机视觉系统,其中计算所述成本函数包括:将所述成本函数计算为(所述梯形外部的所述内点的数目-所述梯形外部的位于所述随机平面下方的3D点的数目)+w*(所述梯形内部的所述内点的数目-所述梯形内部的位于所述平面下方的3D点的数目),其中w是预定加权因数。
16.根据权利要求10所述的计算机视觉系统,其中所述处理器进一步经配置以通过以下步骤而确定距离阈值:基于所述3D点云中可能位于所述地平面中的3D点而确定所述地平面的参考高度,及将所述距离阈值计算为所述参考高度的预定分数。
17.根据权利要求16所述的计算机视觉系统,其中所述预定分数基于所述单目摄像机的高度及目标距离阈值。
18.根据权利要求16所述的计算机视觉系统,其中确定参考高度包括:根据Y坐标的值将所述3D点云中的所述3D点分类,及将处于所述经分类3D点的预定百分位的3D点的Y坐标的值选择为所述参考高度,其中所述预定百分位补偿所述3D点云的产生中的噪声。
CN201710007711.5A 2016-01-05 2017-01-05 计算机视觉系统中的地平面估计 Active CN107016705B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
IN201641000375 2016-01-05
IN201641000375 2016-01-05
US15/255,832 US10156441B2 (en) 2016-01-05 2016-09-02 Ground plane estimation in a computer vision system
US15/255,832 2016-09-02

Publications (2)

Publication Number Publication Date
CN107016705A CN107016705A (zh) 2017-08-04
CN107016705B true CN107016705B (zh) 2021-10-15

Family

ID=59226599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710007711.5A Active CN107016705B (zh) 2016-01-05 2017-01-05 计算机视觉系统中的地平面估计

Country Status (2)

Country Link
US (3) US10156441B2 (zh)
CN (1) CN107016705B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10989542B2 (en) 2016-03-11 2021-04-27 Kaarta, Inc. Aligning measured signal data with slam localization data and uses thereof
US11573325B2 (en) 2016-03-11 2023-02-07 Kaarta, Inc. Systems and methods for improvements in scanning and mapping
US11567201B2 (en) 2016-03-11 2023-01-31 Kaarta, Inc. Laser scanner with real-time, online ego-motion estimation
JP6987797B2 (ja) 2016-03-11 2022-01-05 カールタ インコーポレイテッド リアルタイムオンラインエゴモーション推定を有するレーザスキャナ
US10262222B2 (en) * 2016-04-13 2019-04-16 Sick Inc. Method and system for measuring dimensions of a target object
US10248872B2 (en) 2016-10-19 2019-04-02 Texas Instruments Incorporated Estimation of time to collision in a computer vision system
WO2019099605A1 (en) 2017-11-17 2019-05-23 Kaarta, Inc. Methods and systems for geo-referencing mapping systems
CN108007432B (zh) * 2018-01-03 2023-11-07 中建三局集团有限公司 地下管线的地表监测装置及其使用方法
CN108492357A (zh) * 2018-02-14 2018-09-04 天目爱视(北京)科技有限公司 一种基于激光的3d四维数据采集方法及装置
WO2019165194A1 (en) 2018-02-23 2019-08-29 Kaarta, Inc. Methods and systems for processing and colorizing point clouds and meshes
CN108573037A (zh) * 2018-04-04 2018-09-25 湖南三德科技股份有限公司 一种盘煤仪点云数据过滤方法、系统及装置
CN109035153B (zh) * 2018-06-06 2019-07-09 贝壳找房(北京)科技有限公司 一种点云数据的修正方法及装置
WO2020009826A1 (en) * 2018-07-05 2020-01-09 Kaarta, Inc. Methods and systems for auto-leveling of point clouds and 3d models
US10380440B1 (en) 2018-10-23 2019-08-13 Capital One Services, Llc Method for determining correct scanning distance using augmented reality and machine learning models
CN109448034B (zh) * 2018-10-24 2021-10-01 华侨大学 一种基于几何基元的零件位姿获取方法
CN109814564A (zh) * 2019-01-29 2019-05-28 炬星科技(深圳)有限公司 目标对象的检测、避障方法、电子设备及存储介质
JP7283005B2 (ja) * 2019-03-28 2023-05-30 株式会社トプコン 点群データ処理方法および点群データ処理装置
CN112634181A (zh) * 2019-09-24 2021-04-09 北京百度网讯科技有限公司 用于检测地面点云点的方法和装置
CN111508022B (zh) * 2020-04-17 2022-01-14 无锡信捷电气股份有限公司 一种基于随机采样一致性的线激光条纹定位方法
CN111582285B (zh) * 2020-04-28 2023-05-23 清华大学 点云图像的平面提取方法
CN111860321B (zh) * 2020-07-20 2023-12-22 浙江光珀智能科技有限公司 一种障碍物识别方法及系统
CN112082491A (zh) * 2020-09-11 2020-12-15 苏州杰锐思智能科技股份有限公司 基于点云的高度检测方法
CN113050103A (zh) * 2021-02-05 2021-06-29 上海擎朗智能科技有限公司 一种地面检测方法、装置、电子设备、系统及介质
US11710254B2 (en) 2021-04-07 2023-07-25 Ford Global Technologies, Llc Neural network object detection
US11403817B1 (en) * 2021-04-14 2022-08-02 Lineage Logistics, LLC Point cloud filtering
US20230089897A1 (en) * 2021-09-23 2023-03-23 Motional Ad Llc Spatially and temporally consistent ground modelling with information fusion

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298998A (zh) * 2014-09-28 2015-01-21 北京理工大学 一种3d点云的数据处理方法
CN105046688A (zh) * 2015-06-23 2015-11-11 北京工业大学 一种三维点云中的多平面自动识别方法
WO2015180758A1 (en) * 2014-05-27 2015-12-03 Application Solutions (Electronics and Vision) Ltd. Determining scale of three dimensional information
CN105825173A (zh) * 2016-03-11 2016-08-03 福州华鹰重工机械有限公司 通用道路和车道检测系统与方法
CN106080397A (zh) * 2016-08-25 2016-11-09 北京奇虎科技有限公司 自适应巡航系统及车载设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008091565A1 (en) * 2007-01-23 2008-07-31 Valeo Schalter & Sensoren Gmbh Method and system for universal lane boundary detection
EP2093699A1 (en) * 2008-02-19 2009-08-26 British Telecommunications Public Limited Company Movable object status determination
KR101188588B1 (ko) * 2008-03-27 2012-10-08 주식회사 만도 모노큘러 모션 스테레오 기반의 주차 공간 검출 장치 및방법
US8339454B1 (en) * 2008-09-20 2012-12-25 PureTech Systems Inc. Vision-based car counting for multi-story carparks
US10702216B2 (en) * 2010-06-08 2020-07-07 Styku, LLC Method and system for body scanning and display of biometric data
US8831290B2 (en) * 2012-08-01 2014-09-09 Mitsubishi Electric Research Laboratories, Inc. Method and system for determining poses of vehicle-mounted cameras for in-road obstacle detection
US20140139635A1 (en) * 2012-09-17 2014-05-22 Nec Laboratories America, Inc. Real-time monocular structure from motion
GB2506411B (en) * 2012-09-28 2020-03-11 2D3 Ltd Determination of position from images and associated camera positions
US9256791B2 (en) * 2012-12-04 2016-02-09 Mobileye Vision Technologies Ltd. Road vertical contour detection
CN109885080B (zh) * 2013-11-27 2022-09-20 宾夕法尼亚大学理事会 自主控制系统及自主控制方法
US9892328B2 (en) * 2014-06-18 2018-02-13 Mobileye Vision Technologies Ltd. Hazard detection from a camera in a scene with moving shadows
US9292961B1 (en) * 2014-08-26 2016-03-22 The Boeing Company System and method for detecting a structural opening in a three dimensional point cloud
US10706615B2 (en) * 2015-12-08 2020-07-07 Matterport, Inc. Determining and/or generating data for an architectural opening area associated with a captured three-dimensional model
EP3193306B8 (en) * 2016-01-15 2019-01-23 Aptiv Technologies Limited A method and a device for estimating an orientation of a camera relative to a road surface

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015180758A1 (en) * 2014-05-27 2015-12-03 Application Solutions (Electronics and Vision) Ltd. Determining scale of three dimensional information
CN104298998A (zh) * 2014-09-28 2015-01-21 北京理工大学 一种3d点云的数据处理方法
CN105046688A (zh) * 2015-06-23 2015-11-11 北京工业大学 一种三维点云中的多平面自动识别方法
CN105825173A (zh) * 2016-03-11 2016-08-03 福州华鹰重工机械有限公司 通用道路和车道检测系统与方法
CN106080397A (zh) * 2016-08-25 2016-11-09 北京奇虎科技有限公司 自适应巡航系统及车载设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Single-view obstacle detection for smart back-up camera systems;Jeffrey Lalonde et al.;《2012 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops》;20120716;第1-8页 *

Also Published As

Publication number Publication date
CN107016705A (zh) 2017-08-04
US20170191826A1 (en) 2017-07-06
US11763568B2 (en) 2023-09-19
US10156441B2 (en) 2018-12-18
US20190078880A1 (en) 2019-03-14
US10890445B2 (en) 2021-01-12
US20210088331A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
CN107016705B (zh) 计算机视觉系统中的地平面估计
CN113486797B (zh) 无人车位置检测方法、装置、设备、存储介质及车辆
CN108352071B (zh) 用于计算机视觉系统中的运动结构处理的方法
JP6670071B2 (ja) 車両用画像認識システム、及び対応法
US10008002B2 (en) Single-camera distance estimation
JP5689907B2 (ja) 車両において通行物体位置検出を向上する方法
US10102644B2 (en) Method and a device for estimating an orientation of a camera relative to a road surface
JP2018124787A (ja) 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム
US20140085409A1 (en) Wide fov camera image calibration and de-warping
JP2006234492A (ja) 物体認識装置
JP2006071471A (ja) 移動体高さ判別装置
JP6021689B2 (ja) 車両諸元計測処理装置、車両諸元計測方法及びプログラム
EP3324359B1 (en) Image processing device and image processing method
US10832428B2 (en) Method and apparatus for estimating a range of a moving object
US20230041382A1 (en) Electronic device and method for tracking object thereof
CN114527490A (zh) 在车辆运行时检测三维结构模型
JP2006090957A (ja) 移動体の周囲物体検出装置及び移動体の周囲物体検出方法
JP2017167974A (ja) 推定装置、方法及びプログラム
CN114037977B (zh) 道路灭点的检测方法、装置、设备及存储介质
JP6855233B2 (ja) 障害物検出装置および障害物検出方法
EP3879810A1 (en) Imaging device
JP7064400B2 (ja) 物体検知装置
JP2021105584A (ja) 位置推定方法及び位置推定装置
US20240112363A1 (en) Position estimation system, position estimation method, and program
CN113763560B (zh) 点云数据的生成方法、系统、设备及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant