基于人脸面部检测的口罩识别系统
摘 要
作为数字图像处理和计算机视觉领域的一个重要组成部分,利用摄像机对图像进行采集,从图像中检测人脸并进行口罩穿戴的识别的有着非常重要的研究意义和应用价值。面对突如其来的新型肺炎疫情,人们生活秩序被严重打乱。跟普通流感不同,此次疫情可以通过人体唾沫传播,感染他人能力很强。近期,面对疫情,市面上口罩更少被抢得一个不留。因为,面对此次疫情,出门戴口罩变得尤为地重要。可以直接从源头把关,将外接人体唾沫,气流等进行第一屏障地隔离,有效地保护了自己和他人,不给病毒以传播的机会。而往往,就有一些人不响应国家和党的号召,面对此次病毒不以为然,出门依然不爱戴口罩,给病毒有机可乘,给自己和他人的生命安全造成重大安全隐患。如果有一套系统,可以通过数字图像的采集识别,判别出该人是否穿戴口罩,并且做出相应警示报警等,显得尤为重要和迫切。随着计算机视觉技术的逐年精进,基于图像的口罩识别迅速吸引了人们的视线。
本文选择通过检测人脸,进而统计肤色的原理来达到口罩识别的目的,同时选择肤色作为口罩检测的主要依据。由于在 RGB 色度空间中,肤色聚类性不强,且易受亮度信息干扰,本文选择在 YCbCr 色彩空间通过阈值法建立肤色模型,完成肤色分割,形态学处理去干扰后得到初步的口罩定位。由于肤色检测准确率不高,因此进一步利用hough 变换检测人脸轮廓对人脸区域进行精确定位,最后框出人脸并实现人数统计,结果表明本算法对于正面人脸检测效果良好,统计结果较为精确。
本文还设计了一个简洁美观的GUI 界面,这个界面可以更好地展现处理的过程,使得实现的演示简单明了。
关键词:MATLAB; 人脸检测; 肤色检测; 口罩识别; 形态学
2.4.1 数学形态学知识实现对非肤色最大面积块的精确定位 14
1 前言
每当流行病发起,尤其是今年来势汹汹的肺炎病毒疫情,可以通过人体唾沫传播。此时口罩就起到了非常重要的作用,可以在源头进行阻隔病毒的传统。是最有效也是最直接的防疫手段。人们在疫情期间,带上口罩,无论是对自己还是他人,都是负责任的态度。但是往往有些人并不自觉,不以为然,没有戴口罩就行走在大街上,简直就是行走的隐形病毒,如果有一套系统,可以通过图像的采集即可判别是否穿戴口罩,从而提出预警,起到威慑提醒作用,那么可以非常有效地引导,督促市民正常穿戴口罩出门。从而为共同防疫做贡献。
同时要注意的是,本文设计所用到的软件,即 MATLAB,又称矩阵实验室(Matrix Laboratory),该软件功能强大,语法简单易学,使用者能迅速掌握其主要的内容和基本的操作方法;MATLAB 软件自从推出以来,经过了各学科领域学者和研究员的实践,不停被更新完善,进一步提高了实用性,现已广泛推广到各个领域,[1]使得科学研究者工作起来更加便捷;基于以上种种优势,MATLAB 由于功能十分强大、使用更加便捷被广泛应用于各行各业进行图像处理工作; MATLAB 有自己的图像处理工具箱,这个工具箱几乎容纳了所有图像处理会用到的函数,这些函数都可以在操作过程中被调用;MATLAB 可以支持几乎所有格式的图像[1];在 MATLAB 操作环境下,人们不需要注意图像的类型、格式、大小、显示等繁琐的细节性问题,而相对地能花费更多时间精力去研究实现某项功能所需要的算法上面,这毫无疑问加快了科研人员研究的进程;此外,当人们将算法研究出来,需要对最后的成果进行验证时,MATLAB 可以帮人们统计出数据,人们的研究成果可以以图片的方式展现,效果更为直观[4]。
本文主要是针对室内外,相同人不同场景,不同性别三个场景中的人员口罩
穿戴的研究。
本论文的结构和各章节安排如下:
第一章介绍了基于图像处理的口罩识别的研究背景与意义,同时也诠释了本文的设计思路、研究内容及创新之处。
第二章对软件系统中的两个重要模块(人脸肤色检测模块和形态学模块)的原理和实现方式做了深入简出的剖析。阐明了口罩识别系统的总设计思路与算法,对各类色度空间以及肤色模型做了详细说明。
第三章主要对图像预处理模块做了重点介绍,讲解了图像预处理模块和人脸肤色定位模块具体的图像处理工作,包括滤波、色彩空间变换等。对为什么这么做,这么做实现的效果做了详细说明。
第四章对口罩识别系统软件进行了算法验证,讲解了具体操作步骤、操作方法、实现效果,并对该系统的实验结果进行了分析。
第五章对整篇论文进行概括总结,并叙述了未来的工作目标和研究方向。
2 口罩识别总体设计
传统检测口罩的方法,基本使用基于颜色的方法,即口罩基本有浅蓝色,黑色和白色为主的几种,通过RGB三原色转换为HSV等容易聚集颜色的色彩空间,得到对应颜色的像素点的方法来定位口罩。但是该种方法容易受到外部环境的干扰,如人们自身穿戴的衣服,周边环境颜色等。因为本文不以考虑该种算法。而是采用人脸定位,肤色检测相结合的方法进行口罩的识别。首先可以利用人脸定位器将目标人脸区域与复杂背景进行初步分离,然后在该人脸区域内,利用肤色定位原理对人脸的区域进行遍历像素, 这样就可以准确地定位出属于肤色位置像素值和位置,并将其置黑色。如果该人穿戴了口罩,那么口罩部分不属于人脸肤色,自然不会被检测为人脸肤色像素,因此该块口罩区域块呈现白色,最后通过形态学知识滤除掉白色面积块小于一定值的区域,留下面积一定的白色面积块,该面积块即为口罩区域。
本文的算法流程图,如图 2.2 所示。