CN112116644B - 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 - Google Patents

一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 Download PDF

Info

Publication number
CN112116644B
CN112116644B CN202010883622.9A CN202010883622A CN112116644B CN 112116644 B CN112116644 B CN 112116644B CN 202010883622 A CN202010883622 A CN 202010883622A CN 112116644 B CN112116644 B CN 112116644B
Authority
CN
China
Prior art keywords
obstacle
row
line
value
condition
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
CN202010883622.9A
Other languages
English (en)
Other versions
CN112116644A (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.)
Liaoning Shihua University
Original Assignee
Liaoning Shihua University
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 Liaoning Shihua University filed Critical Liaoning Shihua University
Priority to CN202010883622.9A priority Critical patent/CN112116644B/zh
Publication of CN112116644A publication Critical patent/CN112116644A/zh
Application granted granted Critical
Publication of CN112116644B publication Critical patent/CN112116644B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • 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/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • 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
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • 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/20081Training; Learning
    • 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/20228Disparity calculation for image-based rendering
    • 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/30204Marker
    • G06T2207/30208Marker matrix
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及一种基于视觉的障碍物检测方法和装置,其中障碍物检测方法包括:获取相机拍摄的图像、图像校正、获取深度图、道路区域检测、障碍物检测、最终将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。本发明另外提供了一种障碍物距离计算方法,是在障碍物检测方法的基础上,将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域、障碍物距离计算、输出计算得到的每个障碍物的真实距离值
Figure DDA0002654882750000011
同时本发明还提供了障碍物距离计算装置。本发明通过利用深度学习模型预测的深度图,仅用单目相机,可以实现障碍物区域检测及障碍物距离计算,既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。

Description

