CN105117685B - 基于图像模板匹配的手指手腕关节自动定位方法 - Google Patents
基于图像模板匹配的手指手腕关节自动定位方法 Download PDFInfo
- Publication number
- CN105117685B CN105117685B CN201510451279.XA CN201510451279A CN105117685B CN 105117685 B CN105117685 B CN 105117685B CN 201510451279 A CN201510451279 A CN 201510451279A CN 105117685 B CN105117685 B CN 105117685B
- Authority
- CN
- China
- Prior art keywords
- finger
- avg
- template
- point
- colour
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
- G06V40/11—Hand-related biometrics; Hand pose recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Image Analysis (AREA)
Abstract
本发明提供基于图像模板匹配的手指手腕关节自动定位方法,用户选择手型框,手契合手型框进行拍照,采样基于图像模板匹配的手指手腕关节自动定位方法对照片进行手指/手腕关节定位,手指定位结果返回15个手指关节点坐标及对应手指宽度,手腕定位结果返回手腕两点坐标及手腕宽度,用户可以进行加工,利用返回结果实现手指/手腕首饰的试佩戴。本发明不要求拍照时手指手腕完全契合手型框,在出现一定偏差的情况下,也能准确定位关节点。本发明对肤色没有特定要求,采用肤色采样的方法可适应不同肤色,同时,基于图像模板匹配的手指手腕关节自动定位方法适用于各种复杂的背景,能提供准确定位。
Description
技术领域
本发明一般涉及计算机数字图像处理领域,具体涉及基于图像模板匹配的手指手腕关节自动定位方法。
背景技术
近年来,随着社会的迅速进步和国力的不断增强,数字图像处理在生活各方面得到了非常广泛的应用。试穿戴概念屡被提及,然而真正的应用却仍不够广泛,流行于市场上的试穿戴软件寥寥无几,而首饰试穿戴软件就更少见了。随着电子商务的高速发展,线上网购已经成为一种新兴购物模式,并且其发展越加火热,而网上选购首饰,如何能让用户选择最适合自己的款式,显然仅靠几张事先美化过的首饰图片是不能满足需求的,这时试穿戴软件应运而生,它允许用户使用手机app对自己的手掌、手腕进行拍照,通过定位软件处理,实现戒指、手表等首饰的试穿戴。用户不用亲自到实体店也能看到穿戴效果,挑选自己喜欢的款式。这样不仅提高用户的购物体验,还会为商家培养潜在的客户,增加用户忠诚度,提高销售量。
手指手腕上的首饰试穿戴软件的技术基础是手指手腕关节定位,目前市场上仍未存在成熟的手指手腕关节定位技术,能够实现复杂背景光照条件下的手指手腕关节准确定位。
发明内容
本发明针对当前手指手腕关节定位技术的不足,提供了基于图像模板匹配的手指手腕关节自动定位方法。本发明的目的在于对特定手型的手指或手腕图片进行关节定位,返回各手指关节点坐标和对应手指宽度,或返回手腕2个定位点坐标和手腕宽度,从而为实现戒指、手表等手部首饰的试穿戴提供基础,具体技术方案如下。
基于图像模板匹配的手指手腕关节自动定位方法,包括以下步骤:
(a)选择手型框,手契合手型框放置,拍照;
(b)加载照片,选择手型模板,开始定位处理;
(c)若步骤(b)中选择的是手指模板,加载选定模板,进行肤色采样,根据肤色采样结果进行肤色检测;
(d)将步骤(c)肤色检测结果进行开操作,得到手指和掌心的二值图像,将步骤(d)的手指和掌心的二值图像膨胀,相与,得到5根掌指交线,根据掌指交线求得5个掌指关节点坐标;
(e)提取原图Y通道图像,对手指区域求竖直方向梯度差,再对每根手指梯度差聚类得到2个聚类中心点,其中靠近掌指关节点的中心点即为中指关节点;
(f)对步骤(d)中每根手指二值图像进行直线拟合,拟合直线与手指轮廓有两个交点,其中远离掌指关节点的交点即为指尖定位点;
(g)将步骤(d)中每根手指二值图像旋转成竖直方向,对应定位点坐标相应作旋转处理,得到其在旋转图中的新定位点,新定位点所在行的非零像素点数即为该定位点处对应的手指宽度;
(h)如果步骤(d)、(e)、(f)、(g)抛出任何自定义错误,调用模板匹配方法;
(i)使用步骤(c)的模板和肤色采样结果,使用肤色采样A通道均值进行掌心区域匹配;
(j)步骤(i)中掌心匹配后,初步掌指关节点确定,再对每个手指模板在对应的初步掌指关节点附近范围内移动缩放匹配,5根手指都匹配完后,得到5个掌指关节点坐标;
(k)步骤(j)中5根手指模板匹配后作为手指二值图,按照步骤(e)、(f)、(g)即可依次得到中指关节点、指尖定位点和对应手指宽度;
(l)若步骤(b)中选择的是手腕模板,加载选定模板,进行肤色采样;
(m)使用手腕模板和肤色采样A通道均值进行移动缩放匹配,确定手腕2定位点位置,2点间距离即为手腕宽度。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(a)包括以下步骤:
(a-1)点击拍照后,选定模板与原图缩放对齐,根据模板进行肤色采样;
(a-2)判断模板是手指模板还是手腕模板;
(a-3)如果(a-2)判断结果是手指模板,取原图对应模板的掌心区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-4)若(a-3)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,假设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)^2+(b–avg_b)^2<400,则认为该点是肤色,否则不是肤色;
(a-5)根据(a-4)肤色检测结果,如果对应模板掌心区域的肤色面积比小于0.75,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-6)如果(a-5)中掌心区域肤色面积比不小于0.75,继续判断对应每根手指模板区域的肤色面积比,如果有任意一根手指区域内肤色面积比小于0.3,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-7)如果(a-6)没有返回自定义错误,保存手指照片,拍照成功;
(a-8)如果(a-2)判断结果是手腕模板,取原图对应模板的拳头与手腕区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-9)若(a-8)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,假设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)^2+(b–avg_b)^2<400,则认为该点是肤色,否则不是肤色;
(a-10)根据(a-9)肤色检测结果,如果对应模板拳头与手腕区域的肤色面积比小于0.69,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-11)如果(a-10)没有返回自定义错误,保存手腕照片,拍照成功。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(c)中,模板对应原图缩放对齐后,肤色采样计算LAB通道均值(avg_l,avg_a,avg_b),对原图每个像素点,假设LAB通道值为(l,a,b),如果(a–avg_a)^2+(b–avg_b)^2<350且l>50,则认为该点是肤色,否则是背景。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(d)包括以下步骤:
(d-1)将肤色检测结果二值图缩放,长边缩为240,短边按同样比率缩放;
(d-2)定义椭圆结构元素进行开操作得到掌心区域,椭圆半径大小r由肤色面积决定,假设肤色面积为hand_area,则r=hand_area/7000*22;
(d-3)肤色检测二值图减去掌心二值图得到手指二值图,进行开操作,断开狭窄的间断和消除细的突出物,再进行连通域检测,如果连通域个数大于5,保留面积最大的5个连通域,去除其他连通域,剩下的5个连通域即为5根手指。
(d-4)得到5根掌指交线后,对每根掌指交线上的点,计算X坐标均值avg_x和Y坐标均值avg_y,则点(avg_x,avg_y)即为掌指关节点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(e)包括以下步骤:
(e-1)对每根手指,根据手指二值图像,提取原图对应手指的Y通道图像;
(e-2)根据手指二值图像,计算旋转矩阵,将对应手指的Y通道图像旋转,使手指成竖直方向;
(e-3)对旋转后的手指Y通道图像求竖直方向上的梯度差;
(e-4)对旋转后的手指二值图腐蚀,再和梯度差结果图像相与,以消除手指边缘梯度;
(e-5)对去除边缘梯度后的梯度图像,选择梯度差最小的100个点,进行聚类,得到两个聚类中心点,距离掌指关节点较近的聚类中心点即为中指关节点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(f)包括以下步骤:
(f-1)根据步骤(d)可得到每根手指二值图像的拟合直线;
(f-2)求每根手指二值图像的轮廓线;
(f-3)计算拟合直线和轮廓线的两个交点,两交点分布在手指两端,遍历轮廓线上所有点,若某点到拟合直线的距离不大于1,则认为该点是交点;
(f-4)找到两交点后,距离掌指关节点较远的点为指尖定位点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(g)包括以下步骤:
(g-1)根据步骤(e)可得到旋转后的手指二值图像和旋转矩阵;
(g-2)将对应定位点坐标依据旋转矩阵做旋转处理,得到在旋转后图像中的对应坐标;
(g-3)对于掌指关节点,旋转后手指二值图像水平方向上最大宽度认为是掌指关节点对应的手指宽度,对于中指关节点和指尖,旋转后坐标所在行的非零点个数即为手指宽度。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(i)包括以下步骤:
(i-1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(i-2)根据模板取用于匹配的掌心区域和对应惩罚区域;
(i-3)定义背景惩罚系数bgPunish和掌心缩放系数s的变化范围,限定掌心移动匹配的范围;
(i-4)开始移动匹配,使用步骤(i-1)结果,计算掌心区域内的A通道差值绝对值的平均值palmDiffA_avg,和惩罚区域内的平均值bgDiffA_avg,计算差值diff=palmDiffA_avg–bgPunish*bgDiffA_avg;
(i-5)同一背景惩罚系数下,记录差值最小的,不同惩罚系数下,记录bgDiffA_avg/s值最大的,需要记录匹配的位置和缩放系数;
(i-6)以上循环匹配完成后,将得到最佳的掌心匹配结果。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(j)包括以下步骤:
(j-1)根据步骤(i)的掌心匹配结果,得到初步的掌指关节点位置;
(j-2)根据模板取每根手指的匹配区域和惩罚区域;
(j-3)对每根手指,根据步骤(j-1)的初步的掌指关节点位置确定手指模板的移动匹配范围,定义惩罚系数finBgPunish和缩放系数fin_s的变化范围,以及手指旋转角度的变化范围;
(j-4)对每根手指,开始循环匹配,循环变量包括旋转角度、惩罚系数、缩放系数和移动范围,根据步骤(i-1)结果,计算手指匹配区域内的A通道差值绝对值的平均值finDiffA_avg,和手指惩罚区域内的平均值finBgDiffA_avg,计算差值finDiff=finDiffA_avg–finBgPunish*finBgDiffA_avg;
(j-5)在多重循环中,同一旋转角度下,同一背景惩罚系数时,记录差值最小的,不同惩罚系数时,比较记录finBgDiffA_avg/fin_s值最大的,而不同旋转角度下,比较记录finBgDiffA_avg/finDiffA_avg值最大的,需要记录旋转角度、匹配的位置和缩放系数;
(j-6)5根手指模板匹配完后,即可得到各手指掌指关节点和各手指的二值图像。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(m)包括以下步骤:
(m-1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(m-2)根据模板取手腕的匹配区域和惩罚区域;
(m-3)定义惩罚系数wristBgPunish和缩放系数wrist_s的变化范围,确定模板的移动匹配范围;
(m-4)开始循环匹配,循环变量包括惩罚系数、缩放系数和移动范围,根据步骤(m-1)结果,计算手指匹配区域内的A通道差值绝对值的平均值wristDiffA_avg,和手指惩罚区域内的平均值wristBgDiffA_avg,计算差值wristDiff=wristDiffA_avg–wristBgPunish*wristBgDiffA_avg;
(m-5)在多重循环中,同一背景惩罚系数下,记录差值最小的,不同惩罚系数下,比较记录wristBgDiffA_avg/wrist_s值最大的,需要记录匹配的位置和缩放系数;
(m-6)匹配完后,根据匹配位置和缩放系数,对模板中的手腕两个定位标记点做计算变换,可得到最终手腕定位点坐标,两点间距离即为手腕宽度。
本发明在用户拍照时进行初步判断,确保用户拍照场景光照较均匀,且用户手较契合手型框放置;判断是手指图像还是手腕图像;如果是手指图像,根据手型模板进行肤色采样,进行肤色检测;使用椭圆结构元素对肤色检测结果进行开操作,得到掌心和手指的二值图像;掌心和手指二值图像膨胀相与,得到掌指交线,进而计算掌指关节点;根据手指二值图像得到原图对应的手指Y通道图像,旋转成竖直方向并做竖直方向梯度差,去除边缘梯度后,每根手指选择若干个梯度最小的点进行聚类,得到两个聚类中心,距离掌指关节点较近的点即为中指关节点;根据各根手指二值图像可得到手指拟合直线,求拟合直线和手指轮廓的两个交点,距离掌指关节点较远的点即为指尖定位点;将手指二值图像旋转成竖直方向,各定位点对应旋转处理,定位点在水平方向上的手指宽度即为所求手指宽度;如果前面求各关节点时返回自定义错误,说明肤色检测结果不佳,调用模板匹配的方法重新确定掌心和手指的二值图像;首先进行掌心匹配,定义匹配区域和惩罚区域,在定义的移动匹配范围内,匹配时,使掌心区域A通道均值与采样A通道均值相差尽可能小,同时惩罚区域相差尽可能大;掌心匹配后,再定义手指匹配范围,进行手指移动匹配;掌心和手指匹配完成后,即可得掌心和手指的二值图像,再根据前面所述方法求中指关节点、指尖定位点和对应手指宽度。如果是手腕图像,进行肤色采样后,根据采样A通道均值进行模板匹配,得到最佳匹配后,可得手腕定位点和手腕宽度。
与现有技术相比,本发明具有如下优点和技术效果:
现有技术一般根据给定固定阈值进行肤色检测,对不同肤色适用性不强,且受背景干扰很大,背景与肤色相近的情况下无法正确识别。本发明采样肤色采样进行肤色检测,可适用于不同肤色,在背景复杂的情况下,使用模板匹配方法,能较准确地识别出手,进而进行关节点定位。手指手腕关节点定位目前尚未发现存在成熟的技术,使用肤色检测和模板匹配方法准确识别出手之后,本发明中使用的求掌指关节点、中指关节点和指尖定位点的方法以及手腕定位点的方法都能准确地定位。
附图说明
图1为实施方式中基于时空融合的智能提取视频摘要方法的流程图;
图2为左手全开手型框;
图3为右手全开手型框;
图4为左手放在胸前手型框;
图5为右手放在胸前手型框;
图6为左手握拳正对镜头手型框;
图7为右手握拳正对镜头手型框;
图8为左手握拳放在胸前手型框;
图9为右手握拳放在胸前手型框;
图10为左手全开手型模板;
图11为右手全开手型模板;
图12为左手放在胸前手型模板;
图13为右手放在胸前手型模板;
图14为左手握拳正对镜头手型模板;
图15为右手握拳正对镜头手型模板;
图16为左手握拳放在胸前手型模板;
图17为右手握拳放在胸前手型模板。
具体实施方式
以下结合附图对本发明的实施方式作进一步说明,但本发明的实施不限于此,需指出的是,以下若有未特别详细说明之过程或符号(如各通道名称Y、A、LAB等),均是本领域技术人员可参照现有常规技术/公知常识进行实现或理解的。
如图1,基于时空融合的智能视频摘要方法,主要流程包括以下步骤:
(a)选择手型框,手契合手型框放置,拍照;图2为左手全开手型框;图3为右手全开手型框;图4为左手放在胸前手型框;图5为右手放在胸前手型框;图6为左手握拳正对镜头手型框;图7为右手握拳正对镜头手型框;图8为左手握拳放在胸前手型框;图9为右手握拳放在胸前手型框;
(b)加载照片,选择手型模板,开始定位处理;手型模板包括:左手全开手型模板;右手全开手型模板;左手放在胸前手型模板;右手放在胸前手型模板;左手握拳正对镜头手型模板;右手握拳正对镜头手型模板;左手握拳放在胸前手型模板;右手握拳放在胸前手型模板,分别如图10~图17所示。
(c)若步骤(b)中选择的是手指模板,加载选定模板,进行肤色采样,根据肤色采样结果进行肤色检测;
(d)将步骤(c)肤色检测结果进行开操作,得到手指和掌心的二值图像,将手指和掌心的二值图像膨胀,相与,得到5根掌指交线,根据掌指交线求得5个掌指关节点坐标;
(e)提取原图Y通道图像,对手指区域求竖直方向梯度差,再对每根手指梯度差聚类得到2个聚类中心点,其中靠近掌指关节点的中心点即为中指关节点;
(f)对步骤(d)中每根手指二值图像进行直线拟合,拟合直线与手指轮廓有两个交点,其中远离掌指关节点的交点即为指尖定位点;
(g)将步骤(d)中每根手指二值图像旋转成竖直方向,对应定位点坐标相应作旋转处理,得到其在旋转图中的新定位点,新定位点所在行的非零像素点数即为该定位点处对应的手指宽度;
(h)如果步骤(d)、(e)、(f)、(g)抛出任何自定义错误,调用模板匹配方法;
(i)使用步骤(c)的模板和肤色采样结果,使用肤色采样A通道均值进行掌心区域匹配;
(j)步骤(i)中掌心匹配后,初步掌指关节点确定,再对每个手指模板在对应的初步掌指关节点附近范围内移动缩放匹配,5根手指都匹配完后,得到5个掌指关节点坐标;
(k)步骤(j)中5根手指模板匹配后作为手指二值图,按照步骤(e)、(f)、(g)即可依次得到中指关节点、指尖定位点和对应手指宽度;
(l)若步骤(b)中选择的是手腕模板,加载选定模板,进行肤色采样;
(m)使用手腕模板和肤色采样A通道均值进行移动缩放匹配,确定手腕2定位点位置,2点间距离即为手腕宽度。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(a)包括以下步骤:
(a-1)点击拍照后,选定模板与原图缩放对齐,根据模板进行肤色采样;
(a-2)判断模板是手指模板还是手腕模板;
(a-3)如果(a-2)判断结果是手指模板,取原图对应模板的掌心区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-4)若(a-3)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,假设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)^2+(b–avg_b)^2<400,则认为该点是肤色,否则不是肤色;
(a-5)根据(a-4)肤色检测结果,如果对应模板掌心区域的肤色面积比小于0.75,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-6)如果(a-5)中掌心区域肤色面积比不小于0.75,继续判断对应每根手指模板区域的肤色面积比,如果有任意一根手指区域内肤色面积比小于0.3,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-7)如果(a-6)没有返回自定义错误,保存手指照片,拍照成功;
(a-8)如果(a-2)判断结果是手腕模板,取原图对应模板的拳头与手腕区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-9)若(a-8)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,假设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)^2+(b–avg_b)^2<400,则认为该点是肤色,否则不是肤色;
(a-10)根据(a-9)肤色检测结果,如果对应模板拳头与手腕区域的肤色面积比小于0.69,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a-11)如果(a-10)没有返回自定义错误,保存手腕照片,拍照成功。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(c)中,模板对应原图缩放对齐后,肤色采样计算LAB通道均值(avg_l,avg_a,avg_b),对原图每个像素点,假设LAB通道值为(l,a,b),如果(a–avg_a)^2+(b–avg_b)^2<350且l>50,则认为该点是肤色,否则是背景。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(d)包括以下步骤:
(d-1)将肤色检测结果二值图缩放,长边缩为240,短边按同样比率缩放;
(d-2)定义椭圆结构元素进行开操作得到掌心区域,椭圆半径大小r由肤色面积决定,假设肤色面积为hand_area,则r=hand_area/7000*22;
(d-3)肤色检测二值图减去掌心二值图得到手指二值图,进行开操作,断开狭窄的间断和消除细的突出物,再进行连通域检测,如果连通域个数大于5,保留面积最大的5个连通域,去除其他连通域,剩下的5个连通域即为5根手指。5根手指二值图像分离后,用特定数据格式将每根手指相关数据保存,特定数据格式具体如表1所示。
表1 保存手指二值图像相关数据的数据格式
id | 属性中文名 | 属性类型 |
splitFingers | 每根手指ROI区域 | Mat[] |
fit_lines | 每根手指二值图像的拟合直线 | Mat[] |
fingersRect | 每根手指在原图中的正外接矩形 | Rect[] |
(d-4)得到5根掌指交线后,对每根掌指交线上的点,计算X坐标均值avg_x和Y坐标均值avg_y,则点(avg_x,avg_y)即为掌指关节点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(e)包括以下步骤:
(e-1)对每根手指,根据手指二值图像,提取原图对应手指的Y通道图像;
(e-2)根据手指二值图像,计算旋转矩阵,将对应手指的Y通道图像旋转,使手指成竖直方向;
(e-3)对旋转后的手指Y通道图像求竖直方向上的梯度差;
(e-4)对旋转后的手指二值图腐蚀,再和(e-3)的梯度差结果图像相与,以消除手指边缘梯度;
(e-5)对去除边缘梯度后的梯度图像,选择梯度差最小的100个点,进行聚类,得到两个聚类中心点,距离掌指关节点较近的聚类中心点即为中指关节点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(f)包括以下步骤:
(f-1)根据d可得到每根手指二值图像的拟合直线;
(f-2)求每根手指二值图像的轮廓线;
(f-3)计算拟合直线和轮廓线的两个交点,两交点分布在手指两端,遍历轮廓线上所有点,若某点到拟合直线的距离不大于1,则认为该点是交点;
(f-4)找到两交点后,距离掌指关节点较远的点为指尖定位点。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(g)包括以下步骤:
(g-1)根据e可得到旋转后的手指二值图像和旋转矩阵;
(g-2)将对应定位点坐标依据旋转矩阵做旋转处理,得到在旋转后图像中的对应坐标;
(g-3)对于掌指关节点,旋转后手指二值图像水平方向上最大宽度认为是掌指关节点对应的手指宽度,对于中指关节点和指尖,旋转后坐标所在行的非零点个数即为手指宽度。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(i)包括以下步骤:
(i-1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(i-2)根据模板取用于匹配的掌心区域和对应惩罚区域;
(i-3)定义背景惩罚系数bgPunish和掌心缩放系数s的变化范围,限定掌心移动匹配的范围;
(i-4)开始移动匹配,使用步骤(i-1)结果,计算掌心区域内的A通道差值绝对值的平均值palmDiffA_avg,和惩罚区域内的平均值bgDiffA_avg,计算差值diff=palmDiffA_avg–bgPunish*bgDiffA_avg;
(i-5)同一背景惩罚系数下,记录差值最小的,不同惩罚系数下,记录bgDiffA_avg/s值最大的,需要用特定数据格式记录匹配的位置和缩放系数,数据格式如表2所示;
表2 保存掌心移动匹配后相关数据的数据格式
id | 属性中文名 | 属性类型 |
matchRect | 记录掌心匹配的位置 | Rect |
scale | 记录掌心缩放系数 | float |
(i-6)以上循环匹配完成后,将得到最佳的掌心匹配结果。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(j)包括以下步骤:
(j-1)根据步骤(i)的掌心匹配结果,得到初步的掌指关节点位置;
(j-2)根据模板取每根手指的匹配区域和惩罚区域;
(j-3)对每根手指,根据步骤(i-1)的初步的掌指关节点位置确定手指模板的移动匹配范围,定义惩罚系数finBgPunish和缩放系数fin_s的变化范围,以及手指旋转角度的变化范围;
(j-4)对每根手指,开始循环匹配,循环变量包括旋转角度、惩罚系数、缩放系数和移动范围,根据步骤(i-1)结果,计算手指匹配区域内的A通道差值绝对值的平均值finDiffA_avg,和手指惩罚区域内的平均值finBgDiffA_avg,计算差值finDiff=finDiffA_avg–finBgPunish*finBgDiffA_avg;
(j-5)在多重循环中,同一旋转角度下,同一背景惩罚系数时,记录差值最小的,不同惩罚系数时,比较记录finBgDiffA_avg/fin_s值最大的,而不同旋转角度下,比较记录finBgDiffA_avg/finDiffA_avg值最大的,需要记录旋转角度、匹配的位置和缩放系数,数据格式如表3所示;
表3 保存手指移动匹配后相关数据的数据格式
id | 属性中文名 | 属性类型 |
degree | 手指旋转角度 | int |
matchRect | 记录手指匹配的位置 | Rect |
scale | 记录手指缩放系数 | float |
(j-6)5根手指模板匹配完后,即可得到各手指掌指关节点和各手指的二值图像。
上述基于图像模板匹配的手指手腕关节自动定位方法中,步骤(m)包括以下步骤:
(m-1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(m-2)根据模板取手腕的匹配区域和惩罚区域;
(m-3)定义惩罚系数wristBgPunish和缩放系数wrist_s的变化范围,确定模板的移动匹配范围;
(m-4)开始循环匹配,循环变量包括惩罚系数、缩放系数和移动范围,根据步骤(m-1)结果,计算手指匹配区域内的A通道差值绝对值的平均值wristDiffA_avg,和手指惩罚区域内的平均值wristBgDiffA_avg,计算差值wristDiff=wristDiffA_avg–wristBgPunish*wristBgDiffA_avg;
(m-5)在多重循环中,同一背景惩罚系数下,记录差值最小的,不同惩罚系数下,比较记录wristBgDiffA_avg/wrist_s值最大的,需要记录匹配的位置和缩放系数;
(m-6)匹配完后,根据匹配位置和缩放系数,对模板中的手腕两个定位标记点做计算变换,可得到最终手腕定位点坐标,两点间距离即为手腕宽度。
Claims (9)
1.基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,包括以下步骤:
(a)选择手型框,手契合手型框放置,拍照;
(b)加载照片,选择手型模板,开始定位处理;
(c)若步骤(b)中选择的是手指模板,加载选定模板,进行肤色采样,根据肤色采样结果进行肤色检测;模板对应原图缩放对齐后,肤色采样计算LAB通道均值(avg_l,avg_a,avg_b),对原图每个像素点,假设LAB通道值为(l,a,b),如果(a–avg_a)^2+(b–avg_b)^2<350且l>50,则认为该点是肤色,否则是背景;
(d)将步骤(c)肤色检测结果进行开操作,得到手指和掌心的二值图像,将手指和掌心的二值图像膨胀,相与,得到5根掌指交线,根据掌指交线求得5个掌指关节点坐标;
(e)提取原图Y通道图像,对手指区域求竖直方向梯度差,再对每根手指梯度差聚类得到2个聚类中心点,其中靠近掌指关节点的中心点即为中指关节点;
(f)对步骤(d)中每根手指二值图像进行直线拟合,拟合直线与手指轮廓有两个交点,其中远离掌指关节点的交点即为指尖定位点;
(g)将步骤(d)中每根手指二值图像旋转成竖直方向,对应定位点坐标相应作旋转处理,得到其在旋转图中的新定位点,新定位点所在行的非零像素点数即为该定位点处对应的手指宽度;
(h)如果步骤(d)、(e)、(f)、(g)抛出任何自定义错误,调如下用(i)~(k)的模板匹配方法;
(i)使用步骤(c)的模板和肤色采样结果,使用肤色采样A通道均值进行掌心区域匹配;
(j)步骤(i)中掌心匹配后,初步掌指关节点确定,再对每个手指模板在对应的初步掌指关节点附近范围内移动缩放匹配,5根手指都匹配完后,得到5个掌指关节点坐标;
(k)步骤(j)中5根手指模板匹配后作为手指二值图,重新按照步骤(e)、(f)、(g)即可依次得到中指关节点、指尖定位点和对应手指宽度;
(l)若步骤(b)中选择的是手腕模板,加载选定模板,进行肤色采样;
(m)使用手腕模板和肤色采样A通道均值进行移动缩放匹配,确定手腕2定位点位置,2点间距离即为手腕宽度。
2.根据权利要求1所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(a)包括以下步骤:
(a‐1)点击拍照后,选定模板与原图缩放对齐,根据模板进行肤色采样;
(a‐2)判断模板是手指模板还是手腕模板;
(a‐3)如果(a‐2)判断结果是手指模板,取原图对应模板的掌心区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a‐4)若(a‐3)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)2+(b–avg_b)2<400,则认为该点是肤色,否则不是肤色;
(a‐5)根据(a‐4)肤色检测结果,如果对应模板掌心区域的肤色面积比小于0.75,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a‐6)如果(a‐5)中掌心区域肤色面积比不小于0.75,继续判断对应每根手指模板区域的肤色面积比,如果有任意一根手指区域内肤色面积比小于0.3,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a‐7)如果(a‐6)没有返回自定义错误,保存手指照片,拍照成功;
(a‐8)如果(a‐2)判断结果是手腕模板,取原图对应模板的拳头与手腕区域,计算该区域内A通道均值,若该均值与肤色采样A通道均值相差大于5.5,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a‐9)若(a‐8)中A通道均值相差不大于5.5,进行肤色检测,对每个像素点,假设LAB通道值为(l,a,b),肤色采样LAB通道均值为(avg_l,avg_a,avg_b),如果(a–avg_a)2+(b–avg_b)2<400,则认为该点是肤色,否则不是肤色;
(a‐10)根据(a‐9)肤色检测结果,如果对应模板拳头与手腕区域的肤色面积比小于0.69,返回自定义错误,提示用户更换场景或手要契合手型框重新拍照;
(a‐11)如果(a‐10)没有返回自定义错误,保存手腕照片,拍照成功。
3.根据权利要求1所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(d)包括以下步骤:
(d‐1)将肤色检测结果二值图缩放,长边缩为240,短边按同样比率缩放;
(d‐2)定义椭圆结构元素进行开操作得到掌心区域,椭圆半径大小r由肤色面积决定,假设肤色面积为hand_area,则r=hand_area/7000*22;
(d‐3)肤色检测二值图减去掌心二值图得到手指二值图,进行开操作,断开狭窄的间断和消除细的突出物,再进行连通域检测,如果连通域个数大于5,保留面积最大的5个连通域,去除其他连通域,剩下的5个连通域即为5根手指;
(d‐4)得到5根掌指交线后,对每根掌指交线上的点,计算X坐标均值avg_x和Y坐标均值avg_y,则点(avg_x,avg_y)即为掌指关节点。
4.根据权利要求3所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(e)包括以下步骤:
(e‐1)对每根手指,根据手指二值图像,提取原图对应手指的Y通道图像;
(e‐2)根据手指二值图像,计算旋转矩阵,将对应手指的Y通道图像旋转,使手指成竖直方向;
(e‐3)对旋转后的手指Y通道图像求竖直方向上的梯度差;
(e‐4)对旋转后的手指二值图腐蚀,再和梯度差结果图像相与,以消除手指边缘梯度;
(e‐5)对去除边缘梯度后的梯度图像,选择梯度差最小的100个点,进行聚类,得到两个聚类中心点,距离掌指关节点较近的聚类中心点即为中指关节点。
5.根据权利要求4所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(f)包括以下步骤:
(f‐1)根据步骤(d)可得到每根手指二值图像的拟合直线;
(f‐2)求每根手指二值图像的轮廓线;
(f‐3)计算拟合直线和轮廓线的两个交点,两交点分布在手指两端,遍历轮廓线上所有点,若某点到拟合直线的距离不大于1,则认为该点是交点;
(f‐4)找到两交点后,距离掌指关节点较远的点为指尖定位点。
6.根据权利要求5所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(g)包括以下步骤:
(g‐1)根据步骤(e)可得到旋转后的手指二值图像和旋转矩阵;
(g‐2)将对应定位点坐标依据旋转矩阵做旋转处理,得到在旋转后图像中的对应坐标;
(g‐3)对于掌指关节点,旋转后手指二值图像水平方向上最大宽度认为是掌指关节点对应的手指宽度,对于中指关节点和指尖,旋转后坐标所在行的非零点个数即为手指宽度。
7.根据权利要求1所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(i)包括以下步骤:
(i‐1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(i‐2)根据模板取用于匹配的掌心区域和对应惩罚区域;
(i‐3)定义背景惩罚系数bgPunish和掌心缩放系数s的变化范围,限定掌心移动匹配的范围;
(i‐4)开始移动匹配,使用步骤(i‐1)结果,计算掌心区域内的A通道差值绝对值的平均值palmDiffA_avg,和惩罚区域内的平均值bgDiffA_avg,计算差值diff=palmDiffA_avg–bgPunish*bgDiffA_avg;
(i‐5)同一背景惩罚系数下,记录差值diff最小的,不同惩罚系数下,记录bgDiffA_avg/s值最大的,需要记录匹配的位置和缩放系数;
(i‐6)以上循环匹配完成后,将得到最佳的掌心匹配结果。
8.根据权利要求7所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(j)包括以下步骤:
(j‐1)根据步骤(i)的掌心匹配结果,得到初步的掌指关节点位置;
(j‐2)根据模板取每根手指的匹配区域和惩罚区域;
(j‐3)对每根手指,根据步骤(j‐1)的初步的掌指关节点位置确定手指模板的移动匹配范围,定义惩罚系数finBgPunish和缩放系数fin_s的变化范围,以及手指旋转角度的变化范围;
(j‐4)对每根手指,开始循环匹配,循环变量包括旋转角度、惩罚系数、缩放系数和移动范围,根据步骤(i‐1)结果,计算手指匹配区域内的A通道差值绝对值的平均值finDiffA_avg,和手指惩罚区域内的平均值finBgDiffA_avg,计算差值finDiff=finDiffA_avg–finBgPunish*finBgDiffA_avg;
(j‐5)在多重循环中,同一旋转角度下,同一背景惩罚系数时,记录差值最小的,不同惩罚系数时,比较记录finBgDiffA_avg/fin_s值最大的,而不同旋转角度下,比较记录finBgDiffA_avg/finDiffA_avg值最大的,需要记录旋转角度、匹配的位置和缩放系数;
(j‐6)5根手指模板匹配完后,即可得到各手指掌指关节点和各手指的二值图像。
9.根据权利要求1所述基于图像模板匹配的手指手腕关节自动定位方法,其特征在于,步骤(m)包括以下步骤:
(m‐1)计算原图A通道值与肤色采样A通道均值的差值的绝对值;
(m‐2)根据模板取手腕的匹配区域和惩罚区域;
(m‐3)定义惩罚系数wristBgPunish和缩放系数wrist_s的变化范围,确定模板的移动匹配范围;
(m‐4)开始循环匹配,循环变量包括惩罚系数、缩放系数和移动范围,根据步骤(m‐1)结果,计算手指匹配区域内的A通道差值绝对值的平均值wristDiffA_avg,和手指惩罚区域内的平均值wristBgDiffA_avg,计算差值wristDiff=wristDiffA_avg–wristBgPunish*wristBgDiffA_avg;
(m‐5)在多重所述循环匹配中,同一背景惩罚系数下,记录差值最小的,不同惩罚系数下,比较记录wristBgDiffA_avg/wrist_s值最大的,需要记录匹配的位置和缩放系数;
(m‐6)匹配完后,根据匹配位置和缩放系数,对模板中的手腕两个定位标记点做计算变换,可得到最终手腕定位点坐标,两点间距离即为手腕宽度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510451279.XA CN105117685B (zh) | 2015-07-27 | 2015-07-27 | 基于图像模板匹配的手指手腕关节自动定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510451279.XA CN105117685B (zh) | 2015-07-27 | 2015-07-27 | 基于图像模板匹配的手指手腕关节自动定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105117685A CN105117685A (zh) | 2015-12-02 |
CN105117685B true CN105117685B (zh) | 2018-12-11 |
Family
ID=54665669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510451279.XA Active CN105117685B (zh) | 2015-07-27 | 2015-07-27 | 基于图像模板匹配的手指手腕关节自动定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105117685B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844096B (zh) * | 2016-03-19 | 2018-10-23 | 上海大学 | 基于图像处理技术的手功能评价方法 |
CN108255298B (zh) * | 2017-12-29 | 2021-02-19 | 安徽慧视金瞳科技有限公司 | 一种投影交互系统中的红外手势识别方法及设备 |
CN109887375A (zh) * | 2019-04-17 | 2019-06-14 | 西安邮电大学 | 基于图像识别处理的钢琴练习纠错方法 |
CN112839172B (zh) * | 2020-12-31 | 2022-02-18 | 深圳瞬玩科技有限公司 | 基于手部识别的拍摄主体识别方法和系统 |
CN113724317B (zh) * | 2021-08-31 | 2023-09-29 | 南京未来网络产业创新有限公司 | 手部关节定位及局部区域面积计算方法、处理器和存储器 |
CN115007765B (zh) * | 2022-08-03 | 2022-10-25 | 山东迪格重工机械有限公司 | 一种基于红外线的冲压机床防夹手自动控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226387A (zh) * | 2013-04-07 | 2013-07-31 | 华南理工大学 | 基于Kinect的视频人手指尖定位方法 |
CN104063059A (zh) * | 2014-07-13 | 2014-09-24 | 华东理工大学 | 一种基于手指分割的实时手势识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060120578A1 (en) * | 2004-12-02 | 2006-06-08 | Tri-D Systems, Inc. | Minutiae matching |
-
2015
- 2015-07-27 CN CN201510451279.XA patent/CN105117685B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226387A (zh) * | 2013-04-07 | 2013-07-31 | 华南理工大学 | 基于Kinect的视频人手指尖定位方法 |
CN104063059A (zh) * | 2014-07-13 | 2014-09-24 | 华东理工大学 | 一种基于手指分割的实时手势识别方法 |
Non-Patent Citations (1)
Title |
---|
变形手形图像轮廓特征提取与识别方法的研究;马学亮;《中国优秀硕士学位论文全文数据库 信息科技辑》;20121015(第10期);I138-2338 * |
Also Published As
Publication number | Publication date |
---|---|
CN105117685A (zh) | 2015-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105117685B (zh) | 基于图像模板匹配的手指手腕关节自动定位方法 | |
CN106920279B (zh) | 三维地图构建方法和装置 | |
CN106133752B (zh) | 眼睛注视跟踪 | |
CN103400119B (zh) | 基于人脸识别技术的混合显示眼镜交互展示方法 | |
CN103258316B (zh) | 一种图片处理方法和装置 | |
CN104898832B (zh) | 一种基于智能终端的3d实时眼镜试戴方法 | |
CN110232311A (zh) | 手部图像的分割方法、装置及计算机设备 | |
CN104867137B (zh) | 一种基于改进ransac算法的图像配准方法 | |
CN108921864A (zh) | 一种光条中心提取方法及装置 | |
CN104660900A (zh) | 图像处理装置及图像处理方法 | |
CN103632137B (zh) | 一种人眼虹膜图像分割方法 | |
CN107507216A (zh) | 图像中局部区域的替换方法、装置及存储介质 | |
WO2021051868A1 (zh) | 目标的定位方法及装置、计算机设备、计算机存储介质 | |
CN107564080A (zh) | 一种人脸图像的替换系统 | |
CN102103753A (zh) | 使用实时相机运动估计检测和跟踪运动对象的方法和终端 | |
KR100997616B1 (ko) | 정합 및 합성을 이용한 회전 지문 획득 장치 및 방법 | |
CN104200461A (zh) | 基于互信息图像选块和sift特征的遥感图像配准方法 | |
CN103544685A (zh) | 一种基于主体调整的图像构图美化方法及系统 | |
CN108320294B (zh) | 一种二代身份证照片的人像背景智能全自动替换方法 | |
CN104732197B (zh) | 目标线检测设备和方法 | |
CN108022252A (zh) | 图像处理设备和方法 | |
CN108322724A (zh) | 图像立体匹配方法以及双目视觉设备 | |
CN108961227A (zh) | 一种基于空域和变换域多特征融合的图像质量评价方法 | |
CN107665348A (zh) | 一种变电站数字仪表的数字识别方法和装置 | |
CN106529520A (zh) | 基于运动员号码识别的马拉松比赛照片管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |