融合手势识别和终端用户评估的交互控制①

2022-09-20 04:11王卫星胡宁峰
计算机系统应用 2022年9期
关键词:卷积肤色手势

张 宁, 王卫星, 胡宁峰

1(贵州大学 现代制造技术教育部重点实验室, 贵阳 550025)

2(贵州大学 机械工程学院, 贵阳 550025)

人机交互(human-computer interaction, HCI)是关于设计、评价和供人们使用的交互式计算机系统. 在人机交互的发展过程中, 经历了从命令行界面交互阶段、图形用户界面(GUI)交互阶段到自然和谐的人机交互阶段. 目前基于穿戴设备的手势识别需要用户佩戴或触摸设备以感知人的手势变化[1,2], 其约束性使得人们对更友好的人机交互方式提出需求. 随着人工智能及计算机技术的快速发展, 基于视觉识别的人机交互是利用计算机输入命令形成成像系统, 替代人体视觉感知进行图像处理和分析任务. 该技术对环境的适应性较强, 也为手势识别提供了一个更加自然的人机交互接口.

手势是人与人之间最为自然的交流方式, 作为人机交互的手段具有灵活、直观的特点. Karam等人[3]通过对手势交互系统的研究将手势划分为了5类: 即指示性手势、示意性手势、操作性手势、信号性手势和手语性手势, 让手势交互系统的交互手势有了意义上的归属. 虽然手势识别在技术和方法上不断提升, 但在设计基于手势识别的交互系统时, 大多数研究是优先考虑实现交互系统的方便性, 即提高手势识别率而忽略了实际的用户需求和偏好, 导致最后交互系统可用性较低. 本文研究的目的是从优化手势的肤色分割和手势识别过程出发, 融合用户认知偏好, 为设计一个更有效的手势识别交互系统奠定基础.

1 交互手势设计理论

如今, 人机交互设计已经不仅仅是以完成交互任务为目的, 而是在这基础上更多地考虑用户的交互过程及交互体验. 娄泽华等人[4]采用自顶向下的方法从用户、交互过程和交互系统3个方面总结出了12条手势设计原则, 为手势交互系统中的手势设计提供了一个立足点, 并为已设计的手势集提供一个综合评估标准.

虽然在现有的研究中总结出了一系列手势设计原则, 但交互设计师在设计交互手势时缺乏系统性, 用户体验感较差. 而在交互设计的早期通过了解用户的偏好和行为, 可以为设计者提供更有价值的信息, 可以实现交互系统的有用性和高效性. 因此, 用户参与式的研究被引入到手势设计之中, 减少设计师与最终用户的认知差距. 在手势设计阶段, 我们通过用户参与手势的引出来建立手势的共识集. Nacenta等人[5]研究发现用户定义的手势更容易被用户所记忆. Nielsen等人[6]提出了一种引出和开发用户定义手势的程序, 使用用户引导的程序对所研究的手势设计和整个交互设计过程提供了贡献. 根据手势设计的原则, 本文构建了8种经常使用手势的交互任务如表1: 开始、暂停、完成、放大、缩小、上一步、下一步和旋转. 这8类交互命令通常应用在智能家居环境、智能机器人/无人机操作的移动设备、车载辅助驾驶任务等领域. 对于每个交互任务, 通过大量的用户参与进行手势设计. 最终, 相同的手势被分为一组, 选择手势相同的最大组来建立手势的共识集, 该方法的流程如图1所示.

图1 交互任务的共识手势设计

2 RGB图像的手势分割和识别方法

基于计算机视觉计算的图像处理在手势识别过程中有两个阶段: 手势分割和手势识别[7]. 目前, 手势分割是手势分析的第1步. 对于手势分割, 主要目标是将手部区域与背景分开. RGB图像的手势估计对设备要求低且成本低廉, 在人机交互领域得到了广泛应用[8]. 王龙等人[9]提出了一种结合肤色模型和卷积神经网络的手势识别方法. 袁敏等人[10]采用阈值分割模型来提取手势的肤色, 通过直接选定Cr, Cb的阈值范围(133≤Cr≤173, 77≤Cb≤127)确定肤色范围, 这种提取方式简单快速, 但误检率较高. 杨红玲等人[11]提出一种基于YCrCb颜色空间的肤色分割法, 去除背景后结合卷积神经网络进行手势识别, 但大多针对简单的场景且网络运算量较大. 当手势图像受到交互环境光干扰时,简单的肤色分割模型并不能准确地分割出手势的区域.在手势识别阶段, 随着深度学习的不断发展, 大多数目标识别网络, 诸如Fast R-CNN[12]、Faster R-CNN[13]和Mask R-CNN[14]等都是在全卷积神经网络(FCN)基础上更新发展而来的网络模型. 由于这些卷积神经网络在进行目标检测时会伴随着生成大量的候选区域, 最后对候选区域进行分类和回归, 计算量较大, 对数据集及设备的要求较高.

为了提高实际手势交互系统, 本文提出了椭圆肤色建模结合轻量化卷积神经网络(MobileNet-V2)的方法来识别交互手势. 以手势区域的二值化灰度信息为输入, 降低原始RGB图像信号噪声的同时利用轻量化卷积神经网络的深度可分离卷积参数少、计算量小的特点减少手势识别模型的运算量. 手势分割和识别框架如图2所示.

图2 手势分割和识别框架图

2.1 RGB图像色彩平衡处理

普通相机采集图像过程中, 由于成像设备不具备从变换的环境光照下维持图像原本颜色的功能, 导致采集的RGB图像颜色与真实颜色存在一定程度的色彩偏差, 选择合适的色彩平衡校正算法将有效避免光照环境对RGB图像颜色偏差的影响. 本文选用灰度世界算法(gray world theory, GWT)[9]平衡RGB手势图像. GWT算法将R、G、B三个分量对光线平均反射的均值趋于同一灰度值, 从而可以减弱环境光的影响,达到RGB图像色彩的平衡. GWT表达公式如下:

其中, R、G、B分别为RGB图像的3个通道, RAVG、GAVG 、B AVG 为R、G、B三通道平均值, K为R、G、B三个通道的增益系数.

2.2 椭圆肤色分割模型

肤色分割是利用颜色空间的转换分离肤色区域与背景区域的方法. YCrCb颜色空间是一种正交颜色空间, 可以减小RGB颜色空间中的冗余信息. 由于YCrCb颜色空间可以独立统计各个颜色成分, 从而用于优化彩色信号的传输. RGB图像的肤色信息转化到YCrCb颜色空间时, 肤色像素点映射在CrCb的二维空间中近似呈现椭圆分布, 且肤色区域的色度与亮度成非线性函数关系. 因此, 为了使肤色聚类时不受亮度Y的影响, 从RGB颜色空间转换到YCrCb颜色空间时去除了高光和阴影部分(即Y的最大值和最小值), 将色度Cr、Cb进行非线性变换, 最终建立CrCb的椭圆肤色统计模型. 如果该模型判断RGB图像对应的每个像素点值在椭圆内则为肤色像素点, 否则为非肤色像素点[15].通过椭圆肤色模型分割手势区域, 我们得到手势的二值图像. 椭圆模型计算公式为式(5)和式(6), 肤色判别公式为式(7).

2.3 手势轮廓的重建

经过上述肤色分割过程得到手势的二值图像, 但手势区域边缘可能会存在大小不一的空洞或者是其他非手势区域的现象, 这将会影响手势特征地提取, 因此我们重建手势肤色区域. 由于现实中使用相机采集手势时, 用户做出的手势常常位于身体前方, 且靠近相机的摄像头, 因此手势区域在整个图像中占比较大. 首先,采用OpenCV中cv2.findContours函数查找二值图像中所有轮廓; 其次, 用lambda表达式对轮廓区域面积大小进行排序, 以轮廓面积为参数找到最大轮廓并绘制最大轮廓的外接矩形; 最后, 利用形态学的闭运算,设置结构为3×3的全1矩阵对二值图像进行先膨胀后腐蚀的过程, 将最大轮廓区域填充为白色, 其余区域为黑色, 并平滑区域边界.

2.4 基于二值化手势图像的手势识别网络

在手势识别阶段, 采用轻量级卷积神经网络MobileNet-V2对分割后的手势进行特征提取和识别,相比于传统的卷积神经网络在确保正确率的前提下大大减少了模型的参数和运算量, 可以实现在移动设备或者嵌入式设备上运行手势识别模型. MobileNet-V2网络是在MobileNet-V1网络的基础上改进的[16]. 它的主要优点是可以有效地降低参数和计算复杂度. 除了中等深度的可分离结构, 它还包括一个扩展层(expansion layer)和一个投影层(projection layer). 因此, MobileNet-V2网络的整个过程由“投影层→特征提取卷积层→扩展层”变为“扩展层→特征提取卷积层→投影层”.MobileNet-V2网络选择了Linear Bottleneck代替nonlinearities非线性激活函数直接输出, 进一步防止提取的特征被ReLU函数压缩破坏. MobileNet-V2的网络模块如表2所示.

