CN111460858A - 图像中指尖点的确定方法、装置、存储介质及电子设备 - Google Patents
图像中指尖点的确定方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111460858A CN111460858A CN201910053254.2A CN201910053254A CN111460858A CN 111460858 A CN111460858 A CN 111460858A CN 201910053254 A CN201910053254 A CN 201910053254A CN 111460858 A CN111460858 A CN 111460858A
- Authority
- CN
- China
- Prior art keywords
- image
- fingertip
- initial
- point
- sample
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 73
- 210000002569 neuron Anatomy 0.000 claims description 27
- 238000012549 training Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 abstract description 15
- 210000003811 finger Anatomy 0.000 description 117
- 238000012545 processing Methods 0.000 description 44
- 230000008569 process Effects 0.000 description 24
- 238000011176 pooling Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000005457 optimization Methods 0.000 description 11
- 238000007781 pre-processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 210000003813 thumb Anatomy 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 238000002203 pretreatment Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 210000004932 little finger Anatomy 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000003238 somatosensory effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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
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
本发明的实施方式涉及人机交互技术领域,更具体地,本发明的实施方式涉及一种图像中指尖点的确定方法、图像中指尖点的确定装置、存储介质及电子设备。该方法包括:获取包含手指的待处理图像;确定所述待处理图像中的初始指尖点;根据所述待处理图像中所述初始指尖点所属手指的信息确定所述初始指尖点的特征参数;基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点。本发明可以提高在图像中确定指尖点的准确度,并解决存在多个手指时指尖点易混淆的问题,具有较高的适用性。
Description
技术领域
本发明的实施方式涉及人机交互技术领域,更具体地,本发明的实施方式涉及一种图像中指尖点的确定方法、图像中指尖点的确定装置、存储介质及电子设备。
背景技术
本部分旨在为权利要求中陈述的本发明的实施方式提供背景或上下文,此处的描述不因为包括在本部分中就承认是现有技术。
随着人机交互技术的发展,人机交互的方式越来越多样化,基于视觉的手势和手指点击的交互,摆脱了对键盘、鼠标等传统设备的依赖,更加贴近于人类本身的交互方式。其中,指尖点(fingertip)作为人手的重要特征之一,在交互任务中扮演着重要的角色,手势识别、对特定位置的点击、将手指作为控制器进行游戏操控等,都依赖于精确的指尖定位和跟踪来实现,是构建人机交互指令的前置步骤。
现有技术中对于指尖点的确定通常是基于轮廓检测而实现的,在图像中根据物体轮廓的凸包找出可能是指尖点的候选点,再通过曲率计算等方法从中进一步确定指尖点。
发明内容
然而,现有技术存在以下问题:
轮廓检测的判断标准较为单一,而实际应用中人手手指的形状与形态可能各异,且图像中可能存在与手指形状相似的其他物体,从而导致指尖点的漏识别与误识别,准确度较低。
当图像中包含多个手指时,可能遗漏其中较为重要的指尖点,或者出现不同指尖点的混淆,例如希望确定食指指尖点,以食指指尖点的位置体现手部姿态,系统可能只检测出中指的指尖点,或者误认为食指的指尖点是中指的指尖点,导致无法准确的估计出手部姿态,从而影响指尖点识别技术的应用效果。
为此,非常需要一种改进的图像中指尖点的确定方法,以解决现有技术中对于指尖点识别的准确度较低以及应用效果较差的问题。
在本上下文中,本发明的实施方式期望提供一种图像中指尖点的确定方法、图像中指尖点的确定装置、存储介质及电子设备。
在本发明实施方式的第一方面中,提供一种图像中指尖点的确定方法,所述方法包括:获取包含手指的待处理图像;确定所述待处理图像中的初始指尖点;根据所述待处理图像中所述初始指尖点所属手指的信息确定所述初始指尖点的特征参数;基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点。
在本发明的一种实施方式中,所述基于所述特征参数以及包含所述初始指尖点的信息的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点,包括:根据所述初始指尖点确定所述待处理图像中包含有所述初始指尖点的局部图像;基于所述特征参数,采用所述卷积神经网络对所述局部图像进行识别,得到所述初始指尖点对应的最终指尖点。
在本发明的一种实施方式中,所述局部图像以所述初始指尖点为中心。
在本发明的一种实施方式中,所述方法还包括:获取样本图像以及所述样本图像中预先标注的样本指尖点;在所述样本图像中生成多个样本初始指尖点,并从所述样本图像中提取各所述样本初始指尖点对应的局部样本图像;根据所述样本图像中所述样本指尖点所属手指的信息确定各所述样本初始指尖点的样本特征参数;基于所述局部样本图像、所述样本特征参数以及所述样本指尖点,训练并得到所述卷积神经网络。
在本发明的一种实施方式中,所述在所述样本图像中生成多个样本初始指尖点,包括:在所述样本图像中包含所述样本指尖点的预设区域内随机生成所述多个样本初始指尖点。
在本发明的一种实施方式中,所述卷积神经网络包括:第一输入层,用于输入包含所述初始指尖点的所述待处理图像;第二输入层,用于输入所述特征参数;所述第一输入层与所述第二输入层为并列关系。
在本发明的一种实施方式中,所述卷积神经网络还包括:拼接层,用于将所述第一输入层对应的神经元与所述第二输入层对应的神经元进行拼接。
在本发明的一种实施方式中,所述卷积神经网络还包括:卷积层,位于所述第一输入层之后;池化层,位于所述卷积层之后;第一全连接层,位于所述池化层之后,所述拼接层之前;第二全连接层,位于所述第二输入层之后,所述拼接层之前;第三全连接层,位于所述拼接层之后;输出层,位于所述第三连接层之后;其中,所述拼接层用于将所述第一全连接层与所述第二全连接层进行拼接。
在本发明的一种实施方式中,所述确定所述待处理图像中的初始指尖点,包括:对所述待处理图像中的图形进行椭圆拟合,并根据所拟合的椭圆的长轴端点确定所述初始指尖点。
在本发明的一种实施方式中,所述特征参数包括特征向量,所述特征向量为具有5个维度的独热(one-hot)向量,其中所述5个维度分别表示大拇指、食指、中指、无名指与小拇指。
在本发明的一种实施方式中,所述获取包含手指的待处理图像,包括:采集包含手指的原始图像;对所述原始图像进行预处理,得到所述待处理图像。
在本发明的一种实施方式中,所述预处理包括以下任意一种或多种:背景减除、灰度处理、二值化处理与去噪处理。
在本发明的一种实施方式中,所述采集包含手指的原始图像,包括:采集包含手指的原始深度图像;所述对所述原始图像进行预处理之后,所述方法还包括:对预处理后的所述原始深度图像进行感兴趣区域检测,并从所述感兴趣区域中分割出手指图像;根据所述手指图像提取三维点云图像;将所述三维点云图像确定为所述待处理图像。
在本发明的一种实施方式中,所述将所述三维点云图像确定为所述待处理图像,包括:根据预设分辨率调整所述三维点云图像的分辨率,并对所述三维点云图像的深度值进行归一化处理,得到所述待处理图像。
在本发明的一种实施方式中,所述基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点,包括:执行以下循环过程,直到确定所述最终指尖点:基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用所述卷积神经网络确定所述初始指尖点对应的中间指尖点;检测所述中间指尖点与所述初始指尖点之间的距离;如果所述距离大于预设距离,则将所述中间指尖点确定为所述初始指尖点,以更新所述初始指尖点以及包含所述初始指尖点的所述待处理图像;如果所述距离小于或等于所述预设距离,则将所述中间指尖点确定为所述最终指尖点。
在本发明实施方式的第二方面中,提供一种图像中指尖点的确定装置,所述装置包括:图像获取模块,用于获取包含手指的待处理图像;初始确定模块,用于确定所述待处理图像中的初始指尖点;特征确定模块,用于根据所述待处理图像中所述初始指尖点所属手指的信息确定所述初始指尖点的特征参数;最终确定模块,用于基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点。
在本发明的一种实施方式中,所述最终确定模块包括:局部图像确定单元,用于根据所述初始指尖点确定所述待处理图像中包含有所述初始指尖点的局部图像;卷积处理单元,用于基于所述特征参数,采用所述卷积神经网络对所述局部图像进行识别,得到所述初始指尖点对应的最终指尖点。
在本发明的一种实施方式中,所述局部图像以所述初始指尖点为中心。
在本发明的一种实施方式中,所述装置还包括模型训练模块,所述模型训练模块包括以下单元:样本标注获取单元,用于获取样本图像以及所述样本图像中预先标注的样本指尖点;局部样本图像确定单元,用于在所述样本图像中生成多个样本初始指尖点,并从所述样本图像中提取各所述样本初始指尖点对应的局部样本图像;样本特征参数确定单元,用于根据所述样本图像中所述样本指尖点所属手指的信息确定各所述样本初始指尖点的样本特征参数;卷积神经网络训练单元,用于基于所述局部样本图像、所述样本特征参数以及所述手指关键点,训练并得到所述卷积神经网络。
在本发明的一种实施方式中,所述局部样本图像确定单元用于在所述样本图像中包含所述样本指尖点的预设区域内随机生成所述多个样本初始指尖点。
在本发明的一种实施方式中,所述卷积神经网络包括:第一输入层,用于输入包含所述初始指尖点的所述待处理图像;第二输入层,用于输入所述特征参数;所述第一输入层与所述第二输入层为并列关系。
在本发明的一种实施方式中,所述卷积神经网络还包括:拼接层,用于将所述第一输入层对应的神经元与所述第二输入层对应的神经元进行拼接。
在本发明的一种实施方式中,所述卷积神经网络还包括:卷积层,位于所述第一输入层之后;池化层,位于所述卷积层之后;第一全连接层,位于所述池化层之后,所述拼接层之前;第二全连接层,位于所述第二输入层之后,所述拼接层之前;第三全连接层,位于所述拼接层之后;输出层,位于所述第三连接层之后;其中,所述拼接层用于将所述第一全连接层与所述第二全连接层进行拼接。
在本发明的一种实施方式中,所述初始确定模块用于对所述待处理图像中的图形进行椭圆拟合,并根据所拟合的椭圆的长轴端点确定所述初始指尖点。
在本发明的一种实施方式中,所述特征参数包括特征向量,所述特征向量为具有5个维度的独热向量,其中所述5个维度分别表示大拇指、食指、中指、无名指与小拇指。
在本发明的一种实施方式中,所述图像获取模块包括:图像采集单元,用于采集包含手指的原始图像;预处理单元,用于对所述原始图像进行预处理,得到所述待处理图像。
在本发明的一种实施方式中,所述预处理包括以下任意一种或多种:背景减除、灰度处理、二值化处理与去噪处理。
在本发明的一种实施方式中,所述图像采集单元用于采集包含手指的原始深度图像;所述预处理单元用于对所述原始深度图像进行预处理;所述图像获取模块还包括:图像分割单元,用于对预处理后的所述原始深度图像进行感兴趣区域检测,并从所述感兴趣区域中分割出手指图像;三维点云提取单元,用于根据所述手指图像提取三维点云图像,并将所述三维点云图像确定为所述待处理图像。
在本发明的一种实施方式中,所述三维点云提取单元还可以用于根据预设分辨率调整所述三维点云图像的分辨率,并对所述三维点云图像的深度值进行归一化处理,得到所述待处理图像。
在本发明的一种实施方式中,所述最终确定模块用于执行以下循环过程,直到确定所述最终指尖点:基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用所述卷积神经网络确定所述初始指尖点对应的中间指尖点;检测所述中间指尖点与所述初始指尖点之间的距离;如果所述距离大于预设距离,则将所述中间指尖点确定为所述初始指尖点,以更新所述初始指尖点以及包含所述初始指尖点的所述待处理图像;如果所述距离小于或等于所述预设距离,则将所述中间指尖点确定为所述最终指尖点。
在本发明实施方式的第三方面中,提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的方法。
在本发明实施方式的第四方面中,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的方法。
根据本发明实施方式的图像中指尖点的确定方法、图像中指尖点的确定装置、存储介质及电子设备,在待处理图像中确定手指的初始指尖点,并根据初始指尖点所属手指的信息确定特征参数,基于特征参数以及包含初始指尖点的待处理图像,通过卷积神经网络确定最终指尖点。一方面,确定最终指尖点的过程可视为对初始指尖点的优化过程,所使用的卷积神经网络具有较强的泛化能力,可以从待处理图像中提取与手指相关的多个方面的特征信息,从而基于对特征信息的全面性表征,更加准确地确定出图像中的指尖点。另一方面,在指尖点的确定过程中,引入特征参数对初始指尖点所属的手指进行限定,所得到的最终指尖点与图像中的手指一一对应,可以改善图像中包含多个手指时发生指尖点混淆或遗漏重要指尖点的情况,从而提高后续根据指尖点进行手势或动作估计的准确度,改善指尖点识别技术的应用效果。
在本发明的一些实施方式中,基于一个样本图像可以生成大量样本初始指尖点,以得到多组训练数据,从而解决了深度学习中训练数据稀缺的问题,并且训练得到的卷积神经网络具有较高的鲁棒性以及较强的泛化能力,对于指尖点的确定具有较高的准确度。
在本发明的一些实施方式中,待处理图像可以是深度图像,深度图像具有比彩色图像更少的通道,因此可以降低处理过程中所需的运算量,且深度图像受环境色彩、光照等的影响较小,因此可以提高指尖点确定方法的适用性。
附图说明
通过参考附图阅读下文的详细描述,本发明示例实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了根据本发明实施方式的人机交互系统的示例性架构图;
图2示意性地示出了根据本发明实施方式的图像中指尖点的确定方法的流程步骤图;
图3示意性地示出了根据本发明实施方式的初始指尖点与最终指尖点的示意图;
图4示意性地示出了根据待处理图像中的初始指尖点确定最终指尖点的示意图;
图5示意性地示出了根据本发明实施方式的图像中指尖点的确定方法的子流程示意图;
图6示意性地示出了根据本发明实施方式的局部图像的示意图;
图7示意性地示出了根据本发明实施方式的图像中指尖点的确定方法的子流程步骤图;
图8示意性地示出了根据本发明实施方式的生成局部样本图像的示意图;
图9示意性地示出了根据本发明实施方式的卷积神经网络的结构示意图;
图10示意性地示出了根据本发明实施方式的图像中指尖点的确定装置的结构方框图;
图11示意性地示出了根据本发明实施方式的存储介质的示意图;以及
图12示意性地示出了根据本发明实施方式的电子设备的结构方框图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提供一种图像中指尖点的确定方法、图像中指尖点的确定装置、存储介质及电子设备。
在本文中,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐述本发明的原理和精神。
发明概述
本发明人发现,在现有的指尖点确定方法中,轮廓检测的判断标准较为单一,易导致指尖点的漏识别与误识别,准确度较低,且图像中包含多个手指时,可能遗漏其中较为重要的指尖点,或者出现不同指尖点的混淆,导致应用效果较差。
鉴于上述内容,本发明的基本思想在于:在待处理图像中确定手指的初始指尖点,并根据初始指尖点所属手指的信息确定特征参数,基于特征参数以及包含初始指尖点的待处理图像,通过卷积神经网络确定最终指尖点。一方面,确定最终指尖点的过程可视为对初始指尖点的优化过程,所使用的卷积神经网络具有较强的泛化能力,可以从待处理图像中提取与手指相关的多个方面的特征信息,从而基于对特征信息的全面性表征,更加准确地确定出图像中的指尖点。另一方面,在指尖点的确定过程中,引入特征参数对初始指尖点所属的手指进行限定,所得到的最终指尖点与图像中的手指一一对应,可以改善图像中包含多个手指时发生指尖点混淆或遗漏重要指尖点的情况,从而提高后续根据指尖点进行手势或动作估计的准确度,改善指尖点识别技术的应用效果。
在本发明的一些实施方式中,基于一个样本图像可以生成大量样本初始指尖点,以得到多组训练数据,从而解决了深度学习中训练数据稀缺的问题,并且训练得到的卷积神经网络具有较高的鲁棒性以及较强的泛化能力,对于指尖点的确定具有较高的准确度。
在本发明的一些实施方式中,待处理图像可以是深度图像,深度图像具有比彩色图像更少的通道,因此可以降低处理过程中所需的运算量,且深度图像受环境色彩、光照等的影响较小,因此可以提高指尖点确定方法的适用性。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
需要注意的是,下述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
图1示出了可以应用本发明实施方式的人机交互系统的示例性架构。参考图1所示,该系统100可以包括计算设备101、相机102、投影光机103与显示界面104。其中,投影光机103用于在显示界面104上投射影像,显示界面104可以是电子屏幕,如发光二极管显示屏、液晶显示屏等,也可以是幕布、墙壁等可投影区域;用户105可以在特定区域内(通常为显示界面104的区域)通过手势姿态进行交互控制,例如用指尖点106指向显示界面104中的特定位置或特定内容;相机102可以与投影光机103并排或就近放置,用于采集用户105的手势图像,即落入到显示界面104区域内的那部分人体图像,通常是实时图像,并将图像传输至计算设备101;计算设备101可以是计算机、服务器或游戏机等具备图像处理功能的设备,用于对图像进行处理,识别图像中的指尖点106,转换为控制指令,并将控制指令传输至投影光机103,通过投影光机103将控制结果呈现于显示界面104,从而实现了与用户105之间的交互。
应当理解,图1所示的各装置的数目仅是示例性的,根据实际需要,可以设置多个相机102,可用于分别采集不同角度或不同区域的图像;也可以设置多个投影光机103与显示界面104,可用于对控制内容或控制结果进行分屏显示;计算设备101可以是多台计算机组成的集群。此外,人机交互系统100还可以包括其他可选的设备,例如可穿戴设备,使得用户105在穿戴后可以实现更加多样复杂的交互指令等等。
在本发明的一些实施方式中,相机102与投影光机103可以是一体化的设备,或者相机102与投影光机103可以内置于计算设备101上,例如计算设备101可以集成相机模块与投影模块,以及相应的软件系统,可以一体化实现图像采集、数据处理以及影像显示。
基于图1所示的人机交互系统100,本发明的实施方式可适用于以下场景:在幻灯片演讲或者虚拟现实等场景中,用户105可以在不接触显示界面104的情况下,通过指向显示界面104中的特定位置,实现类似于鼠标点击或触控的操作功能,以控制页面的切换、应用程序的开关等;在体感类游戏的场景中,用户105做出体感控制的动作,相机102跟踪指尖点106的轨迹,使得计算设备101识别出用户105的手部动作,以控制游戏角色做出相应的反应。
此外,本发明的实施方式也可以适用于人机交互以外的场景,例如在安防监控的场景中,通过实时的确定监控图像中的人手指尖点,识别图像中人的动作,以实现异常动作感知、危险警报等功能。
示例性方法
本发明示例实施方式首先提出了一种图像中指尖点的确定方法,图2示出了该方法的流程步骤,可以包括以下步骤S210~S240:
步骤S210,获取包含手指的待处理图像。
其中,待处理图像即需要进行指尖点确定的图像,可以是上述各场景中由相机采集的图像,例如体感控制中所拍摄的用户进行控制动作的图像,其中包含了用户的手部。通常用户的动作是一个持续的过程,相机采集该过程的连续图像,以每一帧为单位,可以将当前帧的图像作为待处理图像,即待处理图像可以是实时图像。此外,也可以将任意已有的图像作为待处理图像,例如计算机中的本地图片、网络图片或外部数据库中的图片等。待处理图像可以是任意模式的图像,例如彩色图像(如RGB模式的图像)、灰度图像、黑白图像(或二值图像)、红外图像等。
以上仅是示例性说明,本示例实施方式对于待处理图像的具体形式以及获取方式不做特别限定。
步骤S220,确定待处理图像中的初始指尖点。
其中,初始指尖点是在待处理图像中初步确定的指尖点,本示例实施方式中,基于初始指尖点,通过后续的步骤对其进行优化,以得到最终指尖点,从而实现图像中指尖点的确定,因此对于初始指尖点的准确度要求较低,可以通过任意方式确定初始指尖点,以下进行示例性说明:
在本发明的一些实施方式中,步骤S220可以基于形状检测而实现。例如:对待处理图像进行指尖形状检测,检测待处理图像中具有弧形的区域,并将这些区域的弧形与预设的标准指尖弧形进行匹配,匹配度较高的区域的弧形顶部即为初始指尖点;或者对待处理图像进行手指形状检测,将与标准手指形状较为相似的区域确定为手指区域,可以指定手指区域的圆形边界点为初始指尖点,等等。
在本发明的一些实施方式中,步骤S220也可以通过以下步骤实现:
对待处理图像中的图形进行椭圆拟合,并根据所拟合的椭圆的长轴端点确定初始指尖点。
其中,图形用于表示待处理图像中的实体物,例如待处理图像中可能包含人的头部、身体、手部以及其他物体图形,这些都是一个个独立的图形。可以通过颜色的连续性确定图形,由于每个图形内各像素点的颜色通常是相同、相近或渐变的,因此可以检测相邻像素点之间的颜色差异,确定各图形之间的分界点,从而确定各独立的图形。在确定图形后,对各图形进行椭圆拟合,椭圆拟合可以通过多种具体方法实现,例如:在图形上取若干边界点,通过最小二乘法确定一椭圆,使得所有边界点到该椭圆的距离平方和最小,该椭圆即为拟合的椭圆;做图形的外接矩形,将外接矩形的内切椭圆作为拟合的椭圆,其中外接矩形可以是最小外接矩形(如外接旋转矩形)。本示例实施方式对于椭圆拟合的具体方法不做限定。可以对每个图形分别进行椭圆拟合,然后取重合度较高的一组或多组图形与椭圆,图形为疑似手指区域,相应的椭圆的长轴端点为初始指尖点。
需要说明的是,待处理图像中可能包含多个指尖点,例如一个人的多个手指指尖,或者多个人的指尖,则步骤S220可能确定多个初始指尖点,本示例实施方式对其数量不做特别限定。
步骤S230,根据待处理图像中初始指尖点所属手指的信息确定初始指尖点的特征参数。
其中,特征参数用于表征初始指尖点属于哪一根手指,例如特征参数可以是一个数值,为1时表示初始指尖点属于大拇指,为2时表示初始指尖点属于食指等等;或者特征参数可以是分数的形式,分母表示待处理图像中一共有多少根手指,分子表示初始指尖点属于第几根手指。
在本发明的一些实施方式中,特征参数可以是特征向量的形式,特征向量可以包括多个维度,每个维度表征一方面的信息,例如特征向量可以是二维向量,第一个维度表示待处理图像中的手指总数,第二个维度表示初始指尖点所属的手指序数;或者特征向量可以是n+1维的向量,第一个维度表示待处理图像中的手指总数为n,后面n个维度分别表示待处理图像中的各个手指。在本发明的一些实施方式中,特征向量可以是具有5个维度的独热向量,其中5个维度分别表示大拇指、食指、中指、无名指与小拇指。具体的,特征向量v=[1,0,0,0,0]表示初始指尖点属于大拇指,v=[0,1,0,0,0]表示初始指尖点属于食指,v=[0,0,1,0,0]表示初始指尖点属于中指,v=[0,0,0,1,0]表示初始指尖点属于无名指,v=[0,0,0,0,1]表示初始指尖点属于小拇指。
需要说明的是,如果待处理图像中包含多个初始指尖点,可以分别确定每个初始指尖点的特征参数,从而可以通过特征参数对不同的初始指尖点进行区分。
步骤S240,基于特征参数以及包含初始指尖点的待处理图像,采用预先训练的卷积神经网络确定初始指尖点对应的最终指尖点。
本示例实施方式中,通过卷积神经网络对待处理图像中的初始指尖点进行优化处理,得到最终指尖点,最终指尖点是在待处理图像中确定的准确度较高的指尖点。图3示出了在一待处理图像中的初始指尖点以及对应的最终指尖点,可见,相较于初始指尖点,最终指尖点更接近于实际的指尖位置。
卷积神经网络通常以图像为输入数据,本示例实施方式需要将三方面的信息输入到卷积神经网络中:待处理图像、初始指尖点与特征参数。可以通过多种方式对这三方面信息进行预处理,以得到卷积神经网络可以识别的输入数据,例如:在待处理图像中将初始指尖点进行特别标记,可以标记为特别的像素值或特别的字符,然后与特征参数进行拼接,得到张量(如矩阵)形式的输入数据;将待处理图像与初始指尖点在待处理图像中的位置坐标进行拼接,再与特征参数进行拼接,得到输入数据;在本发明的一些实施方式中,可以设置多个输入层,用于分别输入上述不同方面的信息,例如,卷积神经网络可以包括:
第一输入层,用于输入包含初始指尖点的待处理图像;
第二输入层,用于输入特征参数;
其中,第一输入层与第二输入层为并列关系;包含初始指尖点的待处理图像可以是将初始指尖点特别标记的待处理图像,也可以是包含了初始指尖点位置信息的待处理图像等。将待处理图像与特征参数分别输入第一输入层与第二输入层后,可以通过卷积神经网络的后续中间层进行合并处理,以输出经过优化的最终指尖点。
本示例实施方式中,特征参数作为识别过程中的重要信息,对于最终指尖点的确定具有重要意义。图4示出了在不具备特征参数与具备特征参数的情况下,根据待处理图像中的初始指尖点确定最终指尖点的情况。如图所示,在不具备特征参数的情况下,如果初始指尖点位于待处理图像中两个不同手指之间,则通过卷积神经网络进行优化处理时,可能无法正确识别初始指尖点属于哪个手指,导致将最终指尖点确定到错误的手指上,图4中左图示出了初始指尖点可能被确定到食指或中指上;在具备特征参数的情况下,例如图4中右图示出了初始指尖点的特征参数v表示其属于食指,则卷积神经网络可以识别该信息,进行准确的优化处理,避免手指错误确定的情况。
本示例实施方式中,卷积神经网络可以输出最终指尖点在待处理图像中的位置坐标,例如以(x,y)的形式表示,x与y分别表示待处理图像的横向与纵向上的位置坐标。卷积神经网络也可以输出多分类的结果,例如待处理图像的像素数为64*64时,分类结果可以表示为4096(=64*64)维的结果向量,每个维度代表待处理图像中的一个像素点,其数值表示最终指尖点位于该像素点位置的概率,概率最高的像素点就是最终指尖点;或者为了简化分类数量与运算量,可以在待处理图像中划分多个小区域,例如每2*2个像素点为一个小区域,通过卷积神经网络确定最终指尖点位于哪个小区域中,可以将小区域的中心或整体作为最终指尖点。基于输出的最终指尖点的位置,可以在待处理图像中标记出最终指尖点,以得到包含最终指尖点的待处理图像,从而将数值形式的结果通过可视的方式呈现。应当理解,以上所列举的最终指尖点的输出形式仅是示例性说明,本示例实施方式对此不做特别限定。
需要补充的是,如果待处理图像中包含多个初始指尖点,可以利用卷积神经网络进行多次处理,每次将包含一个初始指尖点的待处理图像以及该初始指尖点的特征参数输入卷积神经网络,得到该初始指尖点对应的最终指尖点,然后再处理下一个初始指尖点,直到确定了每个初始指尖点对应的最终指尖点。
由于最终指尖点是在初始指尖点的基础上,将其优化至更加接近于实际指尖点的位置,在本发明的一些实施方式中,可以进行多次优化,以使最终指尖点最大程度地接近于实际指尖点。参考图5所示,步骤S240可以通过以下步骤实现:
执行以下循环过程,直到确定最终指尖点,循环过程包括图5中的步骤S501~S504:
步骤S501,基于特征参数以及包含初始指尖点的待处理图像,采用卷积神经网络确定初始指尖点对应的中间指尖点;
步骤S502,检测中间指尖点与初始指尖点之间的距离;
步骤S503,如果上述距离大于预设距离,则将中间指尖点确定为初始指尖点,以更新初始指尖点以及包含初始指尖点的待处理图像;
步骤S504,如果上述距离小于或等于预设距离,则将中间指尖点确定为最终指尖点。
其中,在经过卷积神经网络的处理后,将输出的指尖点暂定为中间指尖点,表示其为待定的状态。通过检测中间指尖点与初始指尖点之间的距离,判断有无进一步优化的可能:如果该距离小于或等于预设距离,说明当前利用卷积神经网络优化处理后,指尖点的位置变化较小,进一步优化的效果不明显,此时可以判断指尖点已经收敛,将中间指尖点确定为最终指尖点;如果该距离大于预设距离,说明可能还有进一步优化的余地,可以将中间指尖点作为初始指尖点,以更新卷积神经网络的输入数据,进行再次优化。通过图5中的循环过程,可以得到最优的最终指尖点。
需要说明的是,预设距离作为循环处理过程中收敛的判断标准,可以根据实际应用情况进行设定,例如待处理图像清晰度较高时,可以设定较小的预设距离,或者对于指尖点位置的精度要求较高时,可以设定较小的预设距离。特别的,还可以设定预设距离为0,则仅当中间指尖点与初始指尖点为同一个点时,循环处理过程收敛,得到最终指尖点。此外,在其他实施方式中,也可以为循环处理过程设定其他形式的结束条件,例如设定循环次数,达到该次数时,将中间指尖点确定为最终指尖点。
在本发明的一些实施方式中,步骤S240也可以通过以下步骤实现:
根据初始指尖点确定待处理图像中包含有初始指尖点的局部图像;
基于特征参数,采用卷积神经网络对该局部图像进行识别,得到初始指尖点对应的最终指尖点。
本示例实施方式中,实际指尖点通常位于初始指尖点的附近,因此通过对待处理图像中的局部图像进行识别,可以降低待处理图像中其他无关区域可能对识别过程造成的干扰,使得卷积神经网络将特征的提取与处理聚焦于局部图像中,提高指尖点确定的准确度。如图6所示,在确定初始指尖点后,可以在初始指尖点的附近截取局部图像,例如按照预设的尺寸,截取包含初始指尖点以及手指图像的局部图像,局部图像可以是正方形、矩形等任意的形状,视卷积神经网络的数据格式而定。
进一步的,在本发明的一些实施方式中,上述局部图像可以以初始指尖点为中心。如图6所示,在确定初始指尖点后,可以以其为中心,在待处理图像中按照预设的尺寸截取局部图像。由于实际指尖点可能位于初始指尖点的任何方位,以初始指尖点为中心确定的局部图像,具有较高的概率包括实际指尖点,使得在局部图像中确定的最终指尖点更加接近于实际指尖点,进一步提高指尖点确定的准确度。
在本发明的一些实施方式中,可以增加优化调节局部图像的位置或尺寸的方法步骤。如果通过卷积神经网络对局部图像进行识别后,确定的最终指尖点位于局部图像的边界上,说明实际指尖点可能位于局部图像之外,可以增大局部图像的尺寸,或者将局部图像向最终指尖点的方向移动一定距离,并再次通过卷积神经网络进行识别,可以改善局部图像确定的不合适而对指尖点确定的影响问题。
在本发明的一些实施方式中,参考图7所示,指尖点的确定方法还可以包括以下步骤S710~S740:
步骤S710,获取样本图像以及样本图像中预先标注的样本指尖点;
步骤S720,在样本图像中生成多个样本初始指尖点,并从样本图像中提取各样本初始指尖点对应的局部样本图像;
步骤S730,根据样本图像中样本指尖点所属手指的信息确定各样本初始指尖点的样本特征参数;
步骤S740,基于局部样本图像、样本特征参数以及样本指尖点,训练并得到卷积神经网络。
其中,样本图像可以是通过任意方式获取的包含手指的图像,例如将历史采集的手部图像作为样本图像,在互联网上搜索包含手指的图像作为样本图像等,再通过人为标注等方式在样本图像中标注出指尖点,即样本指尖点,样本指尖点为实际指尖点。在样本图像中生成样本初始指尖点的方法可以与步骤S220中确定初始指尖点的方法相同,例如可以采用形状检测、椭圆拟合等方法;提取局部样本图像的方法可以与在待处理图像中确定局部图像的方法相同,例如在样本图像中以样本初始指尖点为中心、按照预设的尺寸截取局部样本图像,参考图8所示,可以在样本指尖点附近生成多个样本初始指尖点,然后分别以每个样本初始指尖点为中心提取局部样本图像;各样本初始指尖点的样本特征参数可以根据样本指尖点所属的手指信息进行确定,例如在样本图像中仅标注了食指的指尖点,则可以认为生成的样本初始指尖点全部对应于食指,确定相同的样本特征参数;需要说明的是,如果样本图像包含多个手指,可以标注多个样本指尖点,则可以将该样本图像作为多个样本图像处理,例如样本图像包含5个手指,则可以生成5个相同的样本图像,每个样本图像中分别标注一个手指的指尖点,则不同样本图像中生成的样本初始指尖点具有不同的特征参数。
基于步骤S710~S730对训练数据进行处理,得到多组局部样本图像-样本特征参数-样本指尖点,三种数据之间具有对应关系,其中局部样本图像与样本特征参数作为训练的输入数据,样本指尖点作为训练的标注数据,可以实现对卷积神经网络的训练,经过训练得到步骤S240中可用的卷积神经网络。
在本发明的一些实施方式中,训练所使用的损失函数可以是欧式范数目标损失函数,形式如下:
E=‖p-t‖2;
其中,p为卷积神经网络输出的最终指尖点的坐标,t为样本指尖点的坐标,使用梯度下降法对目标损失函数进行优化,直至网络中的参数迭代稳定。
在本发明的一些实施方式中,在样本图像中生成多个样本初始指尖点可以通过以下步骤实现:
在样本图像中包含样本指尖点的预设区域内随机生成多个样本初始指尖点。
由于本示例实施方式通过卷积神经网络对初始指尖点进行优化处理,初始指尖点可以位于任意位置,也可以根据卷积神经网络的处理能力,限定初始指尖点位于实际指尖点附近的预设区域内。因此,在训练时,可以在样本指尖点的预设区域内随机生成样本初始指尖点,即训练数据覆盖了初始指尖点位于预设区域内任意位置的情况,这样训练得到的卷积神经网络具有较好的泛化能力。并且,通过随机生成样本初始指尖点的方式,可以解决训练数据稀缺的问题,在一个样本图像中可以生成大量的样本初始指尖点,从而获得多组训练数据,同时减少了生成样本初始指尖点所需的运算量。
预设区域包含样本指尖点,例如按照预设尺寸在样本指尖点附近随机确定预设区域,也可以以样本指尖点为中心生成预设区域等,预设区域的范围越大,训练得到的卷积神经网络具有越强的优化能力,能够处理初始指尖点距离实际指尖点较远的情况,相应的,训练所需的数据量与运算量也越大,因此可以根据实际应用的需求,平衡上述两方面因素,确定预设区域的范围或尺寸。
在本发明的一些实施方式中,基于上述包括第一输入层与第二输入层的卷积神经网络,该卷积神经网络中还可以包括拼接层,用于将第一输入层对应的神经元与第二输入层对应的神经元进行拼接。其中,第一输入层对应的神经元是指与第一输入层直接或间接连接的神经元,第二输入层对应的神经元是指与第二输入层直接或间接连接的神经元。拼接层是一个特殊的中间层,在拼接层之前的中间层中,一部分神经元对应于第一输入层,另一部分神经元对应于第二输入层,第一输入层与第二输入层是并行独立处理的,即不同输入层对应的神经元之间不发生关联;在拼接层中,两个输入层对应的神经元共同连接至下一层,即拼接层的下一层中的神经元可以与两个输入层对应的神经元同时形成连接,从而实现了两部分神经元的拼接,对第一输入层与第二输入层的信息进行了归总。
进一步的,在本发明的一些实施方式中,参考图8所示,卷积神经网络还可以包括:
卷积层C1,位于第一输入层IN1之后;
池化层P1,位于卷积层C1之后;
第一全连接层FC1,位于池化层P1之后,拼接层CONCAT之前;
第二全连接层FC2,位于第二输入层IN2之后,拼接层CONCAT之前;
第三全连接层FC3,位于拼接层CONCAT之后;
输出层OUT,位于第三连接层FC3之后;
其中,拼接层CONCAT用于将第一全连接层FC1与第二全连接层FC2进行拼接。第一输入层IN1中可以输入包含初始指尖点的待处理图像或其局部图像,第二输入层IN2中可以输入特征参数,例如特征向量v;卷积层C1对第一输入层IN1中的图像进行卷积操作,然后经过池化层P1与第一全连接层FC1,对图像特征进行充分的提取,同时第二输入层IN2中的特征参数通过第二全连接层FC2进行特征提取,两部分特征信息在拼接层CONCAT中得到拼接融合,然后再经过第三全连接层FC3的特征处理,在输出层OUT中输出最终指尖点的坐标。
在本发明的一个具体示例中,第一输入层IN1中可以输入包含初始指尖点的40*40像素数的局部图像,卷积层C1中可以设置16个5*5的卷积核,池化层P1的池化大小为3*3,步长为3,可以采用最大值池化(Max Pooling)或平均值池化(Avg Pooling)等,第一全连接层FC1中可以设置1024个神经元,第二全连接层FC2中也可以设置1024个神经元,拼接层CONCAT中设置2048个神经元,第三全连接层FC3中可以设置128个神经元,输出层OUT中设置2个神经元。在卷积层和每个全连接层后均可以施加ReLU(线性修正单元)激活函数,ReLU可以使得提取到的特征稀疏化,利于梯度回传和减小过拟合,其形式如下所示:
f(x)=max(0,x);
当然,上述示例仅作为参考性说明,当局部图像的尺寸、复杂度不同时,可以相应的调整卷积神经网络的结构、各层的神经元数量、卷积参数、或池化参数等,激活函数也可以使用sigmoid(S型函数)、tanh(双曲函数)等。此外,根据实际需求,可以在卷积神经网络的任意位置插入任意形式的中间层,例如在卷积层C1与池化层P1后增设第二、第三甚至更多组的卷积层与池化层,以对第一输入层IN1中的图像进行充分的特征提取,或者在第三全连接层FC3后增设第四、第五甚至更多个全连接层,以对拼接层CONCAT中的数据进行充分处理。本示例实施方式对此不做特别限定。
为了便于图像的处理与识别,在本发明的一些实施方式中,步骤S210可以具体通过以下步骤实现:
采集包含手指的原始图像;
对原始图像进行预处理,得到待处理图像。
本示例实施方式中,根据实际需求,可以采用任意的预处理方法,例如:若进行图像采集的相机处于固定的位置与角度,则图像的背景基本相同,可以预先采集背景图像,然后在采集包含手指的原始图像后,通过背景减除(如帧差法)将仅包含手部的图像提取出来,得到待处理图像;若卷积神经网络被训练于处理单通道图像(如灰度图像),则可以将彩色的原始图像进行灰度处理,得到灰度模式的待处理图像;若原始图像中不同图形之间的色差较大,可以通过二值化处理得到黑白模式的待处理图像,从而大大降低后续处理的难度;若原始图像中包含较多干扰元素,如杂色、噪点、图形边缘毛刺等,则可以通过中值滤波、形态学处理、补洞处理等方法进行去噪处理,以移除干扰元素,得到较为纯净的待处理图像。当然,以上仅是举例说明,各项预处理方法的使用并不限于上述情况,并且可以组合使用其中的任意多种,或者使用未提及的预处理方法,本示例实施方式对此不做特别限定。
在本发明的一些实施方式中,图1中的相机102可以是深度相机,用于采集包含手指的原始深度图像;在对原始深度图像进行预处理之后,还可以包括以下步骤:
对预处理后的原始深度图像进行感兴趣区域检测,并从感兴趣区域中分割出手指图像;
根据手指图像提取三维点云图像;
将三维点云图像确定为待处理图像;
其中,感兴趣区域是主要包含手指的区域,其检测可以通过形状检测、轮廓检测、凹凸点检测等具体方法实现,手指图像可以是感兴趣区域的图像,也可以对感兴趣区域做进一步分割,以最大程度地分离出手指图像。原始深度图像中可以包含各像素点的深度信息,通常表现为单通道的灰度值,当然也可以在原始深度图像中设置多个通道,分别记录深度信息与颜色信息(例如RGB像素值或灰度值)。基于各像素点的深度信息,可以提取三维点云图像,三维点云图像可视作手指三维模型的近似表征,相较于普通的二维图像,三维点云图像包含了更加丰富的手指姿态信息,更有利于指尖点的精确检测。
进一步的,在本发明的一些实施方式中,将三维点云图像确定为待处理图像可以包括以下步骤:
根据预设分辨率调整三维点云图像的分辨率,并对三维点云图像的深度值进行归一化处理,得到待处理图像。
具体地,可以预先对深度相机进行标定,利用标定好的内部参数,从手指图像中提取三维点云图像,并转换为预设分辨率(或预设像素数,例如64*64像素,但不以此为限),再将其中每个点的深度数值归一化到[-1,1]之间,得到待处理图像。这样可以获得统一格式的待处理图像,使得手部与深度相机在不同距离时能够保持统一的数值尺度,在进行后续处理时,可以进一步提高待处理图像的识别精度以及指尖点确定的准确度。
示例性装置
在介绍了本发明示例实施方式的图像中指尖点的确定方法之后,接下来,参考图10对本发明示例实施方式的图像中指尖点的确定装置进行说明。
如图10所示,该图像中指尖点的确定装置1000可以包括:
图像获取模块1010,用于获取包含手指的待处理图像;
初始确定模块1020,用于确定待处理图像中的初始指尖点;
特征确定模块1030,用于根据待处理图像中初始指尖点所属手指的信息确定初始指尖点的特征参数;
最终确定模块1040,用于基于特征参数以及包含初始指尖点的待处理图像,采用预先训练的卷积神经网络确定初始指尖点对应的最终指尖点。
在本发明的一些实施方式中,最终确定模块1040可以包括:局部图像确定单元1041,用于根据初始指尖点确定待处理图像中包含有初始指尖点的局部图像;卷积处理单元1042,用于基于特征参数,采用卷积神经网络对局部图像进行识别,得到初始指尖点对应的最终指尖点。
在本发明的一些实施方式中,局部图像可以以初始指尖点为中心。
在本发明的一些实施方式中,装置1000还可以包括模型训练模块1050,模型训练模块1050又可以包括以下单元:样本标注获取单元1051,用于获取样本图像以及样本图像中预先标注的样本指尖点;局部样本图像确定单元1052,用于在样本图像中生成多个样本初始指尖点,并从样本图像中提取各样本初始指尖点对应的局部样本图像;样本特征参数确定单元1053,用于根据样本图像中样本指尖点所属手指的信息确定各样本初始指尖点的样本特征参数;卷积神经网络训练单元1054,用于基于局部样本图像、样本特征参数以及手指关键点,训练并得到卷积神经网络。
在本发明的一些实施方式中,局部样本图像确定单元1052可以用于在样本图像中包含样本指尖点的预设区域内随机生成多个样本初始指尖点。
在本发明的一些实施方式中,卷积神经网络可以包括:第一输入层,用于输入包含初始指尖点的待处理图像;第二输入层,用于输入特征参数;第一输入层与第二输入层为并列关系。
在本发明的一些实施方式中,卷积神经网络还可以包括:拼接层,用于将第一输入层对应的神经元与第二输入层对应的神经元进行拼接。
在本发明的一些实施方式中,卷积神经网络还可以包括:卷积层,位于第一输入层之后;池化层,位于卷积层之后;第一全连接层,位于池化层之后,拼接层之前;第二全连接层,位于第二输入层之后,拼接层之前;第三全连接层,位于拼接层之后;输出层,位于第三连接层之后;其中,拼接层用于将第一全连接层与第二全连接层进行拼接。
在本发明的一些实施方式中,初始确定模块1020可以用于对待处理图像中的图形进行椭圆拟合,并根据所拟合的椭圆的长轴端点确定初始指尖点。
在本发明的一些实施方式中,特征参数可以是特征向量,特征向量为具有5个维度的独热向量,其中5个维度分别表示大拇指、食指、中指、无名指与小拇指。
在本发明的一些实施方式中,图像获取模块1010可以包括:图像采集单元1011,用于采集包含手指的原始图像;预处理单元1012,用于对原始图像进行预处理,得到待处理图像。
在本发明的一些实施方式中,上述预处理可以包括以下任意一种或多种:背景减除、灰度处理、二值化处理与去噪处理。
在本发明的一些实施方式中,图像采集单元1011可以用于采集包含手指的原始深度图像;预处理单元1012可以用于对原始深度图像进行预处理;图像获取模块1010还可以包括:图像分割单元1013,用于对预处理后的原始深度图像进行感兴趣区域检测,并从感兴趣区域中分割出手指图像;三维点云提取单元1014,用于根据手指图像提取三维点云图像,并将三维点云图像确定为待处理图像。
在本发明的一些实施方式中,三维点云提取单元1014还可以用于根据预设分辨率调整三维点云图像的分辨率,并对三维点云图像的深度值进行归一化处理,得到待处理图像。
在本发明的一些实施方式中,最终确定模块1040可以用于执行以下循环过程,直到确定最终指尖点:基于特征参数以及包含初始指尖点的待处理图像,采用卷积神经网络确定初始指尖点对应的中间指尖点;检测中间指尖点与初始指尖点之间的距离;如果距离大于预设距离,则将中间指尖点确定为初始指尖点,以更新初始指尖点以及包含初始指尖点的待处理图像;如果距离小于或等于预设距离,则将中间指尖点确定为最终指尖点。
此外,本发明实施方式的其他具体细节在上述图像中指尖点的确定方法的发明实施方式中已经详细说明,在此不再赘述。
示例性存储介质
在介绍了本发明示例实施方式的图像中指尖点的确定方法和装置之后,接下来,参考图11对本发明示例实施方式的存储介质进行说明。
参考图11所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品1100,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
该程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言-诸如Java、C++等,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
示例性电子设备
在介绍了本发明示例实施方式的存储介质之后,接下来,参考图12对本发明示例实施方式的电子设备进行说明。
图12所示的电子设备1200仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图12所示,电子设备1200以通用计算设备的形式表现。电子设备1200的组件可以包括但不限于:上述至少一个处理单元1210、上述至少一个存储单元1220、连接不同系统组件(包括存储单元1220和处理单元1210)的总线1230、显示单元1240。
其中,存储单元存储有程序代码,程序代码可以被处理单元1210执行,使得处理单元1210执行本说明书上述"示例性方法"部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元1210可以执行如图2、图5或图7的方法步骤等。
存储单元1220可以包括易失性存储单元,例如随机存取存储单元(RAM)1221和/或高速缓存存储单元1222,还可以进一步包括只读存储单元(ROM)1223。
存储单元1220还可以包括具有一组(至少一个)程序模块1225的程序/实用工具1224,这样的程序模块1225包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1230可以包括数据总线、地址总线和控制总线。
电子设备1200也可以与一个或多个外部设备1300(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(I/O)接口1250进行。电子设备1200还包括显示单元1240,其连接到输入/输出(I/O)接口1250,用于进行显示。并且,电子设备1200还可以通过网络适配器1260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1260通过总线1230与电子设备1200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了音频播放装置和音频分享装置的若干模块或子模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (10)
1.一种图像中指尖点的确定方法,其特征在于,所述方法包括:
获取包含手指的待处理图像;
确定所述待处理图像中的初始指尖点;
根据所述待处理图像中所述初始指尖点所属手指的信息确定所述初始指尖点的特征参数;
基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点。
2.根据权利要求1所述的方法,其特征在于,所述基于所述特征参数以及包含所述初始指尖点的信息的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点,包括:
根据所述初始指尖点确定所述待处理图像中包含有所述初始指尖点的局部图像;
基于所述特征参数,采用所述卷积神经网络对所述局部图像进行识别,得到所述初始指尖点对应的最终指尖点。
3.根据权利要求2所述的方法,其特征在于,所述局部图像以所述初始指尖点为中心。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取样本图像以及所述样本图像中预先标注的样本指尖点;
在所述样本图像中生成多个样本初始指尖点,并从所述样本图像中提取各所述样本初始指尖点对应的局部样本图像;
根据所述样本图像中所述样本指尖点所属手指的信息确定各所述样本初始指尖点的样本特征参数;
基于所述局部样本图像、所述样本特征参数以及所述样本指尖点,训练并得到所述卷积神经网络。
5.根据权利要求4所述的方法,其特征在于,所述在所述样本图像中生成多个样本初始指尖点,包括:
在所述样本图像中包含所述样本指尖点的预设区域内随机生成所述多个样本初始指尖点。
6.根据权利要求1所述的方法,其特征在于,所述卷积神经网络包括:
第一输入层,用于输入包含所述初始指尖点的所述待处理图像;
第二输入层,用于输入所述特征参数;
所述第一输入层与所述第二输入层为并列关系。
7.根据权利要求6所述的方法,其特征在于,所述卷积神经网络还包括:
拼接层,用于将所述第一输入层对应的神经元与所述第二输入层对应的神经元进行拼接。
8.一种图像中指尖点的确定装置,其特征在于,所述装置包括:
图像获取模块,用于获取包含手指的待处理图像;
初始确定模块,用于确定所述待处理图像中的初始指尖点;
特征确定模块,用于根据所述待处理图像中所述初始指尖点所属手指的信息确定所述初始指尖点的特征参数;
最终确定模块,用于基于所述特征参数以及包含所述初始指尖点的所述待处理图像,采用预先训练的卷积神经网络确定所述初始指尖点对应的最终指尖点。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任一项所述的方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910053254.2A CN111460858B (zh) | 2019-01-21 | 2019-01-21 | 图像中指尖点的确定方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910053254.2A CN111460858B (zh) | 2019-01-21 | 2019-01-21 | 图像中指尖点的确定方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111460858A true CN111460858A (zh) | 2020-07-28 |
CN111460858B CN111460858B (zh) | 2024-04-12 |
Family
ID=71680584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910053254.2A Active CN111460858B (zh) | 2019-01-21 | 2019-01-21 | 图像中指尖点的确定方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111460858B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112558810A (zh) * | 2020-12-11 | 2021-03-26 | 北京百度网讯科技有限公司 | 检测指尖位置的方法、装置、设备和存储介质 |
CN113220125A (zh) * | 2021-05-19 | 2021-08-06 | 网易有道信息技术(北京)有限公司 | 手指交互方法、装置、电子设备及计算机存储介质 |
CN115100747A (zh) * | 2022-08-26 | 2022-09-23 | 山东宝德龙健身器材有限公司 | 基于视觉检测的跑步机智能辅助系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106485207A (zh) * | 2016-09-21 | 2017-03-08 | 清华大学 | 一种基于双目视觉图像的指尖检测方法及系统 |
CN107066935A (zh) * | 2017-01-25 | 2017-08-18 | 网易(杭州)网络有限公司 | 基于深度学习的手部姿态估计方法及装置 |
CN108009520A (zh) * | 2017-12-21 | 2018-05-08 | 东南大学 | 一种基于卷积变分自编码器神经网络的手指静脉识别方法及系统 |
CN109063653A (zh) * | 2018-08-07 | 2018-12-21 | 北京字节跳动网络技术有限公司 | 图像处理方法和装置 |
-
2019
- 2019-01-21 CN CN201910053254.2A patent/CN111460858B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106485207A (zh) * | 2016-09-21 | 2017-03-08 | 清华大学 | 一种基于双目视觉图像的指尖检测方法及系统 |
CN107066935A (zh) * | 2017-01-25 | 2017-08-18 | 网易(杭州)网络有限公司 | 基于深度学习的手部姿态估计方法及装置 |
CN108009520A (zh) * | 2017-12-21 | 2018-05-08 | 东南大学 | 一种基于卷积变分自编码器神经网络的手指静脉识别方法及系统 |
CN109063653A (zh) * | 2018-08-07 | 2018-12-21 | 北京字节跳动网络技术有限公司 | 图像处理方法和装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112558810A (zh) * | 2020-12-11 | 2021-03-26 | 北京百度网讯科技有限公司 | 检测指尖位置的方法、装置、设备和存储介质 |
CN112558810B (zh) * | 2020-12-11 | 2023-10-03 | 北京百度网讯科技有限公司 | 检测指尖位置的方法、装置、设备和存储介质 |
CN113220125A (zh) * | 2021-05-19 | 2021-08-06 | 网易有道信息技术(北京)有限公司 | 手指交互方法、装置、电子设备及计算机存储介质 |
CN115100747A (zh) * | 2022-08-26 | 2022-09-23 | 山东宝德龙健身器材有限公司 | 基于视觉检测的跑步机智能辅助系统 |
CN115100747B (zh) * | 2022-08-26 | 2022-11-08 | 山东宝德龙健身器材有限公司 | 基于视觉检测的跑步机智能辅助系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111460858B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sagayam et al. | Hand posture and gesture recognition techniques for virtual reality applications: a survey | |
Chen et al. | Real‐time hand gesture recognition using finger segmentation | |
JP5887775B2 (ja) | ヒューマンコンピュータインタラクションシステム、手と手指示点位置決め方法、及び手指のジェスチャ決定方法 | |
CN112052186B (zh) | 目标检测方法、装置、设备以及存储介质 | |
Patruno et al. | People re-identification using skeleton standard posture and color descriptors from RGB-D data | |
Pandey et al. | Hand gesture recognition for sign language recognition: A review | |
US11749023B2 (en) | Apparatus and method for monitoring user based on multi-view face image | |
WO2016025713A1 (en) | Three-dimensional hand tracking using depth sequences | |
CN111444764A (zh) | 一种基于深度残差网络的手势识别方法 | |
CN112114675B (zh) | 基于手势控制的非接触电梯键盘的使用方法 | |
CN112101208A (zh) | 高龄老人特征串联融合手势识别方法及装置 | |
CN111460858B (zh) | 图像中指尖点的确定方法、装置、存储介质及电子设备 | |
CN109325408A (zh) | 一种手势判断方法及存储介质 | |
Thabet et al. | Fast marching method and modified features fusion in enhanced dynamic hand gesture segmentation and detection method under complicated background | |
Arooj et al. | Enhancing sign language recognition using CNN and SIFT: A case study on Pakistan sign language | |
Zahra et al. | Camera-based interactive wall display using hand gesture recognition | |
Hoque et al. | Computer vision based gesture recognition for desktop object manipulation | |
CN111435429A (zh) | 一种基于双目立体数据动态认知的手势识别方法及系统 | |
Uke et al. | Optimal video processing and soft computing algorithms for human hand gesture recognition from real-time video | |
Thabet et al. | Algorithm of local features fusion and modified covariance-matrix technique for hand motion position estimation and hand gesture trajectory tracking approach | |
Wang et al. | A study on hand gesture recognition algorithm realized with the aid of efficient feature extraction method and convolution neural networks: design and its application to VR environment | |
Fadel et al. | Computer Vision Techniques for Hand Gesture Recognition: Survey | |
Dominio et al. | Feature descriptors for depth-based hand gesture recognition | |
KR20130143405A (ko) | 깊이 정보 기반 사람의 피부 영역 검출 방법 | |
Tavari et al. | A review of literature on hand gesture recognition for Indian Sign Language |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |