【图像检测】基于MATLAB的火灾监测系统设计

416 阅读3分钟

1 简介

针对传统火灾监测系统对于大空间的室内场合和开阔的室外环境易失效的问题,提出了一种结合火灾火焰特征和烟雾特征来进行判断的数字图像型火灾监测算法.火焰颜色特征是基于RGB颜色模型中的R,G,B三基色分量和它们之间的关系来判断是否有火焰发生,烟雾模型特征是图像灰度化预处理后,基于HIS空间模型提取的,通过计算像素点与基准像素点之间距离D的大小来判断是否有火灾发生.对提出的算法进行MATLAB仿真,并和传统的基于五种算子的边缘检测算法提取火焰烟雾特征进行对比.实验结果表明,提出的火焰特征和烟雾特征提取算法具有优越性,时效性更好,能够实现快速高效的监测,解决了大空间场所火灾检测的难题.

火灾监测报警技术是预防火灾的重要手段。近年来,火灾发生的频率高、覆盖范围广,给人民群众的生命财产和社会经济造成了巨大损失,已成为一种普遍且损害巨大的自然灾害。一旦引起火灾,火势将迅速蔓延,烟雾浓毒性大,易造成人员伤亡,并且扑救火灾难度大,人员疏散困难。因此,如何实现对火灾的实时有效监测已成为重点研究的课题。根据所探测物理量的不同,传统火灾探测器有感烟式、感温式、感光式、和复合式等类型[1],但是这些火灾探测器对于大空间的室内场合和开阔的室外环境的火灾报警,探测结果受到很大影响,尤其在可靠性方面存在明显不足。本文研究了基于MATLAB的火灾监测方法,与传统的火灾监测技术相比,突破了空间的限制,能迅速获得较准确的火灾监测结果.

2 部分代码

function imgs_array = read_images()
 %9.4.1
% 函数功能:读取文件夹里的所有图像
% 输入参数:不需要输入参数
% 输出参数:imgs_array   结构体,包含所读图像
[~,pathname] = uigetfile({'*.jpg;*.bmp;*.tif;*.png;*.gif','All Image Files';'*.*','All Files'});
%定位到当前路径下
cd(pathname);
files = dir('*.jpg') 

%获取当前jpg类型图片的个数
K = size(files,1);
imgs_array = [];

for i=1:K
   %依次读取当前文件夹下所有的图像
   temp = imread(files(i).name);
   %imgs_array(i).img就是一个结构体
   imgs_array(i).img = temp;
end

% 结构体:
% S.name = 'Ed Plum';
% S.score = 83;
% S.grade = 'B+';
% S(2).name = 'Toni Miller';
% S(2).score = 91;
% S(2).grade = 'A-';

3 仿真结果

4 参考文献

[1]窦永梅等. "基于MATLAB的火灾监测系统设计." 电子元器件与信息技术 (2021).

部分理论引用网络文献,若有侵权联系博主删除。

5 MATLAB代码与数据下载地址

见博客主页