基于颜色的盲道分割算法

基于颜色的分割算法

基于HSV颜色空间的阈值分割是一种通过设定色调(Hue)、饱和度(Saturation)和明度(Value)三个通道的数值范围来提取特定颜色区域的方法。HSV模型将颜色信息解耦为直观的色相、色彩浓度和亮度,相较于RGB空间更贴近人类视觉感知。通过针对目标颜色设定H通道的阈值,并结合S和V通道限制颜色鲜艳度与明暗范围,可有效分离复杂背景中的目标物体。该方法在光照变化场景下鲁棒性较强,广泛应用于图像处理、目标分割及工业检测等领域。

传统的颜色分割算法因为使用单组阈值而导致在盲道分割任务中对于未知的盲道识别效率较差,本文使用了四组阈值组合(灰黄,黄,深黄,灰),且后续根据当前盲道自适应调节盲道阈值的方法解决这个弊端。

流程如下:

盲道定位
为了确保盲人在盲道行走过程中的安全性,本文设计了盲道定位。

本设备使用三点定位的方法对盲道进行定位,即在每一帧画面底部在中间以及中间等距的左右两个点来代表视力障碍人当前位置与左边位置与右边位置。使用这三个坐标点与盲道边缘线的坐标对盲道进行定位。定位结果共分为以下几种情况:

(1)当左边点碰到盲道边缘线时,说明盲人当前位置处于盲道右侧同时标记左点取消标记右点,当前需要往左边平移语音播报“go left”。

(2)当右边点碰到盲道边缘线时,说明盲人当前位置处于盲道右侧同时标记右点取消标记左点,当前需要往右边平移语音播报“go right”。

(3)当前边点碰到盲道边缘线且左点已标记时,说明盲人当前位置处于盲道拐弯处同时取消左点标记,当前需要左转语音播报“turn left”。

(4)当前边点碰到盲道边缘线且右点已标记时,说明盲人当前位置处于盲道拐弯处同时取消右点标记,当前需要右转语音播报“turn right”。

但是左右两点与前点存在相关关系,为了安全保障应当保障视力障碍人群在前进的过程中无论偏移任意角度且前进时左右两点中任意一点先比前点触碰到盲道边缘线。即如下图所示。

图中点A为前点,B为右点(左点同理),点A1、点B1分别为点A、点B旋转任意角度θ后位置,点A2为延长OA1与盲道边缘线的交点,点B2为点B1在圆上切线与盲道边缘线的交点。盲道半径为R(已知),AO为H,OB为X,倾斜角为θ(任意值)。

由于前点A是作为盲道拐弯的触发器所以我们需要当盲人发生任意角度θ的偏移后或直行后,点B1需要比A1先触碰到盲道边界。首先可以易知:H<R

根据几何知识可以即可列出A1A2与B1B2的公式

所以综上可得X与H应该满足公式 的条件。本算法选择H=0.9R、X=1.35R。满足上公式。

 具体功能的实现

(1)盲道宽度获取的实现

这研究主要是图像中盲道的边缘识别与宽度计算,用于后续盲道定位时的参数做保证,该研究是整个系统中盲道定位的核心部分。系统在完成盲道分割后,提取分割图中所有盲道边缘的轮廓点,并聚焦于图像底部区域(即距离摄像头较近的部分因为盲道定位是为了保证视力障碍人群下一步不走出盲道边缘线),从所有盲道边缘中筛选出在同一水平线上恰好存在两个边缘点的坐标对,视为盲道的两侧边缘。通过这些点对之间的像素距离,计算盲道的宽度,并采用宽度稳定策略避免测量波动过大,从而提高系统在实际场景中的鲁棒性与可靠性。最终得到的盲道宽度不仅可用于辅助路径判断、语音提示,还为后续导航决策提供了精准的空间参考信息。盲道宽度获取且输出如图 所示。

盲道定位的实现

本研究实现了一个基于图像处理和语音提示的智能导航引导模块,其主要功能是通过检测盲道在图像中的位置,结合预设的检测点,判断用户应向左、右或直行,并通过语音提示进行导航。

程序首先在图像下方指定了四个关键点(中间、左侧、右侧和前方),并在图像中用红色圆点进行标记。随后,它生成了这些点周围一小块区域的坐标集合,用于判断这些区域是否与检测到的盲道边缘(blind_line)相交。

如果检测到左侧区域与盲道相交,系统会提示“go left”;如果右侧区域相交,则提示“go right”。若随后检测到前方也有盲道,则结合之前的检测记录,判断用户应“turn left”或“turn right”。所有提示均通过语音合成模块 pyttsx3 实时播报,增强用户交互体验。

系统测试

如图所示,选择目标视频或选择摄像头进行检测,系统成功检测出了盲道的左右边缘线。图中黄色盲道砖清晰地在图像中呈现,经过算法处理后,盲道的边缘线被准确提取并用白色虚线标记出来,展示出较强的边缘定位能力。即使在光照不均或盲道出现轻微破损的情况下,检测算法仍然保持较高的稳定性和准确性,说明本系统具有较强的环境适应性。此外,图像中央对称的红点标记用于辅助判断路径中心,有助于后续路径规划与引导模块的实现。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值