基于视频流的路面裂缝动态检测方法转让专利

申请号 : CN201710648354.0

文献号 : CN107610092B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李伟沙爱民孙朝云谢磊金郝雪丽陈瑶张欣

申请人 : 长安大学

摘要 :

本发明公开了基于视频流的路面裂缝动态检测方法,包括以下步骤:步骤1,将道路路面的裂缝区域用一矩形框框在其中,利用车载运动相机采集含裂缝区域的道路路面视频,提取任一帧视频作为视频图像,对视频图像进行灰度化处理,得到灰度图像;步骤2,对灰度图像进行二值化处理,得到二值化图像;步骤4,对二值化图像中的裂缝区域进行区域生长算法处理,得到处理后的裂缝区域;骤5,将处理后的裂缝区域进行校正,得到校正后的裂缝区域;步骤6,计算校正后的裂缝区域中裂缝的面积。本发明克服了人工检测方法具有的劳动强度大、安全性低、行车受干扰、工作效率低和检测精确度较低的缺点。

权利要求 :

1.基于视频流的路面裂缝动态检测方法,其特征在于,包括以下步骤:步骤1,将道路路面的裂缝用一矩形框框在其中,利用车载运动相机采集含裂缝的道路路面视频,提取任一帧视频作为视频图像,对视频图像进行灰度化处理,得到灰度图像;

步骤2,对灰度图像进行二值化处理,得到二值化图像;

步骤3,找到二值化图像中的所有连通域,对所有连通域进行滤波处理,得到二值化图像中的多个裂缝区域,具体包括:步骤31,从所有连通域中任选一个连通域作为当前连通域,若当前连通域内像素的平均值小于阈值k,则该当前连通域为杂质区域;否则,该当前连通域为非杂质连通域;

步骤32,重复步骤31,直至所有的连通域都被作为当前连通域,得到所有的非杂质连通域;

步骤33,从所有的非杂质连通域中任选一个非杂质连通域作为当前非杂质连通域,若当前非杂质连通域的外接矩形的长边长和短边长的比例小于2:1,则该当前非杂质连通域为干扰连通域;否则,当前非杂质连通域为裂缝区域;

步骤34,重复步骤33,直至所有的非杂质连通域都被作为当前非杂质连通域,得到二值化图像中的多个裂缝区域;

步骤4,对二值化图像中的多个裂缝区域进行区域生长算法处理,得到处理后的多个裂缝区域;

包括:

步骤41,从二值化图像中的多个裂缝区域中任选一个裂缝区域作为当前裂缝区域;

步骤411,将当前裂缝区域中的所有像素点作为种子点压入栈内;

步骤412,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点n×n区域内的所有像素点,其中n为二值化图像中的所有裂缝区域之间距离的均值;

包括:

(2-1),从当前种子点n×n区域内的所有像素点中任选一个像素点作为当前n×n区域像素点,设当前n×n区域像素点的像素值为p,若|p-p0|

(2-2),重复步骤(2-1),直至当前种子点n×n区域内的所有像素点都被作为当前n×n区域像素点,执行步骤43;

步骤413,重复步骤412,直至当前裂缝区域中的所有的像素点都被作为当前种子点,得到新的当前裂缝区域;

步骤414,将新的当前裂缝区域中的所有像素点重新作为种子点压入栈内;

步骤415,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点3×3区域内的所有像素点;

包括:

(5-1),从当前种子点3×3区域内的所有像素点中任选一个像素点作为当前3×3区域像素点,设当前3×3区域像素点的像素值为p,若|p-p0|

(5-2),重复步骤(5-1),直至当前种子点3×3区域内的所有像素点都被作为当前3×3区域像素点,执行步骤416;

步骤416,重复步骤415,直至栈内的所有种子点都被取出,得到处理后的当前裂缝区域;

步骤42,重复步骤41,直至二值化图像中的多个裂缝区域均被作为当前裂缝区域,得到处理后的多个裂缝区域步骤5,利用矩形框作为参考将处理后的多个裂缝区域进行校正,得到校正后的多个裂缝区域;

步骤6,计算校正后的每个裂缝区域中裂缝的面积,将校正后的每个裂缝区域中裂缝的面积叠加得到裂缝的总面积。

2.如权利要求1所述的基于视频流的路面裂缝动态检测方法,其特征在于,步骤5中将处理后的裂缝区域进行校正,得到校正后的裂缝区域,包括:步骤51,设步骤1框住路面裂缝的矩形框的四个顶点在图像坐标系下按照顺时针依次是顶点1、顶点2、顶点3和顶点4,其中顶点1位于矩形框的左上角;顶点1、顶点2、顶点3和顶点4的坐标分别为(u1,v1),(u2,v2),(u3,v3),(u4,v4);

步骤52,取min(v1,v2)作为顶点1和顶点2校正后的纵坐标,取min(u1,u3)作为顶点1和顶点3校正后的横坐标,取max(u2,u4)作为顶点2和顶点4校正后的横坐标,取max(v3,v4)作为顶点3和顶点4校正后的纵坐标;即得到矩形框的四个顶点在图像坐标系中校正后的坐标;

步骤53,根据矩形框的四个顶点在图像坐标系中校正前的坐标和校正后的坐标的比例关系,将裂缝区域的像素点坐标进行校正,得到校正后的裂缝区域。

3.如权利要求1所述的基于视频流的路面裂缝动态检测方法,其特征在于,步骤6中计算校正后的裂缝区域中裂缝的面积,包括:步骤61,将包含裂缝区域的二值化图像采用M×N的子块进行互不重叠的划分;

步骤62,初始设裂缝像素面积Ax=0;

步骤63,从所有子块中任选一个子块作为当前子块;

步骤631,从当前子块中的所有像素点中任选一个像素点作为当前子块像素点,若该当前子块像素点为裂缝,则Ax=Ax+1;

步骤632,重复步骤631,直至当前子块中的所有像素点都被作为当前子块像素点,执行步骤64;

步骤64,重复步骤63,直至所有子块都被作为当前子块,得到最终的裂缝像素面积。

说明书 :

基于视频流的路面裂缝动态检测方法

技术领域

[0001] 本发明属于道路工程领域,特别涉及一种基于视频流的路面裂缝动态检测方法。

背景技术

[0002] 早期建设的高速公路在长时间的营运中,持续受到自然环境和人为出行载重等因素带来的破坏,必然出现了各种路面破损。所以需要及时准确统计路面的破损情况,并制定相应合理科学的办法养护道路,避免病害继续扩大而危及到人们出行安全问题。因此需要对路面破损的类型、面积等破损因素进行准确统计,分析并评估路面破损状况,这样就可以为交通管理部门进行路面养护管理工作时提供大量准确及时的数据依据。
[0003] 国内目前在路面状况检测方法依旧是以传统的人工目测调查为主。随着科技的发展,基于机器视觉的自动化检测技术在科学研究领域中不断的发展提高。从各个方面分析,人工目测因为检测方法本质上的因素,早已无法满足路面检测状况带来的日益丰富的检测要求。人工目测主要缺点有:1、需要的人力资源消耗过大;2、需要的时间资源消耗过长;3、检测结果因为人为因素导致精确度不高;4、公路上人员检测会直接影响正常的交通;5、公路上检测车辆流动危险性大;6、需要花费的成本代价过高。因此存在缺陷的人工检测方法将在科技不断创新的年代渐渐被淘汰。
[0004] 现有技术还有将先进流行的摄像技术应用到开发路面破损信息采集系统中,并运用机器视觉中科学的图像识别技术检测路面破损状况信息,这样就能达到国内现代化、大规模、高效率以及高质量的公路基本养护需求,这项研究已经成为本领域的研究热点,但包含裂缝自动检测功能的全自动检测车,无论是国内国外售价都上千万,检测价格更是每公里几百元起,由于成本问题即便可以得到这些检测指标,仅依赖每年的年检和五年一次的国检,也无法高频度的得到这几个指标,这长期阻碍了我国道路破损评估技术的发展进步。

发明内容