一种基于视觉的障碍物检测方法和装置、障碍物距离计算方 法和装置
技术领域
本发明涉及障碍物检测技术领域,特别涉及一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置。
背景技术
障碍物检测及障碍物距离计算对汽车安全驾驶具有重要意义。根据障碍物检测及障碍物距离计算结果,可以实现碰撞避免、路径规划等功能。
现有的基于视觉的障碍物检测技术主要有:基于深度学习的特定类型障碍物检测方法,如车辆检测、行人检测等;基于几何约束的任意类型障碍物检测方法;以及基于IPM变换的障碍物检测方法。而这些检测技术在应用过程中具有以下缺陷:(1)基于深度学习的方法只能检测特定种类的障碍物;(2)基于几何约束的方法可以检测任意种类的障碍物,但是当使用单目相机时,该类方法只能检测静止障碍物,对于运动障碍物较难检测,并且无法直接完成运动障碍物的距离计算;(3)基于IPM变换的方法可以利用单目相机同时检测运动及静止障碍物,但是需要道路平坦,道路不存在坡度等前提限制,缩减了算法适用范围。
发明内容
为了解决上述技术问题,本发明的目的在于提供一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置。本发明通过利用深度学习模型预测的深度图,仅用单目相机,可以实现障碍物区域检测及障碍物距离计算,既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。
本发明的上述目的通过以下技术方案实现:
一种基于视觉的障碍物检测方法,具体包括以下步骤:
S1、获取相机拍摄的图像;
S2、图像校正:对获取的图像通过校正得到校正后图像;
S3、获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
S4、道路区域检测:对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
S5、障碍物检测:对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
S6、将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
进一步地,所述步骤S2的校正方法具体包括:
将原始输入图像利用相机的内参数校正得到无畸变图像,利用离线外参标定方法,事先标定出相机安装角度,包括相机的安装俯角、滚动角和偏航角,利用所述安装角度,将经内参校正后的无畸变图像,进一步校正为无安装角度的校正后图像。
进一步地,所述步骤S4的道路区域检测具体包括以下步骤:
S401、读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1,确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;由于导数值的存储列和当前读取列对应,所以导数值存储列的行数,和视差图的行数相等,所述最大行rm行为当前导数值的存储列中位于最下方的行;
然后,初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val,将val与基准值t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
S402、重复步骤S401,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行;
S403、对于视差图的每一列,上述遍历过程中得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
进一步地,所述步骤S5的障碍物检测具体包括以下步骤:
S501、读取视差图中任意一个已经被步骤S4确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
然后,初始化不满足条件行的计数为0,在当前存储列中,从被步骤S4确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
S502:重复步骤S501,直到完成视差图中,所有已经被步骤S4确定的地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列的处理,得到障碍物上底边出现的行;
S503:对于视差图的每一列,上述遍历过程中得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
本发明另一目的是提供一种基于视觉的障碍物检测装置,该检测装置包括:
图像获取单元,用于获取相机拍摄的图像;
图像校正单元,用于对获取的图像通过校正得到校正后图像;
视差图获取单元,用于利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
道路区域检测单元,用于对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
障碍物检测单元,用于对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
第一输出单元,用于将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
进一步地,所述道路区域检测单元具体包括:
第一处理子单元,用于读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1,确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;
第一遍历子单元,用于初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val;
第一判断子单元,用于将val与t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第一重复指示子单元,用于指示所述第一处理子单元、第一遍历子单元和第一判断子单元重复进行动作,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行;
第一确定子单元,用于将视差图的每一列,将得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
进一步地,所述障碍物检测单元具体包括:
第二处理子单元,用于读取视差图中任意一个已经被确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
第二遍历子单元,用于初始化不满足条件行的计数为0,在当前存储列中,从确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
第二判断子单元,用于判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第二重复指示子单元,用于指示所述第二处理子单元、第二遍历子单元和第二判断子单元重复动作,直到完成视差图中,所有列的扫描,得到各个列的障碍物上底边出现的行;
第二确定子单元,用于将视差图的每一列,得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
一种基于视觉的障碍物距离计算方法,包括所述基于视觉的障碍物检测方法,还包括以下步骤:
S7、障碍物距离计算步骤,具体为:
S710:对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
S720:对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure GDA0004171245680000071
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
S730:根据计算得到的n个像素点三维坐标点(Xk,Yk,Zk)拟合地平面方程,具体为:
令地平面方程为:
AX+BY+CZ+D=0(4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
S740:根据相机安装高度H,求出尺度因子λ:
根据式(4)求出相机距离地面的距离D′,
Figure GDA0004171245680000072
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure GDA0004171245680000073
S750:对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure GDA0004171245680000074
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure GDA0004171245680000077
Figure GDA0004171245680000075
S8、输出计算得到的每个障碍物的真实距离值
Figure GDA0004171245680000076
一种基于视觉的障碍物距离计算装置,包括所述基于视觉的障碍物检测装置,所述距离计算装置还包括:
像素点采样单元,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第二计算单元,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure GDA0004171245680000081
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
第三计算单元,用于根据计算得到的n个像素点三维坐标点(Xk,Yk,Zk)拟合地平面方程,具体包括:
地平面方程构建子单元,用于构建地平面方程:
AX+BY+CZ+D=0(4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],
地平面方程计算子单元,用于构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
第四计算单元,用于根据相机安装高度H,求出尺度因子λ:
根据(4)求出相机距离地面的距离D′,
Figure GDA0004171245680000082
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure GDA0004171245680000083
第五计算单元,用于计算障碍物的真实距离值
Figure GDA0004171245680000084
对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure GDA0004171245680000085
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure GDA0004171245680000091
Figure GDA0004171245680000092
第二输出单元,用于输出计算得到的每个障碍物的真实距离值
Figure GDA0004171245680000093
本发明的有益效果在于:本发明根据车载相机拍摄的车辆周围的单帧图像即可实现检测道路障碍物,并可以给出障碍物距离,对障碍物进行精准定位,实现过程容易,对设备要求更低,检测效果更鲁棒。通过利用深度学习模型预测的深度图,仅用单目相机既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1为本发明的计算方法流程示意图;
图2为外参校正前后的相机拍摄视角对比示意图;
图3为相机拍摄图像及其对应的视差图;
图4为视差图的扫描示意图;
图5为视差图扫描后得到各个列的地面与障碍物交界位置出现的行的示意图;
图6为道路区域检测后得到的道路区域示意图;
图7为障碍物检测后得到的障碍物区域及道路边界线示意图;
图8为本发明的基于视觉的障碍物检测装置的结构框图;
图9为道路区域检测单元的结构框图;
图10为障碍物检测单元的结构框图;
图11为本发明提供的另一种基于视觉的障碍物距离计算方法的流程图;
图12为本发明提供的另一种基于视觉的障碍物距离计算装置的结构框图。
具体实施方式
下面结合附图及具体实施例进一步说明本发明的详细内容及其具体实施方式。
实施例1
参照图1,一种基于视觉的障碍物检测方法,具体包括以下步骤:
S1、获取相机拍摄的图像(如图3(a)所示);本实施例中的相机可安装于汽车前方挡风玻璃处,也可以安装于车身其他位置;图像为单帧图像;
S2、图像校正:对获取的图像通过校正得到校正后图像;
校正方法具体包括:
将原始输入图像利用相机的内参数(通过离线内参标定,事先标定好的,现有技术)校正得到无畸变图像,利用离线外参标定方法(现有技术),事先标定出相机安装角度,包括相机的安装俯角、滚动角和偏航角,利用所述安装角度,将经内参校正后的无畸变图像,进一步校正为无安装角度的校正后图像(如图2所示,图2给出了外参校正前后相机拍摄视角的对比,其中图2(a)为相机实际安装的角度示意图;图2(b)为经过图像外参校正后图像对应的虚拟相机的安装角度示意图,可见校正后图像即使得校正后的相机成像平面,垂直于车身所在的水平面;相机光轴平行于车身长度方向)。
具体实现过程为:
设原始输入图像为I1,利用内参校正得到无畸变图像为I2,利用外参去除安装角度后的图像(校正后图像)为I,由I1得到I2的过程为,对I2中的任意一坐标点(u2,v2),计算其在I1中的对应位置(u1,v1),然后将I1中的点(u1,v1)的像素值赋值给I2中的点(u2,v2)。
由I2得到I的过程为,对I中的任意一坐标点(u,v),计算其在I2中的对应位置(u2,v2),然后将I2中的点(u2,v2)的像素值赋值给I中的点(u,v)。这样,就由原始图像I1得到了经过内参和外参校正后的图像I,本实施例的后续计算处理都在图像I上进行。
具体转换公式描述如下:
由(u2,v2)到(u1,v1)的计算公式为:
(u1,v1)=g(u2,v2) (1)
其中,g为描述相机成像模型的函数,由内参标定方法确定,为现有技术。
由(u,v)到(u2,v2)的计算公式为:
Figure GDA0004171245680000111
其中,R为由相机安装的俯角、滚动角,和偏航角构成的旋转矩阵,由离线外参标定方法确定,离线外参标定方法为现有技术。K2和K分别为图像I2和图像I对应的虚拟相机的内参矩阵,这些矩阵,都为已知矩阵。根据公式(1)和(2)可以完成上述图像标定过程。也可以不生成图像I2,利用公式(1)和(2)的对应关系,直接由原始输入图像为I1生成校正图像I。
S3、参照图3,获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图(现有技术。参考文献“Godard,
Figure GDA0004171245680000112
Mac AodhaO,Firman M,et al.Digging Into Self-Supervised Monocular Depth Estimation[J].2018.”);转化后的视差图如图3(b)所示;
S4、道路区域检测:对视差图按列处理,确定所有的地面像素点,地面像素点的图像坐标位置,构成道路区域检测结果;
具体包括以下步骤:
S401、参照图4,图4(a)为用多个像素点表示的视差图(只是作为对视差图扫描方法的示意,不等同于图3中的实际视差图),其中每个小方块代表1个像素点,按照列读取方向对视差图进行处理,图4(b)为导数曲线的导数值按列存储后的存储列示意图。
读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到导数曲线(现有技术,对于读取列视差值构成的曲线,由于地面位置出现的列的像素点,会构成曲线中的具有一定斜率的直线段,该直线段的拐点即为当前读取列中地面与障碍物交界位置出现的行。为检测该位置,对当前读取列视差值构成的曲线,进行求导,得到导数曲线),将导数曲线的导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1(参照图4(b)),确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;由于导数值的存储列和当前读取列对应,所以导数值存储列的行数,和视差图的行数相等,所述最大行rm行为当前导数值的存储列中位于最下方的行;
然后,初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val,将val与基准值t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
本实施例中,设定r1=3,t2=0.3,t3=5。
S402、重复步骤S401,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行(最终得到的行如图5所示,图中的曲线即为地面与障碍物交界位置出现的行);
S403、对于视差图的每一列,上述遍历过程中得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果(最终的道路区域检测结果如图6所示,图中下方白色区域即为检测的道路区域)。
S5、障碍物检测:对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
具体实现步骤如下:
S501、读取视差图中任意一个已经被步骤S4确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
然后,初始化不满足条件行的计数为0,在当前存储列中,从被步骤S4确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
本实施例中t4=0.0015,t5=0.15,t6=10。
S502:重复步骤S501,直到完成视差图中,所有已经被步骤S4确定的地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列的处理,得到障碍物上底边出现的行;
S503:对于视差图的每一列,上述遍历过程中得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果(最终检测得到的障碍物区域如图7所示)。
S6、将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
参照图8,本发明另一目的是提供一种基于视觉的障碍物检测装置,该检测装置包括:
图像获取单元100,用于获取相机拍摄的图像;
图像校正单元200,用于对获取的图像通过校正得到校正后图像;
视差图获取单元300,用于利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
道路区域检测单元400,用于对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
障碍物检测单元500,用于对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
第一输出单元600,用于将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
参照图9,所述道路区域检测单元400具体包括:
第一处理子单元410,用于读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1,确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;
第一遍历子单元420,用于初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val;
第一判断子单元430,用于将val与t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第一重复指示子单元440,用于指示所述第一处理子单元410、第一遍历子单元420和第一判断子单元430重复进行动作,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行;
第一确定子单元450,用于将视差图的每一列,将得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
参照图10,所述障碍物检测单元500具体包括:
第二处理子单元510,用于读取视差图中任意一个已经被确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
第二遍历子单元520,用于初始化不满足条件行的计数为0,在当前存储列中,从确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
第二判断子单元530,用于判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第二重复指示子单元540,用于指示所述第二处理子单元510、第二遍历子单元520和第二判断子单元530重复动作,直到完成视差图中,所有列的扫描,得到各个列的障碍物上底边出现的行;
第二确定子单元550,用于将视差图的每一列,得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
实施例2
参照图11(图11省略了前述的基于视觉的障碍物距离计算方法中的S1-S3),本实施例2提供了一种基于视觉的障碍物距离计算方法,是在实施例1的障碍物检测基础上,对障碍物距离进行计算的方法,该障碍物距离计算方法,包括前述的基于视觉的障碍物检测方法,还包括以下步骤:
S710:对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
S720:对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure GDA0004171245680000161
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
S730:根据计算得到的n个像素点的三维坐标点(Xk,Yk,Zk)拟合地平面方程,具体为:
令地平面方程为:
AX+BY+CZ+D=0(4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
S740:根据相机安装高度H,求出尺度因子λ:
由于d(uk,vk)是相对尺度下的视差,这导致步骤S730求出的地平面方程,尺度不确定,需要求出尺度因子。根据式(4)求出相机距离地面的距离D′,
Figure GDA0004171245680000171
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure GDA0004171245680000172
S750:对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure GDA0004171245680000173
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure GDA0004171245680000174
Figure GDA0004171245680000175
S8、输出计算得到的每个障碍物的真实距离值D。
同时,参照图12,本实施例另外提供一种基于视觉的障碍物距离计算装置,包括所述基于视觉的障碍物检测装置,所述距离计算装置还包括:
像素点采样单元710,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第一计算单元720,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure GDA0004171245680000176
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
第二计算单元730,用于根据计算得到的n个像素点三维坐标点(Xk,Yk,Zk)拟合地平面方程,所述第二计算单元具体包括:
地平面方程构建子单元,用于构建地平面方程:
AX+BY+CZ+D=0(4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],
地平面方程计算子单元,用于构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
第三计算单元740,用于根据相机安装高度H,求出尺度因子λ:
根据(4)求出相机距离地面的距离D′,
Figure GDA0004171245680000181
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure GDA0004171245680000182
第四计算单元750,用于计算障碍物的真实距离值
Figure GDA0004171245680000183
对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure GDA0004171245680000184
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure GDA0004171245680000185
Figure GDA0004171245680000186
第二输出单元800,用于输出计算得到的每个障碍物的真实距离值
Figure GDA0004171245680000187
本发明利用离线训练的深度模型,预测深度图,不仅可以进行道路障碍物检测,而且还可以得出障碍物距离,对障碍物进行精准定位,可用于汽车辅助驾驶、汽车自动驾驶领域。
实施例1和实施例2中的相机可安装于车身的前方,也可以安装于车身其他位置,对障碍物区域检测及距离计算结果均无影响。
以上所述仅为本发明的优选实例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种基于视觉的障碍物检测方法,其特征在于,具体包括以下步骤:
S1、获取相机拍摄的图像;
S2、图像校正:对获取的图像通过校正得到校正后图像;
S3、获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
S4、道路区域检测:对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
S5、障碍物检测:对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
S6、将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域;
所述步骤S5的障碍物检测具体包括以下步骤:
S501、读取视差图中任意一个已经被步骤S4确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
然后,初始化不满足条件行的计数为0,在当前存储列中,从被步骤S4确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
S502:重复步骤S501,直到完成视差图中,所有已经被步骤S4确定的地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列的处理,得到障碍物上底边出现的行;
S503:对于视差图的每一列,上述遍历过程中得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
2.如权利要求1所述的一种基于视觉的障碍物检测方法,其特征在于,所述步骤S2的校正方法具体包括:
将原始输入图像利用相机的内参数校正得到无畸变图像,利用离线外参标定方法,事先标定出相机安装角度,包括相机的安装俯角、滚动角和偏航角,利用所述安装角度,将经内参校正后的无畸变图像,进一步校正为无安装角度的校正后图像。
3.如权利要求1所述的一种基于视觉的障碍物检测方法,其特征在于,所述步骤S4的道路区域检测具体包括以下步骤:
S401、读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1,确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;由于导数值的存储列和当前读取列对应,所以导数值存储列的行数,和视差图的行数相等,所述最大行rm行为当前导数值的存储列中位于最下方的行;
然后,初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val,将val与基准值t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
S402、重复步骤S401,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行;
S403、对于视差图的每一列,上述遍历过程中得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
4.一种基于视觉的障碍物检测装置,其特征在于,该检测装置包括:
图像获取单元,用于获取相机拍摄的图像;
图像校正单元,用于对获取的图像通过校正得到校正后图像;
视差图获取单元,用于利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
道路区域检测单元,用于对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
障碍物检测单元,用于对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
第一输出单元,用于将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域;
所述障碍物检测单元具体包括:
第二处理子单元,用于读取视差图中任意一个已经被确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
第二遍历子单元,用于初始化不满足条件行的计数为0,在当前存储列中,从确定的地面与障碍物交界位置出现的行r′开始,向上一行r′-1行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行;
第二判断子单元,用于判断当前遍历行r"的导数值val′是否满足abs(val′)<t4,t4为第四阈值,且对应的当前遍历行r"的视差值d是否满足d>t5,t5为第五阈值;然后根据第三种情况及第四种情况进行判断:
第三种情况:若同时满足这两个条件,则不满足条件行的计数设置为0,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第四种情况:若不能同时满足这两个条件,则不满足条件行的计数在原有计数数值基础上增加1;读取不满足条件的行的数目N′,判断不满足条件的行的数目N′是否满足N′>=t6,t6为第六阈值,当N′>=t6时,记录当前读取列障碍物上底边所在的行为(r"+t6-1)行,结束当前读取列的行遍历;当不满足N′>=t6时,继续遍历,更新当前遍历行r"为r"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第二重复指示子单元,用于指示所述第二处理子单元、第二遍历子单元和第二判断子单元重复动作,直到完成视差图中,所有列的扫描,得到各个列的障碍物上底边出现的行;
第二确定子单元,用于将视差图的每一列,得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
5.如权利要求4所述的一种基于视觉的障碍物检测装置,其特征在于,所述道路区域检测单元具体包括:
第一处理子单元,用于读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行rm行到rm-r1行的所有导数值的均值t1,确定t1为基准值,其中r1为第一阈值,即预先设定的用于计算t1的行数阈值;
第一遍历子单元,用于初始化不满足条件行的计数为0,并在上述存储列中,从最大行rm行开始,向上一行rm-1行进行遍历,一直遍历至最小行,所述最小行为存储列中最上方的行,读取当前遍历行r的导数值val;
第一判断子单元,用于将val与t1根据第一种情况及第二种情况进行比较:
第一种情况:当abs(t1-val)<t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数设置为0,然后继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第二种情况:当abs(t1-val)≥t1×t2时,其中t2为第二阈值,abs表示计算绝对值,将不满足条件行的计数在原有计数数值基础上增加1,并读取不满足条件行的计数数值N,判断N是否满足N≥t3,其中t3为第三阈值,当N≥t3时,将(r+t3-1)行确定为当前读取列中地面与障碍物交界位置出现的行,结束对当前存储列的行遍历;当不满足N≥t3时,则继续遍历,更新当前遍历行r为r的上一行,重新进行判断满足第一种情况还是第二种情况,执行相应的操作;
第一重复指示子单元,用于指示所述第一处理子单元、第一遍历子单元和第一判断子单元重复进行动作,直到完成视差图中所有列的处理,得到各个列的地面与障碍物交界位置出现的行;
第一确定子单元,用于将视差图的每一列,得到的地面与障碍物交界位置出现的行至最大行rm行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
6.一种基于视觉的障碍物距离计算方法,包括权利要求1-3中任意一项所述基于视觉的障碍物检测方法,其特征在于,还包括以下步骤:
S7、障碍物距离计算步骤,具体为:
S710:对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
S720:对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure FDA0004171245660000061
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
S730:根据计算得到的n个像素点三维坐标点(Xk,Yk,Zk)拟合地平面方程,具体为:
令地平面方程为:
AX+BY+CZ+D=0 (4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
S740:根据相机安装高度H,求出尺度因子λ:
根据式(4)求出相机距离地面的距离D′,
Figure FDA0004171245660000062
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure FDA0004171245660000063
S750:对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure FDA0004171245660000064
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure FDA0004171245660000065
Figure FDA0004171245660000071
S8、输出计算得到的每个障碍物的真实距离值
Figure FDA0004171245660000072
7.一种基于视觉的障碍物距离计算装置,包括权利要求4或5所述基于视觉的障碍物检测装置,其特征在于,所述距离计算装置还包括:
像素点采样单元,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第二计算单元,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
Figure FDA0004171245660000073
其中,d(uk,vk)表示视差图中像素点(uk,vk)的视差值,K为相机参数矩阵;
第三计算单元,用于根据计算得到的n个像素点三维坐标点(Xk,Yk,Zk)拟合地平面方程,具体包括:
地平面方程构建子单元,用于构建地平面方程:
AX+BY+CZ+D=0 (4)
其中,A,B,C,D为待求解的系数,代入(Xk,Yk,Zk),k∈[1,n],
地平面方程计算子单元,用于构建n个方程组成的方程组,通过方程组求解,求出A,B,C,D;
第四计算单元,用于根据相机安装高度H,求出尺度因子λ:
根据(4)求出相机距离地面的距离D′,
Figure FDA0004171245660000074
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
Figure FDA0004171245660000081
第五计算单元,用于计算障碍物的真实距离值
Figure FDA0004171245660000082
对图像中检测到的每个障碍物区域,在相应的视差图中的出现位置的所有视差值,通过取平均值,计算出该障碍物区域的平均视差值
Figure FDA0004171245660000083
然后利用尺度因子λ计算得到该障碍物的真实距离值
Figure FDA0004171245660000084
Figure FDA0004171245660000085
第二输出单元,用于输出计算得到的每个障碍物的真实距离值
Figure FDA0004171245660000086
CN202010883622.9A 2020-08-28 2020-08-28 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 Active CN112116644B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010883622.9A CN112116644B (zh) 2020-08-28 2020-08-28 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010883622.9A CN112116644B (zh) 2020-08-28 2020-08-28 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置

Publications (2)

Publication Number Publication Date
CN112116644A CN112116644A (zh) 2020-12-22
CN112116644B true CN112116644B (zh) 2023-05-23

Family

ID=73804489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010883622.9A Active CN112116644B (zh) 2020-08-28 2020-08-28 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置

Country Status (1)

Country Link
CN (1) CN112116644B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110562A (zh) * 2021-05-25 2021-07-13 上海大学 一种基于多个广角摄像头的无人机避障装置及其避障方法
CN113409268B (zh) * 2021-06-18 2023-04-18 广东工业大学 基于单目相机的可通行区域检测方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160028891A (ko) * 2014-09-04 2016-03-14 김경연 깊이 카메라와 방향 센서를 이용한 시각 장애인을 위한 장애물 인식 장치
JP2016062610A (ja) * 2014-09-16 2016-04-25 株式会社リコー 特徴モデル生成方法及び特徴モデル生成装置
CN107729878A (zh) * 2017-11-14 2018-02-23 智车优行科技(北京)有限公司 障碍物检测方法和装置、设备、车辆、程序及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2757524B1 (en) * 2013-01-16 2018-12-19 Honda Research Institute Europe GmbH Depth sensing method and system for autonomous vehicles
KR101832189B1 (ko) * 2015-07-29 2018-02-26 야마하하쓰도키 가부시키가이샤 이상화상 검출장치, 이상화상 검출장치를 구비한 화상 처리 시스템 및 화상 처리 시스템을 탑재한 차량
US9672734B1 (en) * 2016-04-08 2017-06-06 Sivalogeswaran Ratnasingam Traffic aware lane determination for human driver and autonomous vehicle driving system
CN107397658B (zh) * 2017-07-26 2020-06-19 成都快眼科技有限公司 一种多尺度全卷积网络及视觉导盲方法和装置
CN107729856B (zh) * 2017-10-26 2019-08-23 海信集团有限公司 一种障碍物检测方法及装置
CN108230392A (zh) * 2018-01-23 2018-06-29 北京易智能科技有限公司 一种基于imu的视觉障碍物检测虚警剔除方法
CN109460709B (zh) * 2018-10-12 2020-08-04 南京大学 基于rgb和d信息融合的rtg视觉障碍物检测的方法
CN109048926A (zh) * 2018-10-24 2018-12-21 河北工业大学 一种基于立体视觉的机器人智能避障系统及方法
US10776673B2 (en) * 2019-01-31 2020-09-15 StradVision, Inc. Learning method and learning device for sensor fusion to integrate information acquired by radar capable of distance estimation and information acquired by camera to thereby improve neural network for supporting autonomous driving, and testing method and testing device using the same
KR20190096866A (ko) * 2019-07-31 2019-08-20 엘지전자 주식회사 차량 내부의 모니터링 방법 및 장치, 이를 위한 객체검출모델을 생성하는 3d 모델링부

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160028891A (ko) * 2014-09-04 2016-03-14 김경연 깊이 카메라와 방향 센서를 이용한 시각 장애인을 위한 장애물 인식 장치
JP2016062610A (ja) * 2014-09-16 2016-04-25 株式会社リコー 特徴モデル生成方法及び特徴モデル生成装置
CN107729878A (zh) * 2017-11-14 2018-02-23 智车优行科技(北京)有限公司 障碍物检测方法和装置、设备、车辆、程序及存储介质

Also Published As

Publication number Publication date
CN112116644A (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
CN110569704B (zh) 一种基于立体视觉的多策略自适应车道线检测方法
CN109752701B (zh) 一种基于激光点云的道路边沿检测方法
CN112184792B (zh) 一种基于视觉的道路坡度计算方法及装置
CN109631896B (zh) 一种基于车辆视觉和运动信息的停车场自主泊车定位方法
US6470271B2 (en) Obstacle detecting apparatus and method, and storage medium which stores program for implementing the method
CN111929699A (zh) 一种顾及动态障碍物的激光雷达惯导里程计与建图方法及系统
CN110221603A (zh) 一种基于激光雷达多帧点云融合的远距离障碍物检测方法
CN112037159B (zh) 一种跨相机道路空间融合及车辆目标检测跟踪方法及系统
KR102249769B1 (ko) 2차원 영상의 픽셀별 3차원 좌표값 추정 방법 및 이를 이용한 자율주행정보 추정 방법
CN109410264B (zh) 一种基于激光点云与图像融合的前方车辆距离测量方法
CN111897349A (zh) 一种基于双目视觉的水下机器人自主避障方法
CN112116644B (zh) 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置
CN113327296B (zh) 基于深度加权的激光雷达与相机在线联合标定方法
JP5310027B2 (ja) 車線認識装置、及び車線認識方法
CN112017248B (zh) 一种基于点线特征的2d激光雷达相机多帧单步标定方法
CN113205604A (zh) 一种基于摄像机和激光雷达的可行区域检测方法
CN112489106A (zh) 基于视频的车辆尺寸测量方法、装置、终端及存储介质
CN114550042A (zh) 一种道路消失点提取方法、车载传感器标定方法及装置
CN111476798B (zh) 一种基于轮廓约束的车辆空间形态识别方法及系统
CN112529903A (zh) 一种楼梯高度宽度视觉检测方法、装置及机器狗
US9098774B2 (en) Method for detection of targets in stereoscopic images
CN112509054A (zh) 一种相机外参动态标定方法
JP2018136739A (ja) キャリブレーション装置
CN112016568B (zh) 一种目标对象的图像特征点的跟踪方法及装置
CN111402593A (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