【火灾检测】基于HSV特征实现火灾检测附matlab代码

1 简介

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

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

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第1张图片

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第2张图片

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第3张图片

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第4张图片

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第5张图片

​2 部分代码

close all;clc;clear;filename = 'test.avi';vidObj = VideoReader(filename);figure(1);while hasFrame(vidObj)%     original = imread('test3.jpg');    original = readFrame(vidObj);% original = imread('test.jpg');    original_hsv = rgb2hsv(original);    subplot(2,3,1);    imshow(original);    subplot(2,3,2);    imshow(original_hsv);    filter_hsv = (original_hsv(:,:,1))>0.16;    filter_hsv = filter_hsv.*(original_hsv(:,:,2))>0.5;    filter_hsv = filter_hsv.*(original_hsv(:,:,2))<0.6;    filter_hsv = filter_hsv.*(original_hsv(:,:,3))>0.95;    filter_hsv3(:,:,1) = filter_hsv;    filter_hsv3(:,:,2) = filter_hsv;    filter_hsv3(:,:,3) = filter_hsv;    hsv = double(original).*filter_hsv3;    hsv = uint8(hsv);    ratio = 245/180;    bias = 0.28;    hsv_gray = rgb2gray(hsv);    hsv_binary = im2bw(hsv_gray);    hsv_dilate = hsv_binary;        hsv = uint8(hsv);        subplot(2,3,6);        imshow(hsv);    endend

3 仿真结果

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第6张图片

4 参考文献

[1]窦永梅, 孙慧霞, 周玲,等. 基于MATLAB的火灾监测系统设计[J]. 电子元器件与信息技术, 2021.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

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

【火灾检测】基于HSV特征实现火灾检测附matlab代码_第7张图片

你可能感兴趣的:(图像处理,matlab,图像处理,计算机视觉)