表2 MobileNet-V2网络模块

表2中, H×W为通道大小, t为通道扩张倍数, K为卷积核大小, s为步长. K′表示输出通道数.

3 实验设计

3.1 以用户为中心的共识手势调研

实验选取了平均年龄在26岁的50名被试(25男,25女)进行交互手势的设计实验. 被试的惯用手为右手, 其中35位被试使用过手势交互系统的相关经验,另外15位仅仅了解过这方面的知识. 通过向被试口头描述本实验的流程及构建的8个任务命令, 让被试为其设计1个可执行的手势. 最后我们通过拍摄视频方式收集50名被试引出的手势.

对于每个交互任务, 将用户引出的相同手势分为一组, 提取相同手势数量的最大组为该交互任务的共识手势, 最后8类交互任务得到了8个共识手势. 在得到共识手势后, 50名被试还需要对该8类共识手势进行主观评价进一步分析手势的可用性. 首先, 本文确定了4个手势的评价指标及相关描述: (1)记忆性: 一个手势被设计一段时间后, 用户再次使用时的记忆率[5];(2)舒适度: 执行一个手势后, 用户身体上的难易程度感知, 以及是否会产生疲惫感[17]; (3)直观性: 看到这个命令是否会很容易地想到与之对应的手势[6]; (4)匹配度: 当引出一个手势时, 人们认为手势与交互任务匹配度的主观评价[18]. 其次, 进行问卷调查. 问卷包含8个题目, 每个题目有5个选项, 每项采用Likert量表(非常不符合(1分)、不太符合(2分)、不确定(3分)、符合(4分)以及非常符合(5分))收集被试对手势可用性的主观评价.

3.2 模型验证

3.2.1 数据采集

本文的实验数据采用500万像素的微软LifeCam相机采集得到, 相机模拟交互平台中的摄像头, 采集面积设置为[900, 900].实验数据处理采用TensorFlow 1.14.0环境和OpenCV-Python 3.4.2.16的开发平台.

50名(25名男性和25名女性)被试者再次被邀请参加了手势的采集实验, 实验中, 被试者需要执行8类共识手势, 每位被试要求在操作每一种手势时变换2个不同角度, 每个角度的手势需采集2张, 共计采集的图像数据800张. 在收集手势实验中, 摄像机被放置在实验者的正前方150 cm, 与视平线夹角15°位置, 采集过程如图3所示. 实验前, 所有被试者被要求抬头挺胸正视前方, 胳膊放松平放在桌面上. 实验中, 被试者根据工作人员对手势特征的口头描述做出相应的手势.被试者做每一个手势时, 手臂需要从桌面抬起60°对准相机摄像头. 然后, 保持手臂不动, 相同的手势要求以舒适的姿势变换两个角度. 每个手势角度持续2 s, 变换不同手势动作操作间隙休息1 min, 以避免肌肉疲劳.身体其他部位尽量保持静止, 便于相机能够准确采集手部姿势.

图3 手势数据采集图

3.2.2 数据处理

大规模数据集是卷积神经网络成功应用的前提[19].在训练模型之前, 需要对手势数据进行扩增, 以提高网络的泛化能力. 扩增阶段采用了Keras的图像数据生成器策略(image data generator). 图像生成器对每类训练的手势图片适时地进行数据增强处理, 本文采用了8种数据扩增处理方法: 分别是旋转变换、翻转变换、随机裁剪、偏移变换、随机噪声、调整对比度变换、USM锐化增强和直方图均衡化变换.

对50名被试采集的800 (50×8×2)张手势图像进行数据扩增得到6 400个手势图像. 其中6 000张图像用于模型的训练, 400张图像用于模型的测试. 为了保证后期算法模型处理的速度以及不过度影响图像失真,在手势图像从RGB颜色空间转换到YCrCb颜色空间时, 将手势图像统一归一化到32×32尺寸大小.

4 结果与分析

4.1 共识手势及主观评价

对50位被试进行手势设计调研后, 通过统计相同手势的分组情况, 得到最大组的手势即为该任务命令的共识手势, 本文构建的8个任务命令的共识手势分别如表3所示.

表3 交互任务与共识手势

在对手势进行主观评价调查中我们共发放50份调查问卷, 得到有效问卷50份, 调查统计结果如图4所示. 根据样本量我们统计了交互手势的记忆性、舒适度、直观性及匹配度的平均分, 采用Jarque-Bera检验法结合P值计算对样本数据进行正态性检验, 结果如表4所示.

从图4中可以看出, 被试者对于手势4个指标符合程度的接受度较好. 从表4中可以更具体的看出: 记忆性指标中“开始执行”手势D与“完成”手势F (P<0.05)呈现出显著性, 不具有正态分布特质, 原因是胜利的手势与OK的手势在日常生活中有相似的语义,因此被试者认为这两个手势不易区分记忆; 匹配度指标中“完成”手势F呈现出显著性, 不具有正态分布特质, 原因是“开始执行”手势D也可以匹配“完成”命令的交互任务; 舒适度指标和直观性指标中所有手势都没有呈现出显著性, 表明被试者对手势的符合度评价较为一致. 综合来看, 用户引出的手势在实际交互任务中具有较高的符合度.

图4 交互手势的可用性评价

表4 交互手势主观评价及P值

4.2 肤色分割与手势识别结果

图5展示了手势的肤色检测和分割过程. 经过色彩均衡处理和椭圆肤色模型, 原始RGB图像图5(a)转换到YCrCb颜色空间, 得到二值化图像图5(b), 原始图像中的肤色区域被很好地提取出来; 通过计算二值化图像中的所有轮廓的面积, 为最大轮廓绘制矩形框进一步定位手势区域如图5(c); 通过形态学闭运算处理将最大轮廓填充为白色, 其余区域填充为黑色, 平滑手势轮廓后结果如图5(d)所示. 图6展示了本文经过处理后的8类共识手势的二值化手势图像.

图5 手势肤色分割过程

经过肤色分割处理后, 将6 000张手势图像输入到MobileNet-V2网络中进行训练, 400张手势数据被用于测试. 本文使用0.000 1学习率、Adam优化器和交叉熵损失函数来分析训练集中手势的准确性和损失率, 并且采用精确率、召回率、调和平均数来表示模型对8种不同手势的识别性能, 如图7所示.

图7 共识手势识别率

4.3 方法对比结果

将本文模型与另外4种方法进行比较, 第1种是王龙等人[9]提出的CNN结合肤色模型的方法. 该方法在Marcel-Train标准手势数据库中对模型进行测试,Marcel-Train数据库共有7种不同的手势, 每种手势包含了3种不同背景(亮、暗、复杂背景)下的图像. 首先利用肤色的高斯模型分割手势区域, 然后利用CNN识别手势. 第2种方法是杨波等人[20]提出的复杂背景下基于手势空间分布特征的手势识别算法HDF. 该方法利用高斯模型的分割手势的肤色区域, 综合手势特征向量的相似性来识别手势, 在环境光相对稳定下进行了手势识别实验. 其次, 我们还增加了单独MobileNet-V2网络和VGG16网络的识别率对比. 图8显示了上述方法在本文构建的8种手势数据集中识别率的比较.从对比结果看出, 文本的椭圆肤色模型结合MobileNet-V2网络在基于RGB彩色图像的手势识别中有较好的识别率和稳定性.

图8 5种方法的识别率曲线

5 结论

针对基于手势识别的人机交互系统, 存在用户对交互手势容易产生的认知偏差导致交互系统的有用性低, 本文的贡献在于从终端用户(参与者)出发引出交互的共识手势, 根据记忆性、直观性、舒适度和匹配度指标得到用户对交互手势的主观评价结果. 并将椭圆肤色分割模型和MobileNet-V2手势识别网络创新性结合, 优化了手势分割和识别过程. 从结果看出优化后的方法对RGB彩色手势图像有较好的分割和识别效果, 在确保识别率的前提下大大减少了网络参数和运算量, 这也为基于RGB手势识别的交互系统更广泛地走入人们生活提供技术和理论基础.

下一步的工作包含两个方面: (1)本文构建的交互任务较少, 因此, 在未来的工作中将进一步扩展交互任务和手势的类别; (2)使用本文引出的共识手势来实际开发交互界面系统, 并以实际交互任务模拟实验进行基于手势识别的交互控制系统评估.

猜你喜欢
卷积肤色手势
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
肤色(外一首)
人的肤色为什么不同
基于深度卷积网络与空洞卷积融合的人群计数
为什么人有不同的肤色?
挑战!神秘手势
胜利的手势
卷积神经网络概述
认手势说数字