暗环境中规则障碍物检测方法研究∗

2021-06-29 08:41李成成张晓玲
计算机与数字工程 2021年6期
关键词:形态学直方图障碍物

李成成 张晓玲

(1.江苏理工学院机械工程学院 常州 213000)(2.江苏理工学院电信学院 常州 213000)

1 引言

目标检测[1~2]与定位是计算机视觉系统的关键技术之一,如对象跟踪、定位,三维重建[3]等,目标检测效果将影响后续工作的进展。目前已有诸多的目标检测算法,针对黑暗场景中传统障碍物的检测方法,如超声波[4]无法反应特定区域的障碍特征,且单个超声波设备无法获取全局的距离信息;双目立体视觉[5]技术无法提取有效的特征纹理实现特征匹配;结构光适用于在纹理不明显的环境中通过光栅[6~8]获取特征纹理,由于解相位算法[9~11]处理消耗时间相比其他算法较长。因此,进行暗环境中障碍物目标检测并提取障碍物区域具有较高的理论意义和应用价值。

文献[12]采用舵机结合超声波传感器检测障碍物实现避障,但只是单纯的避障功能,没有更多探测障碍物的形状和位置。文献[13]通过偏振光特性对高反光目标三维重建,对于无反光黑暗场景中的目标重建无法适用。文献[14]结合光栅和立体视觉的优点进行三维重建,由于通过全局重建然后再判断障碍物导致非实时性的工作。文献[15]使用脉冲激光雷达探测障碍物,范围和精度都优于超声波且可以对障碍物成像,适用于复杂环境,但是只完成了数据采集,并没有对障碍物进行定位分析以及重建。

实验中采用线激光模拟光栅投射,提出一种基于直方图极值选择的局部障碍物检测方法。针对暗环境中纹理差异很不明显的特点,首先统计灰度直方图提取较明显区域,找到局部极大极小值。然后用全局极大值与原点处极大值之间的范围检测轮廓。最后检测出障碍物的区域后,通过检测的线激光间距与样本线激光间距匹配,便实现了检测障碍物并得到障碍物距离信息,进一步可以得出障碍物高度信息。

2 障碍物区域提取算法分析

在线激光实时扫描过程中,首先通过摄像头获取含有线激光条纹的原始图像,预处理图像。障碍物在图像中由于线激光条纹的作用,在暗环境中无法准确确定此灰度值。根据极值算法得出最佳分割阈值,用于障碍物区域的粗提取,最后由形态学处理和轮廓筛选做精提取。算法流程如图1所示。

图1 障碍物轮廓提取流程图

根据所拍摄图像的特征,障碍物的颜色特征比周围场景都趋向于黑色,实际障碍图如图2。

图2 暗环境线激光采集障碍物图

将原始图像预处理后分析了障碍物上的灰度信息与其他灰度信息的差异,然而根据经验值无法将障碍物轮廓分离出来,因此需要寻找精确的阈值来判断。通过统计灰度直方图[16]得出每一个灰度值的概率。为提高轮廓检测的效率,对二值化图像形态学处理[17](开操作)。然后将面积和周长作为筛选条件,最后得到障碍物在图像中的位置和大小信息。

2.1 灰度直方图局部极大值

直方图统计是图像分割算法中的一个非常重要的步骤。图像的灰度值是离散变量,因此直方图表示的是离散的概率分布。为了计算某一集中区域的灰度值概率分部,需要将直方图每一个灰度的概率统计,并根据直方图特征计算该障碍物明显特征范围,获取极大极小值方法如式(1)。

方程中s(i)代表局部极大值,根据i位置前后的大小比较代替拟合求导。同理h(i)代表局部最小值,将统计数据归一化处理提高处理效率。T的标准是为了去除部分灰度概率过低的部分。T的选取标准为

式中T的选取影响对障碍物区域的准确判断。以最小值为标准,对比局部极大和极小和的平均值,可以避免对T的错误选取,致使无法识别障碍物。对两种不同大小的障碍物的灰度直方图的提取如图3所示。

图3 灰度直方图极值提取