[0005] 为了解决路况人工目测的缺陷和全自动检测车成本费用问题以及提高各等级公路破损检测的频率而提出一种基于视频流的路面裂缝动态检测方法。
[0006] 本发明所采用的技术方案为:
[0007] 基于视频流的路面裂缝动态检测方法,包括以下步骤:
[0008] 步骤1,将道路路面的裂缝用一矩形框框在其中,利用车载运动相机采集含裂缝的道路路面视频,提取任一帧视频作为视频图像,对视频图像进行灰度化处理,得到灰度图像;
[0009] 步骤2,对灰度图像进行二值化处理,得到二值化图像;
[0010] 步骤3,找到二值化图像中的所有连通域,对所有连通域进行滤波处理,得到二值化图像中的多个裂缝区域;
[0011] 步骤4,对二值化图像中的多个裂缝区域进行区域生长算法处理,得到处理后的多个裂缝区域;
[0012] 包括:
[0013] 步骤41,从二值化图像中的多个裂缝区域中任选一个裂缝区域作为当前裂缝区域;
[0014] 步骤411,将当前裂缝区域中的所有像素点作为种子点压入栈内;
[0015] 步骤412,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点n×n区域内的所有像素点,其中n为二值化图像中的所有裂缝区域之间距离的均值;
[0016] 包括:
[0017] (2-1),从当前种子点n×n区域内的所有像素点中任选一个像素点作为当前n×n区域像素点,设当前n×n区域像素点的像素值为p,若|p-p0|<K,则将该当前n×n区域像素点划入当前裂缝区域中的像素点;
[0018] (2-2),重复步骤(2-1),直至当前种子点n×n区域内的所有像素点都被作为当前n×n区域像素点,执行步骤43;
[0019] 步骤413,重复步骤412,直至当前裂缝区域中的所有的像素点都被作为当前种子点,得到新的当前裂缝区域;
[0020] 步骤414,将新的当前裂缝区域中的所有像素点重新作为种子点压入栈内;
[0021] 步骤415,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点3×3区域内的所有像素点;
[0022] 包括:
[0023] (5-1),从当前种子点3×3区域内的所有像素点中任选一个像素点作为当前3×3区域像素点,设当前3×3区域像素点的像素值为p,若|p-p0|<K,则将该当前3×3区域像素点划入裂缝区域中的像素点,并将该当前3×3区域像素点作为新的种子点压入栈内;
[0024] (5-2),重复步骤(5-1),直至当前种子点3×3区域内的所有像素点都被作为当前3×3区域像素点,执行步骤416;
[0025] 步骤416,重复步骤415,直至栈内的所有种子点都被取出,得到处理后的当前裂缝区域;
[0026] 步骤42,重复步骤41,直至二值化图像中的多个裂缝区域均被作为当前裂缝区域,得到处理后的多个裂缝区域
[0027] 步骤5,利用矩形框作为参考将处理后的多个裂缝区域进行校正,得到校正后的多个裂缝区域;
[0028] 步骤6,计算校正后的每个裂缝区域中裂缝的面积,将校正后的每个裂缝区域中裂缝的面积叠加得到裂缝的总面积。
[0029] 进一步地,步骤3,找到二值化图像中的所有连通域,对所有连通域进行滤波处理,得到二值化图像中的裂缝区域,包括:
[0030] 步骤31,从所有连通域中任选一个连通域作为当前连通域,若当前连通域内像素的平均值小于阈值k,则该当前连通域为杂质区域;否则,该当前连通域为非杂质连通域;
[0031] 步骤32,重复步骤31,直至所有的连通域都被作为当前连通域,得到所有的非杂质连通域;
[0032] 步骤33,从所有的非杂质连通域中任选一个非杂质连通域作为当前非杂质连通域,若当前非杂质连通域的外接矩形的长边长和短边长的比例小于2:1,则该当前非杂质连通域为干扰连通域;否则,当前非杂质连通域为裂缝区域。
[0033] 步骤34,重复步骤33,直至所有的非杂质连通域都被作为当前非杂质连通域,得到二值化图像中的多个裂缝区域。
[0034] 进一步地,步骤5中将处理后的裂缝区域进行校正,得到校正后的裂缝区域,包括:
[0035] 步骤51,设步骤1框住路面裂缝的矩形框的四个顶点在图像坐标系下按照顺时针依次是顶点1、顶点2、顶点3和顶点4,其中顶点1位于矩形框的左上角;顶点1、顶点2、顶点3和顶点4的坐标分别为(u1,v1),(u2,v2),(u3,v3),(u4,v4);
[0036] 步骤52,取min(v1,v2)作为顶点1和顶点2校正后的纵坐标,取min(u1,u3)作为顶点1和顶点3校正后的横坐标,取max(u2,u4)作为顶点2和顶点4校正后的横坐标,取max(v3,v4)作为顶点3和顶点4校正后的纵坐标;即得到矩形框的四个顶点在图像坐标系中校正后的坐标;
[0037] 步骤53,根据矩形框的四个顶点在图像坐标系中校正前的坐标和校正后的坐标的比例关系,将裂缝区域的像素点坐标进行校正,得到校正后的裂缝区域。
[0038] 进一步地,步骤6中计算校正后的裂缝区域中裂缝的面积,包括:
[0039] 步骤61,将包含裂缝区域的二值化图像采用M×N的子块进行互不重叠的划分;
[0040] 步骤62,初始设裂缝像素面积Ax=0;
[0041] 步骤63,从所有子块中任选一个子块作为当前子块;
[0042] 步骤631,从当前子块中的所有像素点中任选一个像素点作为当前子块像素点,若该当前子块像素点为裂缝,则Ax=Ax+1;
[0043] 步骤632,重复步骤631,直至当前子块中的所有像素点都被作为当前子块像素点,执行步骤64;
[0044] 步骤64,重复步骤63,直至所有子块都被作为当前子块,得到最终的裂缝像素面积。
[0045] 本发明的有益效果是
[0046] 1、计算简单、运行时间短,适合在实时的系统中采用。
[0047] 2、克服了人工检测方法具有的劳动强度大、安全性低、行车受干扰、工作效率低和检测精确度较低的缺点。
[0048] 3、通过简易低成本的硬件搭建、高效的图像处理技术、科学的路面评价标准、简单的操作流程以及稳定的信息管理方法实现高频率、广范围的路面裂缝检测目标。
[0049] 4、可为道路养护管理提供有力的信息支持,提高了公路养护和管理水平,同时,为进一步开发公路检测设备,改变我国公路工程检测设备绝大部分依赖进口的现状,节省资源,培养自己的研究和开发技术力量打下了人力与技术基础。

