一种室内火焰自主巡检及灭火方法与流程

文档序号:29913954发布日期:2022-05-06 03:00阅读:221来源:国知局
一种室内火焰自主巡检及灭火方法与流程

1.本发明属于室内火焰检测技术领域,具体涉及一种室内火焰自主巡检及灭火方法。


背景技术:

2.建筑物火灾在每年的火灾事故中占了很大的比例,特别是对于文保单位而言,其内存储的物品可能包含有价值极高的文物等,因此发生建筑火灾所造成的损失往往会更大,通过对室内火焰进行巡检来及时发现建筑物火灾是目前减小损失的最为有效的手段。
3.现有的火焰巡检方式包括室内自动导航和基于图像的火焰检测两部分。现有的自动导航技术有即时定位与地图构建(simultaneous localization and mapping),指的是机器人在自身位置不确定的条件下,在完全未知环境中创建地图,同时利用地图进行自主定位和导航。slam问题可以描述为:机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和传感器数据进行自身定位,同时建造增量式地图。在slam中,机器人利用自身携带的传感器识别未知环境中的特征标志,然后根据机器人与特征标志之间的相对位置和里程计的读数估计机器人和特征标志的全局坐标。这种在线的定位与地图创建需要保持机器人与特征标志之间的详细信息。近几年来,slam的研究取得了很大的进展,并已应用于各种不同的环境,如:室内环境、水下、室外环境。
4.目前的基于图像的火焰检测方法主要有三类。一类是传统的方式,包括基于颜色空间、基于纹理特征(使用统计学特点探究像素点之间关系)、基于火焰的几何特征(火焰面积等)、基于火焰轮廓、帧差法、背景/前景法、光流法。第二类是机器学习的方式,先通过传统的方式去提取火焰特征,然后通过这些特征去构建特征向量(比如光流法提取火焰特征向量),再代入特征向量到分类器中训练。同时,也有研究人员构建级联分类器,多个分类器之间采用投票的机制,预测类别多数获胜。第三类是基于卷积神经网络的火焰检测方式,相对于传统方式而言,对火焰有着更高的精确率与召回率,可以大大的降低系统的误报率。
5.但是目前的火焰检测方法对火焰位置的判断局限于二维信息,并没有结合深度信息,导致利用现有的火焰检测方法无法获取到立体的火焰位置信息,以致于无法进行精确灭火。


技术实现要素:

6.本发明的目的是为解决现有火焰检测方法中没有结合深度信息,导致利用现有火焰检测方法无法获取到立体的火焰位置信息的问题,而提出的一种室内火焰自主巡检及灭火方法。
7.本发明为解决上述技术问题所采取的技术方案是:一种室内火焰自主巡检及灭火方法,所述方法具体包括以下步骤:
8.步骤一、将消防机器人启动后,上位机根据从下位机获取的数据得到消防机器人当前的实际位置信息;
9.若消防机器人当前实际位置与消防机器人在地图上位置的偏差大于设定的阈值,则初始化消防机器人在地图上的位置后,执行步骤二;否则,消防机器人当前实际位置与消防机器人在地图上位置的偏差小于等于设定的阈值,则直接执行步骤二;
10.步骤二、判断是否启动单点导航,若启动单点导航,则执行步骤三;若不启动单点导航,则启动多点巡航,直至启动单点导航时执行步骤三;
11.步骤三、通过单点导航进行路径规划,消防机器人根据规划的路径运动到目的地,并利用摄像机采集目的地区域的图像;
12.步骤四、采用yolov5深度神经网络模型对采集的图像进行火焰识别,若在连续的n秒内未识别到火焰,则执行步骤五,否则识别到图像中存在火焰,则启动灭火程序,待灭火完成后,再执行步骤五;
13.步骤五、消防机器人进行一次原地旋转并检测是否存在其它火焰,若存在其它火焰,则继续启动灭火程序,直至原地旋转的角度达到360
°
时停止旋转,并判断消防机器人是否启动返航;
14.若启动返航,则消防机器人返回原点;若不启动返航,则启动多点巡航,直至再次启动单点导航时执行步骤六;
15.步骤六、重复步骤三至步骤五的过程,直至消防机器人启动返航。
16.进一步地,所述步骤三中,摄像机采集的图像包括彩色图像和深度图像。
17.进一步地,所述yolov5深度神经网络模型包括特征提取子网络、特征融合子网络和检测子网络三个部分。
18.进一步地,所述yolov5深度神经网络模型的检测过程为:
19.将摄像机采集的彩色图像经过特征提取子网络后,再将特征提取结果输入特征融合子网络,并将特征融合结果输入检测子网络,得到检测子网络的输出结果;
20.若检测子网络的输出结果为图像中不存在火焰,则不需要对输出结果进行处理;否则,若图像中存在火焰,则对检测子网络的输出结果进行后处理,输出置信度得分最高的预测框的坐标。
21.进一步地,所述灭火程序的具体过程为:
22.步骤1、利用得到的预测框坐标对摄像机采集的深度图像进行采样,获得采样到的所有像素;
23.之后,对获得的像素进行去噪,获得去噪后的像素,对去噪后的像素的灰度取平均值,将得到的平均值作为火焰的深度;
24.步骤2、根据火焰的深度、得到的预测框坐标以及相机的内参矩阵进行三维重建,得到以相机为原点的相机空间中的火焰位置,相机空间的z轴为摄像机的正对方向,x轴方向由正上向量(0,1,0)与z轴叉乘获得,y轴方向由z轴与x轴叉乘获得;
25.步骤3、将相机空间中的火焰位置转移到灭火器喷头空间,灭火器喷头空间原点为灭火器喷头的喷口位置,灭火器喷头空间的z'轴为喷头的正对方向,x'轴方向由正上向量(0,1,0)与z'轴叉乘获得,y'轴方向由z'轴与x'轴叉乘获得,得到灭火器喷头空间中的火焰位置后,根据灭火器喷头空间中的火焰位置得到灭火器喷头的角度。
26.进一步地,所述后处理的方式为非极大值抑制。
27.进一步地,所述步骤2的具体过程为:
28.步骤21、根据火焰的深度信息以及得到的预测框坐标,获得火焰的像素坐标以及深度联立形成的三维信息;
29.步骤22、将火焰像素坐标以及深度联立形成的三维信息乘以内参矩阵的逆矩阵,得到火焰在以相机为原点的相机空间中的坐标。
30.进一步地,所述内参矩阵由张氏相机标定法获得。
31.进一步地,所述内参矩阵为:
[0032][0033]
其中,k为内参矩阵,f
x
和fy为焦距,x0和y0为主点偏移,s为切变参数。
[0034]
更进一步地,所述根据灭火器喷头空间中的火焰位置得到灭火器喷头的角度,其具体为:
[0035][0036][0037]
其中,表示灭火器喷头在上下方向的旋转度数,表示灭火器喷头在左右方向的旋转度数,x0′
、y0′
和z0′
为灭火器喷头空间中火焰位置的坐标,m和n代表灭火器云台偏角校正值。
[0038]
本发明的有益效果是:
[0039]
本发明结合了自动导航和火焰检测方法,而且在火焰检测时结合了深度信息,从而可以获取立体的火焰位置信息,以便机器人精确灭火。同时,本发明应用深度神经网络算法能够较大地提升火焰目标识别的准确率和速度,相比传统方法具有较强的准确性与实时性。此外,实现视觉信息对灭火过程的闭环控制,具有较高的智能性。
附图说明
[0040]
图1为本发明的一种室内火焰自主巡检及灭火方法的流程图;
[0041]
图2为火焰识别流程图。
具体实施方式
[0042]
具体实施方式一、结合图1和图2说明本实施方式。本实施方式所述的一种室内火焰自主巡检及灭火方法,所述方法具体包括以下步骤:
[0043]
步骤一、将消防机器人启动后,上位机根据从下位机获取的数据得到消防机器人当前的实际位置信息;
[0044]
若消防机器人当前实际位置与消防机器人在地图上位置的偏差大于设定的阈值,则初始化消防机器人在地图上的位置(据机器人的实际位置更新在地图上的位置)后,执行步骤二;否则,消防机器人当前实际位置与消防机器人在地图上位置的偏差小于等于设定
的阈值,则直接执行步骤二;
[0045]
步骤二、判断是否启动单点导航,若启动单点导航(单点导航可以使消防机器人前往指定的位置),则执行步骤三;若不启动单点导航,则启动多点巡航(多点巡航可以使消防机器人在大于等于2个位置之间进行巡逻),直至启动单点导航时执行步骤三;
[0046]
步骤三、通过单点导航进行路径规划,消防机器人根据规划的路径运动到目的地,并利用摄像机采集目的地区域的图像;
[0047]
通过上位机向下位机发送数据以实现系统控制机器人的移动;
[0048]
步骤四、采用yolov5深度神经网络模型对采集的图像进行火焰识别,若在连续的n秒内未识别到火焰,则执行步骤五,否则识别到图像中存在火焰,则启动灭火程序,待灭火完成后,再执行步骤五;
[0049]
本步骤中,n的取值为3,若对连续的n秒内所采集到的图像进行识别时,均未识别到火焰,则直接执行步骤五;
[0050]
步骤五、消防机器人进行一次原地旋转并检测是否存在其它火焰,若存在其它火焰,则继续启动灭火程序,直至原地旋转的角度达到360
°
时停止旋转,并判断消防机器人是否启动返航;
[0051]
若启动返航,则消防机器人返回原点;若不启动返航,则启动多点巡航,直至再次启动单点导航时执行步骤六;
[0052]
所述消防机器人进行原地旋转,检测是否存在其它火焰的具体方法为:
[0053]
机器人原地旋转一定的角度(每次可以旋转90度)后,利用火焰识别检测是否存在其它火焰,若存在其它火焰,则启动灭火程序灭火,否则继续原地旋转(旋转90
°
),直至累计旋转360度之后停止旋转;
[0054]
步骤六、重复步骤三至步骤五的过程,直至消防机器人启动返航。
[0055]
消防机器人使用了ros对整个系统进行管理,ros是一种非常灵活的软件架构,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。为的是简化跨机器人平台创建复杂、鲁棒的机器人行为过程中的复杂度。启动rviz三维可视化平台,可以实施监控机器人的位置信息,进入rviz后,会加载默认的rviz配置文件,该文件中包含了map、robotmodel、scan等组件,通过这些组件让用户看见机器人在地图中的位置。除此之外还包含了机器人位置初始化、单点导航、多点导航等rviz自带功能。
[0056]
本发明利用相对模糊的定点导航技术,实现避障能力较强的固定路线巡航功能;结合摄像头以及物体识别算法,实现基于视觉的导航功能,用于火焰寻找任务;结合多传感器的定位算法,实现更稳定的导航和避障,应用yolov5深度神经网络模型,通过视觉信息进行火焰目标检测。
[0057]
具体实施方式二:本实施方式与具体实施方式一不同的是,所述步骤三中,摄像机采集的图像包括彩色图像和深度图像。
[0058]
其它步骤及参数与具体实施方式一相同。
[0059]
具体实施方式三:本实施方式与具体实施方式一或二不同的是,所述yolov5深度神经网络模型包括特征提取子网络、特征融合子网络和检测子网络三个部分。
[0060]
其它步骤及参数与具体实施方式一或二相同。
[0061]
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是,所述yolov5深度神经网络模型的检测过程为:
[0062]
将摄像机采集的彩色图像经过特征提取子网络后,再将特征提取结果输入特征融合子网络,并将特征融合结果输入检测子网络,得到检测子网络的输出结果;
[0063]
若检测子网络的输出结果为图像中不存在火焰,则不需要对输出结果进行处理;否则,若图像中存在火焰,则对检测子网络的输出结果进行后处理,输出置信度得分最高的预测框的坐标。
[0064]
火焰识别程序使用了yolov5进行目标识别,它由主干网络、颈部以及输出三部分构成。主干网络为特征提取网络,实时传入彩色相机的图像;颈部为特征融合网络,采取了自顶向下与自底向上的特征融合方式,之后传入检测层,经过后处理操作消除了大量冗余的预测框,最后输出置信度得分最高的区域,返回火焰的边框坐标。
[0065]
其它步骤及参数与具体实施方式一至三之一相同。
[0066]
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是,所述灭火程序的具体过程为:
[0067]
步骤1、利用得到的预测框坐标对摄像机采集的深度图像进行采样,获得采样到的所有像素;
[0068]
(0.25*x2+0.75*x1)<w<(0.25*x1+0.75*x2)
[0069]
(y1+y2)/2<h<y2
[0070]
其中,(x1,x2)为预测框像素坐标的横坐标范围,(y1,y2)为预测框像素坐标的纵坐标范围。w代表采样区域的横坐标范围,h代表采样区域的纵坐标范围。
[0071]
之后,对获得的像素进行去噪,获得去噪后的像素,对去噪后的像素的灰度取平均值,将得到的平均值作为火焰的深度;
[0072]
步骤2、根据火焰的深度、得到的预测框坐标(火焰uv坐标)以及相机的内参矩阵进行三维重建,得到以相机为原点的相机空间中的火焰位置,相机空间的z轴为摄像机的正对方向,x轴方向由正上向量(0,1,0)与z轴叉乘获得,y轴方向由z轴与x轴叉乘获得;
[0073]
步骤3、将相机空间中的火焰位置转移到灭火器喷头空间,灭火器喷头空间原点为灭火器喷头的喷口位置,灭火器喷头空间的z'轴为喷头的正对方向,x'轴方向由正上向量(0,1,0)与z'轴叉乘获得,y'轴方向由z'轴与x'轴叉乘获得,得到灭火器喷头空间中的火焰位置后,根据灭火器喷头空间中的火焰位置得到灭火器喷头的角度。
[0074]
其它步骤及参数与具体实施方式一至四之一相同。
[0075]
具体实施方式六:本实施方式与具体实施方式一至五之一不同的是,所述后处理的方式为非极大值抑制。
[0076]
其它步骤及参数与具体实施方式一至五之一相同。
[0077]
具体实施方式七:本实施方式与具体实施方式一至六之一不同的是,所述步骤2的具体过程为:
[0078]
步骤21、根据火焰的深度信息以及得到的预测框坐标,获得火焰的像素坐标以及深度联立形成的三维信息;
[0079]
步骤22、将火焰像素坐标以及深度联立形成的三维信息乘以内参矩阵的逆矩阵,得到火焰在以相机为原点的相机空间中的坐标。
[0080]
其它步骤及参数与具体实施方式一至六之一相同。
[0081]
具体实施方式八:本实施方式与具体实施方式一至七之一不同的是,所述内参矩阵由张氏相机标定法获得。
[0082]
其它步骤及参数与具体实施方式一至七之一相同。
[0083]
具体实施方式九:本实施方式与具体实施方式一至八之一不同的是,所述内参矩阵为:
[0084][0085]
其中,k为内参矩阵,f
x
和fy为焦距,x0和y0为主点偏移,s为切变参数。
[0086]
其它步骤及参数与具体实施方式一至八之一相同。
[0087]
具体实施方式十:本实施方式与具体实施方式一至九之一不同的是,所述根据灭火器喷头空间中的火焰位置得到灭火器喷头的角度,其具体为:
[0088][0089][0090]
其中,表示灭火器喷头在上下方向的旋转度数,表示灭火器喷头在左右方向的旋转度数,x0′
、y0′
和z0′
为灭火器喷头空间中火焰位置的坐标,m和n代表灭火器云台偏角校正值。
[0091]
其它步骤及参数与具体实施方式一至九之一相同。
[0092]
下面结合实施例对本发明做进一步说明。
[0093]
应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本发明使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
[0094]
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0095]
1、灭火模块
[0096]
1)利用单点导航使消防机器人前往目的地的过程中,消防机器人启动相机模块、云台模块、通讯模块。
[0097]
2)若消防机器人到达目的地附近后会等待一段时间,消防机器人启动火焰识别模块。
[0098]
3)若检查到火焰,则将火焰的uv坐标(预测框坐标)发送给通讯模块,通讯模块接收到数据后会将数据发送给云台模块。
[0099]
4)云台模块获得数据后会调整灭火器喷管位置,将喷管对准火焰。
[0100]
5)启动灭火器进行灭火。
[0101]
6)灭火完成后,消防机器人会原地旋转,检查周围是否存在其它火焰,若存在其它火焰,则重复3)—5)的过程,否则返航。
[0102]
2、火焰识别
[0103]
火焰识别部分需要在ubuntu系统中运行,需要结合消防机器人系统进行整体实施。可以在实施环境中设置一处火源,由导航系统将消防机器人导航至火源附近,消防机器人将会自动启动火焰识别程序。如果火焰识别检测到火焰,就会给灭火器推杆以及云台发布旋转角度以及灭火命令,灭火器喷头将会指向火焰并执行灭火。如果没有检测到火焰,机器人将会自行调整位置,直到发现火源。
[0104]
本发明的上述算例仅为详细地说明本发明的计算模型和计算流程,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1