随着人工智能研究及应用的不断发展, 对智能装配与精密制造等生产制造系统的敏捷性、适应性与可重复性提出更高要求, 基于人机交互的智能装配技术成为解决以上需求的有效途径. 在人机交互的智能装配系统中, 手部生物结构包含手部装配姿态的总体信息, 其准确的图像特征识别是获得准确装配手形、进行高效姿态信息推断的基础[1]. 基于视觉的智能装配将图像分析获得的人体装配姿态作为装配机器人任务规划的输入信息[2,3], 通过装配任务协作实现高效高柔性的装配过程[4,5].
作为手部生物结构重要的图像特征[6], 指节图像的建模与识别是获得装配姿态完整信息推断的前提. Zhang等[7]结合Gabor滤波在指节位置处进行纹理建模, 实现了基于纹理特征的指节识别. Usha[8]等利用手部文本模式特征的极线与割线几何, 结合指节表面的对称性特征给出了指节位置的估计. Vishwakarma[9]等通过将手指关节纹理图像的局部凸方向图和FKP图像的局部方向特征进行融合识别. 姚争为[10]等将手纹与关节位置相关性结合, 利用多视点优化技术得出手部估计. 上述研究方法均局限于小尺度静态图像特征, 对测试条件要求苛刻.
考虑到肤色在色彩空间中都具有比较明显的聚类分布特点[11], 并且在三色空间中的分布具有非线性特点[12], 图像的随机特征为关节的检测提供了新途径. 高斯过程是一种良好的贝叶斯分类过程, 经常应用于半监督聚类方面, Wang等[13]基于高斯内核长度的尺度估计来实现高斯过程分类, Bazi等[14]将多源高光谱数据和高斯过程结合, 通过稀疏近似进行数据有效分类. 由于高斯模型的主要计算复杂度来自对每一类样本的核矩阵求逆,而不是对整体样本的核矩阵求逆,因此,在处理多类问题时,样本的类别越多,该模型的优势会越明显[15–17].
指节图像灰度值的随机性较强, 但其结构具有近似的高斯分布特征, 因此考虑在指节图像上建立高斯过程模型, 将关节数据的聚类特征作为描述对象. 本文应用同态滤波进行图像预处理, 对图像特征增强, 利用高斯过程模型对聚类特征数据进行抽取, 在数据拟合的基础上识别出手部关节部位,以期获得较稳定的指节图像特征和指节识别结果.
1 图像特征增强手部关节的识别主要由肤色的聚类特征和纹理边缘细节表现出来, 由于光照条件和手部运动多变等因素, 致使识别结果往往产生较大的差异, 选用合适的滤波方法进行图像预处理对后续结果有较大影响. 同态滤波是把频率过滤和灰度变换结合起来的一种图像处理方法, 依靠图像的照度/反射率模型作为频域处理的基础, 利用压缩亮度范围和增强对比度来改善图像质量,可以使图像处理符合人眼对于亮度响应的非线性特性, 能有效地减小光照变化并锐化边缘细节, 消除光照不均匀带来的影响,同时还避免了直接对图像进行傅立叶变换处理的失真.
由于照度相对变化很小, 可以看作是图像的低频成份, 而反射率则是高频成份. 对于照明不均匀的图像的处理, 要尽量消减入射光分量的影响, 即压制图像的低频分量, 同时增强物体的反射光分量, 即放大图像的高频分量. 同态滤波[18]中图像的灰度值
高斯过程是基于贝叶斯框架的无参数核方法, 可用于有监督学习, 被成功应用于回归与分类. 在模型构建过程中可自动地获取超参数, 具有完全的贝叶斯公式化表示, 预测输出具有清晰的概率解释, 并且可以直接实现多分类. 本文运用高斯过程的二分类, 来实现关节图像的目标识别,通过寻找两个潜变量函数,分别靠近其中的一类样本而远离另一类样本,根据待预测样本距离这两个潜变量函数的远近来判断类别, 获得后验概率函数的分析表达式,避免了逼近后验概率带来的高计算复杂度问题.
令
对指节图像中对应高密度的关节位置分布进行分析, 其分布特点具有较为明显的聚类分布趋势与聚集结构, 将抽取出的图像数据集作为特征学习的训练集, 对训练集的学习过程即为获得该模型中各参数稳定结果的过程.
令
$\left\{ \begin{gathered} {f_ + }(x) \sim gp(0,k(x,{x'})) \hfill \\ {f_{\rm{ - }}}(x) \sim gp(0,k(x,{x'})) \hfill \\ \end{gathered} \right.$ | (1) |
其中,
$k(x,{x'}) = {\theta _1}{e^{\frac{{ - ||x - {x'}|{|^2}}}{{{\theta _2}}}}}$ | (2) |
可以得到
$\left\{ \begin{gathered} p({F_ + }|D,\theta ) = N({F_ + }|0,K) \hfill \\ p({F_ - }|D,\theta ) = N({F_ - }|0,K) \hfill \\ \end{gathered} \right.$ | (3) |
以及在
$\left\{ \begin{gathered} p({f_{ + .*}},{F_ + }|D,x,\theta ) = N(\left[ \begin{gathered} {f_{ + ,*}} \hfill \\ {F_ + } \hfill \\ \end{gathered} \right]\left[ \begin{gathered} {k_{**}} {K_*} \hfill \\ K_*^T K \hfill \\ \end{gathered} \right]) \hfill \\ p({f_{ - .*}},{F_ - }|D,x,\theta ) = N(\left[ \begin{gathered} {f_{ - ,*}} \hfill \\ {F_ - } \hfill \\ \end{gathered} \right]\left[ \begin{gathered} {k_{**}} {K_*} \hfill \\ K_*^T K \hfill \\ \end{gathered} \right]) \hfill \\ \end{gathered} \right.$ | (4) |
其中,
$\left\{ \begin{aligned} p({f_{ + .*}},{F_ + }|D,x,\theta ) = & N({f_{ + .*}}|{K_*}{K^{ - 1}}{F_ + },{k_{{\rm{**}}}}{\rm{ - }}{K_*}{K^{ - 1}}K_*^{\rm T}) \hfill \\ & \triangleq N({f_{ + .*}}|{m_{ + ,*}},{A_{ + ,*}}) \hfill \\ p({f_{ - .*}},{F_ - }|D,x,\theta ) = & N({f_{ - .*}}|{K_*}{K^{ - 1}}{F_ - },{k_{{\rm{**}}}}{\rm{ - }}{K_*}{K^{ - 1}}K_*^{\rm T}) \hfill \\ & \triangleq N({f_{ - .*}}|{m_{ - ,*}},{A_{ - ,*}}) \hfill \\ \end{aligned} \right.$ | (5) |
为使对应类样本上潜变量函数值尽可能小, 而在另一类样本上潜变量函数值尽可能大, 采用如下的似然函数:
$\left\{ \begin{gathered} p(y = + 1|{f_ + }(x)) = {e^{ - \frac{{f_ + ^2(x)}}{2}}} \hfill \\ p(y = - 1|{f_ + }(x)) = 1 - {e^{ - \frac{{f_ + ^2(x)}}{2}}} \hfill \\ p(y = - 1|{f_ - }(x)) = {e^{ - \frac{{f_ - ^2(x)}}{2}}} \hfill \\ p(y = + 1|{f_ - }(x)) = 1 - {e^{ - \frac{{f_ - ^2(x)}}{2}}} \hfill \\ \end{gathered} \right.$ | (6) |
可以得到如下形式的联合似然:
$\left\{ \begin{gathered} p(Y|{F_ + }) = \prod\limits_{i = 1}^n {p({y_i}|{f_{ + ,i}})} = \prod\limits_{i \in {S^ + }} {{e^{ - \frac{{{f^{_ + ^2}}(x)}}{2}}}} \prod\limits_{i \in {S^ - }} {(1 - {e^{ - \frac{{{f^{_ + ^2}}(x)}}{2}}})} \hfill \\ p(Y|{F_ - }) = \prod\limits_{i = 1}^n {p({y_i}|{f_{ - ,i}})} = \prod\limits_{i \in {S^ - }} {{e^{ - \frac{{{f^{_ - ^2}}(x)}}{2}}}} \prod\limits_{i \in {S^ + }} {(1 - {e^{ - \frac{{{f^{_ - ^2}}(x)}}{2}}})} \hfill \\ \end{gathered} \right.$ | (7) |
其中
从特征学习的角度看, 学习获得的两类特征模型可作为图像特征的检测器, 检测结果为具体图像的两个似然值. 将经过正负类样本标记过的两种模型似然值作为输入, 利用观测数据集在后验模型下的对数似然对迭代过程进行收敛监测, 依据估计结果对手部关节图像进行识别.
通过联合先验概率和联合似然,可以得到边缘似然函数:
$\left\{ \begin{aligned} {p_ + }(Y|D,\theta ) = \int {P(Y|{F_ + })} P({F_ + }|D,\theta )d{F_ + }\\ {p_ - }(Y|D,\theta ) = \int {P(Y|{F_ - })} P({F_ - }|D,\theta )d{F_ - } \\ \end{aligned} \right.$ | (8) |
利用贝叶斯规则和边缘化条件先验可以分别得到
$\left\{ \begin{aligned} p({f_{ + ,*}}|D,Y,{x_*},\theta ) = \int {p({f_{ + ,*}}|{F_ + },D,{x_*},\theta )} P({F_ + }|D,Y,\theta )d{F_ + } \\ p({f_{ - ,*}}|D,Y,{x_*},\theta ) = \int {p({f_{ - ,*}}|{F_ - },D,{x_*},\theta )} P({F_ - }|D,Y,\theta )d{F_ - } \\ \end{aligned} \right.$ | ((9)) |
针对图像平面上属于观测集X中的测试位置
${\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} p(y = + 1|D,Y,{x_*},\theta ) = \int {{e^{ - \frac{{{f^{_ + ^2}}(x)}}{2}}}p({f_{ + .*}},{F_ + }|D,Y,{x_*},\theta )} d{f_{ + ,*}}$ | ((10)) |
因此, 样本
${y_*} = \arg \max \{ p(y = + 1|D,Y,{x_*},\theta ) \cdot p(y = - 1|D,Y,{x_*},\theta )\} $ | ((11)) |
以特征增强为基础, 利用样本对象的聚类测度, 学习数据分布的特征模型, 将学习获得的两类特征模型作为图像特征的检测器, 检测结果即为图像的两个似然值. 将经过正负类样本标记过的两种模型似然值作为输入, 利用观测数据集在后验模型下的对数似然值对迭代过程进行收敛监测, 依据估计结果对手部关节图像进行识别. 算法流程如图1所示, 模型特征学习过程主要分为初始化阶段、学习阶段和推理阶段.
初始化阶段, 根据样本数据的相似性, 使用欧氏距离为测度对无类别数据集进行聚类, 从而获得数据集的类别标签. 学习阶段用关节区域内各像素的近邻像素信息更新该像素所属离散区间对应的模型参数, 利用边缘像素与中心像素的模型聚类特征进行参数更新. 推理阶段将更新的数据模型和阈值判定条件结合, 确认考虑中心像素到所在离散区间对应模型的距离, 作为判定关节的依据, 同时将确认标签作为下一次参数更新的条件. 当待定像素所学习到的概率密度值大于经验阈值时, 判定待定像素属于关节范围. 在对每一步更新得到的新信息形式对待定区域进行确认时, 不增加新的被确认像素时即可判定学习过程已趋于稳定, 各参数获得收敛值.
4 实验测试分析
一般光照条件下, 图像在采集、传输中往往会受到噪声污染, 通常表现为或大或小的极值, 降低了图像质量, 需在尽量保留图像细节特征的前提下, 对噪声抑制. 本文中采用具有照度不均匀校正技术的同态滤波来进行图像预处理, 构建巴特沃斯滤波器和高斯滤波器, 对远指节、中指节和近指节三组图像进行预处理, 图片尺寸为100
从图2的结果可以看出, 与原始图像相比, 滤波结果压缩了图像整体动态范围, 同时增强低灰度值区域的对比度, 强化了纹理特征. 进一步对比图2(b)与图2(c), 高斯滤波器同态滤波进一步对图像的局部细节特征进行了凸显, 提高了特征的整体性, 有利于后续偏移分布观测数据的提取.
以指节图像的数据分布模式学习为目标, 将聚类测度分布作为指节的生物特征. 初始化使用欧氏距离测度对无类别数据集进行聚类, 并使用两个经验预设硬阈值1.6与0.75对图像区域进行初始分割. 似然值大于预设阈值的区域认定为关节区域, 似然值处于两个预设阈值之间的区域认定为待确认关节的区域, 似然值小于预设阈值的区域认定为非关节区域. 如图3为图2(a)所示指节图像对应学习特征检测, 红色像素位置是本阶段已确认为关节的位置, 蓝色像素位置为当前步的计算位置.
由图3(a)中得出, 由于数据本身的高斯特征, 初始化阶段可以得到由相似数据形成的较小规模的簇, 在学习阶段图3(b)中, 新数据点的属性按照均值为0和协方差为
在训练图像初始学习的基础上, 利用关节区域内各像素的近邻像素信息更新该像素所属离散区间对应的模型参数, 并考虑以关节区域内部像素位置为中心的5*5模板边缘上的像素, 用边缘像素与中心像素的模型聚类特征进行参数更新, 获得对当前关节信息的学习. 图4为不同关节位置处, 由学习结果得到的观测数据抽取结果.
由于测度分布对于不同数据的适应性有些许差异, 高斯过程模型是建立在概率论框架之上, 以概率分布的形式给出预测输出, 相似性差异最大化的高斯核函数, 使结果更加具有统计意义, 测度分布对不同数据的适应性差异对实验结果所产生的影响可以忽略不计. 实验结果表明对于远指节和中指节, 数据的众数和均值相对较大, 偏态较为稳定, 但对于近指节, 其离散程度较大, 导致方差和标准差也随之增大.
将学习获得的两类特征模型作为图像特征的检测器, 将经过正负类样本标记过的两种模型似然值作为输入, 利用观测数据集在后验模型下的对数似然对迭代过程进行收敛监测, 收敛条件是数据对数似然值增量小于200. 收敛监测结果显示, 由于数据分布的特异性, 近指节的训练在70步之后趋于收敛, 而中指节和远指节的训练在40步之后趋于收敛.
结果显示, 由于非关节位置处高似然值噪声位置具有不稳定性, 存在较大变化区间, 但随着迭代次数的增多, 模型似然值不断升高, 由于参数的估计值变化比较大, 导致状态估计与其真实值偏差较大, 当参数收敛于真实值附近后, 状态估计值很好地跟踪了其真实值的变化, 表明模型对数据的适应性不断升高, 对初始化的模型结果进行了有效修正.
学习后的模型对于指节的识别结果如图5所示, 图中标识出了关节的位置, 结果显示识别结果理想. 在CPU: Intel i3 330M, 主频2.13 GHz, 双核心; 内存: 2 GB配置环境下, 图5中从左往右不同指节识别的计算时间依次为0.7383 s、0.5894 s、0.6285 s.
为进一步检验算法的可行性和识别率, 制作了3个手势关节测试图像库, 分别为不同人群对象的手部远指节、中指节、近指节三类, 数量分别210、197、204幅, 大小均为100
图像ROC的曲线下面积(AUC)总体衡量了识别器的识别能力. 从图6中可以看出, 学习所得模型与初始化所用分布对应的识别率有明显差异, 说明聚类特征被逐步增强, 学习后相比初始化模型结果的真正类概率值有明显升高, 说明收敛后的模型结果对测试图像在硬阈值分割下的识别能力有显著上升. 3条ROC的AUC分别为0.7203、0.5231与0.6385, 由于不同关节处的特征表象不一样, 因此识别效果也会有较大差异, 但不同对象的同一关节处的纹理特征都具有较大的相似性分布, 相比三处关节, 近指节的识别效果明显好于远指节和中指节. 另外, 图像数据采集的光线、位置以及图像的采集方式等因素也都会对识别效果产生一定的影响[6].
5 结论以同态滤波处理后的图像为观测集, 利用高斯过程分类模型实现了指节图像二类特征的学习, 根据学习得到的图像分类模型, 将测试图像中的模型似然值作为图像特征对应的信息阵, 对含有手指关节的手部测试图像上进行固定阈值关节目标的识别. 实验结果表明, 本文方法对于不同关节的识别都得到了比较好的实验效果, 并且可以直接得到后验概率的分布表达式, 提高了关节目标识别的准确性和效率, 相对于由不同的逼近方法得到的分类器来进行实验, 速度有了明显的提高. 为手部特征和动作识别、行为理解以及人机合作智能化装配等提供了新的途径, 也可应用于生物特征的身份识别验证.
[1] |
Bhuyan MK, MacDorman KF, Kar MK, et al. Hand pose recognition from monocular images by geometrical and texture analysis. Journal of Visual Languages & Computing, 2015, 28: 39-55. DOI:10.1016/j.jvlc.2014.12.001 |
[2] |
Wang Y, Ewert D, Vossen R, et al. A visual servoing system for interactive human-robot object transfer. Journal of Automation and Control Engineering, 2015, 3(4): 277-283. DOI:10.12720/joace.3.4.277-283 |
[3] |
Corrales JA, García Gómez GJ, Torres F, et al. Cooperative tasks between humans and robots in industrial environments. International Journal of Advanced Robotic Systems, 2012, 94(9): 1-10. DOI:10.5772/50988 |
[4] |
Lenz C, Knoll A. Mechanisms and capabilities for human robot collaboration. Proceedings of the 23rd IEEE International Symposium on Robot and Human Interactive Communication. Edinburgh, UK. 2014. 666–671. [doi: 10.1109/ROMAN.2014.6926329]
|
[5] |
Tan JTC, Duan F, Kato R, et al. Safety strategy for human-robot collaboration: Design and development in cellular manufacturing. Advanced Robotics, 2010, 24(5-6): 839-860. DOI:10.1163/016918610X493633 |
[6] |
陆劲挺, 贾伟, 叶慧, 等. 指节纹识别综述. 模式识别与人工智能, 2017, 30(7): 622-636. DOI:10.16451/j.cnki.issn1003-6059.201707005 |
[7] |
Zhang L, Zhang L, Zhang D, et al. Online finger-knuckle-print verification for personal authentication. Pattern Recognition, 2010, 43(7): 2560-2571. DOI:10.1016/j.patcog.2010.01.020 |
[8] |
Usha K, Ezhilarasan M. Hybrid detection of convex curves for biometric authentication using tangents and secants. Proceedings of the 3rd IEEE International Advance Computing Conference. Ghaziabad, India. 2013. 763–768.
|
[9] |
Vishwakarma S, Agrawal A. A survey on activity recognition and behavior understanding in video surveillance. The Visual Computer, 2013, 29(10): 983-1009. DOI:10.1007/s00371-012-0752-6 |
[10] |
姚争为, 潘志庚. 基于体素的人手结构自动估测. 中国图象图形学报, 2014, 19(1): 54-61. DOI:10.11834/jig.20140107 |
[11] |
Rehg JM, Kanade T. DigitEyes: Vision-based hand tracking for human-computer interaction. Proceedings of IEEE Worshop on Motion of Non-Rigid and Articulated Objects. Austin, TX, USA. 1994. 16–22
|
[12] |
Mikić I, Trivedi M, Hunter E, et al. Human body model acquisition and tracking using voxel data. International Journal of Computer Vision, 2003, 53(3): 199-223. |
[13] |
Wang L, Li C. Spectrum-based kernel length estimation for Gaussian process classification. IEEE Transactions on Cybernetics, 2014, 44(6): 805-816. |
[14] |
Bazi Y, Melgani F. Gaussian process approach to remote sensing image classification. IEEE Transactions on Geoscience and Remote Sensing, 2010, 48(1): 186-197. |
[15] |
Hensman J, Matthews A, Ghahramani Z. Scalable variational Gaussian process classification. Proceedings of the 18th International Conference on Artificial Intelligence and Statistics (AISTATS). San Diego, CA, USA. 2014. 351–360.
|
[16] |
He JJ, Gu H, Wang ZL. Bayesian multi-instance multi-label learning using Gaussian process prior. Machine Learning, 2012, 88(1-2): 273-295. DOI:10.1007/s10994-012-5283-x |
[17] |
Titsias MK. Variational learning of inducing variables in sparse Gaussian processes. Proceedings of the 12th International Conference on Artificial Intelligence and Statistics (AISTATS). Clearwater Beach, FL, USA. 2009. 567–574.
|
[18] |
陈春宁, 王延杰. 在频域中利用同态滤波增强图像对比度. 微计算机信息, 2007, 23(2-3): 264-266. |