李文辉, 肖林厂, 王 莹, 傅 博, 刘培勋
(吉林大学 计算机科学与技术学院, 长春 130012)
火灾严重威胁人类的生命和财产安全, 因此及时检测和预防火灾具有重要意义[1]. 目前, 较成熟的火灾探测方法有感烟、 感温、 感光等探测技术. 这些基于传感器的探测技术要求探测器必须安装在起火点附近, 且检测依据单一, 易受监控环境的面积、 湿度和气流等因素影响. 因此, 传统火灾探测器的应用范围受到较大限制.
为了克服传统火灾探测器的缺点, 人们开始致力于基于视频图像的火灾探测研究[2-5]. 通过分析火焰的颜色、 运动信息及状态等, 进行综合判断以确定是否有火灾发生. 在火灾监控中, 烟雾检测对于实现早期火灾预警具有重要意义. 相比于火焰, 烟雾的颜色、 梯度等信息表现更不明显, 因此, 良好的特征是实现烟雾检测的关键. 文献[6]通过减背景法及颜色信息确定潜在烟雾区域, 并采用Lucas Kanade光流法对潜在区域提取运动信息; 文献[7]利用2层小波变换的LH,HL,HH高频子带研究对背景高频信息产生的衰减, 并使用一维小波分解分析烟雾边界像素的闪烁变化, 同时检验YUV颜色空间中U和V通道值的变化; 文献[8]将烟雾运动汇集成一条分形曲线, 并提出一种森林火灾初期的自动探测方法; 文献[9]通过建立烟雾颜色模型并结合动态扩散特征给出了早期火灾预警; 文献[10]提出一种隧道烟火检测算法, 该算法先对连续若干帧建立运动历史图像, 再依据各运动区域的不变矩变化情况判断是否有烟雾发生; 文献[11]提出一种采用小波变换算法进行分析且支持向量机的烟雾检测方法.
上述方法通常是以像素点为单位, 对整个运动区域进行烟雾特征检测, 而当烟雾与其他运动物体并存时, 检测效果并不理想. 为克服上述缺点, 本文在分析烟雾特征的基础上, 提出一种基于运动块及连通域的烟雾检测算法. 该算法通过分析各个由运动块组成的连通域的运动方向及能量变化情况等, 可有效排除烟雾视频中的非烟雾运动物体, 且能够快速、 准确地检测到烟雾的出现.
1 疑似烟雾区域的提取
1.1 运动块提取
良好的运动检测能有效缩小检测范围, 提高检测效率. 运动区域提取算法目前主要有背景减除法[12]、 光流法[13]和帧差法[14]. 背景减除法常用于固定摄像机监控视频运动目标的检测系统中, 但当场景不稳定时, 背景更新速度通常滞后于场景的变化; 光流法对噪声较敏感, 且对硬件要求很高, 实时性和实用性较差; 帧差法适用于提取运动明显的物体运动区域, 提取前景轮廓清晰. 火灾发生初期, 由于受热气的影响, 烟雾不停地向外飘散, 运动方向和速度变化较大, 运动性明显, 使用帧差法较合适. 帧差法的基本思想是计算相邻帧间对应像素点灰度值之差的绝对值, 即
(1)
其中:Td表示设定阈值;Fn(x,y)表示输入的第n帧图像;Dn(x,y)表示运动提取结果, 运动的像素点标记为1.
设Video1~Vidoe12为本文测试视频. 图1(A)为Video6的第375帧采用以像素点为单位的帧差法提取的运动区域. 由图1(A)可见, 运动区域中存在较多噪声点, 且分割出的运动目标不完整. 为了改善运动提取效果, 本文以块为单位进行帧差. 基于块的帧差法: 先将图像分割成每个大小为N×N的块bij(N的取值通常由视频分辨率决定,i和j分别为行和列的编号), 再根据块之间差值的绝对值确定运动区域, 即
(2)
其中:Tb表示设定阈值, 与块的大小有关;Bn(i,j)表示块运动提取结果, 运动的块标记为1.
图1 运动块提取结果Fig.1 Results of moving blocks extraction
取N=8,Tb=200. 图1(B)为采用块帧差法提取的运动块. 由图1(B)可见, 其中仍存在一定的噪声块, 部分由噪声块构成的连通域面积较小. 通过分析烟雾的颜色信息知, 烟雾区域内像素点R,G,B三者平均值E(x,y)满足100≤E(x,y)≤230. 为进一步减少噪声, 先计算每个运动块内的E(x,y), 并统计每个运动块内E(x,y)满足阈值的像素点个数Nl, 对运动块提取结果做如下更新:
(3)
然后采用八连通方式对保留的运动块提取连通域, 设R1,R2,…,Rn表示提取到的连通域, 若Ri(1≤i≤n)内运动块个数小于10, 则将Ri作为噪声处理. 图1(C)为经过上述处理后保留的由运动块组成的连通域. 由图1(C)可见, 噪声被有效地抑制.
1.2 基于连通域的运动估计
由于图1(C)中仍存在部分由非烟雾运动构成的连通域, 因此为进一步减少非烟雾区域的干扰, 本文通过计算各连通域Ri的主运动方向和运动偏差确定是否保留Ri, 最后保留的所有连通域构成疑似烟雾区域.
烟雾在热量驱动下, 通常是从下向上运动. 因此, 文献[15]通过建立主运动方向累计模型进行烟雾检测. 但在风的影响下, 烟雾有时会左右飘动, 所以不应只考虑向上运动的烟雾. 本文在考虑多级主运动方向的基础上, 结合运动偏差对每个连通域进行运动估计.
1.2.1 主运动方向估计 图2为离散运动方向, 每块周围的8个方向分别编码为1~8. 先对连通域中各运动块进行运动方向估计.
图2 离散运动方向Fig.2 Discrete direction of motion
估计方法: 对Ri中各运动块分别计算其与周围8个离散方向块的绝对灰度差:
Sn(i,j,θ)=In(x,y)-In-l(x+i×N,y+j×N),
(4)
其中:i和j分别表示水平和垂直单位偏移量, 根据方向位置的不同而变化, 如在45°方向,i,j分别为1,1;θ为与(i,j)相对应的方向编码;I(x,y)表示块累计灰度值, 绝对灰度差越小, 表明两块运动关联越大. 如果θ(x,y)为绝对灰度差最小块所对应的方向编码, 则将θ(x,y)作为块的运动方向估计值. 通过分析易知, 块的运动方向与θ(x,y)相反, 因此对θ(x,y)进行如下修正, 其中mod为取余数运算:
(5)
连通域内出现次数最多的运动方向为其主运动方向. 由于烟雾的运动特性, 其主运动方向编码通常为1~5. 对Ri内各方向的出现次数进行统计后, 记θR为其主运动方向.
1.2.2 运动偏差 定义运动偏差为当前块与周围8个方向块绝对灰度差的最小值, 运动偏差d(x,y)的大小决定了块的运动方向估计值及两个块的接近程度.
图3为烟雾与行人连通域内各运动块的运动偏差对比曲线. 由图3可见, 烟雾的运动偏差整体较低, 通常小于100; 而行人运动块中, 运动偏差值整体偏大. 某块d(x,y)过大, 说明该块运动方向不明显或为非烟雾运动块, 则将该块标记为运动异常块. 由于烟雾的平滑特性, 各块累计灰度值较接近, 烟雾连通域内运动异常块个数所占比例小. 若Ri内运动异常块个数较多, 则将该连通域作为噪声处理. 因此, 可以通过检测连通域Ri的运动偏差平均值及运动异常块所占比例的大小, 确定其是否为疑似烟雾区域. 通过下式计算Ri的运动异常块所占比例值λR和平均运动偏差值DR:
(6)
其中Ml和M分别表示Ri中运动异常块和运动块个数. 若1≤θR≤5且λR和DR满足阈值, 则保留Ri.
图3 运动偏差对比曲线Fig.3 Curves of motion deviation comparison
2 基于疑似区域的烟雾特征检测
2.1 基于小波变换的高、 低频能量分析
由于监控图像中烟雾使其覆盖区域变得模糊, 即区域的边缘和细节信息减少, 而边缘和细节对应图像中的高频信息, 从而导致该区域的高频能量被削减, 低频能量增加. 因此, 文献[7]利用2层小波变换研究烟雾对背景高频信息产生的衰减. 但在实际应用中, 受环境等因素的影响通常无法建立准确的背景模型. 通过研究不同条件下的背景表明, 对于单一背景, 非疑似烟雾区域通常为背景的一部分, 其高低频能量均值与背景接近; 对于复杂背景, 其高、 频能量值较大, 当烟雾未完全遮挡背景时, 非烟雾区域的高频能量均值与烟雾区域对比明显. 因此, 本文通过比较疑似烟雾区域相对非疑似区域的高、 低频能量均值变化情况实现烟雾检测. 对于较平滑的背景, 高频能量变化一般不明显, 因此在计算时应排除非疑似区域中的平滑部分, 以提高变化率.
空域小波变换系数的空间分布与原始图像的空间分布具有很好的对应关系, 因此本文使用二维离散小波, 并选用db4小波函数作为基波函数对图像进行分解, 以方便在不同尺度上观察图像信息, 分解结果如图4所示.
图4 小波分解结果Fig.4 Results of wavelet transform
由图4可见, 在分解后得到的4个子图像中, LL区表现图像的低频部分, 称为信息子图; HL,LH和HH区域分别包含水平方向(HL)、 垂直方向(LH)和对角方向(HH)的边缘信息, 表现图像的高频部分. 小波分解后各子图像中块的宽和高为原块大小的1/2. 计算高、 低频能量值和判断烟雾特征步骤如下.
1) 计算每个像素的低频能量值Lwn(x,y)和高频能量值Hwn(x,y):
(7)
2) 计算每个子块的低、 高频能量值ELB,EHB, 其中bij为分割后的子块:
(8)
4) 计算疑似烟雾区域与非疑似区域低频和高频能量平均值的比值:
(9)
5) 烟雾特征判断. 图5为疑似烟雾区域相对非疑似区域的高频能量变化对比曲线. 由图5可见, 烟雾高频能量的衰减程度明显大于风扇, 其衰减系数小于0.3. 由于烟雾的出现导致高频能量削减、 低频能量增加, 因此将γL和γH作为烟雾判断特征值, 定义当γL>1.0,γH<0.3时, 疑似区域满足该特征.
图5 高频能量变化曲线Fig.5 Curves of high-frequency energy fluctuation
2.2 运动保持性
图6 主运动方向Fig.6 Main motion orientation
烟雾区域多是向上或左右运动, 因此在烟雾区域满足该运动趋势的运动块所占比例较大, 且主运动方向编码θ满足1≤θ≤5. 该运动特性具有保持性, 即连续若干帧的烟雾运动区域维持满足该特性. 图6为Video1和Video7中部分帧的主运动方向示意图, 箭头所指方向为主运动方向. 由图6(A)~图6(D)可见, 烟雾运动区域在连续帧间保持上述特性; 而图6(E)~图6(H)中的车辆灯光运动区域并不满足该特征.
针对当前图像的每个运动块, 统计各个运动方向出现的次数Hθ(1≤θ≤8), 并进行如下计算:
(10)
其中:θ表示当前图像的主运动方向;δ表示向上运动的运动块所占比例;M表示当前图像中运动块个数. 如果M=0, 则θ,δ赋予0. 当1≤θ≤5且δ>0.8时, 当前图像满足运动特性, 统计与该帧相邻的前24帧图像不满足运动特性的次数α, 当α3 实验结果
实验环境为CPU Intel Core(TM)2 Duo E7200 2.53 GHz, 内存1 G, 视频分辨率为320×240. 本文实验中的部分烟雾及干扰视频来源于土耳其Bilkent大学机器视觉研究室(http://signal.ee.bilkent.edu.tr/VisiFire/)和视频监控在线资源库(http://imagelab.ing. unimore.it/visor/video_categories.asp), 其余来源于互联网及自行录制. 图7为本文测试视频库的场景显示, 从左至右、 从上至下依次为Video1~Video12, 其中: Video1~Video6为烟雾视频; Video7~Video9为室外车灯和行人等; Video10~Video12分别为室内变化的灯光、 摆动的风扇和飘动的窗帘.
图7 测试库场景显示Fig.7 Scenes of test video library
实验1基于连通域的烟雾特征分析.
取N=8,λR=0.8,DR=100. 图8为疑似烟雾区域提取结果, 其中(A)和(C)为根据运动检测提取的运动区域, (B)和(D)为对各连通域进行运动估计后得到的疑似烟雾区域. 由图8可见, 通过对各连通域进行特征分析, 可以有效排除非烟雾运动物体的干扰, 进一步缩小检测范围, 提高后续检测特征的区分度.
图8 疑似烟雾区域提取结果Fig.8 Results of candidate smoke region extraction
实验2疑似区域烟雾特征检测.
若在1 s的图像序列内至少一帧检测出烟雾, 则认为该序列存在烟雾. 定义r+和r-分别表示检测率和误检率:
(11)
(12)
根据烟雾特性, 定义烟雾的判断依据为γL>1.0,γH<0.3,A=2, 对各视频的疑似区域进行烟雾特征检测. 表1列出了视频检测结果, 其中烟雾视频的检出时间指从烟雾出现至被检出的时间, 干扰视频的误报次数为整个干扰视频中出现的报警次数, 处理速度为整段视频的平均处理速度. 由表1可见, 本文算法实时性好, 能在烟雾出现的2 s内检测到烟雾, 且很少产生误报. 表2列出了本文算法与文献[7,15]关于检测率和误检率的对比结果. 由表2可见, 文献[7]中基于点的算法对复杂背景或类似烟雾运动物体会产生较多误报, 如Video7和Video10, 且烟雾检测率低, 特别是受光照影响时, 如Video3; 文献[15]由于考虑运动方向单一, 对如Video4中左右飘散的烟雾检测率低; 相对于文献[7,15], 本文基于块且融合多特征的算法能有效排除灯光、 行人等因素的干扰, 误报率低, 并提高了对大中型烟雾的检测率, 但对小型或较淡烟雾, 由于提取的运动块个数较少, 还需考虑更多有效途径提高检测率, 如Video1和Video4.
表1 视频检测结果
表2 不同算法的检测率和误检率对比结果
综上所述, 本文在分析火灾发生初期烟雾特征的基础上, 提出一种基于运动块的视频烟雾检测算法, 通过分析由各运动块构成连通域的运动估计结果筛选疑似烟雾区域, 并计算了疑似烟雾区域高、 低频能量均值变化情况及运动保持性以确定是否有烟雾发生. 实验结果表明, 当烟雾发生时, 该算法可有效排除其他运动物体的干扰, 并能在烟雾出现2 s内检测到烟雾, 检测率高, 实时性强. 但由于该算法主要针对烟雾动态特征进行检测, 所以对运动不明显的烟雾, 检测效果有待改进.
[1] Haase P, Motik B. A Mapping System for the Integration of OWL-DL Ontologies [C]//Proceedings of the Firstinternational ACM Workshop on Interoperability of Heterogeneous Information Systems (IHIS’05). New York: ACM Press, 2005: 9-16.
[2] Yamagishi Hideaki, Yamaguchi Junichi. Fire Flame Detection Algorithm Using a Color Camera [C]//Proceedings of 1999 International Symposium on Human Science and Micromechatronics. Nagoya, Japan: IEEE Industrial Electronics Society, 1999: 255-260.
[3] Töreyin B U, Dedeoglu Y, Güedüekbay U, et al. Computer Vision Based Method for Real-Time Fire and Flame Detection [J]. Pattern Recognition Letters, 2006, 27(1): 49-58.
[4] Turgay Celik, Hasan Demirel. Fire Detection in Video Sequences Using a Generic Color Model [J]. Fire Safety Journal, 2009, 44(2): 147-158.
[5] WANG Ying, LI Wen-hui. High-Precision Video Flame Detection Algorithm Based on Multi-feature Fusion [J]. Journal of Jilin University: Engineering and Technology Edition, 2010, 40(3): 769-775. (王莹, 李文辉. 基于多特征融合的高精度视频火焰检测算法 [J]. 吉林大学学报: 工学版, 2010, 40(3): 769-775.)
[6] YU Chun-yu, FANG Jun, WANG Jin-jun, et al. Video Fire Smoke Detection Using Motion and Color Features [J]. Fire Technology, 2010, 46(3): 651-663.
[7] Töreyin B U, Dedeoglu Y, Cetin A E. Wavelet Based Real-Time Smoke Detection in Video [C]//13th European Signal Processing Conference(EUSIPCO2005). Antalya, Turkey: Curran Associates, 2005.
[8] Jerome Vicente, Philippe Guillemant. An Image Processing Technique for Automatically Detecting Forest Fire [J]. International Journal of Thermal Sciences, 2002, 41(12): 1113-1120.
[9] CHEN Thou-ho, YIN Yen-hui, HUANG Shi-feng, et al. The Smoke Detection for Early Fire-Alarming System Base on Video Processing [C]//Proceedings of the 2006 International Conference on Intelligent Information Hiding and Multimedia Signal Processing. California: IEEE Computer Society, 2006: 427-430.
[10] Dongil Han, Byoungmoo Lee. Flame and Smoke Detection Method for Early Real-Time Detection of a Tunnel Fire [J]. Fire Safety Journal, 2009, 44(7): 951-961.
[11] Jayavardhana Gubbi, Slaven Marusic, Marimuthu Palaniswami. Smoke Detection in Video Using Wavelets and Support Vector Machines [J]. Fire Safety Journal, 2009, 44(8): 1110-1115.
[12] Collins R, Lipton A, Kanade T. A System for Video Surveillance and Monitoring [C]//Proceedings of 8th International Topical Meeting on Robotics and Remote Systems. Pittsburgh, USA: American Nuclear Society, 1999: 1-15.
[13] Barron J L. On Optical Flow [C]//Artificial Intelligence and Information-Control Systems of Robots (AIICSR’94). Bratislava, Slovakia: [s.n.], 1994: 3-14.
[14] LIU Yang-yang, SHEN Xuan-jing, WANG Yi-qi, et al. Design and Implementation of Embedded Intelligent Monitor System Based on ARM [J]. Journal of Jilin University: Information Science Edition, 2011, 29(2): 158-163. (刘阳阳, 申铉京, 王一棋, 等. 基于ARM的智能监控系统的设计与实现 [J]. 吉林大学学报: 信息科学版, 2011, 29(2): 158-163.)
[15] YUAN Fei-niu. A Fast Accumulative Motion Orientation Model Based on Integral Image for Video Smoke Detection [J]. Pattern Recognition Letters, 2008, 29(7): 925-932.