一种人眼状态识别方法和装置
技术领域
本发明涉及视频图像处理和模式识别技术领域,尤其涉及一种人眼状态识别方法和装置。
背景技术
从视频或图像中自动获取人眼的状态(开或闭合)有着广泛的应用价值。例如:
(1)在驾驶员疲劳警示***中,使用可见光或近红外摄像头采集驾驶员的人眼图像,通过计算一定时间内,人眼闭合时间所占的比例来判决驾驶员的疲劳程度。当人眼闭合时间所占比例大于一定的阈值时,***则发出警报,提醒驾驶员休息后再继续驾驶。从而减少疲劳驾驶的出现,进而减少交通事故的发生。
(2)在图雷特综合症辅助诊断***中,通过摄像头采集待诊断人的人眼图像,然后计算眨眼次数和频率作出辅助诊断。
目前,人眼状态识别有以下几种方式:(1)从人眼部图像中提取Zernike矩特征,复杂度特征和HOG特征,对不同的特征分别训练对应的SVM分类器,然后采用自动权值学习算法学习不同模型的权重,实现决策融合。(2)通过提取Haar-like特征对人眼部图像进行描述并通过自适应增强(Adaboost)分类器进行识别。(3)对人眼睛区域进行二值化或边缘检测,获取人眼睛的长宽信息来判断人眼睛状态,然而由于光照条件不同,人眼睛形态发生变化,以及是否佩戴眼镜会导致二值化或边缘检测在某些情况下很难准确提取出图像中的人眼部,或者信息提取不全而造成误判。(4)通过提取Gabor特征进行人眼状态识别。(5)通过采用主成分分析法(Principle Component Analysis)和线性区分分析(LinearDiscriminant Analysis)法对人眼区域像素进行变换,然后再对人眼的二值图像统计稀疏度(Sparseness)和峰态(Kurtosis)得到特征进行识别。
以上人眼状态的判断方法中,通过提取人为设计的特征进行人眼睛状态识别,由于这些人为设计的特征为通用化特征,并未针对人眼状态识别这个应用进行优化,所以不是最优的特征,识别率不高。另外,参见附图8的(a)和(b),在人眼区域图像的检测过程中,由于光照角度的变化,使得检测到的人眼位置不准确特别是水平方向上会存在较大的位移,即相似的人眼睛状态,由于位置不同导致提取出的特征有很大区别,会导致基于Haar-like或HOG等特征鲁棒性下降。
发明内容
有鉴于此,本发明要解决的技术问题是提供一种人眼状态识别方法和装置,以减少空间分布信息丢失,提高人眼状态识别的识别率和鲁棒性。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面,提供的一种人眼状态识别方法包括:
对待识别图像中的人眼区域进行检测,得到人眼区域图像;
提取人眼区域图像的分块像素值向量;
根据分块像素值向量获取分块稀疏编码;
对分块稀疏编码进行多区域整合,得到人眼区域图像的特征向量;
采用预先训练好的状态分类器,根据人眼区域图像的特征向量判决人眼的状态。
优选地,提取人眼区域图像的分块像素值向量包括:
对检测到的人眼区域图像进行预处理;
对预处理后的人眼区域图像进行分块;
提取每个分块的像素值并串联成向量,得到分块像素值向量。
优选地,根据分块像素值向量获取分块稀疏编码包括:
根据分块像素值向量生成用于稀疏编码的码本;
根据码本和分块像素值向量对每个分块进行非负稀疏编码,得到分块稀疏编码。
优选地,根据码本和分块像素值向量对每个分块进行非负稀疏编码,得到分块稀疏编码包括按以下公式得到:
min||p-Dc||2+λ||c||1,s.t.c≥0,
其中,p为当前分块像素值向量,D为稀疏编码的码本,c为该分块对应的稀疏编码。
优选地,对分块稀疏编码进行多区域整合,得到人眼区域图像的特征向量包括:
将人眼区域图像在垂直方向划分为m个区域,水平方向划分为n个区域,其中,m和n均为自然数,且m<n;
对划分后的各个区域稀疏编码进行整合;
将各个区域整合得到的稀疏编码进行串联,得到描述人眼区域图像的特征向量。
优选地,该方法之前还包括状态分类器训练的步骤,该步骤包括:
对样本人眼图像中的人眼区域进行检测,得到样本人眼区域图像;
提取样本人眼区域图像的分块像素值向量;
根据样本分块像素值向量获取样本分块稀疏编码;
对样本分块稀疏编码进行多区域整合,得到样本人眼区域图像的特征向量;
根据样本人眼区域图像的特征向量和人工标定的状态进行分类器训练。
根据本发明的另一个方面,提供的一种人眼状态识别装置包括:
检测模块,用于对待识别图像中的人眼区域进行检测,得到人眼区域图像;
特征提取模块,用于提取人眼区域图像的分块像素值向量;
稀疏编码模块,用于根据分块像素值向量获取分块稀疏编码;
多区域编码整合模块,用于对分块稀疏编码进行多区域整合,得到人眼区域图像的特征向量;
状态判决模块,用于采用预先训练好的状态分类器,根据人眼区域图像的特征向量判决人眼的状态。
优选地,特征提取模块包括:
预处理单元,用于对检测到的人眼区域图像进行预处理;
分块单元,用于对预处理后的人眼区域图像进行分块;
像素值提取单元,用于提取每个分块的像素值并串联成向量,得到分块像素值向量。
优选地,稀疏编码模块包括:
码本生成单元,用于根据分块像素值向量生成用于稀疏编码的码本;
稀疏编码生成单元,用于根据码本和分块像素值向量对每个分块进行非负稀疏编码,得到分块稀疏编码。
优选地,多区域编码整合模块包括:
区域分割单元,用于将人眼区域图像在垂直方向划分为m个区域,水平方向划分为n个区域,其中,m和n均为自然数,且m<n;
稀疏编码整合单元,用于对划分后的各个区域稀疏编码进行整合;
特征向量确定单元,用于将各个区域整合得到的稀疏编码进行串联,得到描述人眼区域图像的特征向量。
优选地,装置还包括分类器训练模块,用于根据人工标定的样本图像训练状态;分类器训练模块包括:
样本检测单元,用于对样本图像中的人眼区域进行检测,得到样本人眼区域图像;
样本特征提取单元,用于提取样本人眼区域图像的分块像素值向量;
样本编码单元,用于根据样本分块像素值向量获取样本分块稀疏编码;
样本编码整合单元,用于对样本分块稀疏编码进行多区域整合,得到样本人眼区域图像的特征向量;
样本训练单元,用于根据样本人眼区域图像的特征向量和人工标定的状态进行分类器训练。
本发明实施例的人眼状态识别方法和装置,通过提取人眼区域图像的分块像素值向量;根据分块像素值向量获取分块稀疏编码,然后利用多区域稀疏编码整合方法对区域内稀疏编码进行整合,在垂直方向的区域划分较宽,吸收了人眼区域图像由于人眼检测不准确产生的垂直位移的影响,对位移变化较小的水平方向的区域划分较精细,保证了该方向的稀疏编码整合后,空间分布信息丢失较少,从而能提高识别率和鲁棒性。
附图说明
图1为本发明实施例提供的一种人眼状态识别的方法流程图。
图2为本发明优选实施例提供的一种提取人眼区域图像的分块像素值向量的方法流程图。
图3为本发明优选实施例提供的一种人眼区域图像预处理的方法流程图。
图4为本发明优选实施例提供的一种人眼区域图像分块示范图。
图5为本发明优选实施例提供的一种分块稀疏编码的方法流程图。
图6为本发明优选实施例提供的一种生成码本的方法流程图。
图7为本发明优选实施例提供的一种多区域编码整合的方法流程图。
图8为本发明优选实施例提供的一种人眼区域图像分区域示范图。
图9为本发明优选实施例提供的一种人眼状态分类器的训练方法流程图。
图10为本发明优选实施例提供的一种人眼状态识别方法流程图。
图11为本发明优选实施例提供的一种人眼状态识别装置的结构示意图。
图12为本发明优选实施例提供的一种分类器训练模块的结构示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
如图1所示为本发明实施例提供的一种人眼状态识别方法流程图,该方法包括:
S10、对待识别图像中的人眼区域进行检测,得到人眼区域图像。
具体来说,本步骤包括但不限于采用以下方法进行:首先检测人脸区域,人脸区域的检测可以通过学习的方法从已标定好的人脸区域和非人脸区域中提取特征,训练分类器。在检测过程中,从待检测的图像每个区域中提取相应的特征,由训练好的分类器判决是否为人脸区域。常用的方法有基于哈尔类(Haar-like)特征及自适应增强(Adaboost)分类器的方法。然后,同样采用学习的方法从已标定好的人眼图像和非人眼图像中提取特征,训练分类器。在检测过程中,从检测到的人脸图像可能存在人眼区域(人脸中部及中部偏上)的局部区域提取相应的特征(如:哈尔类(Haar-like)特征;如果是彩色摄像头,可结合颜色特征),再根据训练好的分类器的判决得到人眼的位置。当然也可以直接用人眼分类器在拍摄到的图像中进行检查,但性能会有所下降。
S20、提取人眼区域图像的分块像素值向量。
请参阅图2所示的一种优选提取人眼区域图像的分块像素值向量的方法流程图,步骤S20进一步包括:
S202、对检测到的人眼区域图像进行预处理。
举例来说,步骤S202进一步包括:
S2022、对检测到的人眼区域图像进行伽玛校正;
伽玛校正用于加强局部图像的动态范围。假设某像素点的灰度值为γ,那么经过伽玛校正后,该灰度值等于Iγ,γ的取值范围为0到1。
S2024、对伽玛校正后人眼区域图像进行高斯差滤波;
高斯差滤波用于去除全局的亮度梯度影响,如阴影等。高斯差滤波将两个不同方差的二维高斯函数的差作为卷积核与人脸图像进行卷积完成滤波。高斯差滤波可以视为一种带通滤波器,将频率很高的噪声和频率较低的亮度梯度变化滤除。
S2026、对滤波后的人眼区域图像进行对比度均衡处理。
对比度均衡处理用于重新调整图像亮度的取值范围,标准化图像亮度的变化。可以采取(但不限于)将每个像素点的灰度值除以整幅人脸图像所有像素点的灰度值中值。
S204、对预处理后的人眼区域图像进行分块。
具体地,将图像分割为多个块以提取局部特征。分割方法有多种,比如:以一定的步长和一定的块大小分割图像,或者在图像区域随机生成块中心点位置,根据中心点位置和设定好的块大小提取局部图像。
请参阅图4所示的一种人眼区域图像分块示范图,例如:如果人眼区域图像都统一归一化到36(高)x48(宽)像素的大小;可以采用8x8像素的分块和4像素的步长得到8×11=88个分块,也就是说在水平和垂直方向上每隔4个像素点为中心确定一个8x8像素的分块。
S206、提取每个分块的像素值并串联成向量,得到分块像素值向量。
与上述步骤S204举例相对应,本步骤S206提取8x8分块的像素值进行串联,如果图像为灰度图则得到一个64维的像素值向量;如果图像为彩色图则得到192维的像素值向量。
S30、根据分块像素值向量获取分块稀疏编码。
请参阅图5所示的一种优选分块稀疏编码方法流程图,步骤S30进一步包括:
S302、根据分块像素值向量生成用于稀疏编码的码本;
具体来说,生成码本的方法包括但不限于采用聚类法或矢量量化法。其中,聚类法进一步包括分层聚类法、模糊聚类或模拟退火聚类法。
请参阅图6所示的一种优选生成码本的方法流程图,该方法以K均值聚类法为例来说明,训练集人眼区域图像的像素值向量进行聚类的具体步骤如下:
S3022、确定码本数K;
具体可以根据交叉验证(Cross-validation)方法确定码本数。
S3024、从像素值向量中随机抽取K个向量作为当前聚类中心;
S3026、对每个向量计算到当前K个聚类中心的距离,找出最小距离对应的聚类中心作为各个向量所属的类别。
S3028、对属于同一类别的向量求均值,得到更新的聚类中心。
S3010、判断当前聚类中心和前一聚类中心的距离是否小于预定的阈值,如果是,则执行步骤S3012,否则返回步骤S3026。
S3012、将收敛后的聚类中心值作为码本。
S304、根据码本和分块像素值向量对每个分块进行非负稀疏编码,得到分块稀疏编码。
具体来说,非负稀疏编码可以采用按以下公式求解优化问题得到:
min||p-Dc||2+λ||c||1,s.t.c≥0,
其中,p为当前分块像素值向量,D为稀疏编码的码本,c为该分块对应的稀疏编码。
该问题可通过内点法,最小角回归,基向量寻踪或者Split Bregman等方法求解,下面以Split Bregman方法为例进行介绍,ct为第t迭代该分块对应的稀疏编码。
函数p为d为向量d中的元素。
初始化c0=0;b0=0;
计算dt+1=D(ct-bt);
计算ct+1=(ηDTD+I)-1(P(dt+1)+bt+ηDTp-λη1),
计算bt+1=bt+P(dt+1)-ct+1
判断迭代算法是否收敛,比如||ck+1-ck||2是否小于一定阈值。如果没有收敛则重复计算直到收敛,如收敛则输出稀疏编码c。
S40、对分块稀疏编码进行多区域整合,得到人眼区域图像的特征向量。
具体地,步骤S40对人眼位置变化较大的垂直方向的区域划分较宽(一般划分为一到两个区域),而对人眼位置变化不大的水平方向的区域划分较精细(一般划分为3个以上的区域)。然后对属于不同划分区域的分块稀疏编码进行求和或求最大值。最后将各个区域整合后的稀疏编码进行串联得到最终描述人眼的特征向量表达。在垂直方向进行较宽划分,使得如果人眼在垂直图像有较大位移时也可以得到相似的特征向量表达;同时在水平方向又保留了较多的空间分布信息,保证了不同人眼状态的区分度。多区域整合可以表达人眼区域图像在不同区域稀疏编码的分布特征,从而可以提高对不同眼睛状态的区分度。
请参阅图7所示的一种优选多区域编码整合的方法流程图,步骤S40进一步包括:
S402、将人眼区域图像在垂直方向划分为m个区域,水平方向划分为n个区域;其中,m和n均为自然数,且m<n;
S404、对划分后的各个区域稀疏编码进行整合;
请参阅图8所示的一种优选人眼区域图像分区域示范图,以垂直方向划分为两个区域,水平方向划分为3个区域为例(即m=2,n=3),假设左上角区域包含14个分块,对应的稀疏编码分别为c1,c2,c3,c4,…,c14。如果采用求和的方法进行整合,则该区域的最终编码为c=c1+c2+c3+c4+…+c14。如果采用求最大值的方法,则该区域的最终编码为c=max(c1,c2,c3,c4,,…,c14),其中max为对向量的各个元素分别求最大值。其他区域也通过相同的步骤进行整合。
S406、将各个区域整合得到的稀疏编码进行串联,得到描述人眼区域图像的特征向量。
S50、采用预先训练好的状态分类器,根据人眼区域图像的特征向量判决人眼的状态。
具体地,使用已训练好的分类器对待辨识的人眼图像进行判决,得出该人眼图像为开或闭合的判决。
本实施例采集了5000张人眼图像进行测试过,取得了98.3%的识别率,高于基于Gabor特征的方法2.1%,高于基于PCA+LDA及稀疏度和峰态的方法13%个百分点。
本发明实施例的人眼状态识别方法,通过提取人眼区域图像的分块像素值向量;根据分块像素值向量获取分块稀疏编码,然后利用多区域稀疏编码整合方法对区域内稀疏编码进行整合,在垂直方向的区域划分较宽,吸收了人眼区域图像由于人眼检测不准确产生的垂直位移的影响,对位移变化较小的水平方向的区域划分较精细,保证了该方向的稀疏编码整合后,空间分布信息丢失较少,从而能提高识别率和鲁棒性。
实施例二
如图9所示为本发明优选实施例提供的一种人眼状态分类器的训练方法流程图,该方法包括:
S10’、对样本人眼图像中的人眼区域进行检测,得到样本人眼区域图像;
S20’、提取样本人眼区域图像的分块像素值向量;
S30’、根据样本分块像素值向量获取样本分块稀疏编码;
S40’、对样本分块稀疏编码进行多区域整合,得到样本人眼区域图像的特征向量;
S60’、根据样本人眼区域图像的特征向量和人工标定的状态进行分类器训练。
具体来说,分类器包括但不限于采用支持向量机,随机森林(RandomForest),自适应增强(Adaboost),人工神经网络,距离分类器等分类方法实现。
需要说明的是,本实施例二中的步骤S10’~S40’与上述实施例一中的步骤S10~S40的实施方式相同,不同的仅仅是采用的图像是样本图像,实施例一中的图像是待识别的图像,故实施例一中步骤S10~S40的各种技术特征在本实施例二中同样适用,这里不再重述。
通过本发明实施例,根据样本图像和人工标定的状态训练状态分类器,从而为实时判决待识别图像的人眼状态提供依据。
实施例三
如图10所示为本发明优选实施例提供的一种人眼状态识别方法流程图,该方法包括以下步骤:
S702、采集样本人眼图像。
具体地,样本人眼图像可通过摄像头采集,在光照度很低或驾驶员佩戴眼镜(包括墨镜时),需要采用近红外射灯辅助。
S704、对样本图像中的人眼区域进行检测,得到样本人眼区域图像。
S706、对样本人眼图像进行人工标定。
具体地,本实施中通过人工将样本人眼图像分类为开眼图和闭眼图,从而为训练状态分类器提供依据。
S708、根据已标定的样本人眼图像训练状态分类器。
具体地,本步骤S708根据人工标定的状态,采用实施例二的方法进行训练状态分类器(请参阅图9),这里不再重述。
S710、实时采集待识别的图像。
S712、根据训练好的状态分类器,判决待识别的图像的人眼状态。
本发明实施例的人眼状态识别方法,能实时采集包含人眼的待识别图像,并且实时判决待识别图像中的人眼状态。
实施例四
如图11所示为本发明优选实施例提供的一种人眼状态识别装置的结构示意图,该装置包括:
检测模块10,用于对待识别图像中的人眼区域进行检测,得到人眼区域图像;
特征提取模块20,用于提取人眼区域图像的分块像素值向量;
稀疏编码模块30,用于根据分块像素值向量获取分块稀疏编码;
多区域编码整合模块40,用于对分块稀疏编码进行多区域整合,得到人眼区域图像的特征向量;
状态判决模块50,用于采用预先训练好的状态分类器,根据人眼区域图像的特征向量判决人眼的状态。
作为本实施例的一种优选方案,特征提取模块20进一步包括预处理单元201、分块单元202以及像素值提取单元203,其中:
预处理单元201,用于对检测到的人眼区域图像进行预处理;
分块单元202,用于对预处理后的人眼区域图像进行分块;
像素值提取单元203,用于提取每个分块的像素值并串联成向量,得到分块像素值向量。
作为本实施例的另一种优选方案,稀疏编码模块30包括码本生成单元301和稀疏编码生成单元302,其中:
码本生成单元301,用于根据分块像素值向量生成用于稀疏编码的码本;
稀疏编码生成单元302,用于根据码本和分块像素值向量对每个分块进行非负稀疏编码,得到分块稀疏编码。
作为本实施例的另一种优选方案,多区域编码整合模块40进一步包括区域分割单元401、稀疏编码整合单元402以及特征向量确定单元403,其中:
区域分割单元401,用于将人眼区域图像在垂直方向划分为m个区域,水平方向划分为n个区域,其中,m和n均为自然数,且m<n;
稀疏编码整合单元402,用于对划分后的各个区域稀疏编码进行整合;
特征向量确定单元403,用于将各个区域整合得到的稀疏编码进行串联,得到描述人眼区域图像的特征向量。
作为本实施例的又一种优选方案,该装置还包括分类器训练模块,用于根据人工标定的样本图像训练分类器。
请参阅图12,分类器训练模块进一步包括:
样本检测单元601,对样本图像中的人眼区域进行检测,得到样本人眼区域图像;
样本特征提取单元602,提取样本人眼区域图像的分块像素值向量;
样本编码单元603,根据样本分块像素值向量获取分块稀疏编码;
样本编码整合单元604,对样本分块稀疏编码进行多区域整合,得到样本人眼区域图像的特征向量;
样本训练单元605,根据所述样本人眼区域图像的特征向量和人工标定的状态进行分类器训练。
本发明实施例的人眼状态识别装置,通过提取人眼区域图像的分块像素值向量;根据分块像素值向量获取分块稀疏编码,然后利用多区域稀疏编码整合方法对区域内稀疏编码进行整合,在垂直方向的区域划分较宽,吸收了人眼区域图像由于人眼检测不准确产生的垂直位移的影响,对位移变化较小的水平方向的区域划分较精细,保证了该方向的稀疏编码整合后,空间分布信息丢失较少,从而能提高识别率和鲁棒性。
需要说明的是,上述方法实施例中的技术特征在本装置均对应适用,这里不再重述。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。