matlab异物检测程序,一种基于图像的异物检测方法与流程

matlab异物检测程序,一种基于图像的异物检测方法与流程_第1张图片

本发明属于图像处理技术领域,特别涉及一种基于图像的异物检测方法。

背景技术:

在实际应用中需要检测道面上的异物并标注出异物的位置,传统的异物检测方法往往只采用单一图像特征进行检测,检测率较低,适用范围小。实际应用场景的道面非常复杂,具有很多固有目标或非固有目标的干扰,异物检测的时间也不固定,可能在白天或者夜晚进行检测,这就需要异物检测方法能够适用于多种场景与天气情况。

技术实现要素:

本发明的目的是提供一种基于图像的异物检测方法,解决了基于图像进行异物检测的技术问题。

为实现上述目的,本发明采用以下技术方案:

一种基于图像的异物检测方法,包括以下步骤:

步骤1:建立图像处理设备,图像处理设备通过图像获取模块获取图像,图像处理设备中包括异物检测模块和展示模块;

步骤2:图像处理设备对图像进行亮度调整,将较暗的图像调亮:当图像的亮度中值小于一定的阈值θ,则对图像进行直方图均衡化,调整图像的亮度,得到亮度调整后的图像;

步骤3:图像处理设备对亮度调整后的图像进行滤波处理,去除图像中的噪声,得到滤波后的图像;

步骤4:建立背景模型,将滤波后的图像与背景模型进行像素比较,符合背景模型的像素点作为背景,反之则作为前景;

步骤5:对滤波后的图像使用Canny边缘检测算法进行边缘检测,判定边缘强的部分是异物,其具体步骤如下:

步骤A:计算图像中每个像素点的梯度强度和方向;

步骤B:应用非极大值机制,以消除边缘检测带来的杂散响应,排除非边缘像素,仅保留细边缘;

步骤C:应用双阈值检测确定真实边缘,大于高阈值的一定是边缘,小于低阈值一定不是边缘,若检测结果在低阈值和高阈值之间,则搜索该像素的相邻像素中有无大于高阈值的边缘像素,若存在则是边缘,反之则不是边缘;

步骤D:根据步骤A到步骤C的结果确定边缘图像;

步骤6:对边缘图像进行形态学滤波操作,连接异物断裂的边缘信息,更完整地检测出异物,形态学滤波操作后对封闭边缘进行孔洞填充;

步骤7:对步骤6获得的图像进行角点检测,保留角点个数大于阈值δ的区域,去除角点个数小于阈值δ的区域,去除道面标志线或车轮印的影响;

步骤8:输出步骤7获得的图像数据,通过图像显示设备展示给用户查看。

优选的,所述图像处理设备为服务器或FPGA。

优选的,所述展示模块显示屏,所述图像获取模块为摄像头、摄像机或视频采集卡。

本发明所述的一种基于图像的异物检测方法,解决了基于图像进行异物检测的技术问题,本发明适用于白天、夜晚等多种场景检测,背景差分与边缘检测结合提高检测率,本发明采用角点检测与多特征融合的方法去除道面标志线或车轮印的影响。

附图说明

图1是本发明的流程图;

图2是本发明的系统构架图。

具体实施方式

如图1-图2所示的一种基于图像的异物检测方法,包括以下步骤:

步骤1:建立图像处理设备,图像处理设备通过图像获取模块获取图像,图像处理设备中包括异物检测模块和展示模块;

步骤2:图像处理设备对图像进行亮度调整,将较暗的图像调亮:当图像的亮度中值小于一定的阈值θ,则对图像进行直方图均衡化,调整图像的亮度,得到亮度调整后的图像;

步骤3:图像处理设备对亮度调整后的图像进行滤波处理,去除图像中的噪声,得到滤波后的图像;具体可以使用高斯滤波或频域滤波对图像进行滤波,滤波后的图像表示为Ifg:

表示中心点If(i,j)邻域内If(k,l)点的权重值。

步骤4:建立背景模型,将滤波后的图像与背景模型进行像素比较,符合背景模型的像素点作为背景,反之则作为前景;具体可将图像的中值作为背景,计算原图每个像素点与背景图像的差值的绝对值:

Isub=|Ifg-bg|;

Isub表示当前图像与背景图像的差异,差异越大表示为异物的可能性越大;

步骤5:对滤波后的图像使用Canny边缘检测算法进行边缘检测,判定边缘强的部分是异物,其具体步骤如下:

步骤A:计算图像中每个像素点的梯度强度和方向;

步骤B:应用非极大值机制,以消除边缘检测带来的杂散响应,排除非边缘像素,仅保留细边缘;

步骤C:应用双阈值检测确定真实边缘,大于高阈值的一定是边缘,小于低阈值一定不是边缘,若检测结果在低阈值和高阈值之间,则搜索该像素的相邻像素中有无大于高阈值的边缘像素,若存在则是边缘,反之则不是边缘;

步骤D:根据步骤A到步骤C的结果确定边缘图像;

步骤6:对边缘图像进行形态学滤波操作,连接异物断裂的边缘信息,更完整地检测出异物,形态学滤波操作后对封闭边缘进行孔洞填充;

步骤7:对步骤6获得的图像进行角点检测,保留角点个数大于阈值δ的区域,去除角点个数小于阈值δ的区域,去除道面标志线或车轮印的影响;

具体可以使用Harris角点检测方法,Harris角点检测基于灰度图像的角点提取算法,步骤如下:

步骤S1:计算图矩阵H;

步骤S2:对图像进行高斯滤波,得到新的图矩阵H,高斯滤波窗口可选7x7或者9x9;

步骤S3:计算目标像素点角点响应函数值CRF

CRF=Det(H)-αTrace(H)2,

步骤S4:选取局部极值点;

步骤S5:设定阈值,CRF值大于阈值点的作为最终选取的角点。

步骤8:输出步骤7获得的图像数据,通过图像显示设备展示给用户查看。

优选的,所述图像处理设备为服务器或FPGA。

优选的,所述展示模块显示屏,所述图像获取模块为摄像头、摄像机或视频采集卡。

本发明所述的一种基于图像的异物检测方法,解决了基于图像进行异物检测的技术问题,本发明适用于白天、夜晚等多种场景检测,背景差分与边缘检测结合提高检测率,本发明采用角点检测与多特征融合的方法去除道面标志线或车轮印的影响。

你可能感兴趣的:(matlab异物检测程序)