CN110147698A - 用于车道检测的***和方法 - Google Patents
用于车道检测的***和方法 Download PDFInfo
- Publication number
- CN110147698A CN110147698A CN201810275068.9A CN201810275068A CN110147698A CN 110147698 A CN110147698 A CN 110147698A CN 201810275068 A CN201810275068 A CN 201810275068A CN 110147698 A CN110147698 A CN 110147698A
- Authority
- CN
- China
- Prior art keywords
- lane
- line
- roi
- edge
- ridge
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 172
- 238000000034 method Methods 0.000 title claims abstract description 148
- 238000012545 processing Methods 0.000 claims abstract description 33
- 238000000605 extraction Methods 0.000 claims abstract description 27
- 230000011218 segmentation Effects 0.000 claims description 101
- 238000005516 engineering process Methods 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 20
- 238000007781 pre-processing Methods 0.000 claims description 16
- 238000009499 grossing Methods 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 3
- 238000002203 pretreatment Methods 0.000 claims 1
- 230000001052 transient effect Effects 0.000 claims 1
- 230000015654 memory Effects 0.000 description 24
- 238000005452 bending Methods 0.000 description 15
- 238000003708 edge detection Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000009825 accumulation Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 7
- 239000000284 extract Substances 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 235000015170 shellfish Nutrition 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 241000208340 Araliaceae Species 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/255—Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/457—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by analysing connectivity, e.g. edge linking, connected component analysis or slices
-
- 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/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- 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/20076—Probabilistic image processing
-
- 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
- G06T2207/30256—Lane; Road marking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及一种用于车道检测的***和方法,其能够在车辆偏离检测的车道的情况下向车辆的驾驶员提供警告。该方法包括以下步骤:接收由图像捕获设备捕获的多个图像,预处理所接收的多个图像以获得多个图像中的感兴趣区域(RoI),以及在RoI上获得一个或多个边缘特征,基于RoI的处理来提取一个或多个脊特征,基于提取的脊特征来检测一个或多个可能的车道线的足迹指示,基于一个或多个可能的车道线的足迹来检测潜在车道,在一个或多个边缘特征上应用掩模以获得相关边缘,以及基于所提取的相关边缘和基于一条或多条可能的车道线的足迹来检测最终车道。
Description
技术领域
本发明涉及结合用于对象检测的图像处理和计算机视觉技术的***和方法。更具体地,本发明涉及用于检测道路车道的***和方法,所述***和方法能够在车辆偏离所检测的车道的情况下提供警告或指示。
发明背景
背景描述包括可用于理解本发明的信息。并不是承认本发明提供的任何信息是现有技术或与目前要求保护的发明相关,或者明确或暗示引用的任何出版物是现有技术。
在今天的情况下,道路安全是全球的一个重要问题。每年都报道有数千起导致重大的死亡事故的事故报告。这些事故的主要原因是超速行驶、驾驶员注意力不集中、驾驶时行为不当、车道改变不当等。根据日本研究印度有限公司发布的报告,在孟买-浦那高速公路事故中差不多30%的事故是由于不当的车道变换造成的,这是所有原因中最高的。
为避免由于车道变换不当造成的事故,车道偏离检测***在运输***中发挥着重要作用。典型车道偏离检测***连续监测车辆相对于车道边界的位置,并在车辆偏离车道时向其驾驶员提供警告。由于摄像头传感器为车道检测提供了低成本解决方案,许多汽车制造商都会在车辆上安装摄像头以实时捕捉前方道路图像。使用不同的预处理技术,例如高斯平滑、中值滤波等来减少捕获的图像中的噪声。此外,涉及使用基于梯度的运算符、基于直方图的分割、边缘链接和霍夫变换等的不同边缘检测技术用于检测所捕获的图像中的车道的边缘。但是,大多数这些技术不能提供准确的车道检测。另外,这些技术在曲线道路的情况下不提供有效的车道检测。
在一些传统的车道偏离检测技术中,以随机抽样一致性(RANSAC)方法的脊检测用于车道检测。脊部特征形成于灰度图像中的强度在给定方向上达到局部最大值的点处。正是因为这个原因,认为脊比边缘作为特征去检测车道边界更好。在车道区域附近,可以可靠地获得脊部特征。因此,如果需要的检测范围高达30-35米,车道检测可以仅使用脊部可靠地完成。此外,脊部检测技术可为直线和弯曲道路情景提供可靠的检测,例如投射阴影、磨损和遮挡标记、可变环境照明条件等。但是,脊部检测技术在车道的远端区域不能提供一致和稳定的检测。而且,在曲线车道检测的情况下,从脊检测技术获得的输出可考虑一些错误或不需要的脊特征,如由于过往车辆而获得的特征,导致车道的分段线的错误检测。
仅使用边缘特征可能不会产生可靠的曲线检测,因为与近区域中的脊特征相比,边缘特征相对不太可靠。对于给定的感兴趣区域(RoI),所获得的边缘特征的数量相对多于脊部特征的数量,导致对计算能力和成本的需求增加。
因此,需要结合基于脊和边缘的检测技术的优点的车道检测的***和方法,以便能够在长期检测范围内对直线以及弯曲车道进行准确、可靠和一致的车道检测。此外,需要一种在车辆偏离车道时向车辆的驾驶员提供警告的***和方法。
本发明中的所有出版物以相同的程度通过引用引入,如同每个单独的出版物或专利申请具体地和单独地指示通过引用引入。当引入的参考文献中的术语的定义或使用与本发明提供的术语的定义不一致或相反时,适用本发明提供的术语的定义并且在该参考文献中的术语的定义不适用。
在一些实施方案中,用于描述和要求保护本发明某些实施方案的表示成分的数量、性质例如浓度、反应条件等等的数量应理解为在一些实例通过术语“大约”修饰。因此,在一些实施例中,书面描述和所附权利要求书中提出的数值参数是近似值,其可以根据特定实施例试图获得的期望性质而变化。在一些实施例中,应该根据报告的有效数字来解释数值参数并且采用普通的四舍五入技术。尽管阐述本发明的一些实施例的宽泛范围的数值范围和参数是近似值,但是在具体实施例中阐述的数值精确地报告为实际可行。在本发明的一些实施例中呈现的数值可能包含必然由其各自测试测量中发现的标准偏差导致的某些误差。
如本发明的说明书中以及随后的权利要求书中所使用的,除非上下文另外明确指出,否则“一”、“一个”和“所述”的含义包括复数指代。而且,如本发明说明书中所使用,除非上下文另外明确指出,否则“在...中”的含义包括“在...中”和“在...上”。
本发明中数值范围的列举仅仅是用作落入该范围内的每个单独数值的速记方法。除非在本发明中另有指示,否则每个单独的数值都引入说明书中,就好像它在本发明中单独列举一样。在本发明中描述的所有方法可以以任何合适的顺序执行,除非在本发明中另有指示或者与上下文明显矛盾。针对本发明中的某些实施例提供的任何和所有实施例或示例性语言(例如“诸如”)的使用仅旨在更好地阐明本发明,而不是对本发明保护范围进行限制,除非要求保护。说明书中的任何语言都不应解释为表示对本发明的实施必要的任何不要求保护的要素。
本文中公开的发明的替代元件的分组或实施例不应解释为限制。每个组成员可以单独地或与组中的其他成员或本文中发现的其他元件结合进行参考和要求保护。出于便利性和/或可专利性的原因,一个组中的一个或多个元件可以包括在组中或从组中删除。当发生任何这样的包含或删除时,说明书在本文中认为包含修改的组,从而实现所附权利要求中使用的所有组的书面描述。
发明目的
本发明的一般目的是提供用于检测车道的***和方法。
本发明的另一个目的是提供一种***和方法以在车辆偏离检测到的车道时警告车辆驾驶员。
本发明的另一个目的是提供一种用于车道检测的***和方法,检测直路和弯路。
本发明的另一目的是提供一种用于车道检测的***和方法,结合基于脊和边缘的检测技术的优点。
本发明的另一个目的是提供一种用于车道检测的***和方法,可靠、准确且一致地检测车道。
本发明的另一个目的是提供一种用于可靠车道检测的低成本解决方案。
概要
本发明涉及一种用于车道检测的***和方法,能够在车辆偏离检测到的车道的情况下向车辆的驾驶员提供警告。本发明一方面涉及一种用于车道检测的方法,包括以下步骤:在计算装置,由图像捕获装置接收捕获的多个图像;预处理,在计算装置,所接收的多个图像以获得多个图像中的感兴趣区域(RoI)并且通过RoI获得一个或多个边缘特征;提取,在计算装置,基于处理对RoI的一个或多个脊特征;检测,在计算装置,基于所提取的RoI的脊特征的一条或多条可能的车道线的足迹指示;检测,在计算装置,基于所提取的脊特征和一条或多条可能的车道线的足迹指示的潜在车道;应用,在计算装置,在一个或多个边缘特征上的掩模以便于获得/提取相关的边缘,掩模基于潜在车道;以及检测,在计算装置,基于提取的相关边缘和一条或多条可能的车道线的足迹指示的最终车道。
在一个实施例中,对多个图像进行预处理的步骤还包括灰度化第一组多个图像;基于第一组灰度化的图像获得RoI;将RoI分为近区域、中间区域、和远区域,对RoI进行高斯平滑处理;以及基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个实施例中,检测可能的一个或多个车道线的位置的足迹指示的步骤还包括以下步骤:将RoI横向分割成至少三个区域;将线拟合到RoI的至少三个区域的左侧区域和右侧区域中提取的每个脊部特征;并在RoI的左侧区域和右侧区域验证该线路。
在一个实施例中,检测潜在车道的步骤还包括捕获潜在车道的左侧和右侧曲线的步骤。
在一个实施例中,检测潜在车道的步骤还包括以下步骤:基于一个或多个可能车道线的足迹将RoI分割成多个段,并评估在多个段的至少一个相邻段中的潜在车道的检测;通过保持多个段中的每个段中的所提取的脊特征的对数,积累多个段的每一个中的提取的脊特征;通过实施线拟合技术将多个分段的每个分段中的多个脊特征与线关联;使用段验证技术验证拟合到多个段的每个段中的多个脊特征的线;通过实施段连接技术,将与多个段的每个段中的多个脊特征相关/拟合的线与相邻段的线连接;在车道的左侧中的每一个获得的连接线段和右侧中的每一个获得的连接线段之间执行基于距离的线路验证;并且在左侧和右侧中的每一个中获得的连接线段上拟合曲线,以捕获潜在车道的左侧和右侧曲线。
在一个实施例中,基于所提取的相关边缘来检测最终车道的步骤还包括以下步骤:基于一个或多个可能车道线的足迹将RoI分为多个段,并且在至少一个相邻段中通过评估最终车道的检测;将与一条或多条可能的车道线的内边缘相对应的一个或多个边缘特征与多个段的每一段中的相关边缘分离;通过实施线拟合技术,将多个段的每个段中的多个相关边缘与线关联;采用片段验证技术,验证拟合到多个段的每个段中的多个相关边缘的线;通过实施分段连接技术,将与多个段的每个段中的多个相关边缘相关联/拟合的线与相邻段的线相连接,在车道的左侧和右侧中每个所获得的连接线段之间执行基于距离的线路确认,以及在车道的左侧和右侧所获得的连接线段上拟合曲线,以捕获最终车道的左侧曲线和右侧曲线。
在一个实施例中,该方法还包括向用户提供最终检测到的车道的指示和其至少一个参数中的任何一个或其组合的步骤。
本发明的另一方面涉及一种用于车道检测的***,包括其中嵌入有一个或多个可操作的例程以检测最终车道的非暂时性存储设备,和耦合到非暂时性存储设备的一个或多个处理器,其中一个或多个例程包括图像预处理模块,在由一个或多个处理器执行时,接收由图像捕获装置捕获的多个图像,并且预处理所接收的多个图像以获得多个图像中的感兴趣区域(RoI),并且进一步通过该RoI获得一个或多个边缘特征;脊特征提取模块,在由一个或多个处理器执行时,基于RoI的处理提取一个或多个脊特征;潜在车道检测模块,当由一个或多个处理器执行时,基于所提取的RoI的脊特征来检测一个或多个可能车道线的足迹指示,并且基于所提取的脊特征和一条或多条可能的车道线的足迹来获得潜在车道;相关边缘获取模块,在由一个或多个处理器执行时,在一个或多个边缘特征上应用掩模以获得相关边缘,掩模基于潜在车道;以及最终车道检测模块,在由一个或多个处理器执行时,基于所提取的相关边缘和一条或多条可能车道线的足迹来检测最终弯道。
在一个实施例中,图像预处理模块还配置为灰度化第一组多个图像,基于第一组灰度化图像获得RoI,将RoI分成近区域、中区域、和远区域,将RoI进行高斯平滑,并基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个实施例中,潜在车道检测模块配置为将RoI横向分割成至少三个区域,将线拟合至RoI的至少三个区域中的左侧区域和右侧区域中提取的每个脊部特征,并且验证RoI的左侧区域和右侧区域中的线。
在一个实施例中,潜在车道是基于潜在车道的左侧和右侧曲线的捕获来检测。
在一个实施例中,潜在车道检测模块配置成基于一个或多个可能车道线的足迹将RoI分割成多个分段,并评估在至少一个相邻分段中潜在车道的检测;通过保持在多个段的每个段中所提取的脊特征的对数,在多个段的每个段中累积所提取的脊特征;通过实施线拟合技术,将多个线段的每个线段中的多个脊线特征与线相关联;采用段验证技术验证拟合到多个段的每个段中的多个脊特征的线;通过实施分段连接技术,将与多个分段的每个分段中的多个脊特征相关联/拟合的线与相邻分段的线连接;在车道的左侧和右侧中的每一个所获得的连接线段之间执行基于距离的线验证,并且在左侧和右侧中的每一个获得的连接线段上拟合曲线以捕获潜在车道的左右曲线。
在一个实施例中,检测潜在车道以在其左侧和右侧中的任一侧或两侧生成预定缓冲区。在一个实施例中,潜在车道用作掩模来提取RoI的相关边缘。
在一个实施例中,掩模是动态掩模并且基于多个脊特征的潜在车道中的变化而变化。
在一个实施例中,最终曲线道路检测模块配置成基于一个或多个可能的车道线的足迹将RoI分割成多个分段,并且通过评估对至少一个相邻分段中的最终车道的检测,将与一个或多个可能的车道线的内边缘相对应的一个或多个边缘特征与多个段的每个分段中的相关边缘分离,通过实施线拟合技术,将多个段中的每一个段的多个相关边缘与线相关联,采用片段验证技术验证拟合到多个分段中的每个段中的多个相关边缘的线,通过实施分段连接技术,将多个分段中的每个段中与多个相关边缘关联/拟合的线与相邻分段的线连接,在车道的左侧和右侧的每一个中所获得的连接线段之间执行基于距离的线路验证,并且在车道的左侧和右侧的每一个中所获得的连接线段上拟合曲线,以捕获最终车道的左侧和右侧曲线。
在一个实施例中,所提出的***进一步配置为向用户提供最终检测的车道的指示和至少一个参数的任何一个或其组合。
当结合附图考虑,通过阅读本发明的当前优选实施例的以下详细描述,将更好地理解本发明的上述和其他目的、特征、优点、技术和工业意义。
附图简述
包括附图以提供对本发明的进一步理解,并且结合在本说明书中并构成其一部分。附图示出了本发明的示例性实施例,并且与说明书一起,用于解释本发明的原理。
图1示出了根据本发明的实施例的用于车道检测的所提出的***的示例性架构。
图2示出了根据本发明的实施例的用于车道检测的所提出的***的各种模块的示例性表示。
图3示出了根据本发明的实施例的用于车道检测的所提出的方法的示例性流程图。
图4示出了根据本发明的实施例的用于检测潜在车道的方法的示例性流程图。
图5示出了根据本发明的实施例的用于检测最终车道的方法的示例性流程图。
图6A至6E示出了根据本发明的实施例的实施分段创建、脊积累和线拟合之后的不同道路情景以检测潜在车道的示例性照片表示。
图7A至图7E示出了根据本发明的实施例在实施分段确认、分段连接、和基于举例的线路验证以检测潜在车道之后的不同道路情景的示例性照片。
图8A示出了根据本发明的实施例的用于直路的利用脊特征的实现贝塞尔曲线拟合后的道路情景的示例性照片。
图8B示出根据本发明实施例的用于轻微弯曲道路的利用脊特征实现贝塞尔曲线拟合后的道路情景的示例性照片。
图8C示出根据本发明的实施例的用于左侧急弯曲道路的利用脊特征实现贝塞尔曲线拟合后的道路情景的示例性照片。
图8D示出了根据本发明实施例的用于右侧急弯曲道路的利用脊特征实现贝塞尔曲线拟合实现后的道路情景的示例性照片。
图9A至9D示出了根据本发明的实施例的用于第一正常道路情景的利用动态掩模创建来提取特征点的示例性照片。
图10A到10D示出了根据本发明的实施例的用于第二正常道路情景的利用动态掩模创建来提取特征点的示例性照片。
图11A至11D示出了根据本发明的实施例的用于右侧微弯曲道路情景的动态掩盖创建来提取特征点的示例性照片。
图12A至12D示出了根据本发明的实施例的用于左侧微弯曲道路情景的动态掩盖创建提取特征点的示例性照片。
图13A到13D示出了根据本发明的实施例的用于第一左侧急弯曲道路情景的利用动态掩盖创建提取特征点的示例性照片。
图14A到14D示出了根据本发明的实施例的用于第二左侧急弯曲道路情景的利用动态掩盖创建提取特征点的示例性照片。
图15A到15D示出了根据本发明的实施例的用于第一车道变换场景的利用动态掩创建来提取特征点的示例性照片。
图16A到16D示出了根据本发明的实施例的用于第二车道变换场景的利用动态掩盖创建来提取特征点的示例性照片。
图17A至17E示出了根据本发明的实施例的在分别实现分段创建、动态RoI选择、内部边缘的复制、使用原点偏移线检测(OSLD)的线拟合、分段验证和分段连接之后以检测最终车道的道路情景的示例性照片。
图18A示出了根据本发明的实施例的用于直路的利用边缘特征来实现贝塞尔曲线拟合后的道路情景的示例性照片。
图18B示出了根据本发明的实施例的用于轻微的左侧弯曲道路的利用边缘特征来实现贝塞尔曲线拟合后的道路情景的示例性照片。
图18C示出了根据本发明的实施例的用于轻微的右侧弯曲道路的利用边缘特征来实施贝塞尔曲线拟合后的道路情景的示例性照片。
图18D示出了根据本发明的实施例的用于右侧急弯曲道路的利用边缘特征来实现贝塞尔曲线拟合后的道路情景的示例性照片。
图18E示出了根据本发明的实施例的用于左侧急弯曲道路的利用边缘特征来实现贝塞尔曲线拟合后的道路情景的示例性照片。
图19A到19D示出了根据本发明的实施例的在可见性差的情况下使用边缘特征实现贝塞尔曲线拟合之后的不同道路情景的示例性照片。
图20A至20D示出了根据本发明的实施例的分别用于直道、轻微弯曲道路、左侧急弯曲和右侧急弯曲道路的最终检测车道的示例性照片。
图21示出了根据本发明的实施例的可以利用本发明的实施例或者可以在其中利用的示例性计算机***。
详细说明
在以下描述中,阐述了许多具体细节以便提供对本发明实施例的全面理解。对于本领域技术人员显而易见的是,可以在没有这些具体细节情况下实施本发明的实施例。
本发明的实施例包括将在下面描述的各种步骤。这些步骤可以由硬件组件执行或者可以体现在机器可执行指令中,可以用于产生具有指令编程的通用或专用的处理器以执行这些步骤。可选地,可以通过硬件、软件和固件和/或人类操作员的组合来执行步骤。
本发明的实施例可以提供为计算机程序产品,可以包括切实地将指令嵌入在其上的机器可读存储介质,可以用来对计算机(或其他电子设备)进行编程以执行处理。机器可读介质可以包括,但不限于,固定(硬)驱动器、磁带、软盘、光盘、光盘只读存储器(CD-ROM)、和磁光盘、半导体存储器诸如ROMs、PROMs、随机存取存储器(RAMs)、可编程只读存储器(PROMs)、可擦除PROMs(EPROMs)、电可擦除PROMs(EEPROMs)、闪存、磁卡或光卡或其他类型的适用于存储电子指令(例如,计算机程序代码,例如软件或固件)的介质/机器可读介质。
本发明描述的各种方法可以通过将包含根据本发明的代码的一个或多个机器可读存储介质与合适的标准计算机硬件组合以执行包含在其中的代码来实施。用于实施本发明的各种实施例的装置可以包括一个或多个计算机(或单个计算机内的一个或多个处理器)以及包含或具有对于根据本发明所述的各种方法编码的计算机程序的网络访问的存储***,以及本发明的方法步骤可以通过计算机程序产品的模块、例程、子例程或子部分来完成。
如本发明的说明书中以及随后的权利要求书中所使用的,除非上下文另外明确指出,否则“一”、“一个”和“该”的含义包括复数指代。而且,如本发明的说明书中所使用的,除非上下文另外明确指出,否则“在...中”的含义包括“在...中”和“在...上”。
在本发明中所描述的所有方法可以以任何合适的顺序执行,除非在此另有指示或者与上下文明显矛盾。针对本发明中的某些实施例提供的任何和所有实施例或示例性语言(例如“诸如”)的使用仅旨在更好地阐明本发明,而不是对本发明的范围进行限制,除非要求保护。说明书中任何语言都不应解释为表示对本发明的实施必不可少的任何非要求保护的要素。
本发明涉及一种用于车道检测的***和方法,其能够在车辆偏离车道时向车辆驾驶员提供警告。本发明的***和方法能够通过警告驾驶员关于车道偏离即当他/她无意或有意地改变车道或偏离车道偏离时,使驾驶员避免由于意外车道改变而可能发生的事故。所提出的***和方法进一步为直道和弯道道路情景提供可靠、准确和一致性的车道检测技术。所提出的***和方法有助于提高驾驶员的响应时间,并且因此有助于避免由于意外变道或交通不当引起的事故。
根据本发明的实施例,本发明的***和方法利用图像处理和计算机视觉技术进行车道检测。通过使用诸如相机、摄像机、计算设备、移动电话、相机传感器等类似配置在车辆前部的图像捕获设备来捕获车辆前方的车道的多个图像。例如,图像捕捉设备可以配置有车辆的后视镜外壳。然后处理捕获的图像以检测车道上的特征点(也称为脊)。然后使用检测到的脊以获得车辆行驶的车道的车道边界。此外,所提出的***和方法克服了通过用边缘检测技术补充脊检测技术或通过用脊检测技术补充边缘检测技术来检测急弯道的限制。而且,所提出的***和方法完成连续诊断并且在车辆无意中偏离车道时通知车辆的驾驶员。
根据本发明的实施例,本发明的***和方法提供了在长检测范围中用于车道检测。除了确定车辆相对于车道的位置之外,较长的检测范围对于更好地评估车道的弯度是重要的。例如,高达80米的检测范围可以在自主车辆前方车道的弯曲部分给自主车辆提供相关信息,在车道上存在一个或多个物体等,从而使得自主驾驶车辆及时作出回应。在车道较远的区域,车道标线不能清晰可见,导致只能获得极少的脊线特征。然而,由此获得的边缘特征优于在车道的远端区域中的脊特征。因此,本发明通过利用基于边缘特征的车道检测来补充基于脊特征的车道检测来帮助实现车道弯曲和直线段的长距离范围检测。
在一个实施例中,形成的脊特征具有特征点,其中灰度图像中的强度在给定方向上达到局部最大值。为了识别这些特征点并将它们收集为脊特征,采用定制的一维高斯滤波器。高斯滤波器的内核大小基于车道标线的宽度来选择,例如以像素为单位。
根据本发明的另一个实施例,所提出的***和方法利用图像处理技术来解释捕获的图像,并向用户提供检测到的车道的指示和至少一个参数的任何一个或组合,包括但不限于驾驶员、交通管理者和车主,使得当车辆偏离检测到的车道时,可以向车辆驾驶员提供警告,以向驾驶员提供适当的车道偏差指示,从而使得司机可以及时做出回应。在一个实施例中,对多个捕获的图像执行图像处理以检测车道偏离并相应地提醒驾驶员。
根据本发明的又一个实施例,车道检测方法包括预处理所捕获的图像,基于基于脊特征的检测技术检测车道,以及通过掩模创建去除任何不需要的边缘并进一步使用基于边缘特征检测技术进行车道检测。仅使用基于脊特征的检测技术的传统车道检测技术不能在车道的远端区域提供一致且稳定的检测。因此,利用基于脊特征的检测技术对车道的检测进一步以基于边缘特征的检测技术来进行补充,以在车道的附近以及远端区域提供一致且稳定的车道检测。
根据本发明的又一方面,使用6次贝塞尔曲线拟合技术来平滑地在车道上拟合脊特征和边缘特征。此外,使用合适的验证方案来确保检测到的车道的直线或弯曲部分的可靠性。
根据本发明的又一方面,可以通过基于脊特征的检测技术补充基于边缘特征的检测技术或通过基于边缘特征的检测技术补充基于脊特征的检测技术来实现更长检测范围的可靠车道检测。
在一个实施例中,可以选择用于实现本发明的图像捕获设备作为捕获车辆前方的至少一部分车道的图像的车载前向摄像头。可以对捕获的图像执行图像处理以检测车道。
本发明涉及一种用于车道检测的***和方法,能够在车辆偏离检测到的车道的情况下向车辆的驾驶员提供警告。本发明的一方面涉及一种用于车道检测的方法,包括以下步骤:在计算装置,接收由图像捕获装置捕获的多个图像;在计算装置,预处理所接收的多个图像以获得多个图像中的感兴趣区域(RoI)并且通过RoI获得一个或多个边缘特征;在计算装置,基于处理RoI来提取一个或多个脊特征;在计算装置,基于所提取的RoI的脊特征来检测一条或多条可能的车道线的足迹指示;在计算装置,基于所提取的脊特征和一条或多条可能的车道线的足迹来检测潜在车道;在计算装置,对一个或多个边缘特征应用掩模以获得/提取相关边缘,掩模基于潜在车道;以及在计算装置,基于提取的相关边缘和一条或多条可能的车道线的足迹来检测最终车道。
在一个实施例中,对多个图像进行预处理的步骤还包括灰度化第一组多个图像;基于第一组灰度图像获得RoI;将RoI分成近区域、中区域和远区域,对RoI进行高斯平滑;以及基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个实施例中,检测可能的一个或多个车道线的位置的足迹指示的步骤还包括以下步骤:将RoI横向分割成至少三个区域;在RoI的所述至少三个区域的左侧区域和右侧区域中将线拟合至每个所提取的脊特征;并在RoI的左侧区域和右侧区域验证该线。
在一个实施例中,检测潜在车道的步骤还包括捕获潜在车道的左侧和右侧曲线的步骤。
在一个实施例中,检测潜在车道的步骤还包括以下步骤:基于一个或多个可能车道线的足迹将RoI分割成多个分段,并评估多个分段的至少一个分段中的潜在车道检测;通过维持多个分段的每个段中的所提取的脊特征的对数,累积在多个分段的每个分段中所提取的脊特征;通过实施线拟合技术,将多个分段的每个分段中的多个脊特征与线关联;使用段验证技术,验证拟合到多个分段的每个段中的多个脊特征的线;通过实施段连接技术,将与多个分段的每个段中的多个脊特征相关/拟合的线与相邻分段的线连接;在针对车道的左侧和右侧中的每一个所获得的连接的线段之间执行基于距离的线验证;并且将曲线拟合至针对左侧和右侧中的每一个所获得的连接线段上,以捕获潜在车道的左侧和右侧曲线。
在一个实施例中,基于所提取的相关边缘来检测最终车道的步骤还包括以下步骤:基于一个或多个可能车道线的足迹将RoI分成多个段,并且在至少一个相邻段中通过评估最终车道的检测;将与一条或多条可能的车道线的内边缘相对应的一个或多个边缘特征与多个段中的每段的相关边缘分离;通过实施线拟合技术,将多个分段的每个段中的多个相关边缘与线关联;使用片段验证拟合,验证拟合至多个分段的每个段中的多个相关边缘的线;通过实施段连接技术,将与多个段的每个段中的多个相关边缘相关/拟合的线与相邻段的线连接,在对于车道的左侧和右侧的每个中所获得的连接线段之间执行基于距离的线确认,并且将曲线拟合至对于车道的左侧和右侧的每个中所获得的连接线段,以捕获最终车道的左侧和右侧曲线。
在一个实施例中,该方法还包括向用户提供最终检测的车道的指示和至少一个参数的任何一个或其组合的步骤。
本发明的另一方面涉及一种用于车道检测的***,包括具有在其中嵌入有能够操作以检测最终车道的一个或多个例程的非暂时性存储设备,以及耦合至该非暂时性存储设备的一个或多个处理器,其中,一个或多个例程包括图像预处理模块,其中当在由一个或多个处理器执行时,其接收由图像捕获装置捕获的多个图像,并且预处理所接收的多个图像以获得多个图像的感兴趣区域(RoI),并进一步通过该RoI获得一个或多个边缘特征;脊特征提取模块,当在由一个或多个处理器执行时,其基于RoI的处理来提取一个或多个脊特征;潜在车道检测模块,当由一个或多个处理器执行时,其基于所提取的RoI的脊特征来检测一个或多个可能车道线的足迹指示,并且基于所提取的脊特征和一条或多条可能的车道线的足迹来获得潜在车道;相关边缘获取模块,在由一个或多个处理器执行时,其在一个或多个边缘特征上应用掩模以获得相关边缘,掩模基于潜在车道;以及最终车道检测模块,在由一个或多个处理器执行时,其基于所提取的相关边缘和一条或多条可能车道线的足迹来检测最终弯道。
在一个实施例中,图像预处理模块还配置为灰度化第一组多个图像,基于第一组灰度化图像获得RoI,将RoI分成近区域、中区域、和远区域,使RoI进行高斯平滑,并基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个实施例中,潜在车道检测模块配置为将RoI横向分割成至少三个区域,将线拟合到RoI的至少三个区域的左侧区域和右侧区域中的每个提取的脊特征,并验证RoI左侧区域和右侧区域中的线。
在一个实施例中,潜在车道是基于潜在车道的左侧和右侧曲线的捕获来检测。
在一个实施例中,潜在车道检测模块配置成基于一个或多个可能车道线的足迹将RoI分割成多个分段,并评估至少一个相邻分段中潜在车道的检测;通过保持在多个分段的每个段中所提取的脊特征的对数,累积在多个分段中的每个段中所提取的脊特征;通过实施线拟合技术,将多个分段的每个段中的多个脊特征与线相关联;使用段验证技术,验证拟合到多个段的每个段中的多个脊特征的线;通过实施分段连接技术,将与多个段的每个段中的多个脊特征相关联/拟合的线与相邻段的线连接;在针对车道的左侧和右侧的每一个所获得的连接线段之间执行基于距离的线验证,并将曲线拟合至左侧和右侧中的每一个所获得的连接线段以捕获潜在车道的左曲线和右曲线。
在一个实施例中,检测潜在通道以在其左侧和右侧中的任一侧或两侧上生成预定缓冲区。在一个实施例中,潜在车道用作掩模来提取RoI的相关边缘。
在一个实施例中,掩模是动态掩模并且基于多个脊特征的基于潜在车道的变化而变化。
在一个实施例中,最终弯曲道路检测模块配置成基于一个或多个可能的道路线的足迹将RoI分割成多个分段,并且通过评估对至少一个相邻分段中的最终车道的检测,将与一个或多个可能的车道线的内边缘相对应的一个或多个边缘特征与多个分段的每一个的相关边缘分离,通过实施线拟合技术将多个分段的每一个中的多个相关边缘与线相关联,使用分段验证技术来验证拟合到多个分段的每个分段中的多个相关边缘的线,通过实施分段连接技术将与多个分段中的每个分段中的多个相关边缘相关联/拟合的线与相邻分段的线连接,为车道的左侧和右侧中的每个所获得的连接线段之间执行基于距离的线验证,及将曲线拟合至车道的左侧和右侧的每个中所获得的连接线段上,以捕获最终车道的左侧和右侧曲线。
在一个实施例中,所提出的***进一步配置为向用户提供最终检测的车道的指示和至少一个参数的任何一个或其组合。
图1示出了根据本发明的实施例的用于车道检测的所提出的***的示例性架构。所提出的用于车道检测的***102(以下也称为***102)通过实施图像处理和基于计算机视觉的技术来检测车道的直线以及弯曲部分。***102可以通过网络106与一个或多个计算设备104-1、104-2、...、104-N(分别称为计算设备104并在下文统称为计算设备104)通信地耦合。在一个实施例中,***102可以使用诸如云、服务器、计算***、计算设备、网络设备及类似的硬件组件和软件组件中的任何一个或其组合来实现。此外,***102可以通过网站或可以驻留在计算设备106中的应用程序与计算设备104交互。在一个实施中,***102可以通过网站或可以配置有任何操作***的应用程序访问,包括但不限于,安卓TM、苹果操作***TM、及类似的。计算设备106的示例可以包括但是并不限于,车辆、交通管理机构、智能相机、智能电话、便携式计算机、掌上电脑、手持设备等相关的计算设备。在一个实施中,计算设备104可以是图像捕捉设备,诸如相机传感器、摄像机、移动电话、掌上电脑(PDA)等能够捕捉对象的图像的设备。
网络106可以是无线网络、有线网络或其组合。网络106可以实现为不同类型的网络之一,例如内联网、局域网(LAN)、广域网(WAN)、因特网等。网络106可以是专用网络或共享网络,表示使用各种协议的不同类型的网络的关联,例如超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)、无线应用协议(WAP),等相互通信。此外,网络106可以包括各种网络设备,包括路由器、网桥、服务器、计算设备、存储设备等。
在一个方面,***102通过可以嵌入在计算设备104中的图像捕捉设备来接收车道的多个图像,诸如相机传感器、可携式摄像机、移动电话、掌上电脑(PDA)及类似设备。在一个实施例中,图像捕捉设备可以与在道路的车道中行驶的车辆的前部连接。例如,图像捕捉设备可以是与车辆的后视镜外壳组件连接的前置相机,以使得能够捕捉车辆前方的车道的多个图像。
在一个方面,***102预处理所接收的多个图像以获取和/或获得多个图像中的感兴趣区域(RoI),并且在所获取的RoI上获得一个或更多个边缘特征。在一个实施例中,***通过灰度化第一组多个图像来处理所接收的多个图像,基于第一组灰度图像获得RoI,将RoI划分为近区域、中区域、和远区域,对RoI进行高斯平滑,并基于边缘检测技术获得RoI上的一个或多个边缘特征。
在一个方面,***102基于对RoI的处理来提取一个或多个脊特征。***102基于所提取的RoI的脊特征来检测一个或多个可能的车道线的足迹指示,并且基于所提取的脊特征和一个或多个可能的车道线的足迹来获得潜在车道。在一个实施例中,可能的车道可以基于潜在车道的左侧和右侧曲线的捕获来检测。
在一个实施例中,所提出的***102通过基于一个或多个可能的车道线的足迹将RoI分段为多个分段来检测潜在车道以及评估至少一个相邻段中的潜在车道的检测,通过维持多个分段中的每个分段中提取的脊特征的对数,积累多个分段中的每个分段中所提取的脊特征,通过实施线拟合技术将多个分段的每个分段中的多个脊特征与线相关联,使用分段验证技术来验证拟合到多个分段的每个分段中的多个脊特征的线,通过实施分段连接将与多个分段的每个分段中的多个脊特征相关联/拟合的线与相邻分段的线连接起来,对车道的左侧和右侧中每个所获得的连接线段之间执行基于距离的线验证,并且将曲线拟合至左侧和右侧中的每一个获得的连接线段上拟合曲线,以捕获潜在车道的左侧曲线和右侧曲线。
在一个实施例中,***102通过将RoI横向分割成至少三个区域来获得可能的车道脚足迹,将线拟合到RoI的至少三个区域的左侧区域和右侧区域中所提取的每个脊特征,并在RoI的左侧区域和右侧区域中验证该线。
在一个方面,***102通过在一个或多个边缘特征上应用掩模来获得相关的边缘。在一个实施例中,检测潜在车道以在其左侧和右侧中的任一侧或两侧产生预定缓冲区。在一个实施例中,潜在车道用作掩模来提取RoI的相关边缘。在一个实施例中,掩模是动态掩模并且基于多个脊特征基于潜在车道中的变化而变化。
在一个方面,***102基于所提取的相关边缘通过将RoI分割成基于一个或多个可能的车道线的足迹的多个分段并且通过在至少一个相邻区段中评估最终车道的检测来检测最终弯曲车道,将与一个或多个可能的车道线的内边缘相对应的一个或多个边缘特征与多个分段的每个区段中的相关边缘分开,通过实施线拟合技术将多个分段的每个分段中的多个相关边缘与线关联,使用片段验证技术来验证拟合到多个片段的每个片段中的多个相关边缘的线,通过实施分段连接技术将与多个片段的每个片段中的多个相关边缘相关联/拟合的线与线连接,在车道的左侧和右侧的每一侧所获得的连接的线段之间执行基于距离的线验证,及将曲线拟合至对车道的左侧和右侧中每一侧所获得的连接的线段,以捕捉最终车道的左侧和右侧曲线。
在一个实施例中,***102向用户提供最终检测到的车道的指示和至少一个参数中的任何一个或组合,以使得用户能够及时操纵车辆以防止由于意外的车道改变而导致的任何事故。在一个实例中,在车辆开始偏离检测到的车道的情况下,***102可以警告车辆的驾驶员。
图2示出了根据本发明的实施例的用于车道检测的所提出的***的各种模块的示例性表示。***102包括处理器202、耦合到处理器202的存储器204和接口206。处理器202可以实现为一个或多个微处理器、微计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令的操纵信号的任何设备。除其他能力之外,处理器202可以配置为获取并执行存储在存储器204中的计算机可读指令。存储器204可以包括本领域已知的任何非暂时性计算机可读介质,包括例如易失性存储器(例如RAM)、和/或非易失性存储器(例如EPROM、闪存等)。
接口206可以包括允许***102与计算设备104交互的各种软件和硬件接口,例如web接口、图形用户接口等。接口206可以有助于多种网络和协议类型内的多种通信,包括有线网络(例如LAN、电缆等,和无线网络例如WLAN、蜂窝网络或卫星。接口206可以包括用于将多个设备彼此连接或连连接到另一个服务器的一个或多个端口。
在一个实施方式中,***102可以包括模块208和数据210。在一个实施例中,模块208和数据210可以存储在存储器204内。在一个实施例中,模块208,除其他之外,可以包括例程、程序、对象、组件、和数据结构,其能执行特定的任务或实现特定的抽象数据类型。模块208还可以实现为基于操作指令的操纵信号的信号处理器、状态机、逻辑电路和/或任何其他设备或组件。此外,模块208可以由一个或多个硬件组件、由处理单元执行的计算机可读指令、或通过其组合来实现。数据210可以作为,除了其他,可以用作通过一个或多个模块208用于存储数据的获取、处理、接收和生成的的数据库。
在一个实施例中,模块208还包括图像预处理模块212、脊特征提取模块214、潜在车道检测模块216、相关边缘获取模块218、最终车道检测模块220和其它模块222。其它模块222可以执行***102的各种杂项功能。可以理解,这样的前述模块可以表示为单个模块或不同模块的组合。
在一个方面,***102的图像预处理模块212通过配置在车辆前部的图像捕捉设备来获取/接收车辆前方的多个车道图像。图像预处理模块212处理接收到的多个图像以获得多个图像的RoI并进一步获取RoI上的一个或多个边缘特征。
在一个实施例中,图像预处理模块212可以通过灰度化第一组多个图像来处理接收到的多个图像,基于第一组灰度化图像获得RoI,将RoI分成近区域,中间区域和远区域,对RoI进行高斯平滑,并且基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个实施例中,图像预处理模块212从图像捕捉设备接收一个或多个输入图像。输入图像可以包括至少一个灰度图像。灰度图像的较低部分选择为仅包括灰度图像的RoI部分的RoI图像。因此,全分辨率的灰度图像,例如1280X960裁剪以形成较低分辨率的另一图像,例如仅包含RoI的1280X400,即,仅包含灰度图像的较低部分。在一个实施例中,图像预处理模块212确保只有灰度图像的RoI传递到后续阶段以实现有效的车道检测。
在一个实施例中,图像预处理模块212可以对输入图像执行某些操作以获得可用于可靠车道检测的一个或多个边缘特征。RoI图像可分为三个区域-即近、中、远区域。在所提出的实施方式中,远区域对应于顶部区域,例如,RoI图像的前30行,接着是中间区域,例如RoI图像的中间130行,以及近区域,例如,RoI图像的较低的240行。RoI图像的三个区域中的每一个,即近、中和远区域接受高斯平滑处理。为了处理图像噪声,在每个区域中使用合适的模糊系数进行平滑。
在一个实施例中,坎尼边缘检测用于检测高斯平滑图像中的一个或多个边缘。在每个区域即近、中、远的坎尼算法上采用合适的低和高阈值,在RoI图像上获得边缘特征。然后,可以使用检测到的边缘特征来辅助弯曲以及直线车道的分段车道检测。
在一个实施例中,边缘特征可以包括与估计图像中的对象的结构相关的特征之一。边缘通常形成在图像的多个区域之间的边界区域上。根据本发明的实施例,通过图像预处理模块212的边缘特征的检测有助于分段车道检测。优选地,坎尼边缘检测算法或任何其他合适的检测算法,包括,但不限于索贝尔边缘检测器、普鲁伊特边缘检测器等本领域已知的用来从高斯平滑图像中获得一个或多个边缘特征。在坎尼边缘检测算法中,在平滑图像之后计算图像的强度梯度。此后,执行非最大抑制以消除对边缘检测的杂散响应,并且通过应用双阈值来计算潜在边缘。最后,边缘检测通过抑制所有其他弱边缘而不连接到强边缘的边缘来完成。
在一方面,脊特征提取模块214基于RoI的处理来提取一个或多个脊特征。脊特征提取模块214基于所提取的RoI的脊特征来检测一条或多条可能的车道线的足迹指示。
在一个方面,潜在车道检测模块216通过将RoI横向分割成至少三个区域来获得可能的车道足迹,将线拟合至与RoI至少三个区域中的左侧区域和右侧区域中所提取的每个脊特征,并在RoI的左侧区域和右侧区域中验证线。
在一个实施例中,潜在车道检测模块216通过基于一个或多个可能车道线的足迹将RoI分割成多个分段并通过评估至少一个相连段中的潜在车道的检测来提取一个或多个脊特征,通过维持多个分段的每个分段中所提取的脊特征的对数来积累多个分段的每个的提取的脊特征,通过实施线拟合技术来将多个分段的每个分段中的多个脊特征与线相关联,采用分段验证技术来验证拟合至多个分段中的每个分段中的多个脊特征的线,通过实施分段连接技术来将与多个分段的每个分段中的多个脊特征相关联/拟合的线与相邻的线相连接,在对车道的左侧和右侧中的每一个所获得的连接的线段之间执行基于距离的线路验证,并且将曲线拟合至对左侧和右侧中的每一个所获得的连接线段,以捕获潜在车道的左侧和右侧曲线。
在一个方面,相关边缘获取模块218可以通过在一个或多个边缘特征上应用掩模来获得相关边缘。在一个实施例中,检测潜在车道以在其左侧和右侧中的任一侧或两侧生成预定缓冲区。在一个实施例中,潜在车道用作掩模来提取RoI的相关边缘。在一个实施例中,掩模是动态掩模并且基于多个脊特征基于潜在车道中的变化而变化。
在一个方面中,最终车道检测模块220基于所提取的相关边缘通过将RoI分割成基于一个或多个可能车道线的足迹的多个段并且通过评估在至少一个相邻段中最终车道的检测来检测最终弯曲车道,将与一个或多个可能的车道线的内边缘相对应的一个或多个边缘特征与多个分段中的每一个中的相关边缘分离,通过实施线拟合技术将多个分段中的每一个中的多个相关边缘与线关联,使用片段验证技术来验证拟合到多个片段中的每个片段中的多个相关边缘的线,通过实施分段连接技术将与多个片段中的每个片段中的多个相关边缘相关联/拟合的线与相邻段的线相连,在车道的左侧和右侧的每一个所获得的连接线段之间执行基于距离的线路验证,并且将曲线拟合至对车道的左侧和右侧中的每一个所获得的连接线段,以捕获最终车道的左侧和右侧曲线。
在一个实施例中,最终车道检测模块220配置为向用户提供最终检测车道的指示和至少一个参数的任何一个或其组合,以使得用户能够及时对车辆操纵以防止由于意外的车道改变引起的任何事故。例如,在车辆偏离检测到的车道的情况下,最终车道检测模块220可以向车辆的驾驶员发出警报。
图3图示了根据本发明的实施例的用于车道检测的所提出的方法300的示例性流程图。在一个方面,所提出的方法300包括用于接收由图像捕捉设备捕捉的多个图像的步骤302。在一个实施例中,图像捕获装置可以配置在车辆的前部,例如车辆的车罩,以捕获车辆前方的车道的多个图像。在一个实施例中,图像捕捉设备可以是能够捕捉对象的图像的相机传感器、摄像机、计算设备、网络设备、移动电话、PDA及类似设备中的任何一个或其组合。
在一个方面,方法300包括步骤304,用于预处理所接收的多个图像以获得多个图像中的RoI,并进一步获得RoI上的一个或多个边缘特征。在一个实施例中,用于对多个图像进行预处理的步骤304还可以包括对第一组多个图像进行灰度化,基于第一组灰度化图像获得RoI,将RoI分割成近区域、中间区域、和远区域,将RoI进行高斯平滑处理,并且基于边缘检测技术在RoI上获得一个或多个边缘特征。
在一个方面,方法300包括用于基于RoI的处理来提取一个或多个脊特征的步骤306。
在一个方面,方法300包括步骤308,用于基于所提取的RoI的脊特征来检测一个或多个可能的车道线的足迹指示。在一个实施例中,用于检测可能的一个或多个车道线的足迹指示的步骤308还包括以下步骤:将RoI横向分割成至少三个区域,将线与RoI的至少三个区域的左侧区域和右侧区域中的每个中所提取的脊特征相拟合,并在RoI的左侧区域和右侧区域中验证该线。
在一个方面,方法300包括用于基于所提取的脊特征和一个或多个可能的车道线的足迹来检测潜在车道的步骤310。在一个实施例中,用于检测潜在车道的步骤310还包括捕获潜在车道的左侧和右侧曲线的步骤。在一个实施例中,潜在车道是基于潜在车道的左侧和右侧曲线的捕获来检测。
在一个方面,方法300包括用于在一个或多个边缘特征上施加掩模以获得相关边缘的步骤312,该掩模基于潜在车道。在一个实施例中,检测潜在车道以在其左侧和右侧中的任一侧或两侧生成预定缓冲区。潜在车道用作掩模以提取RoI相关边缘。在一个实施例中,掩模是动态掩模并且基于多个脊特征的基于潜在车道中的变化而变化。
在一个方面,方法300包括用于基于提取的相关边缘来检测最终车道的步骤314。在实施中,基于提取的相关边缘来检测最终车道的步骤314还包括以下步骤:基于一个或多个可能车道线的足迹将RoI分段为多个段,并且通过在至少一个相邻区段中评估对最终车道的检测,将与一条或多条可能车道线的内边缘的相对应的一个或多个边缘特征与多个分段的每一个中的相关边缘分隔开,通过实施线拟合技术将多个分段的每一个中的多个相关边缘与线关联,使用线段验证技术来验证拟合到多个分段中的每个段中的多个相关边缘的线,通过实施分段连接技术将与多个分段的每段中的多个相关边缘相关/拟合的线与在相邻段的线相连接,在车道的左侧和右侧中的每一个中所获得的连接线段之间执行基于距离的线段验证,并且将曲线拟合至车道的左侧和右侧中的每一个所获得的连接线段,以捕获最终车道的左侧和右侧曲线。
在一个实施例中,方法300还包括向用户提供最终检测的车道的指示和至少一个参数的任何一个或其组合的步骤。
图4示出了根据本发明的实施例的用于检测潜在车道的方法的示例性流程图。在一个实施例中,潜在车道可以使用提取的脊特征来检测。在一个实施例中,用于检测潜在车道的方法400可以包括步骤402,用于基于一个或多个可能车道线的足迹将RoI分割成多个分段,并且在多个分段的至少一个相邻分段中评估潜在车道的检测,步骤404,用于通过维持多个分段的每个分段中所提取的脊特征的对数来累积在多个分段的每一个中所提取的脊特征,步骤406,用于通过实施线拟合技术将多个分段的每一个段中的脊特征与线进行关联,步骤408,用于使用线段验证技术对拟合到多个分段的每一个分段中的多个脊特征的线进行验证,步骤410,用于通过实施区段连接技术,将于多个分段的每个分段中的多个脊特征相关联/拟合的线与相邻分段的线相连接,步骤412,用于在车道的左侧和右侧中每一侧所获得的连接线段之间执行基于距离的线验证,以及步骤414,用于将曲线拟合至左侧和右侧中的每一侧所获得的连接线段上以捕捉潜在车道的左侧曲线和右侧曲线。
在一个实施例中,用于检测潜在车道的方法400中的步骤402至414可以实施为:
段创建:使用线性车道模型的足迹来定义基础段。线性车道模型是指假设即使车道的弯曲部分可以通过直线方程近似而获得的车道检测。为了实现这样的线性车道模型,从图像预处理模块212中获得的RoI图像可以横向地分成三个区域-左侧、中央和右侧。在左侧和右侧区域中使用原点偏移线检测(OSLD)方法对线进行拟合。OSLD方法确保将包含最高数量的脊点并且斜率值在预定斜率范围限制内的线作为检测线。如此获得的线性左侧线和右侧线在实施潜在车道检测之前验证。
在一个实施中,区域,例如大约100像素,在足迹的每一侧上标记为RoI,其构成最底部段。然后使用在这样获得的RoI中所检测的脊以利用OSLD方法拟合线。在当前RoI中获得的线的最高点作为用于定义下一个RoI的参考点。换句话说,每个分段的最高点作为用于定义其上方的RoI的基点。基于下面一分段中的线的顶点,通过在左侧和右侧取一些固定的偏移量来为其上方的分段定义RoI。遵循类似的过程以定义所有的RoI(交替地称为段),其反过来完成潜在车道检测。在所提出的分段车道检测模型中,左侧和右侧车道中的每一个包括五个段。最底部的段使用线性车道模型输出,并且最靠近车辆,而剩下的部分段在从图像预处理模块212获得的RoI上的中间区域和远区域。
脊积累:脊积累步骤可能包括两个步骤-(i)复制脊,和(ii)保持脊历史。在图像中存在的所有脊点的单独分段边界和坐标用于脊的复制。根据每个段的限定界限,位于RoI中的脊在结构中复制/累积用于进一步使用。在一个实例中,对于每个段,可以保持在过去几帧中为该段获得的脊点历史。这是为了获得可靠的用于段的线估计,即使在特定帧中没有脊也是如此。由于刮水器造成的虚线和堵塞是一些特定帧中某些或所有段中没有脊的常见原因。在所提出的实施中,发现维持脊历史以改善检测,除了在发生车道过渡的情况下。因此,只要检测到车道变换场景,就会重置历史记录。
使用OSLD进行线路拟合:使用OSLD技术将线路拟合到单个线段的脊上。图6A至图6E示出了实施分段创建、脊累积和线拟合之后的不同道路情景的示例性照片。尽管OSLD方法在本发明中用于线拟合,但本领域技术人员可以使用任何其他合适的线拟合技术,包括但不限于最小二乘法、随机样本一致性(RANSAC)、霍夫变换等,以便将线拟合到分段的相应脊。
分段验证:为了避免在相邻分段中在线拟合中的突然变化,实施了基于斜率的验证技术。为了便于定义阈值,验证技术包括检查先前和当前线段之间的角度偏差,而不是使用先前和当前线段的斜率值之间的差异。因此,验证技术涉及计算每个分段线所朝向的以度为单位的角度。使用阈值来调节相邻段中的线的方向之间的最大允许偏差。所应用的阈值可以确保与对应于远区域的对于RoI的允许的角度偏差比对应于远区域的RoI的允许角度偏差相比更松弛。如果角度差异在指定的范围内并且比较的两条直线位于同一象限内,则当前RoI中拟合的线段认为是有效的。
在一个实例中,除了在最底部的段中获得的线的之外,违反定义的角度阈值导致获得的段线被拒绝并且由具有与其下面的段中获得的斜率相同的线替换。换句话说,在每个RoI中获得的经过验证的线段用作其上方的RoI的参考线。如果如上所述地需要时,参考线延伸到下一个RoI。从线性道路模型获得的可能车道线视为最底部线段的参考线。
分段连接:拟合到每个段中的脊的线可能无法确保相邻线段之间的连通性。通过将线段的足迹连接到其下方的线段的顶点来确保线段连接。随着其足迹修改,线段的斜率值也相应地更新。但是,为了避免在确保分段连接性时斜率值发生剧烈变化,在此点时重复分段验证步骤。
基于距离的线验证:该方法用于根据它们之间的真实世界距离验证左侧和右侧线段点。现实世界坐标点是从相应的线段点生成的。该技术适用于所有分段的RoI区域。计算相应的左侧和右侧线段点之间的真实世界距离。考虑最后帧的平均真实世界距离来验证当前点。如果特定分段点的距离大于或小于获得的平均距离,则会使用前一帧中获得的分段线点值进行修改。这用于消除车道线段点中的的突然/虚假变化。图7A至7E示出了在实施分段验证、分段连接和基于距离的线路验证之后的不同道路情景的示例性照片。
贝塞尔曲线拟合:使用贝塞尔曲线方程来计算左和右曲线点。贝塞尔曲线由一组控制点P0到Pn来定义,其中n是曲线的顺序。第一个和最后一个控制点始终是曲线的终点。贝塞尔曲线可能会产生多个控制点。在这种情况下,考虑六个控制点,对应于车道左侧和右侧获得的分段线。
该公式基于二项式公式:
其中n和i是二项系数。
我们可以考虑六个点,因此n=6并且i=0到5。
B(t)=(1-t)5P0+5t(l-t)4P1+P2(1-t)310t2+10t3(1-t)2P3+
5t4(1-t)P4+t5P5
其中,0<t<1
当t从0变化到1时,从上述等式中生成对应的曲线点。
图8A至8D分别示出了使用用于直道、轻微弯曲道路、左侧急弯道路和右侧急弯道路的脊特征来实现贝塞尔曲线拟合后的道路情景的示例性照片。应该理解的是,虽然贝塞尔曲线拟合方法用于曲线拟合,但本领域技术人员可以使用任何其他曲线拟合技术,例如但不限于,多项式曲线拟合、B-样条曲线拟合、回旋曲线拟合以及类似的曲线拟合技术。
在一个实例中,基于提取的脊特征的潜在车道用于掩盖RoI以提取相关的边缘。利用从脊获得的曲线输出,远区域中的一致且稳定的检测是不可能的。这是由于在远区域中获得的有限的脊特征点的数量。另外,从脊获得的曲线输出可考虑一些错误或不需要的脊(如在经过的车辆上获得的脊),由此导致分段线的错误检测。使用脊特征的所提出的车道检测方法是利用使用坎尼边缘及以边缘特征来补充。坎尼边缘检测有助于在中和远区域获得大量的特征点,从而以最小的波动进行一致的检测。然而,不需要的特征点的数量,即附近车辆或附近车道、栏杆等处的边缘,也随着坎尼边缘检测技术而增加。这些额外的边缘需要消除以减少所提出的检测技术的处理时间。掩模用于消除位于掩模外的任何特征点。由于静态掩模不能检测到尖锐曲线,因此使用动态掩模用于选择最适合的特征点并且消除不需要的特征点。在一个实例中,使用脊来生成曲线输出来用作用于在左侧和右侧上具有预定义的缓冲区域的掩模创建的基础。对于中、远区域,这个固定的缓冲区域是不同的。这有助于消除不需要的边缘特征,从而,加快***速度并为进一步处理提供最佳特征点的选择。
在一个实施例中,至少一个动态掩模图像是基于使用曲线的左侧和右侧具有预定缓冲区的脊特征产生的曲线输出来创建的。在对所接收的多个图像进行预处理期间所获得的掩模图像和坎尼边缘图像之间执行逻辑与运算。此过程用于删除坎尼边缘图像中不需要的特征点。有用的边缘特征点坐标与边缘特征点的数量一起保存以供进一步使用。
图9A至9D示出了根据本发明的实施例的用于第一正常道路情景的使用动态掩码创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态遮模图像和选择的边缘图像的示例性照片。图10A至图10D示出了根据本发明的实施例的用于第二普通道路情景的使用动态掩模创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态遮模图像和选择的边缘图像的示例性照片。图11A至图11D示出了根据本发明的实施例的用于轻微右弯曲道路情景的使用动态遮模创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态遮模图像和选择的边缘图像的示例性照片。图12A至12D示出了根据本发明的实施例的用于轻微的左弯道路场景使用动态掩模创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态掩模图像和选择的边缘图像的示例性照片。图13A到13D示出了根据本发明的实施例的用于第一急左弯曲道路情景的使用动态掩模创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态掩模图像和选择的边缘图像的示例性照片。图14A到14D示出了根据本发明的实施例的用于第二急左弯曲道路情景的使用动态掩码创建来分别说明提取特征点的输入图像、坎尼边缘图像、动态遮模图像和选择的边缘图像的示例性照片。图15A至图15D示出了根据本发明的实施例的使用第一车道变换场景的使用动态掩模创建来分别说明特征点的提取的输入图像、坎尼边缘图像、动态掩模图像和选择的边缘图像的示例性照片。图16A到16D示出了根据本发明的实施例的用于第二车道变换场景的使用动态掩模创建来分别说明的特征点的提取的输入图像、坎尼边缘图像、动态掩模图像和选择的边缘图像的示例性照片。
根据本发明的实施例,所提出的分段车道检测技术使用两个脊以及边缘特征用于检测车道的弯曲以及直线区段。在实施中,在脊特征提取后获得的贝塞尔曲线进一步用作输入图像以提取相关边缘。在应用动态遮模后,提取的边缘进一步用于检测最终车道。
图5示出了根据本发明的实施例的用于检测最终车道的方法的示例性流程图。在一个实施例中,使用提取的相关边缘来检测最终车道。在一个实施例中,用于检测最终车道的方法500包括步骤502,用于基于一个或多个可能车道线的足迹将RoI分割成多个段,并且通过在至少一个相邻区段来评估对最终车道的检测,步骤504用于将与一条或多条可能的车道线的内边缘相对应的一个或多个边缘特征与多个段的每一个段中的相关边缘分离,步骤506用于通过实施线拟合技术将多个段中每个段中的多个相关边缘与线相关联,步骤508用于使用片段验证技术来验证拟合到多个段中的每个段中的多个相关边缘的线,步骤510用于通过实施分段连接技术将与多个段的每个段中的多个相关边缘相关联/拟合的线与相邻段的线相连接,步骤512用于在车道的左侧和右侧中的每一侧中所获得的连接线段之间执行基于距离的线确认,步骤514以及将曲线拟合至用于在车道的左侧和右侧中的每一侧中所获得的连接线段上以捕获最终车道的左侧和右侧曲线。
在一个实施例中,用于检测最终车道的方法500的步骤502至514可以实现为:
段创建:将要检测的车道分为多个段,例如五段。在示例性实施中,两段专用于检测远区域中的车道,而三个段专用于检测近区域和中间区域中的车道。使用边缘特征的车道检测采用动态RoI选择用于定义段以更好的适应尖锐的曲线。通过计算位于该线上的边缘特征点的数量来获得每条线段的置信度。当与标准阈值进行比较时,定义段高度百分比的置信度作为在每个段中获得的线的额外验证步骤。在最近的段中的有效段线可能不会跨越整个近区域。因此,为了更好地估计仅部分在最近段中可见的线的置信度,最近段的段的高度保持自适应而不是固定尺寸以匹配车道可见的部分。
动态RoI选择:根据本发明的一个实施例,在使用脊特征的曲线道检测的情况下,通过以下面的线段中的线的顶点作为原点来创建线段。RoI的段是通过从所获得的原点取一些固定的偏移来定义,例如每边约100个像素。在使用边缘特征进行车道检测的情况下,RoI段的选择是自适应的。RoI的段通过找到下面段中的线的方向来定义,然后使用它来确定用于在其上方段的RoI的展开。如果下方线段的角度位于笛卡尔坐标系的第一象限中,则其上方的线段的RoI相对于下方线段的顶点(在下文中也称为原点)向右侧移动更多。如果所述角度位于第二象限中,那么在其上方的段的RoI相对于原点向左侧移动更多。如果下面的分段线以接近于直角的角度取向,则接下来是标准过程即沿着从原点向左和向右方向的RoI的等距离展开。
内边缘的复制/积累:在应用动态RoI选择之后获得的边缘在使用边缘在每个段中进行线段拟合之前会进一步细化。由于车道标记的有限宽度,对于每个标记获得两组边缘-一个对应于内边缘,而另一个对应于外部边缘。由于车道检测旨在可靠地检测车道的内边缘,因此可以方便地消除外边缘。这使得能够将线与车道的内边缘点相拟合。
使用OSLD技术进行线拟合:使用OSLD方法将线与单个段相关联的这些边缘进行拟合。OSLD方法确保将包含最多数量的边缘点且斜率值在预定义斜率限制内的线作为检测线。
分段验证:除了基于对于脊的曲线输出所提到的分段验证策略之外,基于边缘的曲线输出还包含更多步骤。通过计算位于该线上的边缘特征点的数量来获得每条段线的置信度。当与标准阈值进行比较时,这个置信度,其定义为段高度的百分比,作为每个段中所获得的线的额外验证步骤。在缺少边缘特征的情况下,例如,由于阻塞、或者在无效的线拟合的情况下,例如,由于杂波,使用先前的帧线段数据来维持检测。在前一帧线段数据不可用的情况下,例如在车道变换期间,当前RoI中的无效线段替换为具有与其下面的段中获得的斜率相同的斜率的线,其斜率已经验证。
对于基段,通过将线段与线性道路模型的线段进行比较,来验证拟合到边缘点的线段的方向。在这种情况下,违反角度阈值保证将当前斜率值替换为参考线的斜率值。由于线性道路模型用作最底层的RoI的参考线,因此该线段中的无效线会导致将线性道路模型线延伸至最底层的RoI。
由于图像中的饱和度、持续阻塞、图像对比度差等导致的在特定段中的边缘特征的连续缺失表明可见度较差。这种情况下,检测可能变得不可靠,可通过减少检测范围并向驾驶员提供适当的低置信度警报来处理。因此,输出曲线是仅使用获得良好置信度分数(边缘特征计数)的线段的细节来绘制的。图17A至17E分别示出了实现段创建、动态RoI选择、内部边缘复制、使用OSLD的线拟合、段验证和段连接后的道路情景的示例性照片。
贝塞尔曲线拟合:根据本发明的实施例,之后是通过基于距离的线验证和贝塞尔曲线拟合来使用脊进行曲线检测。类似地,之后是基于距离的线条验证和贝塞尔曲线拟合来使用边缘进行曲线检测以生成最终输出。图18A至18E分别示出了在对于直线道路、轻微左曲线道路、轻微右曲线道路、急右曲线道路和急左曲线道路的使用边缘特征来实施贝塞尔曲线拟合后的不同道路情景的示例性照片。图19A到19D示出了根据本发明的实施例的在可见性差的情况下使用边缘特征在实现贝塞尔曲线拟合之后的不同道路情景的示例性照片。
图20A至20D分别示出了根据本发明的实施例的用于直道、轻微弯曲道路、急左曲线和急右曲线的最终检测车道的示例性照片。根据本发明的实施例,最终车道检测模块基于相关边缘来检测最终车道并且可以进一步识别车辆是否偏离检测到的最终车道并且可以相应地向驾驶员提供警告。该警告可以是视觉警告、音频警告、振动警告或任何组合或本领域已知的任何其他类型的警告。
图21示出了根据本发明的实施例的可以使用本发明的实施例或者可以在其中利用本发明的实施例的示例性计算机***。如图21所示,计算机***包括外部存储设备2110、总线2120、主存储器2130、只读存储器2140、大容量存储设备2150、通信端口2160和处理器2170。本领域技术人员应该理解,计算机***可以包括多于一个处理器和通信端口。处理器2170的示例包括,但不限于,或安腾2处理器、或或处理器、处理器系列、佛提索克TM***芯片处理器或其他未来处理器。处理器2170可以包括与本发明的实施例相关联的各种模块。通信端口2160可以是用于基于调制解调器的拨号连接的RS-232端口、10/100以太网端口、使用铜线或光纤的千兆或万兆端口、串行端口、并行端口或其他现有的或未来端口中任何一个。通信端口2160可以根据网络来选择,例如局域网(LAN)、广域网(WAN)或计算机***连接的任何网络。
存储器2130可以是随机存取存储器(RAM)、或本领域中公知的任何其他动态存储设备。只读存储器2140可以是任何静态存储装置,例如但不限于,用于存储静态信息例如用于处理器2170的启动或BIOS指令的可编程只读存储器(PROM)芯片。大容量存储装置2150可以是任何当前或未来的海量存储解决方案,可用于存储信息和/或指令。示例性大容量存储解决方案,包括但不限于,并行高级技术附件(PATA)或串行高级技术附件(SATA)硬盘驱动器或固态驱动器(内部或外部,例如具有通用串行总线(USB)和/或火线接口),例如来自于希捷的可用的驱动器(例如希捷酷鱼7102系列)或日立(例如日立桌面之星71000)、一个或多个光盘、独立磁盘冗余阵列(RAID)存储器、例如可以从包括德汉***有限公司、莱斯、雷克森技术有限公司和增强技术公司的各种供应商获得的一系列磁盘(例如SATA阵列)
总线2120通信地将处理器2170与其他存储器、存储和通信块耦合。总线2120可以是,例如***组件互连(PCI)/PCI扩展(PCI-X)总线、小型计算机***接口(SCSI),USB或类似物,用于连接扩展卡、驱动器和其他子***以及其他总线,诸如前端总线(FSB),其将处理器2170连接到软件***。
可选地,操作员和管理接口,例如显示器、键盘和光标控制设备也可以耦合到总线2120以支持操作员与计算机***的直接交互。其他操作员和管理接口可以通过通信端口2160连接的网络连接来提供。外部存储设备2110可以是任何类型的外部硬盘驱动器、软盘驱动器、海量驱动器、光盘-只读存储器(CD-ROM)、可重写光盘(CD-RW)、数字视频光盘-只读存储器(DVD-ROM)。上述组件仅意在举例说明各种可能性。前述示例性计算机***绝不应该限制本发明的范围。
虽然本发明是针对车道检测***进行描述的,但本领域技术人员可以设想用于车道检测的本发明也可用于各种汽车以及非汽车应用,例如但不限于停车位检测、检测道路上的不同标记,如行人过路处、箭头标记、道路交通车道标线、读取各种线图等。
因此,本发明的所提出的***和方法提供了用于直道和弯道道情景的可靠、准确和一致的车道检测。此外,所提出的***和方法不使用类似透视变换、霍夫变换、机器学习方法等计算密集型技术。本发明使用基于低成本相机的解决方案用于车道检测的目的。与其他检测技术相比,基于距离的线路验证通过消除车道段的突然变化来改善车道检测。
虽然前面描述了本发明的各种实施例,但是在不脱离本发明的基本范围的情况下可以设计出本发明的其他和进一步的实施例。本发明的范围由随后的权利要求确定。本发明不限于所描述的实施例、版本或实例,其包括在其中以使得本领域普通技术人员在结合其可用的信息和知识时制造和使用本发明。
本发明的优点
本发明提供了用于检测车道的***和方法。
本发明提供了一种***和方法以在车辆偏离检测的车道时警告车辆的驾驶员。
本发明提供了一种用于车道检测的***和方法,其检测直线道路以及弯曲道路的车道。
本发明提供了一种用于车道检测的***和方法,其组合了基于脊和边缘的检测技术的优点。本发明提供了一种用于车道检测的***和方法,其可靠地、准确且一致性地检测车道。本发明提供用于可靠车道检测的低成本解决方案。
Claims (18)
1.一种用于车道检测的方法,包括以下步骤:
在计算设备接收由图像捕获设备捕获的多个图像;
在计算设备预处理所接收的多个图像以获得多个图像中的感兴趣区域(RoI),并且在所述RoI上获得一个或多个边缘特征;
在计算设备基于对所述RoI的处理来提取一个或多个脊特征;
在计算装置基于所述RoI的所提取的脊特征来检测一个或一个以上可能车道线的足迹指示;在计算装置基于所提取的脊特征和一条或多条可能的车道线的足迹来检测潜在车道;
在计算设备在一个或多个边缘特征上应用掩模以获得相关边缘,所述掩模基于所述潜在车道;
和
在计算装置基于所述提取的相关边缘和一条或多条可能的车道线的足迹来检测最终车道。
2.根据权利要求1所述的方法,其中,多个图像的预处理步骤还包括以下步骤:
灰度化第一组所述多个图像;
基于所述第一组灰度化图像获得所述RoI;
将所述RoI分为近区域、中间区域和远区域;
对所述RoI进行高斯平滑;和
基于边缘检测技术在所述RoI上获得所述一个或多个边缘特征。
3.根据权利要求1所述的方法,其中检测可能的一条或多条车道线的位置的足迹指示的步骤还包括以下步骤:
将ROI横向分为至少三个区域;
将线拟合至RoI的至少三个区域的左侧区域和右侧区域中将所提取的每个脊特征;和
验证RoI的左侧区域和右侧区域中的线。
4.根据权利要求1所述的方法,其中,检测所述潜在车道的步骤还包括捕获所述潜在车道的左侧和右侧曲线的步骤。
5.根据权利要求1所述的方法,其中检测潜在车道的步骤还包括以下步骤:
基于一个或多个可能的车道线的足迹将RoI分割成多个分段,并且评估在多个分段的至少一个相邻分段中对潜在车道的检测;
通过保持多个段的每个段中的所述提取的脊特征的对数,在多个段的每个段中累积所提取的脊特征;
通过实施线拟合技术将多个分段的每个分段中的多个脊特征与线相关联;
使用段验证技术来验证拟合到多个段的每个段中的多个脊特征的线;
通过实施段连接技术将与多个段的每个中的多个脊特征相关联的线与相邻段的线相连接;
在对于车道的左侧和右侧的每一侧所获得的所述连接的线段之间执行基于距离的线验证;和将曲线拟合至每个左侧和右侧中所获得的所述连接线段,以捕获所述潜在车道的左侧和右侧曲线。
6.根据权利要求1所述的方法,其中检测潜在车道以在其左侧和右侧中的任一侧或两侧生成预定缓冲区,并且其中潜在车道用作掩模以提取所述RoI的相关边缘。
7.根据权利要求1所述的方法,其中所述掩模是动态掩模并且基于多个脊特征的基于潜在车道的变化而变化。
8.根据权利要求1所述的方法,其中基于所提取的相关边缘来检测最终车道的步骤还包括以下步骤:
基于一条或多条可能的车道线的足迹将RoI分割成多个分段并且通过在至少一个相邻分段中评估最终车道的检测;
将与一条或多条可能的车道线的内边缘相对应的一个或多个边缘特征与多个段的每一个中的相关边缘相分离;
通过实施线拟合技术将多个段的每个段中的多个相关边缘与线相关联;
使用段验证技术来验证拟合到多个段的每个段中的相关边缘的线;
通过实施段连接技术将与多个段中的每个段中的相关边缘相关联的线与相邻段的线连接;
在对于车道的左侧和右侧中的每一侧所获得的连接线段之间执行基于距离的线验证;和将曲线拟合至车道的左侧和右侧的每一侧所获得的所述连接线段上,以捕获所述最终车道的左侧曲线和右侧曲线。
9.根据权利要求1所述的方法,其中,所述方法还包括以下步骤:向用户提供所述最终检测车道的指示和至少一个参数的任何一个或其组合。
10.一种用于车道检测的***,包括:
具有可操作以检测最终车道的一个或多个例程嵌入在其中的非暂时性存储装置;和
耦合到非暂态存储设备的一个或多个处理器,其中一个或多个例程包括:
图像预处理模块,其在由一个或多个处理器执行时接收由图像捕获装置捕获的多个图像,及预处理所接收的多个图像以获得在所述多个图像中的感兴趣区域(RoI)并且在所述RoI上进一步获得一个或多个边缘特征;
脊特征提取模块,其在由一个或多个处理器执行时基于所述RoI的处理来提取一个或多个脊特征;
潜在车道检测模块,其在由一个或多个处理器执行时基于所述RoI所提取的脊特征来检测一条或多条可能车道线的足迹指示,及基于所述提取的脊特征和一条或多条可能的车道线的足迹来获得潜在车道;
相关边缘获取模块,其在由一个或多个处理器执行时在所述一个或多个边缘特征上应用掩模以获得相关边缘,所述掩码基于所述潜在车道;和
最终车道检测模块,其当由一个或多个处理器执行时,基于基于所述提取的相关边缘和一条或多条可能的车道线的足迹来检测最终车道。
11.根据权利要求10所述的***,其中所述图像预处理模块还配置为:
灰度化第一组所述多个图像;
基于所述第一组灰度化图像来获得所述RoI;
将所述RoI划分为近区域、中间区域和远区域;
将所述RoI进行高斯平滑处理;和
基于边缘检测技术在所述RoI上获得一个或多个边缘特征。
12.根据权利要求10所述的***,其中所述潜在车道检测模块配置为:
将ROI横向分为至少三个区域;
将线拟合至RoI的至少三个区域的左侧区域和右侧区域中的每侧所提取的脊特征;和
在RoI的左侧区域和右侧区域中验证线。
13.根据权利要求10所述的***,其中基于捕获的所述潜在车道的左侧和右侧曲线来检测潜在车道。
14.根据权利要求10所述的***,其中潜在车道检测模块配置为:
基于一条或多条可能车道线的足迹将RoI分割成多个分段,并评估至少一个相邻分段中潜在车道的检测;
通过在多个段的每个段中保持所述提取的脊特征的对数,在多个段的每个段中累积所提取的脊特征;
通过实施线拟合技术将多个段的每个段中的多个脊特征与线相关联;
使用段验证技术验证拟合到多个段的每个段中的多个脊特征的线;
通过实施分段连接技术将与多个段的每个段中的多个脊特征相关联的线与相邻分段的线相连接;
在所述车道的左侧和右侧中的每一侧所获得的所述连接线段之间执行基于距离的线验证;和将曲线拟合至在左侧和右侧中每一侧所获得的所述连接线段,以捕获所述潜在车道的左侧和右侧曲线。
15.根据权利要求10所述的***,其中检测潜在通道以在其左侧和右侧中的任一侧或两侧上生成预定缓冲区,并且其中潜在车道用作掩码以提取RoI的相关边缘。
16.根据权利要求10所述的***,其中所述掩模是动态掩模并且基于多个脊特征基于潜在车道中的变化而变化。
17.根据权利要求10所述的***,其中最终车道检测模块配置为:
基于一条或多条可能的车道线的足迹将RoI分割成多个分段,并且通过评估对至少一个相邻分段中的最终车道的检测;
将与一条或多条可能车道线的内边缘相对应的一个或多个边缘特征从多个段的每一段中的相关边缘中相分离;
通过实施线拟合技术将多个段中的每个段中的多个相关边缘与线相关联;
使用片段验证技术来验证拟合到多个段中的每个段中的相关边缘的线;
通过实施段连接技术将与多个段的每个段中的相关边缘相关联的线与相邻段的线连接;
在车道的左侧和右侧中的每一侧所获得的所述连接的线段之间执行基于距离的线验证;和将曲线拟合至车道的左侧和右侧的每一侧所获得的所述连接线段,以捕获所述最终车道的左侧和右侧曲线。
18.根据权利要求10所述的***,其中所述***还配置为向用户提供所述最终检测的车道的指示和至少一个参数的任何一个或其组合。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201821005454 | 2018-02-13 | ||
IN201821005454 | 2018-02-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110147698A true CN110147698A (zh) | 2019-08-20 |
Family
ID=62017202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810275068.9A Pending CN110147698A (zh) | 2018-02-13 | 2018-03-30 | 用于车道检测的***和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190251372A1 (zh) |
EP (1) | EP3525132A1 (zh) |
JP (1) | JP2019139729A (zh) |
CN (1) | CN110147698A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737266A (zh) * | 2019-09-17 | 2020-01-31 | 中国第一汽车股份有限公司 | 一种自动驾驶控制方法、装置、车辆和存储介质 |
CN110796084A (zh) * | 2019-10-29 | 2020-02-14 | 华人运通(上海)自动驾驶科技有限公司 | 车道线识别方法、装置、设备和计算机可读存储介质 |
CN110930459A (zh) * | 2019-10-29 | 2020-03-27 | 北京经纬恒润科技有限公司 | 灭点提取方法、相机标定方法以及存储介质 |
WO2021056307A1 (en) * | 2019-09-26 | 2021-04-01 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for detecting lane markings for autonomous driving |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10678244B2 (en) | 2017-03-23 | 2020-06-09 | Tesla, Inc. | Data synthesis for autonomous control systems |
US11157441B2 (en) | 2017-07-24 | 2021-10-26 | Tesla, Inc. | Computational array microprocessor system using non-consecutive data formatting |
US11409692B2 (en) | 2017-07-24 | 2022-08-09 | Tesla, Inc. | Vector computational unit |
US11893393B2 (en) | 2017-07-24 | 2024-02-06 | Tesla, Inc. | Computational array microprocessor system with hardware arbiter managing memory requests |
US10671349B2 (en) | 2017-07-24 | 2020-06-02 | Tesla, Inc. | Accelerated mathematical engine |
US11561791B2 (en) | 2018-02-01 | 2023-01-24 | Tesla, Inc. | Vector computational unit receiving data elements in parallel from a last row of a computational array |
US11215999B2 (en) | 2018-06-20 | 2022-01-04 | Tesla, Inc. | Data pipeline and deep learning system for autonomous driving |
US11361457B2 (en) | 2018-07-20 | 2022-06-14 | Tesla, Inc. | Annotation cross-labeling for autonomous control systems |
US11636333B2 (en) | 2018-07-26 | 2023-04-25 | Tesla, Inc. | Optimizing neural network structures for embedded systems |
US11562231B2 (en) | 2018-09-03 | 2023-01-24 | Tesla, Inc. | Neural networks for embedded devices |
JP6697522B2 (ja) * | 2018-09-28 | 2020-05-20 | 株式会社Subaru | 区画線認識装置 |
SG11202103493QA (en) | 2018-10-11 | 2021-05-28 | Tesla Inc | Systems and methods for training machine models with augmented data |
US11196678B2 (en) | 2018-10-25 | 2021-12-07 | Tesla, Inc. | QOS manager for system on a chip communications |
US11816585B2 (en) | 2018-12-03 | 2023-11-14 | Tesla, Inc. | Machine learning models operating at different frequencies for autonomous vehicles |
US11537811B2 (en) | 2018-12-04 | 2022-12-27 | Tesla, Inc. | Enhanced object detection for autonomous vehicles based on field view |
US11610117B2 (en) | 2018-12-27 | 2023-03-21 | Tesla, Inc. | System and method for adapting a neural network model on a hardware platform |
US11475678B2 (en) | 2019-01-04 | 2022-10-18 | Qualcomm Incorporated | Lane marker detection and lane instance recognition |
US10997461B2 (en) | 2019-02-01 | 2021-05-04 | Tesla, Inc. | Generating ground truth for machine learning from time series elements |
US11150664B2 (en) | 2019-02-01 | 2021-10-19 | Tesla, Inc. | Predicting three-dimensional features for autonomous driving |
US11567514B2 (en) | 2019-02-11 | 2023-01-31 | Tesla, Inc. | Autonomous and user controlled vehicle summon to a target |
US10956755B2 (en) | 2019-02-19 | 2021-03-23 | Tesla, Inc. | Estimating object properties using visual image data |
US11263467B2 (en) * | 2019-05-15 | 2022-03-01 | Apical Limited | Image processing |
JP7446851B2 (ja) | 2020-02-21 | 2024-03-11 | フォルシアクラリオン・エレクトロニクス株式会社 | 画像処理装置及び画像処理方法 |
CN111582079A (zh) * | 2020-04-24 | 2020-08-25 | 杭州鸿泉物联网技术股份有限公司 | 基于计算机视觉的车道定位方法及装置 |
CN111860255A (zh) * | 2020-07-10 | 2020-10-30 | 东莞正扬电子机械有限公司 | 驾驶检测模型的训练、使用方法、装置、设备及介质 |
CN112270690B (zh) * | 2020-10-12 | 2022-04-26 | 淮阴工学院 | 一种基于改进clahe和滑窗搜索的自适应夜间车道线检测方法 |
CN112434591B (zh) * | 2020-11-19 | 2022-06-17 | 腾讯科技(深圳)有限公司 | 车道线确定方法、装置 |
CN113221701B (zh) * | 2021-04-30 | 2022-06-10 | 东风商用车有限公司 | 一种基于方向预测的车道线轨道线识别方法及装置 |
CN113436190B (zh) * | 2021-07-30 | 2023-03-14 | 重庆长安汽车股份有限公司 | 一种基于车道线曲线系数的车道线质量计算方法、装置及汽车 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016001462A (ja) * | 2014-04-07 | 2016-01-07 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | オブジェクトと車両との間の距離を算出するためのシステムおよび方法 |
CN105678287A (zh) * | 2016-03-02 | 2016-06-15 | 江苏大学 | 一种基于脊度量的车道线检测方法 |
JP2017005678A (ja) * | 2015-06-04 | 2017-01-05 | ソニー株式会社 | 車載カメラ・システム並びに画像処理装置 |
JP2017041228A (ja) * | 2015-05-28 | 2017-02-23 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | レーン検出 |
CN106803061A (zh) * | 2016-12-14 | 2017-06-06 | 广州大学 | 一种基于动态感兴趣区域的简易快速车道线检测方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006007550A1 (de) * | 2005-02-25 | 2006-11-09 | Volkswagen Ag | Vorrichtung und Verfahren zur Erkennung einer Fahrbahnmarkierung für ein Kraftfahrzeug |
KR101428165B1 (ko) * | 2012-06-29 | 2014-08-07 | 엘지이노텍 주식회사 | 차선이탈 경고 시스템 및 차선이탈 경고 방법 |
CN104537342B (zh) * | 2014-12-24 | 2017-08-11 | 福州大学 | 一种结合山脊边界检测及霍夫变换的快速车道线检测方法 |
US10102434B2 (en) * | 2015-12-22 | 2018-10-16 | Omnivision Technologies, Inc. | Lane detection system and method |
-
2018
- 2018-03-30 CN CN201810275068.9A patent/CN110147698A/zh active Pending
- 2018-04-17 EP EP18167695.8A patent/EP3525132A1/en not_active Withdrawn
- 2018-04-26 JP JP2018084743A patent/JP2019139729A/ja active Pending
- 2018-05-22 US US15/986,436 patent/US20190251372A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016001462A (ja) * | 2014-04-07 | 2016-01-07 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | オブジェクトと車両との間の距離を算出するためのシステムおよび方法 |
JP2017041228A (ja) * | 2015-05-28 | 2017-02-23 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | レーン検出 |
JP2017005678A (ja) * | 2015-06-04 | 2017-01-05 | ソニー株式会社 | 車載カメラ・システム並びに画像処理装置 |
CN105678287A (zh) * | 2016-03-02 | 2016-06-15 | 江苏大学 | 一种基于脊度量的车道线检测方法 |
CN106803061A (zh) * | 2016-12-14 | 2017-06-06 | 广州大学 | 一种基于动态感兴趣区域的简易快速车道线检测方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737266A (zh) * | 2019-09-17 | 2020-01-31 | 中国第一汽车股份有限公司 | 一种自动驾驶控制方法、装置、车辆和存储介质 |
WO2021056307A1 (en) * | 2019-09-26 | 2021-04-01 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for detecting lane markings for autonomous driving |
CN110796084A (zh) * | 2019-10-29 | 2020-02-14 | 华人运通(上海)自动驾驶科技有限公司 | 车道线识别方法、装置、设备和计算机可读存储介质 |
CN110930459A (zh) * | 2019-10-29 | 2020-03-27 | 北京经纬恒润科技有限公司 | 灭点提取方法、相机标定方法以及存储介质 |
CN110930459B (zh) * | 2019-10-29 | 2023-02-17 | 北京经纬恒润科技股份有限公司 | 灭点提取方法、相机标定方法以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20190251372A1 (en) | 2019-08-15 |
EP3525132A1 (en) | 2019-08-14 |
JP2019139729A (ja) | 2019-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110147698A (zh) | 用于车道检测的***和方法 | |
Wu et al. | Lane-mark extraction for automobiles under complex conditions | |
Eum et al. | Enhancing light blob detection for intelligent headlight control using lane detection | |
CN108280450A (zh) | 一种基于车道线的高速公路路面检测方法 | |
CN107016329B (zh) | 图像处理方法 | |
Zakaria et al. | Lane detection in autonomous vehicles: A systematic review | |
Li et al. | Road lane detection with gabor filters | |
JP2014071902A (ja) | フィンガープリントを使用してビデオ内で移動オブジェクトを追跡するため方法及びシステム | |
CN110135235B (zh) | 一种眩光处理方法、装置及车辆 | |
CN107633703A (zh) | 一种行车记录仪及其前向防撞预警方法 | |
CN108351964A (zh) | 图像识别装置及图像识别方法 | |
CN111428644A (zh) | 基于深度神经网络的斑马线区域监测方法、***及介质 | |
CN112071084A (zh) | 一种利用深度学习判断违章停车的方法和*** | |
Huang et al. | A knowledge-based approach to urban feature classification using aerial imagery with lidar data | |
CN116863124B (zh) | 车辆姿态确定方法、控制器及存储介质 | |
Santos et al. | Car recognition based on back lights and rear view features | |
Tian et al. | The cooperative vehicle infrastructure system based on machine vision | |
Xiong et al. | Fast and robust approaches for lane detection using multi‐camera fusion in complex scenes | |
Chen et al. | Integrated vehicle and lane detection with distance estimation | |
Lin et al. | Enhancing deep-learning object detection performance based on fusion of infrared and visible images in advanced driver assistance systems | |
Zhang et al. | Robust surface crack detection with structure line guidance | |
Shahrear et al. | An automatic traffic rules violation detection and number plate recognition system for Bangladesh | |
CN114913488A (zh) | 抛洒物检测方法、装置、电子设备及存储介质 | |
Chahal | In Situ Detection of Road Lanes Using Raspberry Pi | |
Saponara | Real-time color/shape-based traffic signs acquisition and recognition system |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190820 |