附图说明

[0050] 图1为含有裂缝的任一帧视频图像;
[0051] 图2为图1的二值化图像;
[0052] 图3为经过滤波处理后得到的二值化图像;
[0053] 图4为经过区域生长算法处理后的二值化图像;
[0054] 图5(a)为未校正的矩形框;图5(b)为校正后的矩形框;
[0055] 图6(a)为未校正的裂缝区域图像;图6(b)为校正后的裂缝区域图像。

具体实施方式

[0056] 本发明中的栈是一种数据项按序排列的数据结构,只能在栈顶对数据项进行插入(压入)和删除(取出),具有先进后出的特点。
[0057] 下面通过附图和实施例对本发明作进一步说明。
[0058] 实施例1
[0059] 本实施例提供了基于视频流的路面裂缝动态检测方法,包括以下步骤:
[0060] 步骤1,将道路路面的裂缝用一矩形框框在其中,如图1,利用车载运动相机采集含裂缝的道路路面视频,提取任一帧视频作为视频图像,对视频图像进行灰度化处理,得到灰度图像;
[0061] 本实施例采用高清GARMIN运动摄像机架设在车类交通工具上进行路面数据采集。
[0062] 步骤2,对灰度图像进行二值化处理,得到二值化图像;
[0063] 本实施例采用自适应阈值法进行二值化处理,包括:
[0064] 步骤21,设T为灰度图像所有像素点的平均像素值;
[0065] 步骤22,设置T为阈值界限分割灰度图像,将灰度值≥T的所有像素点组成集合G1,剩下像素点组成集合G2;
[0066] 步骤23,计算G1内所有像素点的像素平均值u1和和G2内所有像素点的像素平均值u2;
[0067] 步骤24,计算新的界限阈值T=(u1+u2)/2;
[0068] 步骤25,重复采用步骤22~步骤24,直到连续迭代中出现u1和u2像素值不再变化时,结束迭代,得到最终的自适应阈值T′=(u1+u2)/2。
[0069] 步骤26,循环遍历图像中的每个像素点,若像素值≥阈值T′,即为裂缝点,将其置为0;否则认为其是背景点,置为1。循环处理完成即可得到初识别的二值化图像,即得到出识别的裂缝区域,如图2。
[0070] 由于初识别得到的裂缝中必然存在一些杂质点,这些杂质点一般面积很小,因此根据该特征滤除杂质点,即将路面非裂缝干扰物过滤掉后得到的裂缝区域;
[0071] 步骤3,找到二值化图像中的所有连通域,对所有连通域进行滤波处理,得到二值化图像中的多个裂缝区域;
[0072] 包括:
[0073] 步骤31,从所有连通域中任选一个连通域作为当前连通域,若当前连通域内像素的平均值小于阈值k,则该当前连通域为杂质区域;否则,该当前连通域为非杂质连通域;
[0074] 步骤32,重复步骤31,直至所有的连通域都被作为当前连通域,得到所有的非杂质连通域;
[0075] 步骤33,从所有的非杂质连通域中任选一个非杂质连通域作为当前非杂质连通域,若当前非杂质连通域的外接矩形的长边长和短边长的比例小于2:1,则该当前非杂质连通域为干扰连通域;否则,当前非杂质连通域为裂缝区域。
[0076] 步骤34,重复步骤33,直至所有的非杂质连通域都被作为当前非杂质连通域,去掉所有干扰连通域和杂质连通域,即可得到二值化图像中的多个裂缝区域,如图3。
[0077] 步骤4,对二值化图像中的多个裂缝区域进行区域生长算法处理,得到处理后的多个裂缝区域,如图4;
[0078] 包括:
[0079] 步骤41,从二值化图像中的多个裂缝区域中任选一个裂缝区域作为当前裂缝区域;
[0080] 步骤411,将当前裂缝区域中的所有像素点作为种子点压入栈内;
[0081] 步骤412,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点n×n区域内的所有像素点,其中n为二值化图像中的所有裂缝区域之间距离的均值;
[0082] 包括:
[0083] (2-1),从当前种子点n×n区域内的所有像素点中任选一个像素点作为当前n×n区域像素点,设当前n×n区域像素点的像素值为p,若|p-p0|<K,则将该当前n×n区域像素点划入当前裂缝区域中的像素点;
[0084] (2-2),重复步骤(2-1),直至当前种子点n×n区域内的所有像素点都被作为当前n×n区域像素点,执行步骤43;
[0085] 步骤413,重复步骤412,直至当前裂缝区域中的所有的像素点都被作为当前种子点,得到新的当前裂缝区域;
[0086] 步骤414,将新的当前裂缝区域中的所有像素点重新作为种子点压入栈内;
[0087] 步骤415,取出栈顶像素点作为当前种子点,设当前种子点的像素值为p0,寻找当前种子点3×3区域内的所有像素点;
[0088] 包括:
[0089] (5-1),从当前种子点3×3区域内的所有像素点中任选一个像素点作为当前3×3区域像素点,设当前3×3区域像素点的像素值为p,若|p-p0|<K,则将该当前3×3区域像素点划入裂缝区域中的像素点,并将该当前3×3区域像素点作为新的种子点压入栈内;
[0090] (5-2),重复步骤(5-1),直至当前种子点3×3区域内的所有像素点都被作为当前3×3区域像素点,执行步骤416;
[0091] 步骤416,重复步骤415,直至栈内的所有种子点都被取出,得到处理后的当前裂缝区域;
[0092] 步骤42,重复步骤41,直至二值化图像中的多个裂缝区域均被作为当前裂缝区域,得到处理后的多个裂缝区域
[0093] 本发明先使用改版区域生长方法检测出未被识别出来的断裂的裂缝,然后再把识别出的裂缝区域当做种子点用传统的区域生长方法进行处理,通过两种方法结合一起形成一种新的改进版区域生长算法尽可能的识别出真实完整的裂缝。
[0094] 步骤5,利用矩形框作为参考将处理后的多个裂缝区域进行校正,得到校正后的多个裂缝区域;
[0095] 包括:
[0096] 如图5(a)、(b)所示,步骤51,设步骤1框住路面裂缝的矩形框的四个顶点在图像坐标系下按照顺时针依次是顶点1、顶点2、顶点3和顶点4,其中顶点1位于矩形框的左上角;顶点1、顶点2、顶点3和顶点4的坐标分别为(u1,v1),(u2,v2),(u3,v3),(u4,v4);
[0097] 步骤52,取min(v1,v2)作为顶点1和顶点2校正后的纵坐标,取min(u1,u3)作为顶点1和顶点3校正后的横坐标,取max(u2,u4)作为顶点2和顶点4校正后的横坐标,取max(v3,v4)作为顶点3和顶点4校正后的纵坐标;即得到矩形框的四个顶点在图像坐标系中校正后的坐标;
[0098] 图5(a)中为校正前矩形框的四个顶点的坐标,图5(b)为校正后矩形框的四个顶点的坐标。
[0099] 步骤53,根据矩形框的四个顶点在图像坐标系中校正前的坐标和校正后的坐标的比例关系,将处理后的多个裂缝区域的像素点坐标按照比例关系进行校正,得到校正后的多个裂缝区域。
[0100] 如图6(a)为校正前的多个裂缝区域,图6(b)为校正后的多个裂缝区域。
[0101] 步骤6,计算校正后的每个裂缝区域中裂缝的面积,将校正后的每个裂缝区域中裂缝的面积叠加得到裂缝的总面积;
[0102] 包括:
[0103] 步骤61,将包含裂缝区域的二值化图像采用M×N的子块进行互不重叠的划分;
[0104] 步骤62,初始设裂缝像素面积Ax=0;
[0105] 步骤63,从所有子块中任选一个子块作为当前子块;
[0106] 步骤631,从当前子块中的所有像素点中任选一个像素点作为当前子块像素点,若该当前子块像素点为裂缝,则Ax=Ax+1;
[0107] 步骤632,重复步骤631,直至当前子块中的所有像素点都被作为当前子块像素点,执行步骤64;
[0108] 步骤64,重复步骤63,直至所有子块都被作为当前子块,得到最终的裂缝像素面积。