孙燕斌 黄裕满 刘文一
摘要:基于Matlab图像处理方法和原理,重点研究matlab图像特征提取技术。用Matlab图像处理函数编写出一种新的算法,运用该算法加上市场上已有的系统和硬件,使公交车乘客识别系统得以实现,该算法可以在图像中定位人脸区域,且能根据人眼位置等数据来切割图像,一系列处理后还能准确提取人脸特征,大大提高了公交车识别系统的识别能力。
关键词:Matlab;数字图像处理;识别系统
1、系统的实现
1.1系统简述
一个完整的公交车乘客识别系统应包括图像与身高采集、提取图像特征、图像特征数据库、对比识别,身高判定、计数等单元。 当乘客上车时触发图像与身高采集单元,系统采集当前的视频图像与身高,单元执行对图像特征提取,提取出乘客的面部特征,将面部特征输入到图像特征数据库进行对比,然后身高判定,输出结果、计数。
2、基于Matlab图像处理的算法
2.1 Matlab 对图像处理的优势
MATLAB 推出以来,综合各界精英所编写的各种程序,经过许久的融合和完善,成为了被世界认可的科学计算与数学应用优秀软件之一,在国内外广受欢迎的可视化科学计算软件。它的功能十分的强大,尤其是对矩阵的实验是其他软件无法比拟的。MATLAB有功能强大的工具箱,有核心部分和各种可选的工具箱这两部分。
儿童时期的脸型和非儿童时期不同,变化最大的是从儿童到青年,从中年到老年这两个时期。[3]这几个时期的脸型变化最为明显,所以比较容易得到这几个时期人们的面部特征,且比较好对比识别。采用 Matlab提供的函数对图像处理和分析,可以运用几条简单的Matlab 语句完成对图像特征提取的任务,相对于其他计算机语句来说更加的简便快捷。[1]本文利用Matlab图像处理工具箱提供了丰富的图像处理函数,进行图像的处理和分析。Matlab 图像工具箱提供的函数大多数是M 文件,可以方便我们查看这些文件的代码并进行合理的修改,有利于我们利用这些函数设计出一种算法,更适合我们要处理的数字图像,实现方便快捷的提取图像特征。
2.2 用算法对图像预处理
公交车的图像采集设备,通常生成的都是彩色图片,彩色图像数据量非常的大,不利于系统中的传输,影响系统的运行速度且占运行内存。我们需要把图像转换成含数据量少的灰度图像,因此运用Matlab中对图像处理的函数将彩色图像转换为灰度图像,以此压缩图片中的数据量,便于设备的传输。Matlab主要的语句如下所示:
以下以图像处理经典图像之一“ lena ”为例,介绍该算法用于公交车乘客识别系统。
tu1=imread('tupian.jpg');% 图像的读入
hui= rgb2gray(tu1);图像灰度化处理
2.3图像的增强
为了去除光照对灰度的影响采用直方图均衡化,采用这种方法能加强图像、凸显人脸特征,便于人脸的识别、图像特征的提取。直方图均衡化实现了图像灰度均衡化。通过这种方法,图像的像素可以占有更广的灰度级且分布均匀。所以图像处理后会有更大的动态范围、对比度。MATLAB可以提供多种函数对图像增强,本文采用matlab中histeq函数对要处理的图片进行直方图均衡化。
2.4 对人眼位置定位
采集到的图片中人脸位置会有所不同,及图像中人脸部分占整个图像的比例也不相同,这让计算机对图片的识别变得十分困难。因此我们要对图像的某些特征定位,以便于对图像的处理和分析。本文对图像中的人眼定位,对获得的人眼数据进行标准化处理。以两眼之间水平方向距离和水平方向距离中心为基准,按一定算法对图像进行人脸切割,之后再提取图像特征。
用matlab实现人眼定位,采用了建立m文件的方式,以便算法调取函数获得人眼位置信息。在matlab要实现人眼定位,先对图像二值化,判断二值化图像中是否含有眼睛模块。本文采取fineye.m对人眼定位,fineye.m是人们已经编写完成的人眼定位算法。[4]
2.5 用算法对图像特征的提取
经过上述对图像处理和人眼位置定位后,需要用算法在图片背景中准确地定位乘客面部位置,是整个图像识别过程中的关键。首先对采集到的图像进行搜索,找到符合人脸特征的区域选为候选区,然后对这些侯选区域做更进一步处理、分析、判定,最后确定人脸区域。再根据人眼位置等数据将其从图像中分割出来并保存,为了方便观察可以对分割出来的图像进行直方图均衡化,最后对分割出来的图像二值化,并计算人脸面积保存。
3、结论
在上文用matlab运行该算法后,可以看出运用该图像处理算法能准确的把人脸区域从要处理的图像中提取出来,经过该图像处理算法后续的处理还能够得出人脸的面积,对提取图像的特征十分有用,但是当该图像处理算法受到面部遮挡物的影响时,对人脸的面积提取会有误差。运用该图像处理算法分别提取儿童、少年、中年、老年时期每组60张图片的图像特征,形成图像特征数据库,用计算机获取实验对象的图片与身高,来模拟运行公交车乘客识别系统。
通过对多个处于面部特征变化大年龄段的人进行试验,识别正确率高,该算法已达到实验预期要求。与采用传统的计算机语言相比,系统开发的工作量和周期明显缩短。 应用中,乘客识别系统的识别率与乘客面部遮挡物息息相关,还会受到各种外界因素影响。该算法也存在不足,只能区分面部特征变化大的那几个年龄段,还存在一定的误差。该算法与公交车乘客识别系统还需要不断完善,以到達更精确的识别乘客。
2021 年大学生创新创业训练计划校级项目CXCY143;大学生创新创业训练计划(CXCY2020169 )、校内基金项目(2018xzky10)大学生创新创业项目( CXCY2020107)
参考文献:
[1]贺兴华等 .matlab7.x图像处理[M].人民出版社,2006(11).
[2]郑继刚,王边疆著. 基于MATLAB的数字图像处理研究[M]. 昆明:云南大学出版社. 2010.12
[3]http://blog.csdn.net/?ref=toolbar