CN113867521A - 一种基于手势视觉识别的手写输入方法、装置及电子设备 - Google Patents
一种基于手势视觉识别的手写输入方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113867521A CN113867521A CN202010622153.5A CN202010622153A CN113867521A CN 113867521 A CN113867521 A CN 113867521A CN 202010622153 A CN202010622153 A CN 202010622153A CN 113867521 A CN113867521 A CN 113867521A
- Authority
- CN
- China
- Prior art keywords
- gesture
- writing
- gesture image
- image
- user
- 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 68
- 230000000007 visual effect Effects 0.000 title claims abstract description 38
- 238000012790 confirmation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 17
- 230000002411 adverse Effects 0.000 abstract 1
- 238000001514 detection method Methods 0.000 description 42
- 230000006870 function Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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
- 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/018—Input/output arrangements for oriental characters
-
- 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/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/333—Preprocessing; Feature extraction
- G06V30/347—Sampling; Contour coding; Stroke extraction
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本说明书一个或多个实施例提供一种基于手势视觉识别的手写输入方法、装置及电子设备。所述方法包括:获取用户书写时的多帧手势图像,识别每一帧手势图像中的书写手指的指尖宽度和指尖位置;判断每一帧手势图像中指尖宽度相比于标定指尖宽度的变化量是否小于预设阈值;将变化量小于预设阈值的手势图像中的书写手指的指尖位置所对应的点作为笔迹点,基于全部笔迹点生成一个或多个书写轨迹;其中,任一书写轨迹由连续至少两帧手势图像中的笔迹点依次连接得到;对一个或多个书写轨迹进行文字识别获得书写轨迹对应的文字。本说明书实施例所述方法、装置及电子设备能够解决手势识别输入时笔迹连续造成的不利影响,从而提高展示效果和文字识别效果。
Description
技术领域
本说明书一个或多个实施例涉及手势识别技术领域,尤其涉及一种基于手势视觉识别的手写输入方法、装置及电子设备。
背景技术
目前广泛使用的文字输入方式包括:键盘、触屏、手写板等。随着技术的发展,手势输入技术也得到了长足的发展。
然而,现有的视觉手势输入方法中,书写笔迹为一整条连续轨迹,严重影响笔迹展示效果与文字识别效果。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种基于手势视觉识别的手写输入方法、装置及电子设备,以解决手势识别输入时笔迹连续影响展示效果和文字识别效果的问题。
基于上述目的,本说明书一个或多个实施例提供了一种基于手势视觉识别的手写输入方法,其特征在于,包括:
获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置;
判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值;
将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹;其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的;
对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
可选的,若前一帧所述手势图像中不存在所述笔迹点且当前帧所述手势图像中存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的起点。
可选的,若当帧所述手势图像存在所述笔迹点且后一帧所述手势图像中不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的终点。
可选的,所述标定指尖宽度的获取方法包括:
获取用户的标定手势图像,判断所述标定手势图像中的标定手势是否位于预置的标定手势轮廓线内;
若是,则获取并记录所述标定手势的指尖宽度作为所述标定指尖宽度。
可选的,获得所述标定指尖宽度之后还包括:
判断是否存在所述书写轨迹,且当前时刻与所述书写轨迹生成时的时间间隔大于预设时间间隔;
若是,则对所述书写轨迹进行文字识别。
可选的,所述对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字包括:
获取用户的书写结束手势图像,基于所述书写结束手势图像对至少两个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
可选的,所述获得至少一个待选文字识别结果并展示之后还包括:
获取用户的移动手势图像,基于所述移动手势图像生成手部位置移动轨迹,确定所述手部位置移动轨迹的终点对应的所述待选文字识别结果。
可选的,所述确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果之后还包括:
获取用户的确认手势图像,基于所述确认手势图像将确定的所述待选文字识别结果选择为所述文字识别结果。
可选的,所述将确定的所述待选文字识别结果选择为所述文字识别结果之后还包括:
获取用户的退格手势图像,基于所述退格手势图像删除所述文字识别结果中的至少一个文字。
本说明书一个或多个实施例提供了一种基于手势视觉识别的手写输入装置,包括:
获取模块,用于获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置;
判断模块,用于判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值;
生成模块,用于将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹;其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的;
识别模块,用于对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
可选的,所述生成模块还用于实现:
若前一帧所述手势图像中不存在所述笔迹点且当前帧所述手势图像中存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的起点。
可选的,所述生成模块还用于实现:
若当帧所述手势图像存在所述笔迹点且后一帧所述手势图像中不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的终点。
可选的,所述识别模块还用于实现:
获取用户的书写结束手势图像,基于所述书写结束手势图像对至少两个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
可选的,所述获得至少一个待选文字识别结果并展示之后还包括:
获取用户的移动手势图像,基于所述移动手势图像生成手指位置移动轨迹,确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果。
本说明书一个或多个实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项实施例所述的基于手势视觉识别的手写输入方法。
从上面所述可以看出,本说明书一个或多个实施例提供的基于手势视觉识别的手写输入方法、装置及电子设备,通过摄像头采集用户的手势图像、对手势图像进行识别来获取手部的书写轨迹、对书写轨迹进行文字识别来实现凌空书写功能,通过手势图像中书写手指的粗细变化来反应用户的书写手指与图像采集装置之间的位置变化,通过用户书写手指与图像采集装置之间的位置变化来模拟用户书写中的抬落笔以实现笔迹输入以及笔迹断开,从而使书写轨迹更加接近实际书写效果,提高手势输入时笔迹展示效果以及文字识别效果。同时,由于实现了笔迹的切断,因此即使一次输入多个文字也可方便的实现对书写轨迹的识别,因此可方便快捷地进行连续输入,增强视觉手写输入的实用性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例所述基于手势视觉识别的手写输入方法的流程示意图;
图2为本说明书一个或多个实施例所述基于手势视觉识别的手写输入方法的具体实施例的流程示意图;
图3为本说明书一个或多个实施例所述基于手势视觉识别的手写输入装置的结构示意图;
图4为本说明书一个或多个实施例用于实现所述基于手势视觉识别的手写输入方法的电子设备结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
现有的手势识别输入方法中,有的为对手势识别后将该手势对应到虚拟键盘上的虚拟键上以实现手势对操作系统键盘各个键位的控制,有的为采用手部某部位作为笔尖进行书写轨迹的生成与绘制,然后对生成的书写轨迹进行文字识别获取对应文字完成输入。前一种方法只能将通过手势实现对键盘的控制,而不是实现手势书写轨迹的输入;后一种方法能够形成书写轨迹,但是其书写轨迹是一条完整、连续的书写轨迹,也即文字、字母等的多个笔划是连续的,这严重影响书写笔迹的展示效果以及文字识别效果。
同时,由于现有技术中只能实现连续的笔迹,若一次输入多个字其文字识别效果会更加不准确,因此现有技术中只能实现单字的输入。
本发明的发明人在实现本发明时发现:用户在纸张等平面进行书写时,当完成一个笔划后,在进行下一个笔划之前,会进行抬落笔的操作以实现断笔。而用户通过手势识别进行手势输入时,当需要断笔时,也可通过检测手部部位与检测装置之间的距离变化来模拟用户书写中的抬落笔来实现断笔功能,而手部部位与检测装置之间的距离变化可以通过检测到的手部部位的尺寸的变化来确定。
基于上述原因,本说明书的一个或多个实施例提供一种基于手势视觉识别的手写输入方法。如图1所述,所述方法包括:
步骤101,获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置。
在本实施例中,通过带有摄像头的终端设备来进行用户的手势图像的采集。手势识别输入开始时,开启终端设备上的摄像头对用户的手势图像进行采集。之后,对采集到的用户书写时的多帧手势图像进行处理,识别每一帧手势图像中用户用于书写的手指指尖的实际宽度,即书写手指的指尖宽度;同时识别每一帧手势图像中用户用于书写的手指指尖在手势图像中的实际位置,即书写手指的指尖位置。
本说明书实施例中通过用户手指指尖进行手势输入,因此通过检测用户书写手指的指尖位置来确定手势输入的书写轨迹。在有需要的情况下,也可通过其他手部部位、如手指非指尖的位置、掌心或手掌其他位置点等。
本实施例中,当终端设备检测到开始输入手势图像时,可进入笔划书写流程,同时终端设备显示手势输入显示页面。其中,开始输入手势图像包括获取到的用户的开始输入手势,本实施例中开始输入手势可为单指点手势。可选的,也可通过终端设备检测到开始输入的语音信号进入笔划书写流程,例如当检测到“开始笔迹输入”的语音信号后,开始笔迹的输入。
步骤102,判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值。
本实施例中,可提前采集用户的标定指尖宽度作为基准,将手势输入时采集到的书写手指的指尖宽度与标定指尖宽度比较,根据二者之间的变化量来确定手势输入时用户手指与采集装置(如摄像头)之间的距离变化,从而确定用户在手势输入时是否有“抬落笔”,从而确定何处笔迹连续,而何处笔迹断开。同时,进行标定指尖宽度采集时,也确定了用户的有效书写空间,用户只有在有效书写空间内进行手势操作才可实现手势的输入。
其中,预设阈值可根据实际需要灵活设定。在一个具体的实施例中,该预设阈值设定为10%,即判断该帧手势图像中书写手指的指尖宽度与标定指尖宽度的差值是否小于10%。有需要的情况下,也可通过书写手指的指尖宽度与标定指尖宽度之间的比值与预设阈值之间的关系来反应用户手指与采集装置之间的距离变化。
步骤103,将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹。其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的。
若书写手指的指尖宽度相比于标定指尖宽度的变化量小于预设阈值,说明用户在手势输入时用户手指与采集装置之间的距离变化很小,即不存在“抬笔”的情况,也即此时是在进行一个完整笔划的输入,因此将该帧手势图像中书写手指的指尖位置所对应的点采集出来作为笔迹点。否则,若某一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量大于等于预设阈值,说明该帧手势图像中书写手指与采集装置之间的距离变化很大,即存在“抬笔”的情况,也即此时是在进行笔迹切断,故不需要将该帧手势图像中书写手指的指尖位置所对应的点确定出来作为笔迹点。
本实施例中,笔迹点用于表示其所属帧手势图像中的用户手指未进行“抬笔”的操作,即正在进行手势书写而未进行断笔操作;当连续的两帧手势图像中均存在笔迹点,说明这两帧手势图像中用户手指均在书写而未进行“抬笔”的操作,因此将这两帧手势图像中的笔迹点连接则可形成书写轨迹的至少一部分。本实施例中,一个笔划用于形成一个书写轨迹,将该笔划对应的全部帧的手势图像中用户的书写手指均不会“抬笔”,因此将该笔划对应的全部帧的手势图像中的笔迹点依次连接即可得到该笔划对应的书写轨迹。当一个文字包括至少两个笔划时,两个笔划分别形成一个书写轨迹,而两个笔划之间断开的部分因用户的书写手指进行“抬笔”操作导致对应的手势图像不存在笔迹点,也就不能在两个笔划之间形成书写轨迹,即形成了书写轨迹的断开,实现了断笔功能。通过上述书写笔迹的形成以及断笔操作后,本实施例可以根据全部的笔迹点生成一个或多个书写轨迹。
步骤104,对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
采用文字识别算法对当前显示页面的一个或多个书写轨迹进行识别,从而获取书写轨迹对应的文字。可选的,显示页面可为交互页面。
在本实施例中,通过摄像头采集用户的手势图像、对手势图像进行识别来获取手部的书写轨迹、对书写轨迹进行文字识别来实现凌空书写功能,通过手势图像中书写手指的粗细变化来反应用户的书写手指与图像采集装置之间的位置变化,通过用户书写手指与图像采集装置之间的位置变化来模拟用户书写中的抬落笔以实现笔迹输入以及笔迹断开,从而使书写轨迹更加接近实际书写效果,提高手势输入时笔迹展示效果以及文字识别效果。同时,由于实现了笔迹的切断,因此即使一次输入多个文字也可方便的实现对书写轨迹的识别,因此可方便快捷地进行连续输入,增强视觉手写输入的实用性。
在一些可选的实施例中,可根据连续两帧手势图像中笔迹点的存在情况来确定书写轨迹的起点以及终点。其中,若前一帧所述手势图像中不存在笔迹点且当前帧手势图像中存在笔迹点,说明获取前一帧手势图像时用户正在抬笔而获取当前帧手势图像时用户开始落笔书写,因此获取当前帧手势图像中的笔迹点作为一个书写轨迹的起点,即待生成的新的书写轨迹的起点。若当帧手势图像存在笔迹点且后一帧手势图像中不存在笔迹点,说明获取当前帧手势图像时用户落笔书写而获取后一帧手势图像时用户抬笔,因此可获取当前帧手势图像中的笔迹点作为一个书写轨迹的终点,即上一个完成的书写轨迹的终点。
基于上述书写轨迹的起点以及终点的确定方法,步骤103中所述基于全部的所述笔迹点生成至少两个书写轨迹包括:具体实现方式可以包括:首先判断前一帧手势图像中是否存在笔迹点;若是,则证明获取前一帧手势图像时,用户正在进行某一笔划的手势输入也即系统正在生成对应于该笔划的书写轨迹的至少一部分,此时继续判断当前帧手势图像中是否存在笔迹点,若是,则证明获取当前帧手势图像时用户继续在进行该笔划手势输入即系统继续在生成该笔划的书写轨迹中的至少一部分,因此将这两帧手势图像中的笔迹点连接则形成了该笔划的书写轨迹的至少一部分。若连续多帧手势图像均具有笔迹点,说明用户一直在进行该笔划的手势输入,因此将该连续多帧手势图像中的笔迹点依次连接则可以生成该笔划的书写轨迹。
若判断前一帧手势图像中是否存在笔迹点的结果为否,说明获取前一帧手势图像时用户未进行某一笔划的手势输入,即系统刚刚进入手势输入页面尚未采集到手势输入的具体图像或者因前一帧手势图像采集到的实际指尖宽度相比于标定指尖宽度之间的变化量大于预设阈值导致出现了断笔操作,此时无论当前帧势图像中是否存在笔迹点,在前一帧手势图像与当前帧势图像之间都不生成书写轨迹。
若判断前一帧手势图像中是否存在笔迹点的结果为是,说明获取前一帧手势图像时用户正在进行某一笔划的手势输入也即系统正在生成对应于该笔划的书写轨迹的至少一部分;而判断当前帧手势图像中是否存在笔迹点的结果为否,则证明获取当前帧手势图像时用户已经结束该笔划手势输入,此时在前一帧手势图像与当前帧势图像之间不生成书写轨迹,从而实现断开笔迹的功能。
可选的,可通过预设的检测状态标记每一帧手势图像中是否有笔迹点。具体如下:当检测到某一帧手势图像中存在笔迹点时,则将该帧手势图像对应的检测状态标记为笔划书写状态;而若检测到某一帧手势图像中不存在笔迹点时,则将该帧手势图像对应的检测状态标记为非笔划书写状态的其他状态或者直接清空检测状态。这样,在判断当前帧手势图像是否要生成书写轨迹时,直接获取上一帧手势图像对应的检测状态即可获得最终的结果。具体包括:若检测到上一帧势图像对应的检测状态为笔划书写状态且当前帧手势图像存在笔迹点,则将上一帧势图像中的笔迹点与当前帧手势图像的笔迹点连接以形成书写轨迹的至少一部分,同时将当前帧手势图像对应的检测状态标记为笔划书写状态;若检测到上一帧势图像对应的检测状态为笔划书写状态且当前帧手势图像不存在笔迹点,则断开该书写轨迹,同时将当前帧手势图像对应的检测状态标记为非笔划书写状态或者直接清除该检测状态;若检测到上一帧势图像对应的检测状态为不是笔划书写状态(非笔划书写状态或者为空)且当前帧手势图像存在笔迹点,则认为从当前帧手势图像开始用户开始有效书写,将当前帧手势图像对应的检测状态标记为笔划书写状态;若检测到上一帧势图像对应的检测状态为不是笔划书写状态(非笔划书写状态或者为空)且当前帧手势图像不存在笔迹点,则不形成笔迹,同时将当前帧手势图像对应的检测状态标记为非笔划书写状态或者直接清除该检测状态。
可选的,在采用检测状态的标记各帧手势图像时,无需对每一帧手势图像都单独进行标记,而用同一个检测状态中的多个标记来识别全部的手势图像,只有判断当前帧手势图像是否存在笔迹点的结果与上一帧不同时才更新该检测状态,判断当前帧手势图像是否存在笔迹点的结果与上一帧相同时则不更新该检测状态,继续缓存上一帧手势图像对应的检测状态。具体包括:若检测到缓存的检测状态为笔划书写状态且当前帧手势图像存在笔迹点,则认为用户的书写手指仍然处于有效书写空间内,判定当前帧延续上一帧的笔划书写,将当前帧手势图像的笔迹点与上一帧势图像中的笔迹点连接以形成书写轨迹的至少一部分,同时将当前帧手势图像对应的检测状态标记继续缓存为笔划书写状态,即不更新或清除检测状态;若检测到缓存的检测状态为笔划书写状态且当前帧手势图像不存在笔迹点,则认为用户的书写手指已经脱离有效书写空间,判定当前帧终结上一帧的笔划书写,终止前一帧正在进行的笔划绘制,将绘制完成的笔划对应的书写轨迹进行缓存,同时将当前帧手势图像对应的检测状态修改为非笔划书写状态或者直接清除该检测状态;若检测到缓存的检测状态为不是笔划书写状态(即非笔划书写状态或者为空)且当前帧手势图像存在笔迹点,则认为从当前帧手势图像开始用户的书写手指进入有效书写空间,开始本次笔划书写,由当前书写手指的指尖点处开始新的笔划书写,同时将当前帧手势图像对应的检测状态标记为笔划书写状态;若检测到缓存的检测状态的检测状态为不是笔划书写状态(即非笔划书写状态或者为空)且当前帧手势图像不存在笔迹点,则认为用户的书写手指未进入有效书写空间,本次笔划书写未生效,同时将当前帧手势图像对应的检测状态标记为非笔划书写状态或者直接清除该检测状态。
在上述实施例中,也可采用语音指令来实现开始笔划输入、结束笔划输入。当检测到“开始笔划输入”的语音时,基于采集到的手势图像开始形成书写轨迹;当检测到“结束笔划输入”时,则从当前帧手势图像处断开书写轨迹。
可选的,步骤103中所述基于全部的所述笔迹点生成一个或多个书写轨迹还包括:若与当前帧所述手势图像相邻的前后两帧所述手势图像中均不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹。本实施例中,若与当前帧手势图像相邻的前后两帧手势图像中均不存在笔迹点,而当前帧手势图像中存在笔迹点,说明只有当前帧手势图像中用户手指处于有效书写空间,而前后两帧手势图像中用户手指均未处于有效书写空间,此时直接将当前帧手势图像中存在的笔迹点作为一个书写轨迹。本实施例中只包含一个笔迹点的书写轨迹用于表示某些文字、字母的某一笔画中只存在一个点的情况。
本说明书的一个或多个实施例还提供标定指尖宽度的获取方法,该方法具体包括:获取用户的标定手势图像,判断所述标定手势图像中的标定手势是否位于预置的标定手势轮廓线内;若是,则获取并记录所述标定手势的指尖宽度作为所述标定指尖宽度。
在进行手势输入之前,首先需要采集用户的标定手势图像从而确定标定指尖宽度以及用户的有效书写空间;同时,每次需重新进入书写状态时,也需重新判断是否已进行了手势标定。具体的,终端设备检测到手势输入时,在显示页面的中心处显示预置的标定手势轮廓线,该标定手势轮廓线可以为一个固定大小的虚拟手掌轮廓线,并提示用户将手掌置于该轮廓内,待检测到用户将手掌置于该标定手势轮廓线内后,通过手势识别算法检测用户在当前标定处的手掌信息,记录当前手部信息作为后续手指书写的标准手指宽度尺寸,完成标定,后续进行判定时此尺寸用于与检测到的书写手指的指尖宽度进行对比以确定用户的书写手指与设备距离进而确定用户的书写手指是否处于有效书写空间内。其中,手掌信息可以包括手指宽度、指尖宽度等信息,本实施例中采用指尖宽度作为手掌信息以实现手势输入。
可选的,获得所述标定指尖宽度之后还包括:判断是否存在所述书写轨迹,且当前时刻与所述书写轨迹生成时的时间间隔大于预设时间间隔;若是,则对所述书写轨迹进行文字识别。在本实施例中,若超过了预设时间间隔后没有进行笔划输入,表示书写已完毕,此时则判断是否有缓存的书写轨迹,若有,则进行文字识别;否则,继续获取手势图像。可选的,预设时间间隔可以为1s,也可根据实际使用习惯设置为任意数值。
在一些可选的实施例中,步骤S104中所述对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字包括:获取用户的书写结束手势图像,基于所述书写结束手势图像对一个或多个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
本实施例中,当采集到书写结束手势图像并从书写结束手势图像获取到书写结束手势时,触发对当前显示页面缓存的书写轨迹进行识别的操作命令,采用文本识别算法基于该操作命令对当前显示页面的书写轨迹进行文字识别,获得多个与书写轨迹相似、相同的识别结果作为待选文字识别结果,并在显示页面中生成待选字列表显示各个待选文字识别结果以供用户进行选择。可选的,本实施例中书写结束手势可以为OK手势。
可选的,也可通过终端设备采集用户的语音输入从而触发文字识别的操作,例如检测到“结束笔迹输入”的语音则可结束笔划输入并进入文字识别操作。
在一些可选的实施例中,所述获得至少一个待选文字识别结果并展示之后还包括:获取用户的移动手势图像,基于所述移动手势图像生成手部位置移动轨迹,确定所述手部位置移动轨迹的终点对应的所述待选文字识别结果。
本实施例中,当获取到移动手势图像并从移动手势图像中获取移动手势,并基于移动手势的移动轨迹生成手部位置移动轨迹,根据手部位置移动轨迹的终点所指向的位置确定用户想选择的待选文字识别结果。具体的,在本实施例中,移动手势可为手掌,当摄像头采集到手掌手势图像时,则根据用户手掌的移动位置在各个待选文字识别结果上移动,根据手掌移动轨迹的终点对应的待选文字识别结果从而指向用户想选择的待选文字识别结果。
可选的,所述确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果之后还包括:获取用户的确认手势图像,基于所述确认手势图像将确定的所述待选文字识别结果选择为所述文字识别结果。
本实施例中,获取到确认手势图像并从确认手势图像中获取到确认手势,并基于确认手势选择上一步确定的待选文字识别结果并将该待选文字识别结果显示到输入栏。本实施例中,确认手势可以为握拳手势,当摄像头采集到握拳手势图像时,将上一步手掌移动轨迹的终点对应的待选文字识别结果作为用户最终的文字识别结果输入到输入栏,从而实现了文字的识别输入。
可选的,所述将确定的所述待选文字识别结果选择为所述文字识别结果之后还可以包括:获取用户的退格手势图像,基于所述退格手势图像删除所述文字识别结果中的至少一个文字。
本实施例中,由于用户的误操作等原因导致根据上述步骤输入的文字识别结果并非用户所需,此时用户需要删除输入文字识别结果中的全部或者至少一个文字。此时通过终端设备采集用户的退格手势图像,并从退格手势图像中识别出退格手势,当识别出该退格手势后触发退格指令,删除输入栏中文字识别结果中的至少一个文字。可选的,退格手势可为向左挥手手势。
在上述实施例中,由于可以实现笔迹的断开,因此即使一次性输入多个文字也不会因为连续的书写轨迹影响文本识别结果。因此,通过本说明书实施例所述基于手势视觉识别的手写输入方法不仅可以实现单字输入功能,还可以实现多字输入功能,可通过一个预先设置的切换手势来进行单字输入模式或者多字输入模式的切换,从而可以方便快捷地进行连续输入,增强视觉手写输入的实用性。
为了便于理解,本说明书还提供一个基于手势视觉识别的手写输入方法的具体的实施例。如图2所示,所述基于手势视觉识别的手写输入方法包括:
步骤S201,终端设备开启手势识别功能,此时终端设备的摄像头开启并启动摄像头捕捉图像回调,并开始在显示页面上显示摄像头预览界面,本实施例中显示页面全部位于该预览界面内。
步骤S202,判断手部信息是否已标定;若是则进入步骤S205,否则进入步骤S203。在进行手势输入之前,首先需要采集用户的标定手势图像从而确定标定指尖宽度以及用户的有效书写空间。
步骤S203,在预览界面显示标定手势轮廓线,提醒用户将手掌置于该轮廓内,之后采集用户的标定手势图像。
步骤S204,待检测到标定手势图像中的标定手势位于预置的标定手势轮廓线内后,采集标定手势图像中的指尖宽度作为标定指尖宽度以作为后续判定的依据,完成标定。
步骤S205,若手部信息已标定,则进一步判断当前显示页面中是否有缓存的书写轨迹,若是则执行步骤S206,否则执行步骤S207。
步骤S206,若当前显示页面中有缓存的书写轨迹,则继续判断当前时间距上次结束笔划间隔是否大于1秒,若是则对当前书写轨迹进行文字识别后重新进入步骤S201。在本步骤中,若超过了预设时间间隔后没有进行新的笔划输入则认为书写已完毕,此时若存在缓存的书写轨迹则进行文字识别。
步骤S207,若当前显示页面中没有缓存的书写轨迹,则可进行手势图像的采集,对进行手势进行检测。
步骤S208,采集手势图像,判断当前手势图像是否为开始输入手势图像。本实施例中,由于预先设定开始输入手势为单指点手势时,因此判断该当前手势是否为单指点手势。若是,则执行步骤S209,否则,执行步骤S215。
步骤S209,判断缓存的检测状态是否为笔划书写状态。若是,则执行步骤S212;否则,证明上一帧手势图像中未进行笔划书写执行,步骤S210。
步骤S210,若缓存的检测状态不是笔划书写状态,证明上一帧手势图像中未进行笔划书写。此时,进一步判断当前帧手势图像中的书写手指的指尖宽度与标定指尖宽度相差是否小于10%;若是,则执行步骤S211,否则返回步骤S201。
步骤S211,开始笔划书写。若当前帧手势图像中的书写手指的指尖宽度与标定指尖宽度相差小于10%,则当前帧手势图像中存在笔迹点,同时说明用户的书写手指已进入有效书写空间,可开始本次笔划书写,由当前指尖点处开始新的笔划书写后进入步骤S201中摄像头图像回调等待获取下一帧图像信息,同时缓存本次检测状态为笔划书写状态。
否则,若当前帧手势图像中的书写手指的指尖宽度与标定指尖宽度相差大于等于10%,则当前帧手势图像中不存在笔迹点,用户的书写手指未进入有效书写空间,本次笔划书写未生效,直接进入摄像头图像回调等待获取下一帧图像信息,同时清除检测状态缓存。
步骤S212,若缓存的检测状态是笔划书写状态,则证明上一帧手势图像中正在进行笔划书写。此时,进一步判断当前帧手势图像中的书写手指的指尖宽度与标定指尖宽度相差是否小于10%;若是,则执行步骤S213,执行步骤S214。
步骤S213,更新当前书写轨迹到当前指尖处。若当前帧手势图像中的书写手指的指尖宽度与标定指尖宽度相差小于10%,则当前帧手势图像中存在笔迹点,说明用户的书写手指已进入有效书写空间。由于缓存的检测状态是笔划书写状态,说明上一帧手势图像中也有笔迹点,因此判定当前帧延续前一帧笔划书写,因此将这连续的帧的手势图像中的笔迹点连接生成书写轨迹,同时缓存本次检测状态为笔划书写状态。书写轨迹生成后,返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S214,终止当前笔划绘制实现断笔,并将其存入当前笔迹缓存。若当前帧手势图像中的实际指尖宽度与标定指尖宽度相差大于等于10%,则当前帧手势图像中不存在笔迹点,用户的书写手指已脱离有效书写空间,判定当前帧终结前一帧的笔划书写即对当前笔划进行断笔,终止书写轨迹的生成,并将其存入当前笔迹缓存,同时清除检测状态的缓存。操作完成后,返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S215,采集用户的手势图像,判断当前手势图像是否为书写结束手势图像,若是执行步骤S216;否则执行步骤S218。书写完成后,通过检测到的书写结束手势进入文字识别流程,并缓存本次的检测状态为手势功能状态。本实施例中书写结束手势为OK手势。
步骤S216,判断当前显示页面是否有书写轨迹的缓存,若是则执行步骤S217,否则返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S217,若当前显示页面中有书写轨迹的缓存,则对当前缓存的书写轨迹进行文本识别获得至少一个待选文字识别结果并显示在待选字列表中,之后返回步骤S201摄像头图像回调等待获取下一帧图像信息。若当前显示页面中没有书写轨迹的缓存,则直接返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S218,采集用户的手势图像,判断当前手势图像是否为移动手势图像,若是则执行步骤S219;否则执行步骤S221。文本识别结束后,系统提供多个待选文字识别结果以供用户选择,此时通过检测到的用户的移动手势来进入选择待选字流程以确定用户想选择的待选文字识别结果,同时缓存本次的检测状态为手势功能状态。本实施例中,移动手势为手掌手势。
步骤S219,判断是否正在显示步骤S217中生成的待选字列表,若是,则执行步骤220,否则直接返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S220,基于移动手势图像生成手部位置移动轨迹,确定手部位置移动轨迹的终点对应的待选文字识别结果。本实施例中根据用户手掌的移动位置在各个待选文字识别结果上移动,根据手掌移动轨迹的终点对应的待选文字识别结果从而指向用户想选择的待选文字识别结果。之后返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S221,采集用户的手势图像,判断当前手势图像是否为确认手势图像,若是则执行步骤S222;否则执行步骤S224。确认了用户想选择的待选文字识别结果后,通过检测到的用户确认手势来进入确认待选字流程以将待选文字识别结果中确定的待选文字识别结果作为最终的文字识别结果输入,同时缓存本次检测状态为手势功能状态。本实施例中,确认手势为握拳手势。
步骤S222,判断是否正在显示待选字列表,若是,则执行步骤S223;否者直接返回步骤S201摄像头图像回调等待获取下一帧图像信息。
步骤S223,当摄像头采集到握拳手势图像且存在待选字列表时,将步骤S220中手掌移动轨迹的终点对应的待选文字识别结果作为用户最终的文字识别结果输入到输入栏,从而实现了文字的识别输入。
步骤S224,采集用户的手势图像,判断当前手势图像是否为退格手势图像,若是则执行步骤S225;否则直接返回步骤S201摄像头图像回调等待获取下一帧图像信息。输入了用户选择的文字识别结果后,若用户的误操作等原因导致根据上述步骤输入的文字识别结果并非用户所需,则可通过退格手势实现删除功能,同时缓存本次检测状态为手势功能状态。本实施例中,退格手势为向左挥手手势。
步骤S225,若当前手势图像为退格手势图像,则触发退格指令,删除输入栏中文字识别结果中的至少一个文字。
在上述实施例中,当采集到用户的手势图像并从手势图像中识别出用户的手势后,将识别出的手势与系统预置手势库进行对比,若系统预置手势库中存在对应的手势,则获取到该手势对应的指令并执行对应的操作;若未检测到任何预置手势,则返回步骤S201摄像头图像回调等待获取下一帧图像信息,同时清除检测状态缓存。同时,不同功能所对应的用户手势不限于本说明书实施例中所述,用户可以根据自己实际的使用习惯预先设置各个手势与手势功能的对应关系。
本说明书的一个或多个实施例还提供一种基于手势视觉识别的手写输入装置,如图3所示,该装置包括:
获取模块11,用于获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置。
判断模块12,用于判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值。
生成模块13,用于将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹;其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的。
识别模块14,用于对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
可选的,所述生成模块13还用于实现:若前一帧所述手势图像中不存在所述笔迹点且当前帧所述手势图像中存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的起点。
可选的,所述生成模块13还用于实现:若当帧所述手势图像存在所述笔迹点且后一帧所述手势图像中不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的终点。
可选的,所述标定指尖宽度的获取方法包括:获取用户的标定手势图像,判断所述标定手势图像中的标定手势是否位于预置的标定手势轮廓线内;若是,则获取并记录所述标定手势的指尖宽度作为所述标定指尖宽度。
可选的,获得所述标定指尖宽度之后还包括:判断是否存在所述书写轨迹,且当前时刻与所述书写轨迹生成时的时间间隔大于预设时间间隔;若是,则对所述书写轨迹进行文字识别。
可选的,所述识别模块14还用于实现:获取用户的书写结束手势图像,基于所述书写结束手势图像对一个或多个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
可选的,所述获得至少一个待选文字识别结果并展示之后还包括:获取用户的移动手势图像,基于所述移动手势图像生成手指位置移动轨迹,确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果。
可选的,所述确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果之后还包括:获取用户的确认手势图像,基于所述确认手势图像将确定的所述待选文字识别结果选择为所述文字识别结果。
可选的,所述将确定的所述待选文字识别结果选择为所述文字识别结果之后还包括:获取用户的退格手势图像,基于所述退格手势图像删除所述文字识别结果中的至少一个文字。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本说明书的一个或多个实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项实施例所述的基于手势视觉识别的手写输入方法。
图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (15)
1.一种基于手势视觉识别的手写输入方法,其特征在于,包括:
获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置;判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值;
将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹;其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的;
对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
2.根据权利要求1所述的基于手势视觉识别的手写输入方法,其特征在于,若前一帧所述手势图像中不存在所述笔迹点且当前帧所述手势图像中存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的起点。
3.根据权利要求1所述的基于手势视觉识别的手写输入方法,其特征在于,若当帧所述手势图像存在所述笔迹点且后一帧所述手势图像中不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的终点。
4.根据权利要求1所述的基于手势视觉识别的手写输入方法,其特征在于,所述标定指尖宽度的获取方法包括:
获取用户的标定手势图像,判断所述标定手势图像中的标定手势是否位于预置的标定手势轮廓线内;
若是,则获取并记录所述标定手势的指尖宽度作为所述标定指尖宽度。
5.根据权利要求4所述的基于手势视觉识别的手写输入方法,其特征在于,获得所述标定指尖宽度之后还包括:
判断是否存在所述书写轨迹,且当前时刻与所述书写轨迹生成时的时间间隔大于预设时间间隔;
若是,则对所述书写轨迹进行文字识别。
6.根据权利要求1所述的基于手势视觉识别的手写输入方法,其特征在于,所述对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字包括:
获取用户的书写结束手势图像,基于所述书写结束手势图像对一个或多个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
7.根据权利要求6所述的基于手势视觉识别的手写输入方法,其特征在于,所述获得至少一个待选文字识别结果并展示之后还包括:
获取用户的移动手势图像,基于所述移动手势图像生成手部位置移动轨迹,确定所述手部位置移动轨迹的终点对应的所述待选文字识别结果。
8.根据权利要求7所述的基于手势视觉识别的手写输入方法,其特征在于,所述确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果之后还包括:
获取用户的确认手势图像,基于所述确认手势图像将确定的所述待选文字识别结果选择为所述文字识别结果。
9.根据权利要求8所述的基于手势视觉识别的手写输入方法,其特征在于,所述将确定的所述待选文字识别结果选择为所述文字识别结果之后还包括:
获取用户的退格手势图像,基于所述退格手势图像删除所述文字识别结果中的至少一个文字。
10.一种基于手势视觉识别的手写输入装置,其特征在于,包括:
获取模块,用于获取用户书写时的多帧手势图像,识别每一帧所述手势图像中的书写手指的指尖宽度和指尖位置;
判断模块,用于判断每一帧所述手势图像中的书写手指的指尖宽度相比于预置的标定指尖宽度的变化量是否小于预设阈值;
生成模块,用于将所述变化量小于预设阈值的所述手势图像中的书写手指的指尖位置所对应的点作为笔迹点,并基于全部的所述笔迹点生成一个或多个书写轨迹;其中,任一所述书写轨迹是由连续至少两帧所述手势图像中的所述笔迹点依次连接得到的;
识别模块,用于对一个或多个所述书写轨迹进行文字识别,获得所述书写轨迹对应的文字。
11.根据权利要求10所述的基于手势视觉识别的手写输入装置,其特征在于,所述生成模块还用于实现:
若前一帧所述手势图像中不存在所述笔迹点且当前帧所述手势图像中存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的起点。
12.根据权利要求11所述的基于手势视觉识别的手写输入装置,其特征在于,所述生成模块还用于实现:
若当帧所述手势图像存在所述笔迹点且后一帧所述手势图像中不存在所述笔迹点,则获取当前帧所述手势图像中的所述笔迹点作为一个所述书写轨迹的终点。
13.根据权利要求11所述的基于手势视觉识别的手写输入装置,其特征在于,所述识别模块还用于实现:
获取用户的书写结束手势图像,基于所述书写结束手势图像对至少两个所述书写轨迹进行文字识别,获得至少一个待选文字识别结果并展示。
14.根据权利要求13所述的基于手势视觉识别的手写输入装置,其特征在于,所述获得至少一个待选文字识别结果并展示之后还包括:
获取用户的移动手势图像,基于所述移动手势图像生成手指位置移动轨迹,确定所述手指位置移动轨迹的终点对应的所述待选文字识别结果。
15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任意一项所述的基于手势视觉识别的手写输入方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010622153.5A CN113867521B (zh) | 2020-06-30 | 2020-06-30 | 一种基于手势视觉识别的手写输入方法、装置及电子设备 |
US17/361,576 US11402923B2 (en) | 2020-06-30 | 2021-06-29 | Input method, apparatus based on visual recognition, and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010622153.5A CN113867521B (zh) | 2020-06-30 | 2020-06-30 | 一种基于手势视觉识别的手写输入方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113867521A true CN113867521A (zh) | 2021-12-31 |
CN113867521B CN113867521B (zh) | 2024-01-23 |
Family
ID=78981939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010622153.5A Active CN113867521B (zh) | 2020-06-30 | 2020-06-30 | 一种基于手势视觉识别的手写输入方法、装置及电子设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11402923B2 (zh) |
CN (1) | CN113867521B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024065345A1 (zh) * | 2022-09-29 | 2024-04-04 | 京东方科技集团股份有限公司 | 隔空手势编辑方法、装置、显示系统及介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114415830A (zh) * | 2021-12-31 | 2022-04-29 | 科大讯飞股份有限公司 | 隔空输入方法及设备、计算机可读存储介质 |
CN114745579A (zh) * | 2022-03-18 | 2022-07-12 | 阿里巴巴(中国)有限公司 | 基于隔空书写界面的互动方法、界面、终端及存储介质 |
CN117608399B (zh) * | 2023-11-23 | 2024-06-14 | 首都医科大学附属北京天坛医院 | 基于汉字笔画的轨迹拟合方法以及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324922A (zh) * | 2008-07-30 | 2008-12-17 | 北京中星微电子有限公司 | 手指尖轨迹获取方法和装置 |
CN104583913A (zh) * | 2013-06-26 | 2015-04-29 | 松下电器(美国)知识产权公司 | 用户界面装置及显示目标物操作方法 |
US20150160784A1 (en) * | 2006-02-28 | 2015-06-11 | Microsoft Corporation | Compact Interactive Tabletop with Projection-Vision |
CN104834417A (zh) * | 2014-02-07 | 2015-08-12 | 财团法人工业技术研究院 | 触控装置、处理器及其触控信号读取方法 |
CN105320248A (zh) * | 2014-06-03 | 2016-02-10 | 深圳Tcl新技术有限公司 | 空中手势输入方法及装置 |
CN107818290A (zh) * | 2016-09-14 | 2018-03-20 | 京东方科技集团股份有限公司 | 基于深度图的启发式手指检测方法 |
US20190302963A1 (en) * | 2016-06-01 | 2019-10-03 | Carnegie Mellon University | Hybrid depth and infrared image sensing and method for enhanced touch tracking on ordinary surfaces |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508547A (zh) | 2011-11-04 | 2012-06-20 | 哈尔滨工业大学深圳研究生院 | 基于计算机视觉的手势输入法构建方法及系统 |
CN103926999B (zh) * | 2013-01-16 | 2017-03-01 | 株式会社理光 | 手掌开合手势识别方法和装置、人机交互方法和设备 |
-
2020
- 2020-06-30 CN CN202010622153.5A patent/CN113867521B/zh active Active
-
2021
- 2021-06-29 US US17/361,576 patent/US11402923B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150160784A1 (en) * | 2006-02-28 | 2015-06-11 | Microsoft Corporation | Compact Interactive Tabletop with Projection-Vision |
CN101324922A (zh) * | 2008-07-30 | 2008-12-17 | 北京中星微电子有限公司 | 手指尖轨迹获取方法和装置 |
CN104583913A (zh) * | 2013-06-26 | 2015-04-29 | 松下电器(美国)知识产权公司 | 用户界面装置及显示目标物操作方法 |
CN104834417A (zh) * | 2014-02-07 | 2015-08-12 | 财团法人工业技术研究院 | 触控装置、处理器及其触控信号读取方法 |
CN105320248A (zh) * | 2014-06-03 | 2016-02-10 | 深圳Tcl新技术有限公司 | 空中手势输入方法及装置 |
US20190302963A1 (en) * | 2016-06-01 | 2019-10-03 | Carnegie Mellon University | Hybrid depth and infrared image sensing and method for enhanced touch tracking on ordinary surfaces |
CN107818290A (zh) * | 2016-09-14 | 2018-03-20 | 京东方科技集团股份有限公司 | 基于深度图的启发式手指检测方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024065345A1 (zh) * | 2022-09-29 | 2024-04-04 | 京东方科技集团股份有限公司 | 隔空手势编辑方法、装置、显示系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
US20210405762A1 (en) | 2021-12-30 |
CN113867521B (zh) | 2024-01-23 |
US11402923B2 (en) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113867521B (zh) | 一种基于手势视觉识别的手写输入方法、装置及电子设备 | |
KR102460737B1 (ko) | 공중 필기 인식을 위한 방법, 장치, 기기 및 컴퓨터 판독 가능한 저장 매체 | |
US9052755B2 (en) | Overlapped handwriting input method | |
US8633906B2 (en) | Operation control apparatus, operation control method, and computer program | |
JP5604279B2 (ja) | ジェスチャー認識装置、方法、プログラム、および該プログラムを格納したコンピュータ可読媒体 | |
WO2011142317A1 (ja) | ジェスチャー認識装置、方法、プログラム、および該プログラムを格納したコンピュータ可読媒体 | |
US10082952B2 (en) | System and method for text input by a continuous sliding operation | |
US20140365878A1 (en) | Shape writing ink trace prediction | |
CN104978133A (zh) | 一种用于智能终端的截屏方法和装置 | |
KR101631011B1 (ko) | 제스처 인식 장치 및 제스처 인식 장치의 제어 방법 | |
CN102135830A (zh) | 触摸屏触发方法及触摸装置 | |
CN102750552B (zh) | 一种手写识别方法、系统及手写识别终端 | |
CN103713845B (zh) | 筛选候选项的方法和装置、文字输入方法和输入法系统 | |
US20150169134A1 (en) | Methods circuits apparatuses systems and associated computer executable code for providing projection based human machine interfaces | |
TW201322049A (zh) | 電子設備及其文本導讀方法 | |
KR20130091874A (ko) | 필기 인식을 위한 필기 입력 가이드 장치 및 방법 | |
CN105630397A (zh) | 一种弹出框的打开方法及终端设备 | |
CN105242776A (zh) | 一种智能眼镜的控制方法及智能眼镜 | |
CN115048027A (zh) | 手写输入方法、装置、系统、电子设备和存储介质 | |
US9940536B2 (en) | Electronic apparatus and method | |
CN113220125A (zh) | 手指交互方法、装置、电子设备及计算机存储介质 | |
CN110007748B (zh) | 终端的控制方法、处理装置、存储介质及终端 | |
US11669193B2 (en) | Position detection circuit and position detection method | |
CN113296616B (zh) | 笔锋选择方法、装置以及智能终端 | |
KR20190069023A (ko) | 손 인식 기반 비접촉식 입력 인터페이스 제공 방법 및 장치 |
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 |