CN112116644A - 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 - Google Patents
一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 Download PDFInfo
- Publication number
- CN112116644A CN112116644A CN202010883622.9A CN202010883622A CN112116644A CN 112116644 A CN112116644 A CN 112116644A CN 202010883622 A CN202010883622 A CN 202010883622A CN 112116644 A CN112116644 A CN 112116644A
- Authority
- CN
- China
- Prior art keywords
- row
- obstacle
- value
- condition
- ground
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 98
- 238000004364 calculation method Methods 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims description 32
- 238000009434 installation Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 8
- 238000013136 deep learning model Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 7
- 230000006399 behavior Effects 0.000 claims description 6
- 238000003702 image correction Methods 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 4
- 238000005096 rolling process Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 9
- 230000004888 barrier function Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C3/00—Measuring distances in line of sight; Optical rangefinders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20228—Disparity calculation for image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
- G06T2207/30208—Marker matrix
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine 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
本发明涉及一种基于视觉的障碍物检测方法和装置,其中障碍物检测方法包括:获取相机拍摄的图像、图像校正、获取深度图、道路区域检测、障碍物检测、最终将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。本发明另外提供了一种障碍物距离计算方法,是在障碍物检测方法的基础上,将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域、障碍物距离计算、输出计算得到的每个障碍物的真实距离值同时本发明还提供了障碍物距离计算装置。本发明通过利用深度学习模型预测的深度图,仅用单目相机,可以实现障碍物区域检测及障碍物距离计算,既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。
Description
技术领域
本发明涉及障碍物检测技术领域,特别涉及一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置。
背景技术
障碍物检测及障碍物距离计算对汽车安全驾驶具有重要意义。根据障碍物检测及障碍物距离计算结果,可以实现碰撞避免、路径规划等功能。
现有的基于视觉的障碍物检测技术主要有:基于深度学习的特定类型障碍物检测方法,如车辆检测、行人检测等;基于几何约束的任意类型障碍物检测方法;以及基于IPM变换的障碍物检测方法。而这些检测技术在应用过程中具有以下缺陷:(1)基于深度学习的方法只能检测特定种类的障碍物;(2)基于几何约束的方法可以检测任意种类的障碍物,但是当使用单目相机时,该类方法只能检测静止障碍物,对于运动障碍物较难检测,并且无法直接完成运动障碍物的距离计算;(3)基于IPM变换的方法可以利用单目相机同时检测运动及静止障碍物,但是需要道路平坦,道路不存在坡度等前提限制,缩减了算法适用范围。
发明内容
为了解决上述技术问题,本发明的目的在于提供一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置。本发明通过利用深度学习模型预测的深度图,仅用单目相机,可以实现障碍物区域检测及障碍物距离计算,既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。
本发明的上述目的通过以下技术方案实现:
一种基于视觉的障碍物检测方法,具体包括以下步骤:
S1、获取相机拍摄的图像;
S2、图像校正:对获取的图像通过校正得到校正后图像;
S3、获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
S4、道路区域检测:对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
S5、障碍物检测:对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
S6、将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
进一步地,所述步骤S2的校正方法具体包括:
将原始输入图像利用相机的内参数校正得到无畸变图像,利用离线外参标定方法,事先标定出相机安装角度,包括相机的安装俯角、滚动角和偏航角,利用所述安装角度,将经内参校正后的无畸变图像,进一步校正为无安装角度的校正后图像。
进一步地,所述步骤S4的道路区域检测具体包括以下步骤:
S401、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),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
一种基于视觉的障碍物距离计算装置,包括所述基于视觉的障碍物检测装置,所述距离计算装置还包括:
像素点采样单元,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第二计算单元,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
本发明的有益效果在于:本发明根据车载相机拍摄的车辆周围的单帧图像即可实现检测道路障碍物,并可以给出障碍物距离,对障碍物进行精准定位,实现过程容易,对设备要求更低,检测效果更鲁棒。通过利用深度学习模型预测的深度图,仅用单目相机既可以较好的解决任意类型的运动及静止障碍物的检测及定位问题,在具有坡度的路面上依然适用。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实例及其说明用于解释本发明,并不构成对本发明的不当限定。
图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)的计算公式为:
其中,R为由相机安装的俯角、滚动角,和偏航角构成的旋转矩阵,由离线外参标定方法确定,离线外参标定方法为现有技术。K2和K分别为图像I2和图像I对应的虚拟相机的内参矩阵,这些矩阵,都为已知矩阵。根据公式(1)和(2)可以完成上述图像标定过程。也可以不生成图像I2,利用公式(1)和(2)的对应关系,直接由原始输入图像为I1生成校正图像I。
S3、参照图3,获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图(现有技术。参考文献“Godard,Clément,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),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
同时,参照图12,本实施例另外提供一种基于视觉的障碍物距离计算装置,包括所述基于视觉的障碍物检测装置,所述距离计算装置还包括:
像素点采样单元710,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第一计算单元720,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
本发明利用离线训练的深度模型,预测深度图,不仅可以进行道路障碍物检测,而且还可以得出障碍物距离,对障碍物进行精准定位,可用于汽车辅助驾驶、汽车自动驾驶领域。
实施例1和实施例2中的相机可安装于车身的前方,也可以安装于车身其他位置,对障碍物区域检测及距离计算结果均无影响。
以上所述仅为本发明的优选实例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于视觉的障碍物检测方法,其特征在于,具体包括以下步骤:
S1、获取相机拍摄的图像;
S2、图像校正:对获取的图像通过校正得到校正后图像;
S3、获取深度图:利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
S4、道路区域检测:对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
S5、障碍物检测:对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
S6、将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
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.如权利要求1所述的一种基于视觉的障碍物检测方法,其特征在于,所述步骤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:对于视差图的每一列,上述遍历过程中得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
5.一种基于视觉的障碍物检测装置,其特征在于,该检测装置包括:
图像获取单元,用于获取相机拍摄的图像;
图像校正单元,用于对获取的图像通过校正得到校正后图像;
视差图获取单元,用于利用离线训练好的深度学习模型对校正后图像进行深度预测,获得深度图,并转化为视差图;
道路区域检测单元,用于对视差图按列处理,确定所有的地面像素点,所有的地面像素点的图像坐标位置,构成道路区域检测结果;
障碍物检测单元,用于对视差图按列处理,确定所有的障碍物像素点,所有的障碍物像素点的图像坐标位置,构成障碍物区域检测结果;
第一输出单元,用于将所述障碍物区域检测结果标记在原始获取的相机拍摄的图像中,输出障碍物区域。
6.如权利要求5所述的一种基于视觉的障碍物检测装置,其特征在于,所述道路区域检测单元具体包括:
第一处理子单元,用于读取视差图中任意一个未被处理过的列,对该读取列视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列,并计算存储列中从最大行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行中的像素点确定为地面像素点,这些地面像素点的图像坐标位置,构成道路区域检测结果。
7.如权利要求5所述的一种基于视觉的障碍物检测装置,其特征在于,所述障碍物检测单元具体包括:
第二处理子单元,用于读取视差图中任意一个已经被确定地面与障碍物交界位置出现的行且没有确定障碍物上底边出现行的列,对该读取列的视差值进行求导,得到对应的导数值,将导数值按列存储,得到导数值的存储列;
第二遍历子单元,用于初始化不满足条件行的计数为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"的上一行,重新进行判断满足第三种情况还是第四种情况,执行相应的操作;
第二重复指示子单元,用于指示所述第二处理子单元、第二遍历子单元和第二判断子单元重复动作,直到完成视差图中,所有列的扫描,得到各个列的障碍物上底边出现的行。
第二确定子单元,用于将视差图的每一列,得到的障碍物上底边所在的行至地面与障碍物交界位置出现的行之间的像素点确定为障碍物像素点,这些像素点的图像坐标位置,构成障碍物区域检测结果。
8.一种基于视觉的障碍物距离计算方法,包括权利要求1-4所述基于视觉的障碍物检测方法,其特征在于,还包括以下步骤:
S7、障碍物距离计算步骤,具体为:
S710:对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
S720:对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
9.一种基于视觉的障碍物距离计算装置,包括权利要求6-7所述基于视觉的障碍物检测装置,其特征在于,所述距离计算装置还包括:
像素点采样单元,用于对确定为地面像素点的像素点,进行等间隔采样,选取n个像素点用于拟合地面方程;
第二计算单元,用于计算采样的n个像素点的三维坐标点,其中:
对于采样的像素点(uk,vk),k∈[1,n],n为采样的像素点总个数,计算其对应的三维坐标点(Xk,Yk,Zk),计算公式为:
其中,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′,
其中,由于离线标定获得的相机安装的实际高度为H,因此计算尺度因子λ为,
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 true CN112116644A (zh) | 2020-12-22 |
CN112116644B 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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113110562A (zh) * | 2021-05-25 | 2021-07-13 | 上海大学 | 一种基于多个广角摄像头的无人机避障装置及其避障方法 |
CN113409268A (zh) * | 2021-06-18 | 2021-09-17 | 广东工业大学 | 基于单目相机的可通行区域检测方法、装置及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2757524A1 (en) * | 2013-01-16 | 2014-07-23 | Honda Research Institute Europe GmbH | Depth sensing method and system for autonomous vehicles |
KR20160028891A (ko) * | 2014-09-04 | 2016-03-14 | 김경연 | 깊이 카메라와 방향 센서를 이용한 시각 장애인을 위한 장애물 인식 장치 |
JP2016062610A (ja) * | 2014-09-16 | 2016-04-25 | 株式会社リコー | 特徴モデル生成方法及び特徴モデル生成装置 |
EP3125197A1 (en) * | 2015-07-29 | 2017-02-01 | Yamaha Hatsudoki Kabushiki Kaisha | Abnormal image detection device, image processing system having an abnormal image detection device, and vehicle including an image processing system |
AU2017100399A4 (en) * | 2016-04-08 | 2017-05-11 | Sivalogeswaran Ratnasingam | Traffic Aware Lane Determination for Human Driver and Autonomous Vehicle Driving System |
CN107397658A (zh) * | 2017-07-26 | 2017-11-28 | 成都快眼科技有限公司 | 一种多尺度全卷积网络及视觉导盲方法和装置 |
CN107729878A (zh) * | 2017-11-14 | 2018-02-23 | 智车优行科技(北京)有限公司 | 障碍物检测方法和装置、设备、车辆、程序及存储介质 |
CN107729856A (zh) * | 2017-10-26 | 2018-02-23 | 海信集团有限公司 | 一种障碍物检测方法及装置 |
CN108230392A (zh) * | 2018-01-23 | 2018-06-29 | 北京易智能科技有限公司 | 一种基于imu的视觉障碍物检测虚警剔除方法 |
CN109048926A (zh) * | 2018-10-24 | 2018-12-21 | 河北工业大学 | 一种基于立体视觉的机器人智能避障系统及方法 |
CN109460709A (zh) * | 2018-10-12 | 2019-03-12 | 南京大学 | 基于rgb和d信息融合的rtg视觉障碍物检测的方法 |
US20190392256A1 (en) * | 2019-07-31 | 2019-12-26 | Lg Electronics Inc. | Monitoring method and apparatus in the vehicle, and a 3d modeling unit for generating an object detection model therefor |
EP3690727A1 (en) * | 2019-01-31 | 2020-08-05 | 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 |
-
2020
- 2020-08-28 CN CN202010883622.9A patent/CN112116644B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2757524A1 (en) * | 2013-01-16 | 2014-07-23 | Honda Research Institute Europe GmbH | Depth sensing method and system for autonomous vehicles |
KR20160028891A (ko) * | 2014-09-04 | 2016-03-14 | 김경연 | 깊이 카메라와 방향 센서를 이용한 시각 장애인을 위한 장애물 인식 장치 |
JP2016062610A (ja) * | 2014-09-16 | 2016-04-25 | 株式会社リコー | 特徴モデル生成方法及び特徴モデル生成装置 |
EP3125197A1 (en) * | 2015-07-29 | 2017-02-01 | Yamaha Hatsudoki Kabushiki Kaisha | Abnormal image detection device, image processing system having an abnormal image detection device, and vehicle including an image processing system |
AU2017100399A4 (en) * | 2016-04-08 | 2017-05-11 | Sivalogeswaran Ratnasingam | Traffic Aware Lane Determination for Human Driver and Autonomous Vehicle Driving System |
CN107397658A (zh) * | 2017-07-26 | 2017-11-28 | 成都快眼科技有限公司 | 一种多尺度全卷积网络及视觉导盲方法和装置 |
CN107729856A (zh) * | 2017-10-26 | 2018-02-23 | 海信集团有限公司 | 一种障碍物检测方法及装置 |
CN107729878A (zh) * | 2017-11-14 | 2018-02-23 | 智车优行科技(北京)有限公司 | 障碍物检测方法和装置、设备、车辆、程序及存储介质 |
CN108230392A (zh) * | 2018-01-23 | 2018-06-29 | 北京易智能科技有限公司 | 一种基于imu的视觉障碍物检测虚警剔除方法 |
CN109460709A (zh) * | 2018-10-12 | 2019-03-12 | 南京大学 | 基于rgb和d信息融合的rtg视觉障碍物检测的方法 |
CN109048926A (zh) * | 2018-10-24 | 2018-12-21 | 河北工业大学 | 一种基于立体视觉的机器人智能避障系统及方法 |
EP3690727A1 (en) * | 2019-01-31 | 2020-08-05 | 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 |
US20190392256A1 (en) * | 2019-07-31 | 2019-12-26 | Lg Electronics Inc. | Monitoring method and apparatus in the vehicle, and a 3d modeling unit for generating an object detection model therefor |
Non-Patent Citations (1)
Title |
---|
张娜等: ""一种融合特征点与运动补偿信息的运动目标检测新算"", 《计算机应用与软件》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113110562A (zh) * | 2021-05-25 | 2021-07-13 | 上海大学 | 一种基于多个广角摄像头的无人机避障装置及其避障方法 |
CN113409268A (zh) * | 2021-06-18 | 2021-09-17 | 广东工业大学 | 基于单目相机的可通行区域检测方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112116644B (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110569704B (zh) | 一种基于立体视觉的多策略自适应车道线检测方法 | |
US10764559B2 (en) | Depth information acquisition method and device | |
CN112184792B (zh) | 一种基于视觉的道路坡度计算方法及装置 | |
CN108320329B (zh) | 一种基于3d激光的3d地图创建方法 | |
CN109752701A (zh) | 一种基于激光点云的道路边沿检测方法 | |
US6470271B2 (en) | Obstacle detecting apparatus and method, and storage medium which stores program for implementing the method | |
CN112037159B (zh) | 一种跨相机道路空间融合及车辆目标检测跟踪方法及系统 | |
CN109685858B (zh) | 一种单目摄像头在线标定方法 | |
CN112785655A (zh) | 一种基于车道线检测的环视相机外参自动标定方法、装置、设备及计算机存储介质 | |
CN111862235B (zh) | 双目相机自标定方法及系统 | |
JP5310027B2 (ja) | 車線認識装置、及び車線認識方法 | |
CN113327296B (zh) | 基于深度加权的激光雷达与相机在线联合标定方法 | |
CN111678518B (zh) | 一种用于修正自动泊车路径的视觉定位方法 | |
CN112017248B (zh) | 一种基于点线特征的2d激光雷达相机多帧单步标定方法 | |
CN112116644B (zh) | 一种基于视觉的障碍物检测方法和装置、障碍物距离计算方法和装置 | |
CN110930365B (zh) | 一种交通场景下的正交消失点检测方法 | |
CN111862234A (zh) | 双目相机自标定方法及系统 | |
CN112489106A (zh) | 基于视频的车辆尺寸测量方法、装置、终端及存储介质 | |
CN114550042A (zh) | 一种道路消失点提取方法、车载传感器标定方法及装置 | |
CN111476798B (zh) | 一种基于轮廓约束的车辆空间形态识别方法及系统 | |
CN114719873B (zh) | 一种低成本精细地图自动生成方法、装置及可读介质 | |
CN111862236B (zh) | 定焦双目相机自标定方法及系统 | |
CN111402593B (zh) | 一种基于多项式拟合的视频交通参数获取方法 | |
CN112016568A (zh) | 一种目标对象的图像特征点的跟踪方法及装置 | |
CN115471555A (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 |