图3可以看出针对两幅不同的图像统计出来的直方图,局部最大值位置依次往左观察,发现经过一个峰谷便是一个峰顶,根据这个差值作为标准进行下一步工作的筛选,得到二值图。

2.2 二值化及轮廓检测

确定了直方图的各个极值后,根据s(i)-s(i-1)的结果,将小于s(i)大于s(i)-s(i-1)区域的灰度值全部置为255,其余全部置0,然后形态学处理,形态学开运算再闭运算,最后轮廓检测。形态学处理二值化如图4,轮廓检测筛选结果如图5。

图4 形态学开闭操作二值化

图5 障碍物截取结果

可以发现二值化后的图形障碍物的形状基本出现,由于激光条纹的作用无法将激光位置的空余填补,两幅图均有空洞。有如下两种方法处理这种情况:1)二次形态学操作;2)轮廓条件筛选。结果选择第二种方法,因二次形态学处理并无明显变化。

3 样本图片条纹间距采集算法

最小二乘法的原则是以“残差平方和最小”确定直线位置。用最小二乘法除了计算比较方便外,得到的估计量还具有优良特性。算法法流程如图6。

图6 线激光条纹间距计算流程

线条纹激光拟合直线最小二乘的约束函数为

式(3)中K即检测出来的直线,其斜率绝对值不超过0.02即认为是水平直线。然后将直线根据最小二乘公式得出直线方程yi=axi+b。将每个样本图像的线激光条纹像素间距计算出来后,与相对应的实际距离构成若干组观察值,进行第二次数据拟合。最后拍摄任意一张线激光图像,根据拟合结果计算障碍物的距离,同时可以计算除去障碍物后的背景距离,两者之差为物体高度。

4 实验结果与分析

上述两节已经描述了整个实验的算法流程,通过图像的采集和数据样本计算,与现实的结果对比分析,可以很好地描述障碍物信息。实验设备是等距排列的五个激光发射器,图像处理数据库为OpenCV。

4.1 实验数据采集

步骤一:70cm开始,投射线激光至样本平面,确保线激光水平,逐渐减小距离,每隔2cm拍摄一张,相机与激光设备尽量水平。

步骤二:计算每张图片线激光像素间距,同时记录对应的距离。共15张图像,15组数据。

以40cm和42cm获取的样本图片为例,结果如图7。

图7 线激光拟合结果

两张图片仅凭肉眼发现不出差异,但是根据拟合的结果可以看出,每条直线都满足约束函数,接近于水平,当在40cm获取的图片时,图像中线激光拟合的五条直线方程结果如图7所示。

以下是40cm采样图中相邻两直线的像素间距L1=231,L2=234,L3=215,L4=219。其间距误差最大为15个像素点,这个误差值不到0.3%,可忽略不计。部分数据如表1。

表1 数据采集部分结果

实验中用全部数据做最小二乘多项式拟合,拟合结果如图8。

图8 二次多项式拟合

通过计算,均方根误差RMSE为0.6291,证明二次拟合离散程度很小,损失函数也达到最小。根据得到的方程就可以用于测量。结果为y=0.00142x2-1.077x+238.2。

4.2 距离测量与分析

在实际测量过程中,只需最小二乘拟合线激光,然后与完成的样本间距匹配,最后利用拟合方程计算,两者结果对比分析。实验结果如表2。

通过对比发现,利用最小二乘的方法更为准确,因为拍摄图本身存在误差。而且障碍物越大,直线检测效果越好,误差越小。

表2 实验结果与误差

5 结语

为寻找障碍物表面的激光,通过分析灰度直方图分离障碍物的算法,计算样本与实际的偏差,将两者进行最小二乘拟合处理,然后实验精确地拟合了线激光条纹,利用数学方法补偿了硬件设备带来的误差。其中直方图的分析与统计是算法中的基础,在纹理变化不明显的图像中且检测规则的障碍物较为实用。

猜你喜欢
形态学直方图障碍物
临床检验中血细胞形态学观察与分析
音乐科学研究中的思想实验——以音乐形态学研究中的四个重大发现为例
高低翻越
赶飞机
月亮为什么会有圆缺
用直方图控制画面影调
例析频率分布直方图
中考频数分布直方图题型展示
一种改进的分水岭图像分割算法研究