基于算法的人体动作识别 [基于皮肤特性的人体手部识别算法的研究]

  摘要:本文利用HSV颜色模型,针对人体皮肤的色相统计特性,对人体手部进行了识别,然后通过中值滤波消除了噪声,最后计算出了手部所在的重心位置。   关键词:HSV颜色模型手势识别中值滤波
   随着计算机技术的发展,人与计算机之间的交互不再局限于鼠标键盘,特别是近年来手势在人机交互中占有越来越重要的地位,而人体手部的识别是人体姿态识别的重要基础。目前对人体手部的识别主要包括基于皮肤颜色建模、基于连续神经网络与马尔科夫模型的手势识别[2]等等。本文主要分析了基于皮肤颜色模型人体手部在复杂背景下的识别过程。识别过程主要包括RGB到HSV模型的转化、HSV模型滤波、除燥,最终得到手部重心。
  1 HSV颜色模型的转换
   HSV颜色模型是由埃尔维・雷・史密斯于1978年创立的,它是对RGB颜色模型的非线性变换形成的,解决了RGB、CMY和其他颜色模型不能够很好适应实际上人解释的模型[1]。
   HSV颜色模型是根据色彩的三个基本属性色相、纯度、明度来确定颜色的一种方法。其中色相H参数表示色彩信息,该参数的取值范围为[0°,360°],其中0°表示红色、120°表示绿色、240°表示蓝色。纯度S参数为一比例值,取值范围为[0,1]。明度V表示颜色的明亮程度,取值范围为[0,1]。
   根据HSV颜色模型的定义,在RGB颜色模型中的任意一个取值,可由以下公式得到对应的HSV颜色模型下的取值:
   实验过程中采用的图片如下
  2 H分量统计滤波处理
   图像的滤波处理方法很多,有空域滤波处理,如中值滤波、均值滤波等;有频域的滤波处理如傅里叶变换、小波分析等[2]。在基于颜色模型的分析过程中,首先通过分析H分量的直方图,得到手部皮肤的H分量所在位置,然后取阈值,实现滤波。
  直方图反应了图像的像素灰度分布,是图像中灰度级和该灰度级像素出现的概率之间的关系。由于H分量的取值范围为0~360,所以我们将灰度等级设置为360级别,图1的H分量的直方图如图2所示:
   从图2中可以看出在手和背景在HSV颜色模型中的H分量是明显分开的,低灰度区域的属于手部区域,高灰度区的属于背景区域,这时可以通过设定阈值来区分两个区域。由于两个区域明显分开,可以设定阈值为100。将大于100的灰度的像素值设置为0,将小于100灰度的像素值设置为0,即可得到二值图像,如图3所示。
   如图3所示,人体手部的图形在图像中已经得到了很好的表现,但是,由于背景中的一些噪声的存在,仍然有部分区域出现了噪声。文中采用中值滤波的方法消除噪声。
   中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。中值滤波是一种典型的低通滤波器,属于非线性滤波技术,它的目的是保护图像边缘的同时去除噪声。本文中采用了3×3的矩阵作为核心,取其中值为改像素的值。中值滤波后的图像如图4所示:
  3 手部重心的计算
   手部重心的计算是手部位置识别的重要特征参数,是人机交互的重要数据。重心的计算主要采用了一阶距来计算。[3]设重心的坐标为(X,Y),则
  X=Y=
   式中m为图像的宽度,n为图像的高度,h(i,j)为图像所在坐标像素值为简便起见,其取值为0和1。
  4 结束语
   本文描述了人体手部识别的一种方法,通过HSV颜色模型的H分量统计特性,取得了人体手部的位置,并根据其一阶距特征得到了其重心所在位置。
  参考文献:
  [1]冈萨雷斯.数字图像处理(第二版).电子工业出版社,2007
  [2]杨阿妮.神经网络与马尔科夫模型的手势识别.电子测量技术,2010.
  [3]赵希人等.随即过程基础及其应用.哈尔滨工程大学出版社,2008.

推荐访问:算法 手部 识别 特性