CN108227912B - 设备控制方法和装置、电子设备、计算机存储介质 - Google Patents
设备控制方法和装置、电子设备、计算机存储介质 Download PDFInfo
- Publication number
- CN108227912B CN108227912B CN201711243734.2A CN201711243734A CN108227912B CN 108227912 B CN108227912 B CN 108227912B CN 201711243734 A CN201711243734 A CN 201711243734A CN 108227912 B CN108227912 B CN 108227912B
- Authority
- CN
- China
- Prior art keywords
- hand
- key point
- finger
- image
- heat map
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- 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
Abstract
本发明实施例公开了一种设备控制方法和装置、电子设备、计算机存储介质,其中,方法包括:基于接收到的待处理图像获得待处理图像中的手部图像;利用神经网络对所述手部图像进行处理,获得手部图像中的手部关键点;基于获得的手部关键点确定手部图像包含的手势形状;基于手势形状控制相应设备的操作。本实施例所述方法通过基于概率热图获得手部关键点信息,对于无论是已知手势,还是未知手势都可以进行关键点标注,实现了精确的手势识别,增强了人机交互。
Description
技术领域
本发明涉及计算机视觉技术,尤其是一种设备控制方法和装置、电子设备、计算机存储介质。
背景技术
现有技术中普及的人机交互方式,基本依赖于与机器的接触,如:通过鼠标、键盘、遥控器、触摸屏等实现人机交互。而随着计算机视觉技术的不断发展,通过计算机实现识别、定位等技术已在人们生活中得到普遍应用。手作为人体中最灵活的部位,具有较强的表达能力,能够通过手指的位置变化组合出多种的手势,仅用一只手就可以表达丰富的信息。
发明内容
本发明实施例提供一种设备控制技术。
本发明实施例提供的一种设备控制方法,包括:
基于接收到的待处理图像获得所述待处理图像中的手部图像;
利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点;所述神经网络基于样本手部图像训练获得;
基于所述获得的手部关键点确定所述手部图像包含的手势形状;
基于所述手势形状控制相应设备的操作。
在基于本发明上述方法的另一个实施例中,所述利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点,包括:
利用神经网络对所述手部图像进行处理,通过所述神经网络获得至少一个概率热图;
基于所述概率热图获得手部关键点信息,基于所述手部关键点信息获得手部关键点。
在基于本发明上述方法的另一个实施例中,基于所述概率热图获得关键点信息,基于所述手部关键点信息获得手部关键点,包括:
从所述概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;
计算所述筛选坐标点的邻域响应和;
基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点信息,获得对应所述手部关键点信息的手部关键点;每个所述手部关键点信息对应一个手部关键点;各所述手部关键点之间的间隔大于设定像素值。
在基于本发明上述方法的另一个实施例中,基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点,包括:
按照所述邻域响应和的大小,将对应所述邻域响应和的筛选坐标点进行排序操作;
按顺序将所述邻域响应和与预设阈值进行比较;
获得预设数量的所述筛选坐标点作为关键点,或获得数量少于预设数量的所述邻域响应和大于预设阈值的所述筛选坐标点作为关键点。
在基于本发明上述方法的另一个实施例中,按顺序将所述邻域响应和与预设阈值进行比较,包括:
按顺序从各所述邻域响应和中提取所述邻域响应和,将所述提取的邻域响应和与预设阈值进行比较;
响应于大于所述预设阈值的所述邻域响应和的数量大于预设数量,和/或响应于所述邻域响应和小于所述预设阈值,停止将所述邻域响应和与所述预设阈值进行比较。
在基于本发明上述方法的另一个实施例中,还包括:
响应于所述两个手部关键点之间的距离小于预设距离值时,合并所述两个手部关键点得到一个手部关键点。
在基于本发明上述方法的另一个实施例中,所述手部关键点信息包括指尖关键点信息和指根关键点信息;
所述基于所述概率热图获得手部关键点信息,包括:
基于所述概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;所述指尖关键点信息对应指尖关键点,所述指根关键点信息对应指根关键点。
在基于本发明上述方法的另一个实施例中,基于所述获得的手部关键点还可以确定所述概率热图中的手部区域;
基于所述获得的手部关键点确定所述手部图像包含的手势形状,包括:
基于所述获得的至少一个指尖关键点信息和至少一个指根关键点信息;
将各所述指尖关键点与各所述指根关键点建立连线,得到至少一个连线;
基于所述连线获得所述连线两侧设定距离内的区域,判断所述区域与所述概率热图中的手部区域的重叠面积是否大于所述区域的预设比例;
响应于所述面积与所述手部区域的重叠面积大于或等于所述区域的预设比例,确定所述区域为手指图像;
响应于所述面积与所述手部区域的重叠面积小于所述区域的预设比例,删除所述区域对应的连线。
在基于本发明上述方法的另一个实施例中,基于所述手势形状控制相应设备的操作,包括:
将所述手势形状与预设手势图像匹配,基于匹配获得的所述预设手势图像控制相应设备的操作;每个所述预设手势图像对应设备的一个操作。
在基于本发明上述方法的另一个实施例中,基于接收到的待处理图像获得所述待处理图像中的手部图像之前,还包括:
通过摄像设备采集视频,在所述视频中提取至少一个视频帧,作为所述待处理图像。
在基于本发明上述方法的另一个实施例中,基于所述手势形状控制相应设备的操作,包括:
基于至少一个相关视频帧获得相关图像;所述相关视频帧包括所述待处理图像对应的视频帧前后相邻的预设个数的视频帧;
基于所述相关图像获得所述相关图像中的相关手部图像;利用所述神经网络对所述相关手部图像进行处理,获得所述相关手部图像中的相关手部关键点;
基于所述相关手部关键点确定所述相关手部图像的相关手势形状;
基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作。
在基于本发明上述方法的另一个实施例中,基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作,包括:
基于所述手势形状和至少一个所述相关手势形状组合获得手部动作;所述手部动作包括手势形状不同的至少两个手部图像;
将所述手部动作与预设手部动作匹配,基于匹配获得的所述预设手部动作控制相应设备的操作;每个所述手部动作对应设备的一个操作。
在基于本发明上述方法的另一个实施例中,所述利用神经网络对手部图像进行处理,获得所述手部图像中的手部关键点之前,还包括:
将样本手部图像作为所述待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域;所述样本手部图像标注有标注手部关键点信息;
基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图;
利用所述神经网络对所述样本手部图像进行处理,通过所述神经网络获得至少一个估计概率热图;
基于所述估计概率热图和标注概率热图训练所述神经网络,直到满足预设训练完成条件。
在基于本发明上述方法的另一个实施例中,所述标注关键点信息包括指尖关键点信息和指根关键点信息;每个所述指尖关键点信息对应一个指尖关键点,每个所述指根关键点信息对应一个指根关键点;
所述基于样本手部图像获得手指关键点区域和/或手指区域,包括:
分别基于所述样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
和/或,基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域。
在基于本发明上述方法的另一个实施例中,基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域,包括:
基于所述指尖关键点信息和指根关键点信息将所述指尖关键点和指根关键点建立连线;
将所述连线两侧设定距离内的区域作为手指区域。
在基于本发明上述方法的另一个实施例中,基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图,包括:
分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率;
基于所述指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于所述指根区域内的坐标的高斯概率得到标注指根概率热图;
和/或,基于所述手指区域模拟高斯分布获得对应所述手指区域的高斯概率;
基于对应所述手指区域的高斯概率得到标注手指概率热图。
在基于本发明上述方法的另一个实施例中,所述分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率,包括:
计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数,得到所述指尖区域内的各坐标对应的高斯概率;
计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数,得到所述指根区域内的各坐标对应的高斯概率。
在基于本发明上述方法的另一个实施例中,计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数之后,还包括:
响应于所述一个坐标对多个所述指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率;
计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数之后,还包括:
响应于所述一个坐标对多个所述指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率。
在基于本发明上述方法的另一个实施例中,基于所述估计概率热图和标注概率热图训练所述神经网络,包括:
计算所述估计概率热图和标注概率热图之间的误差,基于所述误差通过反向梯度算法训练所述神经网络。
在基于本发明上述方法的另一个实施例中,计算所述估计概率热图和标注概率热图之间的误差,包括:
基于所述估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将所述对于至少一个估计概率热图的热图误差叠加得到所述误差。
在基于本发明上述方法的另一个实施例中,所述基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图之前,还包括:
将所述样本手部图像缩放到设定大小,使所述缩放后的样本手部图像对应的标注概率热图与所述估计概率热图的大小相同。
根据本发明实施例的一个方面,提供的一种设备控制装置,包括:
图像接收单元,用于基于接收到的待处理图像获得所述待处理图像中的手部图像;
图像处理单元,用于利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点;所述神经网络基于样本手部图像训练获得;
手势识别单元,用于基于所述获得的手部关键点确定所述手部图像包含的手势形状;
设备操作单元,用于基于所述手势形状控制相应设备的操作。
在基于本发明上述装置的另一个实施例中,所述图像处理单元,包括:
概率热图模块,用于利用神经网络对所述手部图像进行处理,通过所述神经网络获得至少一个概率热图;
关键点获取模块,用于基于所述概率热图获得手部关键点信息,基于所述手部关键点信息获得手部关键点。
在基于本发明上述装置的另一个实施例中,所述关键点获取模块,包括:
坐标筛选模块,用于从所述概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;计算所述筛选坐标点的邻域响应和;
排序模块,用于基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点信息,获得对应所述手部关键点信息的手部关键点;每个所述手部关键点信息对应一个手部关键点;各所述手部关键点之间的间隔大于设定像素值。
在基于本发明上述装置的另一个实施例中,所述排序模块,包括:
坐标点排序模块,用于按照所述邻域响应和的大小,将对应所述邻域响应和的筛选坐标点进行排序操作;
比较模块,用于按顺序将所述邻域响应和与预设阈值进行比较;
筛选关键点模块,用于获得预设数量的所述筛选坐标点作为关键点,或获得数量少于预设数量的所述邻域响应和大于预设阈值的所述筛选坐标点作为关键点。
在基于本发明上述装置的另一个实施例中,所述比较模块,具体用于按顺序从各所述邻域响应和中提取所述邻域响应和,将所述提取的邻域响应和与预设阈值进行比较;响应于大于所述预设阈值的所述邻域响应和的数量大于预设数量,和/或响应于所述邻域响应和小于所述预设阈值,停止将所述邻域响应和与所述预设阈值进行比较。
在基于本发明上述装置的另一个实施例中,所述关键点获取模块,还包括:
关键点合并模块,用于响应于所述两个手部关键点之间的距离小于预设距离值时,合并所述两个手部关键点得到一个手部关键点。
在基于本发明上述装置的另一个实施例中,所述手部关键点信息包括指尖关键点信息和指根关键点信息;
所述关键点获取模块,具体用于基于所述概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;所述指尖关键点信息对应指尖关键点,所述指根关键点信息对应指根关键点。
在基于本发明上述装置的另一个实施例中,所述关键点获取模块,还用于基于所述获得的手部关键点还可以确定所述概率热图中的手部区域;
所述手势识别单元,包括:
连线模块,用于基于所述获得的至少一个指尖关键点信息和至少一个指根关键点信息,将各所述指尖关键点与各所述指根关键点建立连线,得到至少一个连线;
面积比较模块,用于基于所述连线基于所述连线获得所述连线两侧设定距离内的区域,判断所述区域与所述概率热图中的手部区域的重叠面积是否大于所述区域的预设比例;
手指图像确定模块,用于响应于所述面积与所述手部区域的重叠面积大于或等于所述区域的预设比例,确定所述区域为手指图像;响应于所述面积与所述手部区域的重叠面积小于所述区域的预设比例,删除所述区域对应的连线。
在基于本发明上述装置的另一个实施例中,所述设备操作单元,具体用于将所述手势形状与预设手势图像匹配,基于匹配获得的所述预设手势图像控制相应设备的操作;每个所述预设手势图像对应相应设备的一个操作。
在基于本发明上述装置的另一个实施例中,还包括:
采集单元,用于通过摄像设备采集视频,在所述视频中提取至少一个视频帧,作为所述待处理图像。
在基于本发明上述装置的另一个实施例中,所述设备操作单元,包括:
相关图像模块,用于基于至少一个相关视频帧获得相关图像;所述相关视频帧包括所述待处理图像对应的视频帧前后相邻的预设个数的视频帧;
相关图像处理模块,用于基于所述相关图像获得所述相关图像中的相关手部图像;利用所述神经网络对所述相关手部图像进行处理,获得所述相关手部图像中的相关手部关键点;
相关手势识别模块,用于基于所述相关手部关键点确定所述相关手部图像的相关手势形状;
操作模块,用于基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作。
在基于本发明上述装置的另一个实施例中,所述操作模块,具体用于基于所述手势形状和至少一个所述相关手势形状组合获得手部动作;所述手部动作包括手势形状不同的至少两个手部图像;将所述手部动作与预设手部动作匹配,基于匹配获得的所述预设手部动作控制相应设备的操作;每个所述手部动作对应设备的一个操作。
在基于本发明上述装置的另一个实施例中,还包括:
区域获得单元,用于将样本手部图像作为所述待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域;所述样本手部图像标注有标注手部关键点信息;
热图标注单元,用于基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图;
热图估计单元,用于利用所述神经网络对所述样本手部图像进行处理,通过所述神经网络获得至少一个估计概率热图;
网络训练单元,用于基于所述估计概率热图和标注概率热图训练所述神经网络,直到满足预设训练完成条件。
在基于本发明上述装置的另一个实施例中,所述标注关键点信息包括指尖关键点信息和指根关键点信息;每个所述指尖关键点信息对应一个指尖关键点,每个所述指根关键点信息对应一个指根关键点;
所述区域获得单元,包括:
指尖跟区域模块,用于分别基于所述样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
手指区域模块,用于基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域。
在基于本发明上述装置的另一个实施例中,所述手指区域模块,具体用于基于所述指尖关键点信息和指根关键点信息将所述指尖关键点和指根关键点建立连线;将所述连线两侧设定距离内的区域作为手指区域。
在基于本发明上述装置的另一个实施例中,所述热图标注单元,包括:
高斯模拟模块,用于分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率;
指尖跟热图模块,用于基于所述指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于所述指根区域内的坐标的高斯概率得到标注指根概率热图;
手指热图模块,用于基于所述手指区域模拟高斯分布获得对应所述手指区域的高斯概率;基于对应所述手指区域的高斯概率得到标注手指概率热图。
在基于本发明上述装置的另一个实施例中,所述高斯模拟模块,具体用于计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数,得到所述指尖区域内的各坐标对应的高斯概率;计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数,得到所述指根区域内的各坐标对应的高斯概率。
在基于本发明上述装置的另一个实施例中,所述高斯模拟模块,还用于响应于所述一个坐标对多个所述指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率;响应于所述一个坐标对多个所述指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率。
在基于本发明上述装置的另一个实施例中,所述网络训练单元,包括:
误差计算模块,用于计算所述估计概率热图和标注概率热图之间的误差;
训练模块,用于基于所述误差通过反向梯度算法训练所述神经网络。
在基于本发明上述装置的另一个实施例中,所述误差计算模块,具体用于基于所述估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将所述对于至少一个估计概率热图的热图误差叠加得到所述误差。
在基于本发明上述装置的另一个实施例中,还包括:
图像缩放单元,用于将所述样本手部图像缩放到设定大小,使所述缩放后的样本手部图像对应的标注概率热图与所述估计概率热图的大小相同。
根据本发明实施例的另一个方面,提供的一种电子设备,包括处理器,所述处理器包括如上所述的设备控制装置。
根据本发明实施例的又一个方面,提供的一种电子设备,其特征在于,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成如上所述设备控制方法的操作。
根据本发明实施例的还一个方面,提供的一种计算机存储介质,用于存储计算机可读取的指令,其特征在于,所述指令被执行时执行如上所述设备控制方法的操作。
基于本发明上述实施例提供的一种设备控制方法和装置、电子设备、计算机存储介质,基于接收到的待处理图像获得待处理图像中的手部图像;获得手部图像中的手部关键点,基于获得的手部关键点确定手部图像包含的手势形状;通过基于获得手部关键点识别手势形状,对于无论是已知手势,还是未知手势都可以进行关键点标注,实现了精确的手势识别;基于手势形状控制相应设备的操作,实现了基于手势控制设备,增强了人机交互。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明设备控制方法一个实施例的流程图。
图2a-d为本发明设备控制方法一个具体示例的示意图。
图3为本发明设备控制装置一个实施例的结构示意图。
图4为用来实现本申请实施例的终端设备或服务器的电子设备的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
现有技术中的人机交互大致分为以下几类:
现有技术中普及的人机交互方式是依赖与机器的接触,如:鼠标、键盘、遥控器、触摸屏等。但是现有的接触型交互媒介需要较大的使用空间,如:鼠标键盘需要在桌面上使用,不能很好地满足便携性;
现有技术中的非接触交互媒介,如:深度摄像头、双目红外摄像头等,由于价格昂贵且使用范围有限,不利于普及推广。
针对上述现有技术和手势的优势,通过手势表达的信息如果能够被计算机很好地识别,就可以很好地增强人机之间的无接触交互。
因此,提出了手势识别算法,但现有手势识别算法一般只能识别特定手势,无法对手势识别列表之外的通用手势进行检测识别,限制了使用范围。
图1为本发明设备控制方法一个实施例的流程图。如图1所示,该实施例方法包括:
步骤101,基于接收到的待处理图像获得待处理图像中的手部图像。
具体地,接收的待处理图像可以是通过摄像头采集的,或通过其他方式获取的包括手部图像的待处理图像;而基于待处理图像获得手部图像的过程,具体可以通过手部识别网络实现,通过手部识别网络将待处理图像中的手部图像识别出来,得到手部图像;该手部识别网络通过样本图像训练得到,该样本图像中标注有手部图像的位置和大小;获得手部图像的过程,还可以通过设定大小的方框在待处理图像中逐个像素的移动,判断手部图像的位置和大小,进而获得手部图像;当然,现有技术中的其他获得手部图像的方法同样可应用于本实施中。
步骤102,利用神经网络对手部图像进行处理,获得手部图像中的手部关键点。
其中,神经网络基于样本手部图像训练获得。具体地,在获取概率热图之前,还可以将图中的概率值归一化,基于归一化后的概率值获得概率热图。
步骤103,基于获得的手部关键点确定手部图像包含的手势形状。
步骤104,基于手势形状控制相应设备的操作。
基于本发明上述实施例提供的一种设备控制方法,基于接收到的待处理图像获得待处理图像中的手部图像;获得手部图像中的手部关键点,基于获得的手部关键点确定手部图像包含的手势形状;通过基于获得手部关键点识别手势形状,对于无论是已知手势,还是未知手势都可以进行关键点标注,实现了精确的手势识别;基于手势形状控制相应设备的操作,实现了基于手势控制设备,增强了人机交互。
本发明设备控制方法的另一个实施例,在上述实施例的基础上,操作102包括:
利用神经网络对手部图像进行处理,通过神经网络获得至少一个概率热图;
具体地,基于神经网络对手部图像进行处理,将得到对应手部图像的概率特征图,该概率特征图中每个像素点对应一个概率值,每个概率值代表该像素点是关键点的概率,将概率特征图中相同或相近的概率连线(类似于等高线),将在概率特征图中将构成围绕关键点的概率热图,概率热图是指将图中概率不同的位置通过不同颜色进行区分,以突出概率值高的区域或点。
基于概率热图获得手部关键点信息,基于手部关键点信息获得手部关键点。
具体地,基于概率热图的特点,在该概率热图中查找概率值最大的设定个数的点,即获得了手部图像中的手部关键点信息,手部关键点信息可以包括:手部关键点的坐标等信息,基于手部关键点信息即可确定手部关键点。
在本发明设备控制方法上述各实施例的一个具体示例中,基于概率热图获得手部关键点信息,基于手部关键点信息获得手部关键点,包括:
从概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;
计算筛选坐标点的邻域响应和;
基于邻域响应和对筛选坐标点进行排序操作,基于排序后的筛选坐标点得到手部关键点信息,获得对应手部关键点信息的手部关键点。
其中,每个手部关键点信息对应一个手部关键点;各手部关键点之间的间隔大于设定像素值。
本实施例中,邻域响应和为一个坐标点的设定数量的邻域坐标点(如:临近的8个坐标点)的和,例如:当前获得的概率热图响应如表1所示:
1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 |
表1一个具体示例中获得的概率热图响应表
此时计算每个像素的8邻域,即6的8邻域为(1,2,3,5,7,9,10,11),在计算邻域响应和是,将该点本身也加入,此时,6的邻域响应和为1+2+3+5+7+9+10+11+6=54,同理计算概率热图中每个坐标点的邻域响应和,得到邻域响应和矩阵如表2所示:
14 | 24 | 30 | 22 |
33 | 54 | 63 | 45 |
57 | 90 | 99 | 69 |
46 | 72 | 78 | 54 |
表2一个具体示例中获得的邻域响应和矩阵表
本实施例的主要流程可以包括:将概率热图(如:32×32像素)放大至设定大小(如:100×100像素),再筛选概率热图值大于某一阈值(如:指尖100、指根75)的坐标,保存该点坐标及半径为一个设定值(如:指尖2像素或指根4像素)的邻域内所有取值之和,将这些坐标点按照邻域响应和由大到小排序,依次分配关键点。
在本发明设备控制方法上述各实施例的一个具体示例中,基于邻域响应和对筛选坐标点进行排序操作,基于排序后的筛选坐标点得到手部关键点,包括:
按照邻域响应和的大小,将对应邻域响应和的筛选坐标点进行排序操作;
按顺序将邻域响应和与预设阈值进行比较;
获得预设数量的筛选坐标点作为关键点,或获得数量少于预设数量的邻域响应和大于预设阈值的筛选坐标点作为关键点。
本实施例中,由于手部的关键点数量为设定数量,如:一只手最多包括5个指尖关键点和5个指根关键点;因此,当对具有一只手的手部图像得到大于预设阈值的筛选坐标点大于10个时,仅获取排序中的前10个筛选坐标点作为关键点;而如果得到大于预设阈值的筛选坐标点小于或等于10个时,则将大于预设阈值的筛选坐标点作为关键点。
在本发明设备控制方法上述各实施例的一个具体示例中,按顺序将邻域响应和与预设阈值进行比较,包括:
按顺序从各邻域响应和中提取邻域响应和,将提取的邻域响应和与预设阈值进行比较;
响应于大于预设阈值的邻域响应和的数量大于预设数量,和/或响应于邻域响应和小于预设阈值,停止将邻域响应和与预设阈值进行比较。
在此实施例中,按顺序依次提取一个邻域响应和与预设阈值进行比较,当得到的大于预设阈值的领域响应和大于预设数量(如:单手对应10个关键点)时,将不再提取下一个邻域响应和进行比较;还可以当提取的一个邻域响应和小于预设阈值时,将不对该邻域响应和及该邻域响应和排序之后的邻域响应和进行比较。
在本发明设备控制方法上述各实施例的一个具体示例中,还包括:
响应于两个手部关键点之间的距离小于预设距离值时,合并两个手部关键点得到一个手部关键点。
本实施例中,在分配关键点时,需要保证当前坐标点和所有已分配坐标点间的距离大于预设距离值(如:7个像素),这样设定可以排除同一个关键点由于响应值较大而被多次分配。对于单手关键点检测任务,当分配的关键点数量等于10或当前坐标的邻域响应和小于阈值(指尖1000,指根400)时中断分配。使用阈值中断可以有效防止噪声对关键点的影响,阈值中断是指将邻域响应和小于预设阈值的坐标点忽略。
本发明设备控制方法的又一个实施例,在上述实施例的基础上,手部关键点信息包括指尖关键点信息和指根关键点信息;
操作103包括:
基于概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;指尖关键点信息对应指尖关键点,指根关键点信息对应指根关键点。
本实施例中,为了识别手部动作,需要对手指进行识别,手指的关键点信息至少需要包括指尖关键点信息和指根关键点信息,因此,通过不同的设定阈值获得指尖关键点信息和指根关键点信息,进而获得指尖关键点和指根关键点。
在本发明设备控制方法上述各实施例的一个具体示例中,基于获得的手部关键点还可以确定概率热图中的手部区域;
基于获得的手部关键点确定手部图像包含的手势形状,包括:
基于获得的至少一个指尖关键点信息和至少一个指根关键点信息;
将各指尖关键点与各指根关键点建立连线,得到至少一个连线;
基于连线获得连线两侧设定距离内的区域,判断区域与概率热图中的手部区域的重叠面积是否大于区域的预设比例;
响应于面积与手部区域的重叠面积大于或等于所述面积的预设比例,确定面积为手指图像;
响应于面积与手部区域的重叠面积小于面积的预设比例,删除面积对应的连线。
本实施例中,通常手指区域是根据指尖到指根确定的,而该实施例中,由于不能确定手部动作中手指是否为伸直状态,因此,将各指尖关键点与各指根关键点分别建立连线,根据连线和指尖关键点与指根关键点的距离确定一个设定距离(通常手指粗细与手指长度相关),根据该设定距离获得多个区域,将获得的所有区域与概率热图中的手部区域进行重叠面积的判断,当区域与手部区域的重叠面积超出设定比例时,即可确定对应该区域的指尖和指根属于同一根手指,即该区域为手指图像。图2a-d为本发明手部识别方法一个应用示例的示意图。图2a为输入的待处理图像,其中框中选定的范围为手部图像;图2b为神经网络输出的对应指尖关键点的概率热图;图2c为神经网络输出的对应指根关键点的概率热图;图2d为基于获得的手部关键点确定手部图像的手势形状。
本发明设备控制方法的还一个实施例,在上述实施例的基础上,操作104包括:
将手势形状与预设手势图像匹配,基于匹配获得的预设手势图像控制相应设备的操作;每个预设手势图像对应设备的一个操作。
通常针对设备,会配置相应的多个可操作预设手势,这些预设手势可以根据用户需要自行设定,满足个性化手势设置,以便通过手势控制设备,实现更快捷的人机交互。
在本发明设备控制方法上述各实施例的一个具体示例中,基于接收到的待处理图像获得待处理图像中的手部图像之前,还包括:
通过摄像设备采集视频,在视频中提取至少一个视频帧,作为待处理图像。
具体地,由于需要实现人机交互,那么待处理图像的获取必须是基于实时的人体动作,捕捉人体动作时,需要摄像头对人体动作进行采集,将采集到的视频分解为待处理图像,基于待处理图像中的手势实现人机交互;基于对从视频中获得的连续图像进行手势识别,实现手势追踪,达到更好的非接触型的人机交互的效果。
在本发明设备控制方法上述各实施例的一个具体示例中,基于手势形状控制相应设备的操作,包括:
基于至少一个相关视频帧获得相关图像;相关视频帧包括待处理图像对应的视频帧前后相邻的预设个数的视频帧;
基于相关图像获得相关图像中的相关手部图像;利用神经网络对相关手部图像进行处理,获得相关手部图像中的相关手部关键点;
基于相关手部关键点确定相关手部图像的相关手势形状;
基于手势形状和至少一个相关手势形状控制相应设备的操作。
具体地,根据得到的关键点坐标结果,使用者可以完成简单的人机交互任务;相关视频帧可以是待处理图像对应的视频帧前后每间隔预设帧数的视频帧提取得到的,通连续视频帧得到的手势形状,可以构成连续的动作,例如:当检测到使用者伸出一根手指时,此时将指尖点作为当前鼠标指针的位置,通过移动手指可以在计算机上移动鼠标指针;使用者伸出两根手指移动时,可以模拟滚轮滚动的操作;四根手指左右滑动对应多窗口之间的切换;五根手指并拢可以显示桌面、向外扩展可以恢复最小化的窗口。
在本发明设备控制方法上述各实施例的一个具体示例中,基于手势形状和至少一个相关手势形状控制相应设备的操作,包括:
基于手势形状和至少一个相关手势形状组合获得手部动作;手部动作包括手势形状不同的至少两个手部图像;
将手部动作与预设手部动作匹配,基于匹配获得的预设手部动作控制相应设备的操作;每个手部动作对应设备的一个操作。
具体地,通过手势形状和至少一个相关手势形状组合,将获得变换的手部动作,基于变换的手部动作,可以实现对设备的更多操作。
本发明设备控制方法的再一个实施例,在上述实施例的基础上,操作102之前,还可以包括:
将样本手部图像作为待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域。
其中,样本手部图像标注有标注手部关键点信息;具体地,为了避免遗漏,不能以点作为获得标注概率热图的基础,而是基于关键点确定关键点区域和/或基于关键点确定手指区域。
基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图。
具体地,为了获得训练误差,需要获得与神经网络输出的估计概率热图对应的标注概率热图,因此,基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图。
利用神经网络对样本手部图像进行处理,通过神经网络获得至少一个估计概率热图。
具体地,神经网络通过至少一个通道输出至少一个估计概率热图,每个通道输出一个估计概率热图;基于神经网络对样本手部图像进行处理,将得到对应样本手部图像的概率特征图,该概率特征图中每个像素点对应一个概率值,每个概率值代表该像素点是关键点的概率,将概率特征图中相同或相近的概率连线(类似于等高线),将在概率特征图中将构成围绕关键点的概率热图,概率热图是指将图中概率不同的位置通过不同颜色进行区分,以突出概率值高的区域或点。
在具体操作中,获得手指关键点区域和/或手指区域的操作、获得标注概率热图的操作及获得估计概率热图的操作之间不存在固定顺序,可先执行获得手指关键点区域和/或手指区域的操作和获得标注概率热图的操作,再执行获得估计概率热图的操作;也可以先执行获得估计概率热图的操作,在执行获得手指关键点区域和/或手指区域的操作和获得标注概率热图的操作;还可以同时执行上述操作。
基于估计概率热图和标注概率热图训练神经网络,直到满足预设训练完成条件。
本实施例实现对神经网络的训练,基于样本手部图像获得手指关键点区域和/或手指区域;基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图;通过获取的标注概率热图,为训练神经网络时提供误差的计算基础;利用神经网络对样本手部图像进行处理,通过神经网络的至少一个通道获得至少一个估计概率热图;通过基于估计概率热图和标注概率热图训练神经网络,获得满足预设训练完成条件的神经网络,训练后的神经网络可以对未知手势进行手指关键点标注。
在本发明设备控制方法上述各实施例的一个具体示例中,标注关键点信息包括指尖关键点信息和指根关键点信息;每个指尖关键点信息对应一个指尖关键点,每个指根关键点信息对应一个指根关键点;
基于样本手部图像获得手指关键点区域和/或手指区域,包括:
分别基于样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
和/或,基于指尖关键点信息和指根关键点信息对指尖关键点和指根关键点建立连线,基于连线得到手指区域。
本实施例中,根据样本图像中已知的指尖关键点信息和指根关键点信息可确定指尖区域和指根区域,还可以根据指尖关键点信息和指根关键点信息的连线确定的区域获得手指区域。
在本发明设备控制方法上述各实施例的一个具体示例中,基于指尖关键点信息和指根关键点信息对指尖关键点和指根关键点建立连线,基于连线得到手指区域,包括:
基于指尖关键点信息和指根关键点信息将指尖关键点和指根关键点建立连线;
将连线两侧设定距离内的区域作为手指区域。
具体地,根据连线和指尖关键点与指根关键点的距离确定一个设定距离(通常手指粗细与手指长度相关),由该设定距离即可获得手指区域。
在本发明设备控制方法上述各实施例的一个具体示例中,基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图,包括:
分别基于指尖区域和指根区域内的坐标模拟高斯分布,获得指尖区域和指根区域内的坐标的高斯概率;
基于指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于指根区域内的坐标的高斯概率得到标注指根概率热图;
和/或,基于手指区域模拟高斯分布获得对应手指区域的高斯概率;
基于对应手指区域的高斯概率得到标注手指概率热图。
具体地,本实施例使用人工标注好的所有关键点坐标生成网络训练时使用的概率热图监督信息。对于指尖、指根关键点,在其半径为4的范围内,以σ=0.8生成高斯概率h(x,y)=50×exp(-((x-x0)2+(y-y0)2)/σ2);该高斯概率的功能是为关键点及其邻域范围内的像素点人工赋概率值,作为网络学习的监督信息,使得网络能够对关键点区域产生高斯响应;因为高斯分布是比较贴近实际情况且容易实现的一种分布函数,在各个物理、数学、计算机等领域有着广泛的应用;公式中x,y表示当前坐标点的横纵坐标,x0,y0为目标关键点的横纵坐标,σ是高斯分布的标准差,表明离散程度。
对于手指区域,本实施例选取距离指尖指根连线小于等于4像素的区域为有效区域,以有效区域内点到指尖指根连线距离的平方作为高斯概率中指数的分子,计算得到手指区域的h(x,y)。
在本发明设备控制方法上述各实施例的一个具体示例中,分别基于指尖区域和指根区域内的坐标模拟高斯分布,获得指尖区域和指根区域内的坐标的高斯概率,包括:
计算指尖区域内的各坐标到各指尖关键点的高斯分布函数,得到指尖区域内的各坐标对应的高斯概率;
计算指根区域内的各坐标到各指根关键点的高斯分布函数,得到指根区域内的各坐标对应的高斯概率。
本实施例中,训练时使用的监督信息是由标注好的关键点根据高斯分布生成的,含义为当前位置是关键点的概率,且越靠近关键点的地方概率值越大,反之越远离关键点的地方概率值越小。通过使用响应范围而不是某一点的脉冲响应作为监督,可以使网络更好地学习到关键点邻域的特征,而且通常手指指肚范围是颜色、纹理比较相近的区域,如果只规定某一点有响应而其他相似位置没有响应,网络很难学习到有效信息,也很难收敛。
在本发明设备控制方法上述各实施例的一个具体示例中,计算指尖区域内的各坐标到各指尖关键点的高斯分布函数之后,还包括:
响应于一个坐标对多个指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为坐标的高斯概率;
计算指根区域内的各坐标到各指根关键点的高斯分布函数之后,还包括:
响应于一个坐标对多个指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为坐标的高斯概率。
本实施例中,当一个位置对不同的关键点产生了多个有效h(x,y)时,本实施例取最大的h(x,y)作为人工生成概率热图在(x,y)处的值。
在本发明设备控制方法上述各实施例的一个具体示例中,基于估计概率热图和标注概率热图训练神经网络,包括:
计算估计概率热图和标注概率热图之间的误差,基于误差通过反向梯度算法训练神经网络。
本实施例中,通过反向梯度传导误差训练神经网络,具体训练过程可以包括:将估计概率热图和标注概率热图之间的误差作为最大误差;将最大误差通过梯度反向传播,计算神经网络中每一层的误差;根据每一层的误差计算出每一层参数的梯度,根据梯度修正神经网络中对应层的参数;计算优化参数后的神经网络输出的估计概率热图和标注概率热图之间的误差,将该误差作为最大误差;
迭代执行将最大误差通过梯度反向传播,计算神经网络中每一层的误差;根据每一层的误差计算出每一层参数的梯度,根据梯度修正神经网络中对应层的参数,直到满足预设训练完成条件。
在本发明设备控制方法上述各实施例的一个具体示例中,预设训练完成条件,包括:
预测手势分类信息与标注手势分类信息之间的分类误差小于预设值;或迭代预测次数大于或等于预设次数。
在本发明神经网络的训练方法上述各实施例的一个具体示例中,计算估计概率热图和标注概率热图之间的误差,包括:
基于估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将对于至少一个估计概率热图的热图误差叠加得到误差。
在计算网络误差时,本实施例使用网络生成的估计概率热图和标注概率热图对应位置的累计欧式距离之和作为热图误差,对于输出的多个估计概率热图,累加计算各估计概率热图与对应的标注概率热图对应位置的累计欧式距离之和的热图误差,将各估计概率热图对应的热图误差累加得到误差。
在本发明设备控制方法上述各实施例的一个具体示例中,操作302之前,还可以包括:
将样本手部图像缩放到设定大小,使缩放后的样本手部图像对应的标注概率热图与估计概率热图的大小相同。
本实施例中,为了在训练阶段能够计算估计概率热图与对应的标注概率热图对应位置的欧式距离,需要估计概率热图与对应的标注概率热图大小相同,而由于神经网络处理过程中通常得到的特征图与输入的待处理图像相比较会缩小,因此,在获得标注概率热图之前将样本手部图像进行缩放,以达到标注概率热图与估计概率热图的大小相同。
整体训练步骤可分为数据准备阶段和网络训练阶段。在数据准备阶段,每一张训练图片对应了标注好的手指关键点坐标。设计好的网络输出大小是输入的1/8,这样能够保证在cpu下的运算速度达到实时。将关键点坐标除以8,得到在输出图上的坐标,之后按照后文提到的高斯函数的参数生成指尖、指根和手指区域的概率热图,共三张。之后把输入图片裁剪至256*256输入网络,同样得到三张32*32的概率热图。与数据准备阶段生成的三张概率热图进行一一对应的像素距离计算,32*32*3个像素差的平方和作为误差函数。通过迭代训练使得网络能够输出贴近真实情况的概率热图。
本发明上述实施例的设备控制方法可根据RGB图像得到图中手指指尖、指根及手指区域的概率热图,并根据概率热图得到原图像中指尖和指根的关键点坐标。此方案计算速度快,精度高,能够在CPU下实时完成处理,可以得到训练集中没有出现过手势的关键点坐标,具有很强的泛化能力。在得到了关键点坐标的基础上,使用者可以自行定义手指数量、手指间相关位置及移动所代表的计算机操作,完成人机交互的任务。同时,对手指进行贴图美化等处理也可以根据关键点坐标精确完成。综上所述,本发明上述实施例的手部识别方法具有广泛的应用前景和应用价值。
应用到人机交互时,根据得到的关键点坐标结果,使用者可以完成简单的人机交互任务。当系统检测到使用者伸出一根手指时,此时将指尖点作为当前鼠标指针的位置,通过移动手指可以在计算机上移动鼠标指针;使用者伸出两根手指移动时,可以模拟滚轮滚动的操作;四根手指左右滑动对应多窗口之间的切换;五根手指并拢可以显示桌面、向外扩展可以恢复最小化的窗口。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图3为本发明设备控制装置一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图3所示,该实施例的装置包括:
图像接收单元31,用于基于接收到的待处理图像获得待处理图像中的手部图像。
图像处理单元32,用于利用神经网络对手部图像进行处理,获得手部图像中的手部关键点。
其中,神经网络基于样本手部图像训练获得。
手势识别单元33,用于基于获得的手部关键点确定手部图像包含的手势形状。
设备操作单元34,用于基于手势形状控制对应设备的操作。
基于本发明上述实施例提供的一种设备控制装置,基于接收到的待处理图像获得待处理图像中的手部图像;获得手部图像中的手部关键点,基于获得的手部关键点确定手部图像的手势形状;通过基于获得手部关键点识别手势形状,对于无论是已知手势,还是未知手势都可以进行关键点标注,实现了精确的手势识别;基于手势形状控制相应设备的操作,实现了基于手势控制设备,增强了人机交互。
本发明手部识别设备控制方法的另一个实施例,在上述实施例的基础上,图像处理单元32,包括:
概率热图模块,用于利用神经网络对手部图像进行处理,通过神经网络获得至少一个概率热图;
具体地,基于神经网络对手部图像进行处理,将得到对应手部图像的概率特征图,该概率特征图中每个像素点对应一个概率值,每个概率值代表该像素点是关键点的概率,将概率特征图中相同或相近的概率连线(类似于等高线),将在概率特征图中将构成围绕关键点的概率热图,概率热图是指将图中概率不同的位置通过不同颜色进行区分,以突出概率值高的区域或点。
关键点获取模块,用于基于概率热图获得手部关键点信息,基于手部关键点信息获得手部关键点。
具体地,基于概率热图的特点,在该概率热图中查找概率值最大的设定个数的点,即获得了手部图像中的手部关键点信息,手部关键点信息可以包括:手部关键点的坐标等信息,基于手部关键点信息即可确定手部关键点。
在本发明设备控制装置上述各实施例的一个具体示例中,关键点获取模块,包括:
坐标筛选模块,用于从概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;计算筛选坐标点的邻域响应和;
排序模块,用于基于邻域响应和对筛选坐标点进行排序操作,基于排序后的筛选坐标点得到手部关键点信息,获得对应手部关键点信息的手部关键点;每个手部关键点信息对应一个手部关键点;各手部关键点之间的间隔大于设定像素值。
在本发明设备控制装置上述各实施例的一个具体示例中,排序模块,包括:
坐标点排序模块,用于按照邻域响应和的大小,将对应邻域响应和的筛选坐标点进行排序操作;
比较模块,用于按顺序邻域响应和与预设阈值进行比较;
筛选关键点模块,用于获得预设数量的筛选坐标点作为关键点,或获得数量少于预设数量的邻域响应和大于预设阈值的筛选坐标点作为关键点。
在本发明设备控制装置上述各实施例的一个具体示例中,比较模块,具体用于按顺序从各邻域响应和中提取邻域响应和,将提取的邻域响应和与预设阈值进行比较;响应于大于预设阈值的邻域响应和的数量大于预设数量,和/或响应于邻域响应和小于预设阈值,停止将邻域响应和与预设阈值进行比较。
在本发明设备控制装置上述各实施例的一个具体示例中,关键点获取模块,还包括:
关键点合并模块,用于响应于两个手部关键点之间的距离小于预设距离值时,合并两个手部关键点得到一个手部关键点。
本发明设备控制手部识别装置的又一个实施例,在上述实施例的基础上,手部关键点信息包括指尖关键点信息和指根关键点信息;
关键点获取模块,具体用于基于概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;指尖关键点信息对应指尖关键点,指根关键点信息对应指根关键点。
本实施例中,为了识别手部动作,需要对手指进行识别,手指的关键点信息至少需要包括指尖关键点信息和指根关键点信息,因此,通过不同的设定阈值获得指尖关键点信息和指根关键点信息,进而获得指尖关键点和指根关键点。
在本发明设备控制装置上述各实施例的一个具体示例中,关键点获取模块,还用于基于获得的手部关键点还可以确定概率热图中的手部区域;
手势识别单元,包括:
连线模块,用于基于获得的至少一个指尖关键点信息和至少一个指根关键点信息,将各指尖关键点与各指根关键点建立连线,得到至少一个连线;
面积比较模块,用于基于连线获得连线两侧设定距离内的区域,判断区域与所述概率热图中的手部区域的重叠面积是否大于区域的预设比例;
手指图像确定模块,用于响应于面积与手部区域的重叠面积大于或等于区域的预设比例,确定区域为手指图像;响应于面积与手部区域的重叠面积小于区域的预设比例,删除区域对应的连线。
本发明设备控制方法的还一个实施例,在上述实施例的基础上,设备操作单元34,具体用于将手势形状与预设手势图像匹配,基于匹配获得的预设手势图像控制相应设备的操作;每个预设手势图像对应设备的一个操作。
通常针对设备,会配置相应的多个可操作预设手势,这些预设手势可以根据用户需要自行设定,满足个性化手势设置,以便通过手势控制相应设备,实现更快捷的人机交互。
在本发明设备控制装置上述各实施例的一个具体示例中,还包括:
采集单元,用于通过摄像设备采集视频,在视频中提取至少一个视频帧,作为待处理图像。
在本发明设备控制装置上述各实施例的一个具体示例中,设备操作单元,包括:
相关图像模块,用于基于至少一个相关视频帧获得相关图像;相关视频帧包括待处理图像对应的视频帧前后相邻的预设个数的视频帧;
相关图像处理模块,用于基于相关图像获得相关图像中的相关手部图像;利用神经网络对相关手部图像进行处理,获得相关手部图像中的相关手部关键点;
相关手势识别模块,用于基于相关手部关键点确定相关手部图像的相关手势形状;
操作模块,用于基于手势形状和至少一个相关手势形状控制相应设备的操作。
在本发明设备控制装置上述各实施例的一个具体示例中,操作模块,具体用于基于手势形状和至少一个相关手势形状组合获得手部动作;手部动作包括手势形状不同的至少两个手部图像;将手部动作与预设手部动作匹配,基于匹配获得的预设手部动作控制相应设备的操作;每个手部动作对应设备的一个操作。
本发明设备控制装置的再一个实施例,在上述实施例的基础上,还包括:
区域获得单元,用于将样本手部图像作为待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域;样本手部图像标注有标注手部关键点信息;
热图标注单元,用于基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图;
热图估计单元,用于利用神经网络对样本手部图像进行处理,通过神经网络获得至少一个估计概率热图;
网络训练单元,用于基于估计概率热图和标注概率热图训练神经网络,直到满足预设训练完成条件。
本实施例实现对神经网络的训练,基于样本手部图像获得手指关键点区域和/或手指区域;基于手指关键点区域和/或手指区域获得样本手部图像的标注概率热图;通过获取的标注概率热图,为训练神经网络时提供误差的计算基础;利用神经网络对样本手部图像进行处理,通过神经网络的至少一个通道获得至少一个估计概率热图;通过基于估计概率热图和标注概率热图训练神经网络,获得满足预设训练完成条件的神经网络,训练后的神经网络可以对未知手势进行手指关键点标注。
在本发明设备控制装置上述各实施例的一个具体示例中,标注关键点信息包括指尖关键点信息和指根关键点信息;每个指尖关键点信息对应一个指尖关键点,每个指根关键点信息对应一个指根关键点;
区域获得单元,包括:
指尖跟区域模块,用于分别基于样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
手指区域模块,用于基于指尖关键点信息和指根关键点信息对指尖关键点和指根关键点建立连线,基于连线得到手指区域。
在本发明设备控制装置上述各实施例的一个具体示例中,手指区域模块,具体用于基于指尖关键点信息和指根关键点信息将指尖关键点和指根关键点建立连线;将连线两侧设定距离内的区域作为手指区域。
在本发明设备控制装置上述各实施例的一个具体示例中,热图标注单元,包括:
高斯模拟模块,用于分别基于指尖区域和指根区域内的坐标模拟高斯分布,获得指尖区域和指根区域内的坐标的高斯概率;
指尖跟热图模块,用于基于指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于指根区域内的坐标的高斯概率得到标注指根概率热图;
手指热图模块,用于基于手指区域模拟高斯分布获得对应手指区域的高斯概率;基于对应手指区域的高斯概率得到标注手指概率热图。
在本发明设备控制装置上述各实施例的一个具体示例中,高斯模拟模块,具体用于计算指尖区域内的各坐标到各指尖关键点的高斯分布函数,得到指尖区域内的各坐标对应的高斯概率;计算指根区域内的各坐标到各指根关键点的高斯分布函数,得到指根区域内的各坐标对应的高斯概率。
在本发明设备控制装置上述各实施例的一个具体示例中,高斯模拟模块,还用于响应于一个坐标对多个指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为坐标的高斯概率;响应于一个坐标对多个指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为坐标的高斯概率。
在本发明设备控制装置上述各实施例的一个具体示例中,网络训练单元,包括:
误差计算模块,用于计算估计概率热图和标注概率热图之间的误差;
训练模块,用于基于误差通过反向梯度算法训练神经网络。
在本发明设备控制装置上述各实施例的一个具体示例中,误差计算模块,具体用于基于估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将对于至少一个估计概率热图的热图误差叠加得到误差。
在本发明设备控制装置上述各实施例的一个具体示例中,还包括:
图像缩放单元,用于将样本手部图像缩放到设定大小,使缩放后的样本手部图像对应的标注概率热图与估计概率热图的大小相同。
根据本发明实施例的一个方面,提供的一种电子设备,包括处理器,处理器包括本发明上述任一实施例所述的感应装置的控制装置。
根据本发明实施例的一个方面,提供的一种电子设备,包括:存储器,用于存储可执行指令;
以及处理器,用于与存储器通信以执行可执行指令从而完成本发明感应装置的控制方法上述任一实施例的操作。
根据本发明实施例的一个方面,提供的一种计算机存储介质,用于存储计算机可读取的指令,所述指令被执行时执行本发明感应装置的控制方法上述任一实施例的操作。
本发明实施例还提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图4,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备400的结构示意图:如图4所示,计算机系统400包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)401,和/或一个或多个图像处理器(GPU)413等,处理器可以根据存储在只读存储器(ROM)402中的可执行指令或者从存储部分408加载到随机访问存储器(RAM)403中的可执行指令而执行各种适当的动作和处理。通信部412可包括但不限于网卡,所述网卡可包括但不限于IB(Infiniband)网卡。
处理器可与只读存储器402和/或随机访问存储器(RAM)403中通信以执行可执行指令,通过总线404与通信部412相连、并经通信部412与其他目标设备通信,从而完成本申请实施例提供的任一项方法对应的操作,例如,基于接收到的待处理图像获得待处理图像中的手部图像;利用神经网络对手部图像进行处理,获得手部图像中的手部关键点;基于获得的手部关键点确定手部图像的手势形状;基于手势形状控制相应设备的操作。
此外,在RAM 403中,还可存储有装置操作所需的各种程序和数据。CPU401、ROM402以及RAM403通过总线404彼此相连。在有RAM403的情况下,ROM402为可选模块。RAM403存储可执行指令,或在运行时向ROM402中写入可执行指令,可执行指令使处理器401执行上述通信方法对应的操作。输入/输出(I/O)接口405也连接至总线404。通信部412可以集成设置,也可以设置为具有多个子模块(例如多个IB网卡),并在总线链接上。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
需要说明的,如图4所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图4的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本发明公开的保护范围。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请实施例提供的方法步骤对应的指令,例如,基于接收到的待处理图像获得待处理图像中的手部图像;利用神经网络对手部图像进行处理,获得手部图像中的手部关键点;基于获得的手部关键点确定手部图像的手势形状;基于手势形状控制相应设备的操作。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(CPU)401执行时,执行本申请的方法中限定的上述功能。
可能以许多方式来实现本发明的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (41)
1.一种设备控制方法,其特征在于,包括:
基于接收到的待处理图像获得所述待处理图像中的手部图像;
利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点;所述神经网络基于样本手部图像训练获得;
基于所述获得的手部关键点确定所述手部图像包含的手势形状;
基于所述手势形状控制相应设备的操作;
所述利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点,包括:
利用神经网络对所述手部图像进行处理,通过所述神经网络获得至少一个概率热图;
基于所述概率热图获得手部关键点信息,基于所述手部关键点信息获得手部关键点;
基于所述概率热图获得关键点信息,基于所述手部关键点信息获得手部关键点,包括:
从所述概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;
计算所述筛选坐标点的邻域响应和;
基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点信息,获得对应所述手部关键点信息的手部关键点;每个所述手部关键点信息对应一个手部关键点;各所述手部关键点之间的间隔大于设定像素值。
2.根据权利要求1所述的方法,其特征在于,基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点,包括:
按照所述邻域响应和的大小,将对应所述邻域响应和的筛选坐标点进行排序操作;
按顺序将所述邻域响应和与预设阈值进行比较;
获得预设数量的所述筛选坐标点作为关键点,或获得数量少于预设数量的所述邻域响应和大于预设阈值的所述筛选坐标点作为关键点。
3.根据权利要求2所述的方法,其特征在于,按顺序将所述邻域响应和与预设阈值进行比较,包括:
按顺序从各所述邻域响应和中提取所述邻域响应和,将所述提取的邻域响应和与预设阈值进行比较;
响应于大于所述预设阈值的所述邻域响应和的数量大于预设数量,和/或响应于所述邻域响应和小于所述预设阈值,停止将所述邻域响应和与所述预设阈值进行比较。
4.根据权利要求1-3任一所述的方法,其特征在于,还包括:
响应于两个手部关键点之间的距离小于预设距离值时,合并所述两个手部关键点得到一个手部关键点。
5.根据权利要求1所述的方法,其特征在于,所述手部关键点信息包括指尖关键点信息和指根关键点信息;
所述基于所述概率热图获得手部关键点信息,包括:
基于所述概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;所述指尖关键点信息对应指尖关键点,所述指根关键点信息对应指根关键点。
6.根据权利要求5所述的方法,其特征在于,基于所述获得的手部关键点还可以确定所述概率热图中的手部区域;
基于所述获得的手部关键点确定所述手部图像包含的手势形状,包括:
基于所述获得的至少一个指尖关键点信息和至少一个指根关键点信息;
将各所述指尖关键点与各所述指根关键点建立连线,得到至少一个连线;
基于所述连线获得所述连线两侧设定距离内的区域,判断所述连线两侧设定距离内的区域与所述概率热图中的手部区域的重叠面积是否大于所述连线两侧设定距离内的区域的预设比例;
响应于所述连线两侧设定距离内的区域与所述手部区域的重叠面积大于或等于所述连线两侧设定距离内的区域的预设比例,确定所述区域为手指图像;
响应于所述连线两侧设定距离内的区域与所述手部区域的重叠面积小于所述连线两侧设定距离内的区域的预设比例,删除所述区域对应的连线。
7.根据权利要求1所述的方法,其特征在于,基于所述手势形状控制相应设备的操作,包括:
将所述手势形状与预设手势图像匹配,基于匹配获得的所述预设手势图像控制相应设备的操作;每个所述预设手势图像对应设备的一个操作。
8.根据权利要求1所述的方法,其特征在于,基于接收到的待处理图像获得所述待处理图像中的手部图像之前,还包括:
通过摄像设备采集视频,在所述视频中提取至少一个视频帧,作为所述待处理图像。
9.根据权利要求8所述的方法,其特征在于,基于所述手势形状控制相应设备的操作,包括:
基于至少一个相关视频帧获得相关图像;所述相关视频帧包括所述待处理图像对应的视频帧前后相邻的预设个数的视频帧;
基于所述相关图像获得所述相关图像中的相关手部图像;利用所述神经网络对所述相关手部图像进行处理,获得所述相关手部图像中的相关手部关键点;
基于所述相关手部关键点确定所述相关手部图像的相关手势形状;
基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作。
10.根据权利要求9所述的方法,其特征在于,基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作,包括:
基于所述手势形状和至少一个所述相关手势形状组合获得手部动作;所述手部动作包括手势形状不同的至少两个手部图像;
将所述手部动作与预设手部动作匹配,基于匹配获得的所述预设手部动作控制相应设备的操作;每个所述手部动作对应设备的一个操作。
11.根据权利要求1所述的方法,其特征在于,所述利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点之前,还包括:
将样本手部图像作为所述待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域;所述样本手部图像标注有标注手部关键点信息;
基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图;
利用所述神经网络对所述样本手部图像进行处理,通过所述神经网络获得至少一个估计概率热图;
基于所述估计概率热图和标注概率热图训练所述神经网络,直到满足预设训练完成条件。
12.根据权利要求11所述的方法,其特征在于,所述标注关键点信息包括指尖关键点信息和指根关键点信息;每个所述指尖关键点信息对应一个指尖关键点,每个所述指根关键点信息对应一个指根关键点;
所述基于样本手部图像获得手指关键点区域和/或手指区域,包括:
分别基于所述样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
和/或,基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域。
13.根据权利要求12所述的方法,其特征在于,基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域,包括:
基于所述指尖关键点信息和指根关键点信息将所述指尖关键点和指根关键点建立连线;
将所述连线两侧设定距离内的区域作为手指区域。
14.根据权利要求12-13任一所述的方法,其特征在于,基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图,包括:
分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率;
基于所述指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于所述指根区域内的坐标的高斯概率得到标注指根概率热图;
和/或,基于所述手指区域模拟高斯分布获得对应所述手指区域的高斯概率;
基于对应所述手指区域的高斯概率得到标注手指概率热图。
15.根据权利要求14所述的方法,其特征在于,所述分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率,包括:
计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数,得到所述指尖区域内的各坐标对应的高斯概率;
计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数,得到所述指根区域内的各坐标对应的高斯概率。
16.根据权利要求15所述的方法,其特征在于,计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数之后,还包括:
响应于一个坐标对多个所述指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率;
计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数之后,还包括:
响应于所述一个坐标对多个所述指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率。
17.根据权利要求11所述的方法,其特征在于,基于所述估计概率热图和标注概率热图训练所述神经网络,包括:
计算所述估计概率热图和标注概率热图之间的误差,基于所述误差通过反向梯度算法训练所述神经网络。
18.根据权利要求17所述的方法,其特征在于,计算所述估计概率热图和标注概率热图之间的误差,包括:
基于所述估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将对于所述 至少一个估计概率热图的热图误差叠加得到所述误差。
19.根据权利要求11所述的方法,其特征在于,所述基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图之前,还包括:
将所述样本手部图像缩放到设定大小,使所述缩放后的样本手部图像对应的标注概率热图与所述估计概率热图的大小相同。
20.一种设备控制装置,其特征在于,包括:
图像接收单元,用于基于接收到的待处理图像获得所述待处理图像中的手部图像;
图像处理单元,用于利用神经网络对所述手部图像进行处理,获得所述手部图像中的手部关键点;所述神经网络基于样本手部图像训练获得;
手势识别单元,用于基于所述获得的手部关键点确定所述手部图像包含的手势形状;
设备操作单元,用于基于所述手势形状控制相应设备的操作;
所述图像处理单元,包括:
概率热图模块,用于利用神经网络对所述手部图像进行处理,通过所述神经网络获得至少一个概率热图;
关键点获取模块,用于基于所述概率热图获得手部关键点信息,基于所述手部关键点信息获得手部关键点;
所述关键点获取模块,包括:
坐标筛选模块,用于从所述概率热图中筛选概率值大于预设值的坐标点,得到筛选坐标点;计算所述筛选坐标点的邻域响应和;
排序模块,用于基于所述邻域响应和对所述筛选坐标点进行排序操作,基于排序后的所述筛选坐标点得到手部关键点信息,获得对应所述手部关键点信息的手部关键点;每个所述手部关键点信息对应一个手部关键点;各所述手部关键点之间的间隔大于设定像素值。
21.根据权利要求20所述的装置,其特征在于,所述排序模块,包括:
坐标点排序模块,用于按照所述邻域响应和的大小,将对应所述邻域响应和的筛选坐标点进行排序操作;
比较模块,用于按顺序将所述邻域响应和与预设阈值进行比较;
筛选关键点模块,用于获得预设数量的所述筛选坐标点作为关键点,或获得数量少于预设数量的所述邻域响应和大于预设阈值的所述筛选坐标点作为关键点。
22.根据权利要求21所述的装置,其特征在于,所述比较模块,具体用于按顺序从各所述邻域响应和中提取所述邻域响应和,将所述提取的邻域响应和与预设阈值进行比较;响应于大于所述预设阈值的所述邻域响应和的数量大于预设数量,和/或响应于所述邻域响应和小于所述预设阈值,停止将所述邻域响应和与所述预设阈值进行比较。
23.根据权利要求20-22任一所述的装置,其特征在于,所述关键点获取模块,还包括:
关键点合并模块,用于响应于两个手部关键点之间的距离小于预设距离值时,合并所述两个手部关键点得到一个手部关键点。
24.根据权利要求20所述的装置,其特征在于,所述手部关键点信息包括指尖关键点信息和指根关键点信息;
所述关键点获取模块,具体用于基于所述概率热图获得至少一个指尖关键点信息和至少一个指根关键点信息;所述指尖关键点信息对应指尖关键点,所述指根关键点信息对应指根关键点。
25.根据权利要求24所述的装置,其特征在于,所述关键点获取模块,还用于基于所述获得的手部关键点还可以确定所述概率热图中的手部区域;
所述手势识别单元,包括:
连线模块,用于基于所述获得的至少一个指尖关键点信息和至少一个指根关键点信息,将各所述指尖关键点与各所述指根关键点建立连线,得到至少一个连线;
面积比较模块,用于基于所述连线基于所述连线获得所述连线两侧设定距离内的区域,判断所述连线两侧设定距离内的区域与所述概率热图中的手部区域的重叠面积是否大于所述连线两侧设定距离内的区域的预设比例;
手指图像确定模块,用于响应于所述连线两侧设定距离内的区域与所述手部区域的重叠面积大于或等于所述连线两侧设定距离内的区域的预设比例,确定所述区域为手指图像;响应于所述连线两侧设定距离内的区域与所述手部区域的重叠面积小于所述连线两侧设定距离内的区域的预设比例,删除所述区域对应的连线。
26.根据权利要求20所述的装置,其特征在于,所述设备操作单元,具体用于将所述手势形状与预设手势图像匹配,基于匹配获得的所述预设手势图像控制相应设备的操作;每个所述预设手势图像对应相应设备的一个操作。
27.根据权利要求20所述的装置,其特征在于,还包括:
采集单元,用于通过摄像设备采集视频,在所述视频中提取至少一个视频帧,作为所述待处理图像。
28.根据权利要求27所述的装置,其特征在于,所述设备操作单元,包括:
相关图像模块,用于基于至少一个相关视频帧获得相关图像;所述相关视频帧包括所述待处理图像对应的视频帧前后相邻的预设个数的视频帧;
相关图像处理模块,用于基于所述相关图像获得所述相关图像中的相关手部图像;利用所述神经网络对所述相关手部图像进行处理,获得所述相关手部图像中的相关手部关键点;
相关手势识别模块,用于基于所述相关手部关键点确定所述相关手部图像的相关手势形状;
操作模块,用于基于所述手势形状和至少一个所述相关手势形状控制相应设备的操作。
29.根据权利要求28所述的装置,其特征在于,所述操作模块,具体用于基于所述手势形状和至少一个所述相关手势形状组合获得手部动作;所述手部动作包括手势形状不同的至少两个手部图像;将所述手部动作与预设手部动作匹配,基于匹配获得的所述预设手部动作控制相应设备的操作;每个所述手部动作对应设备的一个操作。
30.根据权利要求20所述的装置,其特征在于,还包括:
区域获得单元,用于将样本手部图像作为所述待处理图像,基于样本手部图像获得手指关键点区域和/或手指区域;所述样本手部图像标注有标注手部关键点信息;
热图标注单元,用于基于所述手指关键点区域和/或所述手指区域获得所述样本手部图像的标注概率热图;
热图估计单元,用于利用所述神经网络对所述样本手部图像进行处理,通过所述神经网络获得至少一个估计概率热图;
网络训练单元,用于基于所述估计概率热图和标注概率热图训练所述神经网络,直到满足预设训练完成条件。
31.根据权利要求30所述的装置,其特征在于,所述标注关键点信息包括指尖关键点信息和指根关键点信息;每个所述指尖关键点信息对应一个指尖关键点,每个所述指根关键点信息对应一个指根关键点;
所述区域获得单元,包括:
指尖跟区域模块,用于分别基于所述样本图像的指尖关键点信息和指根关键点信息,得到与指尖关键点的距离小于等于第一设定距离的坐标构成的指尖区域,和与指根关键点的距离小于等于第二设定距离的坐标构成的指跟区域;
手指区域模块,用于基于所述指尖关键点信息和指根关键点信息对所述指尖关键点和指根关键点建立连线,基于所述连线得到所述手指区域。
32.根据权利要求31所述的装置,其特征在于,所述手指区域模块,具体用于基于所述指尖关键点信息和指根关键点信息将所述指尖关键点和指根关键点建立连线;将所述连线两侧设定距离内的区域作为手指区域。
33.根据权利要求31-32任一所述的装置,其特征在于,所述热图标注单元,包括:
高斯模拟模块,用于分别基于所述指尖区域和所述指根区域内的坐标模拟高斯分布,获得所述指尖区域和所述指根区域内的坐标的高斯概率;
指尖跟热图模块,用于基于所述指尖区域内的坐标的高斯概率得到标注指尖概率热图,基于所述指根区域内的坐标的高斯概率得到标注指根概率热图;
手指热图模块,用于基于所述手指区域模拟高斯分布获得对应所述手指区域的高斯概率;基于对应所述手指区域的高斯概率得到标注手指概率热图。
34.根据权利要求33所述的装置,其特征在于,所述高斯模拟模块,具体用于计算所述指尖区域内的各坐标到各所述指尖关键点的高斯分布函数,得到所述指尖区域内的各坐标对应的高斯概率;计算所述指根区域内的各坐标到各所述指根关键点的高斯分布函数,得到所述指根区域内的各坐标对应的高斯概率。
35.根据权利要求34所述的装置,其特征在于,所述高斯模拟模块,还用于响应于一个坐标对多个所述指尖关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率;响应于一个坐标对多个所述指根关键点计算得到多个有效高斯概率,将最大的有效高斯概率作为所述坐标的高斯概率。
36.根据权利要求30所述的装置,其特征在于,所述网络训练单元,包括:
误差计算模块,用于计算所述估计概率热图和标注概率热图之间的误差;
训练模块,用于基于所述误差通过反向梯度算法训练所述神经网络。
37.根据权利要求36所述的装置,其特征在于,所述误差计算模块,具体用于基于所述估计概率热图和标注概率热图中对应坐标之间的差值得到热图误差,将对于所述 至少一个估计概率热图的热图误差叠加得到所述误差。
38.根据权利要求30所述的装置,其特征在于,还包括:
图像缩放单元,用于将所述样本手部图像缩放到设定大小,使所述缩放后的样本手部图像对应的标注概率热图与所述估计概率热图的大小相同。
39.一种电子设备,其特征在于,包括处理器,所述处理器包括权利要求20至38任意一项所述的设备控制装置。
40.一种电子设备,其特征在于,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成权利要求1至19任意一项所述设备控制方法的操作。
41.一种计算机存储介质,用于存储计算机可读取的指令,其特征在于,所述指令被执行时执行权利要求1至19任意一项所述设备控制方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711243734.2A CN108227912B (zh) | 2017-11-30 | 2017-11-30 | 设备控制方法和装置、电子设备、计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711243734.2A CN108227912B (zh) | 2017-11-30 | 2017-11-30 | 设备控制方法和装置、电子设备、计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108227912A CN108227912A (zh) | 2018-06-29 |
CN108227912B true CN108227912B (zh) | 2021-05-11 |
Family
ID=62653824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711243734.2A Active CN108227912B (zh) | 2017-11-30 | 2017-11-30 | 设备控制方法和装置、电子设备、计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108227912B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921129B (zh) * | 2018-07-20 | 2021-05-14 | 杭州易现先进科技有限公司 | 图像处理方法、系统、介质和电子设备 |
CN110837766B (zh) * | 2018-08-17 | 2023-05-05 | 北京市商汤科技开发有限公司 | 手势识别方法、手势处理方法及装置 |
CN110942056A (zh) * | 2018-09-21 | 2020-03-31 | 深圳云天励飞技术有限公司 | 服饰关键点定位方法、装置、电子设备及介质 |
CN109446994B (zh) | 2018-10-30 | 2020-10-30 | 北京达佳互联信息技术有限公司 | 手势关键点检测方法、装置、电子设备及存储介质 |
CN109614914A (zh) * | 2018-12-05 | 2019-04-12 | 北京纵目安驰智能科技有限公司 | 车位顶点定位方法、装置和存储介质 |
CN109583392A (zh) * | 2018-12-05 | 2019-04-05 | 北京纵目安驰智能科技有限公司 | 一种车位检测方法、装置和存储介质 |
CN109671073A (zh) * | 2018-12-19 | 2019-04-23 | 深圳大学 | 胎儿股骨测量方法、装置、计算机设备及可读存储介质 |
CN109858333B (zh) * | 2018-12-20 | 2023-01-17 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、电子设备及计算机可读介质 |
CN110400316A (zh) * | 2019-04-19 | 2019-11-01 | 杭州健培科技有限公司 | 一种基于深度学习的骨科影像测量方法及装置 |
CN111860082A (zh) * | 2019-04-30 | 2020-10-30 | 阿里巴巴集团控股有限公司 | 信息处理方法、装置以及系统 |
CN110210501B (zh) * | 2019-06-11 | 2021-06-18 | 北京字节跳动网络技术有限公司 | 虚拟对象生成方法、电子设备及计算机可读存储介质 |
CN110287891B (zh) * | 2019-06-26 | 2021-11-09 | 北京字节跳动网络技术有限公司 | 基于人体关键点的手势控制方法、装置及电子设备 |
CN110443154B (zh) * | 2019-07-15 | 2022-06-03 | 北京达佳互联信息技术有限公司 | 关键点的三维坐标定位方法、装置、电子设备和存储介质 |
CN110414393A (zh) * | 2019-07-15 | 2019-11-05 | 福州瑞芯微电子股份有限公司 | 一种基于深度学习的自然交互方法及终端 |
CN110348412B (zh) * | 2019-07-16 | 2022-03-04 | 广州图普网络科技有限公司 | 一种关键点定位方法、装置、电子设备及存储介质 |
CN111258427A (zh) * | 2020-01-17 | 2020-06-09 | 哈尔滨拓博科技有限公司 | 一种基于双目相机手势交互的黑板控制方法及控制系统 |
CN111881743A (zh) * | 2020-06-23 | 2020-11-03 | 安徽清新互联信息科技有限公司 | 一种基于语义分割的人脸特征点定位方法 |
CN112036244A (zh) * | 2020-07-30 | 2020-12-04 | 广东技术师范大学 | 一种基于神经网络的人体姿态估计方法 |
CN111881994B (zh) * | 2020-08-03 | 2024-04-05 | 杭州睿琪软件有限公司 | 识别处理方法及设备和非暂态计算机可读存储介质 |
CN112132020A (zh) * | 2020-09-22 | 2020-12-25 | 深兰科技(上海)有限公司 | 手部紧握判断方法和装置 |
CN112183388A (zh) * | 2020-09-30 | 2021-01-05 | 北京字节跳动网络技术有限公司 | 图像处理方法、装置、设备和介质 |
CN112966777B (zh) * | 2021-03-26 | 2021-11-30 | 清华大学 | 一种基于人机交互的半自动标注方法及系统 |
CN113569817B (zh) * | 2021-09-23 | 2021-12-21 | 山东建筑大学 | 基于图像区域定位机制的驾驶人注意力分散检测方法 |
CN114186632B (zh) * | 2021-12-10 | 2023-04-18 | 北京百度网讯科技有限公司 | 关键点检测模型的训练方法、装置、设备、存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373785A (zh) * | 2015-11-30 | 2016-03-02 | 北京地平线机器人技术研发有限公司 | 基于深度神经网络的手势识别检测方法与装置 |
CN107103613A (zh) * | 2017-03-28 | 2017-08-29 | 深圳市未来媒体技术研究院 | 一种三维手势姿态估计方法 |
CN107168527A (zh) * | 2017-04-25 | 2017-09-15 | 华南理工大学 | 基于区域卷积神经网络的第一视角手势识别与交互方法 |
CN107368182A (zh) * | 2016-08-19 | 2017-11-21 | 北京市商汤科技开发有限公司 | 手势检测网络训练、手势检测、手势控制方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103926999B (zh) * | 2013-01-16 | 2017-03-01 | 株式会社理光 | 手掌开合手势识别方法和装置、人机交互方法和设备 |
CN103295015B (zh) * | 2013-06-25 | 2016-02-03 | 中国人民解放军国防科学技术大学 | 部分遮挡目标的局部特征点提取方法 |
CN105718879A (zh) * | 2016-01-19 | 2016-06-29 | 华南理工大学 | 基于深度卷积神经网络的自由场景第一视角手指关键点检测方法 |
-
2017
- 2017-11-30 CN CN201711243734.2A patent/CN108227912B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373785A (zh) * | 2015-11-30 | 2016-03-02 | 北京地平线机器人技术研发有限公司 | 基于深度神经网络的手势识别检测方法与装置 |
CN107368182A (zh) * | 2016-08-19 | 2017-11-21 | 北京市商汤科技开发有限公司 | 手势检测网络训练、手势检测、手势控制方法及装置 |
CN107103613A (zh) * | 2017-03-28 | 2017-08-29 | 深圳市未来媒体技术研究院 | 一种三维手势姿态估计方法 |
CN107168527A (zh) * | 2017-04-25 | 2017-09-15 | 华南理工大学 | 基于区域卷积神经网络的第一视角手势识别与交互方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108227912A (zh) | 2018-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108227912B (zh) | 设备控制方法和装置、电子设备、计算机存储介质 | |
JP7236545B2 (ja) | ビデオターゲット追跡方法と装置、コンピュータ装置、プログラム | |
US11170210B2 (en) | Gesture identification, control, and neural network training methods and apparatuses, and electronic devices | |
Jadooki et al. | Fused features mining for depth-based hand gesture recognition to classify blind human communication | |
CN108229296B (zh) | 人脸皮肤属性识别方法和装置、电子设备、存储介质 | |
Nai et al. | Fast hand posture classification using depth features extracted from random line segments | |
CN108229324B (zh) | 手势追踪方法和装置、电子设备、计算机存储介质 | |
EP3113114A1 (en) | Image processing method and device | |
Nalepa et al. | Wrist localization in color images for hand gesture recognition | |
Feng et al. | Features extraction from hand images based on new detection operators | |
JPH10214346A (ja) | ハンドジェスチャ認識システムおよび方法 | |
CN104317391A (zh) | 一种基于立体视觉的三维手掌姿态识别交互方法和系统 | |
CN114677565B (zh) | 特征提取网络的训练方法和图像处理方法、装置 | |
Jambhale et al. | Gesture recognition using DTW & piecewise DTW | |
Chaudhary et al. | Light invariant real-time robust hand gesture recognition | |
US11756205B2 (en) | Methods, devices, apparatuses and storage media of detecting correlated objects involved in images | |
Zhang et al. | High-quality face image generation based on generative adversarial networks | |
Vinh et al. | Hand gesture recognition based on depth image using kinect sensor | |
Kerdvibulvech | A methodology for hand and finger motion analysis using adaptive probabilistic models | |
Ikram et al. | Skeleton based dynamic hand gesture recognition using LSTM and CNN | |
Lahiani et al. | Hand pose estimation system based on Viola-Jones algorithm for android devices | |
Poularakis et al. | Finger detection and hand posture recognition based on depth information | |
Al Ayubi et al. | The prototype of hand gesture recognition for elderly people to control connected home devices | |
CN113557546B (zh) | 图像中关联对象的检测方法、装置、设备和存储介质 | |
Lahiani et al. | Real Time Static Hand Gesture Recognition System for Mobile Devices. |
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 |