APP下载

基于压缩相对轮廓特征点的手形识别

2021-07-03李召鹏

沈阳大学学报(自然科学版) 2021年3期
关键词:轮廓手掌类别

于 霞, 李召鹏

(沈阳工业大学 信息科学与工程学院, 辽宁 沈阳 110870)

手形轮廓特征相比于其他手部生物特征具有易提取、易实现、计算量小的特点[1].通常以基本手部形状特征结合掌纹、指纹、手掌静脉纹等信息用于识别特征区域提取的主要依据.但手形轮廓信息本身唯一性较低,也被用于结合高度唯一性特征用于特征融合使用[2-3].

移动终端设备作为便携式的综合信息处理平台,在人们生活中发挥着越来越重要的作用.随着智能设备的高速发展,自带摄像功能的移动设备早已普及,使得在不增加额外设备开销的基础上收集手掌图片信息成为可能[4].

然而,移动环境掌纹识别面临诸多技术挑战,如受智能设备资源等条件(如较小的存储空间、较弱的处理能力)[5]和复杂的应用环境(背景、光照、手掌摆放姿态和位置等)的限制[6-7],其尚未形成理想的实用化技术方案.

现有的手形特征的识别主要是针对手掌和手指的长度、宽度、周长、面积等手掌图像信息提取后的特征[8],此类特征的提取对所用特征提取算法依赖性较强,不同算法提取出的特征相差较大,且提取精度越高的算法其计算量越大[9].相较于此手掌轮廓的位置信息具有提取方法简单、特征相对独立、提取算法开销较小等优点[10-11],但其位置受手掌摆放位置的影响较大.作为识别特征,需对手掌摆放做出严格限制,且识别效果不佳,因此降低了用户体验[12].

针对以上问题,本文通过提取手形轮廓位置信息,结合轮廓质心的位置,建立相对于手形轮廓的相对坐标系,通过坐标变换将轮廓坐标变换为独立于照片拍摄位置的相对坐标.然后选取相对坐标信息80%的数据作为训练集,20%的数据作为验证集,应用支持向量机模型进行分类训练.通过等间隔选点法,不断减小选点间隔,增加输入模型的信息量,寻找最有效的相对位置信息数量,达到提高模型识别速度的目的,使其更便于应用.

1 手掌数据库的构建

传统手部图像采集大多采用接触成像,即手掌或手背接触图像采集设备或位置固定设备,这样可能存在感染疾病的风险,非接触成像则可以保证对人体无伤害的需求.随着智能手机和平板电脑上的图像采集元件和网络的不断发展,可以实现不采用任何特殊采集设备,通过这些通用移动设备即可方便快速地采集图像并进行在线识别,既减少特定采集设备购入的成本,又可以使认证更加方便.因此,本文手掌库为自建数据库,采用手机摄像头采集,背景基本为单色,采集手势为4指并拢大拇指向外张开,四指朝上,手部位置在图像中允许有一定平移.构建的手图像库共采集100个人的手掌图片,每人20张,共包含2 000张手掌图片,经过预处理并归一化为4 000×3 000像素的图像,所有图像为RGB空间下的彩色图像,手图像库样例如图1所示.

2 预处理

作为手掌图像处理的第一步,手掌与背景分割的好坏会影响到后续基于轮廓的各种操作.同时受手机拍摄图片质量的影响,收集到的图库背景较为复杂.需要使用合适的背景分割算法对图片进行处理.传统的手掌分割算法有以下3种.

1) 固定阈值分割法.通过经验设置手掌与背景图像的分割阈值,根据图像的灰度图与阈值的比较划分出手掌区域与背景区域.这种方法依赖经验选取阈值,适合背景与手掌相差较大的情况.

2) 肤色分割法.通过对原图像进行色彩空间转换,对转换后的图像依据经验选取出固定阈值,转化为二值图像实现背景与手掌的分割.该方法通过图像颜色空间的转换,在一定程度上消除了光照对图片分割的影响.

3) 最大类间方差法.通过对图像的灰度图进行统计处理,寻找使手掌与背景图像灰度分布最大的阈值对图像进行二值化分割,是统计上划分错误概率最小的阈值分割法.

同时为使提取到的轮廓位置信息更加准确,对提取的图像进行形态学处理,使得最后分割出的图像边界相对平滑,同时也可以消除背景孤点.

2.1 肤色最大类间方差法

原图像RGB色彩空间中包含了图片的亮度、对比度等信息,但这些信息不是分离的.原图像的RGB数据不适合于色彩分割.本文把原图像的R、G、B通道转化为YCbCr颜色空间图像,实现色彩和亮度的分离.

假设对所得空间的亮度通道分级为0,1,2,…,k-1,k,k+1,…,L.其中k为分割手掌与背景的阈值.p(k)为像素亮度在0~k级的概率,μ(k)为0~k级的平均亮度值,E(L)为亮度在0~L等级上的期望.依据统计学原理计算在YCbCr颜色空间中的亮度通道上手掌与背景间的类间方差见式(1).

(1)

选取使类间方差最大的k值作为分割阈值可使产生错误划分的概率最小.应用该方法划分图像的二值图像结果见图2.

(a) 原图(b) 二值图(a) 处理前(b)处理后图2 手形图像及其二值分割图Fig.2 Hand shape image and its binarysegmentation diagram图3 形态学处理前后的手掌二值图像Fig.3 Bindry segmentation diagrams of palm beforeand after morphological processing

2.2 手部图像形态学处理

观察划分背景后的手掌二值图像,可以发现其边缘存在一些毛刺(见图3(a)),这是由于相机拍摄时光源照射背景产生与肤色相近的阴影所导致的.这种毛刺,在提取轮廓特征点时会对识别效果造成影响,为去除轮廓边界毛刺,本文采用形态学膨胀和腐蚀对二值图像进行处理.去除手掌轮廓毛刺及部分孤点.

形态学膨胀是通过卷积模板对图像进行扫描,使模板元素与二值图像做与运算.可以取到连通二值图像边界的作用.而腐蚀操作则相反,应用卷积模板对图像进行扫描得出模板覆盖区域的最小值,并用这个最小值作为参考点的像素值.

通过连续使用膨胀与腐蚀可以实现消除噪声的作用.腐蚀膨胀处理后的二值图像见图3(b).

2.3 手掌轮廓坐标提取

应用扫描光栅算法,扫描二值图像的边界信息,该算法数据组将先扫描手掌图像,得到若干轮廓,轮廓示意图如图4所示.由于图像二值化后部分图像存在背景与手掌肤色阈值相似区域被划分为二值图像中的孤岛形状的情况,本文把这些孤岛的轮廓定义为内部轮廓,它们是边界数据组中的多余轮廓信息,需要过滤处理.

图4 手形轮廓示意图Fig.4 Outline sketch of hand shape

采用最大面积过滤法,根据如下算法对边界数据组进行过滤,进而得到手掌轮廓.

①将第一个轮廓置为备选轮廓.

②遍历下一个轮廓信息.

③计算每个轮廓内部的面积.

④比较当前轮廓面积与备选轮廓面积,将面积大的轮廓赋值给备选轮廓.

⑤重复②、③、④步直到遍历全部轮廓信息.

⑥输出最后的备选轮廓作为手掌轮廓.

手掌轮廓提取流程图见图5.

图5 手掌轮廓提取流程图Fig.5 Flow chart of palm contour extraction

2.4 相对手形坐标转换

由于提取的手形特征点坐标依赖于图像采集时手相对于整幅图像的相对位置,手形状是依据整幅图像的原点建立的.当手相对于相机移动时, 其坐标会发生显著变化,将降低依据手形坐标分类算法的鲁棒性.本文通过计算手掌轮廓的质心坐标,并以此为原点,对手形轮廓特征点相对于质心进行坐标变换,从而达到增强手形数据相对稳定的目的.图6为手形质心坐标系示意图.

图6 手形质心坐标系示意图

首先根据式(2),依据手形轮廓计算出手形的质心坐标.式(2)中Contour为手形轮廓数组,Mij为空间距,Mx为质心的X坐标,My为质心的Y坐标.然后对手形轮廓坐标以手形轮廓质心为原点进行坐标变换,得到手掌轮廓,用于下一步的轮廓特征点的提取.

(2)

3 手掌轮廓压缩特征点的提取

原始图像经过预处理转化为手形二值图,轮廓提取算法根据手形二值图提取出手形轮廓点坐标信息,根据手形坐标轮廓信息计算出质心坐标.在高像素图片下提取的手形信息具有较多的冗余数据,未压缩的手形坐标占用大量的内存,支持向量机模型计算出的大量冗余数据会增大计算开销且无法取得更高的分类效果.

本文提出使用等间隔取点法对轮廓点进行压缩.选取(5,780)间隔数量为5的区间作为测试压缩区间.通过从分类正确率和计算开销2个角度对手形轮廓坐标等间隔采样进行对比测试,其中选取全部数据的80%作为支持向量机的训练集,20%作为测试集,得到不同间隔下轮廓坐标点的支持向量机分类正确率及所需计算时间的图像如图7所示.

图7 轮廓点选取结果Fig.7 Selection results of contour points

图8 轮廓点重构图像Fig.8 Reconstructed image of contour points

从图7可以看出,支持向量机分类正确率先随着轮廓点的数量增加不断上升,当特征点数量为55个时,训练的支持向量机在测试集上表现的综合效果最佳,但当轮廓点继续上升,支持向量机训练结果趋势反而逐渐下降,这是由于大量的轮廓点存在冗余数据,对正确分类产生了干扰.同时计算大量轮廓点增大了计算的复杂度,其计算开销也不断增大.对选取的轮廓坐标点进行重构,重构后的图像见图8,重构结果显示当特征点数为55时,分类正确率达到最高值98.25%,当特征点数为50和40时,正确率与之相近,但特征点数为55时,保留了指尖部位更多相对位置相关信息.故选择55个点作为手形分类的特征点,即对所有手掌的手形轮廓进行等间隔取55个轮廓特征点相对于手掌质心的坐标作为手形轮廓身份识别的特征.

4分类模型

支持向量机(SVM)是一种广泛应用于解决分类和回归问题的机器学习方法.在解决二分类问题时,其基本思想是根据不同类别属性数据寻找可以将不同类别数据区分开的超平面.该超平面需满足到不同类别的最近的训练数据向量的距离最大.这些约束划分超平面的数据点即为支持向量.当支持向量机对数据进行预测时,只需判断数据点在该划分超平面的哪一侧,即可产生预测分类.支持向量机可以在二分类问题的基础上扩展解决多分类问题.

手形识别问题即多分类问题,SVM方法为该类问题提供了高效的解决方案.

4.1 基于SVM的手形识别算法

在手形识别中,以手形的n个相对坐标数据作为数据属性,以100个人的m个手形作为训练集,假设存在超平面(w,b)可以将数据正确分类.本文用向量(x1j,…,xij,…,xnj) (j=1,2,…,m)表示第j个手的n个特征,对于(x1j,…,xij,…,xnj)∈D,D为训练数据集合.设yi=1表示手形属于相同类别,则有wTxi+b>0;设yi=-1表示手形属于不同类别,则有wTxi+b<0,即可得

(3)

易得两异类向量之和为

(4)

寻找最大间隔的划分超平面表达式满足

也可转化为式(6).

式(6)即为支持向量机的基本型.

可见基本型即是求限制条件下的最优解,在实际实现中会求取支持向量机的基本形的拉格朗日法的等价问题.

4.2 核函数

支持向量机在解决线性分类问题时表现很好, 但在解决复杂非线性的分类问题时需要借助核函数对原始数据空间进行映射处理, 使其映射到更高的维度空间下. 对于复杂关系的数据在其原有维度空间下划分超平面不易求解或无解, 但当其通过核函数映射到高维度空间时求解划分超平面将变得简单.

本文对现有4种核函数进行了分析.

1) 线性核函数. 主要用于线性可分的数据,其映射后的数据维度与原数据维度相同,具有计算快,参数少的特点,作为基础的核函数对于非线性问题解决的效果不佳.

2) 高斯核函数. 利用高斯函数将数据映射到更高的维度空间,对于局部聚集的数据集合有着很好的效果,参数较少,可以取得很好的计算性能.

3) 多项式核函数. 应用多项式的表征数据,参数数量随多项式的阶数增加而增加,参数越多,其计算复杂度越高.

4) Sigmoid核函数. 当采用Sigmoid作为核函数时,支持向量机等价于多层的神经网络模型.

综合参考实际计算性能及手形相对位置点数据关系,本文选用高斯核函数作为支持向量机的核函数应用数据进行训练.

5 实验与分析

5.1 实验环境

本实验在Windows 10操作系统、Inter i5 2.5GHz CPU、8GB内存、GTX1050Ti GPU条件下进行,机器学习采用Scikit-learn框架,图像预处理采用OpenCV平台.

5.2 模型评估

首先统计类别错误率,查看是否有特定类别存在错误率偏高的情况.以总计100个人,每人20张,共2 000张图片作为测试集,将100人按0~99编号,作为100个类别,误差大于1的分类结果统计如图9所示.

图9 类内误差Fig.9 Intra-class error

其中类别63、97在20张测试图片中分别有分类错误9个,错误率达到45%,比其他类别错误率高.

图10为错误率最高的2个类别的分类结果的概率分布图.

从图10中可以看出,这2类的概率分布相对较均匀,未产生概率极高的类别,同时正确类别仍在概率最大的前5类中.将分类错误的类别63和类别97的重构点图像与概率最好的2个类别的图像进行比较(见图11),可以看出,类别97的重构点图像与类别30的图像整体形状相似,且其质心位置也相似.类别63与类别94虽轮廓形状存在一些差距,但其轮廓特征点相对于质心距离近似.

(a) 类别63的预测概率前五分布(b) 类别97的预测概率前五分布

图11 预测错误重构点比较Fig.11 Comparison between reconstruction point diagram of prediction errors

5.3 算法对比

以本文自建手掌数据库分割背景后的手掌图片作为输入数据集,分别用SIFT、二进制鲁棒不变尺度特征(BRIEF)、ORB图像特征提取算法进行识别实验,实验中3种算法选取拒真率,认假率相等时所对应的阈值作为分类阈值,实验结果见表1.

表1 对比实验Table 1 Comparative experiment

实验结果表明,相比其他3种特征提取算法,本文方法取得了较高的正确率,并且特征提取时间和训练时间消耗比其他3种算法时间更少,本文方法相比于BRIEF算法,匹配时间略长,但优于SIFT和ORB算法.综上,本文算法在综合性能上占优,并取得了最高98.25%的分类正确率.

6 结 语

本文通过手机摄像头采集100个人的手形图片建立手形识别数据库,应用图像最大类间方差法分割和腐蚀膨胀对图像进行二值化及去毛刺的预处理,根据手形图像采集条件最大面积过滤法提取轮廓.使用轮廓质心坐标建立了独立于图像位置的手形轮廓相对坐标,应用高斯核函数的支持向量机对手形轮廓坐标分类,得到手形识别模型.分析实验数据,找到综合准确率和模型训练时间最优的轮廓点个数,以极小训练的时间开销取得了98.25%的分类正确率.若需进一步提升识别正确率,可以结合其他手掌特征.

猜你喜欢

轮廓手掌类别
一起去图书馆吧
跟踪导练(三)
摊开手掌
简析基于概率预测的网络数学模型建构
手掌上的童话
把手掌放在画纸上描一描,画出一只考拉吧
选相纸 打照片
儿童筒笔画
创造早秋新轮廓