CN108932053B - 基于手势的绘图方法、装置、存储介质和计算机设备 - Google Patents
基于手势的绘图方法、装置、存储介质和计算机设备 Download PDFInfo
- Publication number
- CN108932053B CN108932053B CN201810487314.7A CN201810487314A CN108932053B CN 108932053 B CN108932053 B CN 108932053B CN 201810487314 A CN201810487314 A CN 201810487314A CN 108932053 B CN108932053 B CN 108932053B
- Authority
- CN
- China
- Prior art keywords
- gesture
- image
- determining
- type
- track
- 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
- 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/113—Recognition of static hand signs
-
- 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为一个实施例中基于手势的绘图方法的应用环境图;
图2为一个实施例中基于手势的绘图方法的流程示意图;
图3为一个实施例中获取的图像中的手势的示意图;
图4为一个实施例中识别图像中手势的手势类型的流程示意图;
图5为一个实施例中从图像中分割出手势区域的示意图;
图6为另一个实施例中从图像中分割出手势区域的示意图;
图7为一个实施例中手势的骨架节点的示意图;
图8(1)、图8(2)、图8(3)为不同手势的示意图;
图9(1)、图9(2)、图9(3)为一个实施例中按时间顺序得到绘图轨迹的示意图;
图10为一个具体的实施例中基于手势的绘图方法的流程示意图;
图11为一个实施例中基于手势的绘图装置的结构框图;
图12为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中基于手势的绘图方法的应用环境图。参照图1,该基于手势的绘图方法应用于基于手势的绘图系统。该基于手势的绘图系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
用户可展示属于各种预设的手势类型的手势。终端110可以获取实时采集的包括手势的图像。包括手势的图像可以是终端110通过配置的内置摄像头或外接摄像头实时采集并获取的,内置摄像头可以是终端110的前置摄像头或后置摄像头;包括手势的图像也可以是其它设备实时采集后发送至终端110的。终端110可以识别图像中手势的手势类型。终端110也可以将获取的图像发送至服务器120,由服务器120对获取的图像进行识别,并将识别的手势类型返回至终端110。终端110可以确定手势类型所对应的操作类型;当操作类型为绘图类型时,确定手势在图像中的绘图位置;按照绘图位置确定手势对应的绘图轨迹;将绘图轨迹与图像叠加展示。
如图2所示,在一个实施例中,提供了一种基于手势的绘图方法。本实施例主要以该方法应用于上述图1中的终端110来举例说明。参照图2,该基于手势的绘图方法具体包括如下步骤:
S202,获取实时采集的包括手势的图像。
其中,手势是由用户通过手做出的、在被采集后用于在终端上触发相应指令的动作形态。采集的图像中可以包括一个手势或多个手势。
具体地,终端可通过内置的摄像头采集包括手势的图像,也可以通过外接的图像采集装置采集包括手势的图像,从而获取到包括手势的图像。图像采集装置比如可以是监控摄像头或电脑眼等。终端也可以通过网络接收其它设备实时采集的包括手势的图像。
在一个具体的应用场景中,用户手持终端,通过终端上用于调用摄像头的应用程序打开终端上内置的摄像头,这样,终端可采集摄像头的拍摄范围内的图像。用户对着终端的摄像头做出的手势就会被实时采集到,从而获取到实时采集的包括手势的图像。可以理解,若用户打开的是前置摄像头,那么采集的图像中包括用户对着前置摄像头做出的手势以及前置摄像头拍摄范围内的背景;若用户打开的是后置摄像头,那么采集的图像中就包括用户对着后置摄像头做出的手势以及后置摄像头拍摄范围内的背景。
在一个实施例中,基于手势的绘图方法可以应用于涂鸦游戏。具体地,用户打开涂鸦游戏,涂鸦游戏自动调用并开启摄像头,用户对着摄像头做出手势,终端就可以根据识别出的手势跟踪摄像头采集的图像中手势的涂鸦轨迹,并将涂鸦轨迹实时地展示在终端屏幕上。
在一个实施例中,基于手势的绘图方法可以应用于视频通话过程。在视频通话过程中,终端可对采集的包括手势的图像进行识别,并跟踪摄像头采集的图像中手势的移动轨迹,将移动轨迹所形成的图像展示在终端屏幕上。终端还可以将移动轨迹所形成的图像发送至通话的另一用户终端,可提升视频通话过程中的互动性。
S204,识别图像中手势的手势类型。
其中,手势类型是所采集的图像中手势的形状。由于用户可通过手部的五个手指灵活地做出各种不同的手势,因此,终端可对不同的手势进行区分,识别出图像中手势的手势类型。
如图3所示,为一个实施例中获取的所采集图像中手势的示意图。参照图3,在采集的该图像中,用户展示了一个手势类型,其形状为“V字形”。
具体地,终端可采用预先训练好的机器学习模型对图像中手势的手势类型进行识别。首先,将采集的图像输入至机器学习模型中,通过机器学习模型中的隐藏层对采集的图像对应的特征进行运算,输出图像中手势的手势类型。
如图4所示,在一个实施例中,步骤S204,识别图像中手势的手势类型具体包括以下步骤:
S402,从图像中分割出手势区域。
其中,手势区域是图像中手势所在的矩形区域。该矩形区域可以是包括整个手势的最小矩形区域,矩形区域还可以是包围手势的轮廓的区域。
可以理解,相比于直接对所采集的原始图像中手势的手势类型进行识别,从采集的图像中分割出手势区域之后再对分割出的手势区域进行识别,避免手势区域占整个图像的比例较小时识别不准确的问题,能够减少原始图像中相对于手势区域的背景区域对手势区域中手势的手势类型进行识别的干扰,可以提高识别的准确度。
在一个实施例中,从图像中分割出手势区域具体包括:对图像进行图像特征提取;将提取出的图像特征输入至像素级别分类器中,按照属于手势区域的特征和不属于手势区域的特征,对图像中每个像素进行分类;当图像中所有像素分类完成后,输出一个与图像分辨率大小相同的概率矩阵;对输出的概率矩阵以预设的阈值进行二值化处理,得到图像对应的显著图;最后根据显著图中显著区域四个方位(上、下、左、右)的端点像素的坐标,确定图像中包括手势的矩形区域,即为手势区域,就可以按照该坐标从图像中分隔出手势区域。
比如,以图像左下角像素为原点构建直角坐标系来说明,显著图中显著区域最上方的端点像素相对于表示原点的像素的位置偏移为(10,10),最左方的端点像素的位置偏移为(6,9),最下方的端点像素的位置偏移为(8,5),最右方的端点像素的位置偏移为(12,8),则可确定手势区域四个端点像素的坐标分别为(6,10)、(6,5)、(12,5)和(12,10),根据这四个端点像素的坐标就可以确定手势区域。
如图5所示,为一个实施例中从图像中分割出手势区域的示意图。参照图5,输入的是采集的图像502,对图像中每个像素通过像素级别分类器进行分类后,再进行二值化处理得到显著图504,根据显著图中四个端点像素的坐标确定原来的图像中的手势区域506。
在一个实施例中,从图像中分割出手势区域具体包括:按照图像的不同图像属性分别对图像提取特征图;将各特征图进行特征融合,得到图像的图像特征;通过手势区域检测模型,根据图像特征确定手势的包围框坐标;按照包围框坐标从图像中分割出手势区域。
其中,图像属性包括图像中各像素点的像素值、分辨率、颜色分量值、色调、饱和度、亮度、色彩通道以及图像的层次等。特征图是图像中各个像素点对应了某一图像属性的特征值所构成的概率矩阵。不同图像属性的特征图的分辨率的大小可以不同。
具体地,终端可通过预先训练好的机器学习模型中的卷积层,对输入的图像对属于不同图像属性的特征进行提取。在提取出了特征图后,可对多个特征图进行特征融合,得到图像的图像特征。得到的图像特征由于具备图像多个维度不同图像属性的特征,从而所包含的信息更为多样、特征也更为稳定。对于融合后得到的图像特征,可以输入至预先训练好的手势区域检测模型中,通过手势区域检测模型的运算,输出手势的包围框坐标,按照包围框坐标从图像中分割出手势区域。
包围框坐标是用于确定图像中手势的矩形框的坐标。包围框坐标具体可以是用于确定手势区域的四元坐标组(X,Y,W,H),这四个元素分别表示包围框相对于图像中某一像素的X方向像素偏移、Y方向像素偏移、以及包围框的宽和高。
如图6所示,为一个实施例中从图像中分割出手势区域的示意图。参照图6,输入的是采集的图像602;对输入的图像进行特征提取之后,可通过手势区域检测模型对提取出的特征进行运算,得到手势的包围框坐标604;通过得到的包围框坐标可计算出图像中的手势区域606。
比如,以图像左下角像素为原点构建直角坐标系来说明,得到包围框四元坐标组为(10,15,60,95)。假定包围框坐标的前二维元素表示手势区域的左下方端点像素相对于原点的X方向像素偏移和Y方向像素偏移,那么就可以确定包围框四个端点像素的坐标分别为(10,15)、(70,15)、(70,110)和(10、110),根据这四个端点像素的坐标就可以确定手势区域。
S404,在手势区域中确定手势各骨架节点的位置。
其中,骨架节点是手势中每个手指骨架或手掌骨架的关节。具体地,在从图像中分割出手势区域后,终端可进一步确定手势区域中手势的各个骨架节点的位置。可以理解,手势中各个手指的摆放,也就是手势中各个骨架节点的相对位置,与手势类型是有关系的。相同的手势,其各个骨架节点之间的位置关系一般是相同的。
如图7所示,为一个实施例中手势所包括的骨架节点的示意图。参照图7,设定的手势的骨架节点有21个,可用1至21这21个数唯一表示一个骨架节点。需要说明的是,这21个骨架节点是参照了人的手部的关节选定的。为了更好的展示出手部,可以根据需求选取更多的关节作为骨架节点,比如可以从手掌部位中选取更多的关节,不限于选定这21个关节作为骨架节点。
可以理解,确定手势区域中手势各个骨架节点的位置的过程,就是确定选定的这21个骨架节点在手势区域中的位置的过程。骨架节点的位置可以是骨架节点在手势区域中的二维坐标。
在一个实施例中,在手势区域中确定手势各骨架节点的位置具体包括:按照手势区域的不同图像属性分别对手势区域提取特征图;将各特征图进行特征融合,得到手势区域的图像特征;通过骨架节点识别模型,根据手势区域的图像特征,确定手势区域中手势的各骨架节点的坐标;根据各骨架节点的坐标确定手势区域中各骨架节点的位置。
具体地,对于从图像中分割出的手势区域,终端可进一步对手势区域的特征进行特征提取,得到手势区域对应各图像属性的特征图,将特征图融合后得到手势区域的图像特征,通过骨架节点识别模型对手势区域的图像特征进行识别,确定手势区域中各骨架节点的坐标,根据骨架节点的坐标确定手势区域中各骨架节点的位置。
在一个实施例中,在对骨架节点识别模型进行训练的过程中,终端可采集大量的包括各种手势的图像,获取图像中手势各个骨架节点的坐标,或者各个骨架节点所在位置范围内的坐标,将模型预测的坐标与实际的坐标进行比较,通过不断调整骨架节点识别模型的参数,使得预测的误差率在可接受范围之内。
在一个实施例中,终端还可在确定了手势区域中各骨架节点的位置后,根据预设的各个骨架节点之间的位置关系,用线段连接具有预设位置关系的骨架节点,生成手势骨架图。终端还可以将生成的手势骨架图与原来的图像进行叠加展示,从而将得到的手势骨架图展示在图像中。
S406,依据各骨架节点的位置,识别出手势的手势类型。
具体地,终端在获得了各个骨架节点的位置之后,可根据预设的各个骨架节点之间的位置关系,得到手势骨架图。比如,预先设定的食指对应的四个骨架节点依次为标号为1、3、5、6对应的关节,其中标号为1代表食指指尖的节点,那么,在确定了标号为1、3、5、6的骨架节点在手势区域中的位置之后,就可以确定食指的位置,同样地方式,可以确定大拇指、中指、无名指以及小拇指的位置,从而确定手势区域中五个手指所构成的整个手势的手势骨架图。
进一步地,终端在确定了各个骨架节点的位置后,可根据预设的各个骨架节点之间的位置关系,对骨架节点所构成的手势进行识别,识别出该手势对应的手势类型。
S206,确定手势类型所对应的操作类型。
其中,操作类型用于触发执行绘图过程中相应的绘图指令,包括绘图指令、擦除指令和移动指令等。具体地,终端可预先存储手势类型与操作类型间的对应关系,在识别出图像中手势的手势类型之后,就可以根据预先存储的对应关系确定手势类型所对应的操作类型。
如图8(1)至8(3)所示,示出了三种手势,可以预先设定图8(1)中手势的手势类型所对应的操作类型为绘图类型,图8(2)中手势的手势类型所对应的操作类型为擦除类型,图8(3)中手势的手势类型所对应的操作类型为移动类型。可以理解,哪个手势类型对应哪个操作类型是可以根据需求灵活地设置的,比如图8(1)中手势的手势类型所对应的操作类型也可以是擦除类型。
在一个实施例中,还可以利用图像中手势的手势类型的组合来对应一个操作类型。比如,采集的图像中包括两只手,不同手做出相同的手势或不同的手势,在识别出各个手势对应的手势类型之后,可通过2个手势的手势类型的组合来确定相应的操作类型。比如,当用户向摄像头用两只手分别比出“1”的手势时,就对应了操作类型“退出当前绘图过程”,从而指示终端执行退出当前绘图的指令。
S208,当操作类型为绘图类型时,确定手势在图像中的绘图位置。
具体地,当终端确定当前获取的图像中手势的操作类型为绘图类型时,就确定所采集的图像中手势的绘图位置。在一个实施例中,对于每个获取的图像,终端都执行步骤S204至步骤S212,这样,就能确定每张图像中手势所对应的操作类型,从而指示终端执行与操作类型相应的指令。
在一个实施例中,步骤S208,确定手势在图像中的绘图位置具体包括:确定手势中用于绘图的骨架节点;获取用于绘图的骨架节点在图像中的位置;按照位置确定手势在图像中的绘图位置。
其中,用于绘图的骨架节点可以理解为作画过程中作为“画笔”的骨架节点。在一个实施例中,可将食指指尖关节所对应的骨架节点作为用于绘图的骨架节点,那么就需要确定图像中作为食指指尖关节的骨架节点在图像中的位置,跟踪采集的连续图像中该骨架节点的位置,从而确定图像中的绘图位置。这里的位置可以用骨架节点在图像中的二维坐标来表示。用于绘图的骨架节点的位置可通过基于机器学习的骨架节点识别网络模型确定。
S210,按照绘图位置确定手势对应的绘图轨迹。
其中,绘图轨迹是由用户在移动手势的过程中图像中的绘图位置随着改变所形成的轨迹。在一个具体的场景中,用户对着终端的摄像头做出一个手势,在确定了该手势对应的操作类型为绘图类型时,就确定采集的连续的每一帧图像中手势的绘图位置,由于采集图像的频率较高,因此连续的绘图位置用很短线段连接起来后可以形成绘图轨迹。
比如,在第一帧图像中,手势对应的操作类型为绘图类型,确定用于绘图的骨架节点对应的绘图位置为A点,同样地,在第二帧图像中,在确定了操作类型为绘图类型之后,确定用于绘图的骨架节点对应的绘图位置为B点,在第三帧图像中,确定的用于绘图的骨架节点对应的绘图位置为C点,那么A、B、C三点连接起来构成的轨迹就是这三帧图像对应的绘图轨迹。需要说明的是,由于采集的每一帧图像的大小是一样的,从而每一帧图像中的绘图位置可以基于同一个坐标系计算得到。
在一个实施例中,终端还可对绘图轨迹进行纠错处理。仍以前文提及的三帧连续图像中确定的三个绘图位置A、B、C来举例说明:一般而言,终端对图像中的用于绘图的骨架节点的位置进行计算的频率很高,比如,采集图像的帧率为20,那么一秒钟就会对20帧图像中骨架节点的位置进行计算以及手势的手势类型进行识别,由于用户手势移动的滞后性,因而这三个点的位置不会发生太大的变化。所以,在确定的这三个位置点明显不同时,就判定存在计算失误,为避免生成错误的绘图轨迹对整个图案的影响,需要对绘图轨迹进行纠错处理。比如,位置B与位置A、C的明显不一致时,那么就认定B位置为错误点。此时,就可根据A、C的位置生成一条贝塞尔弧线,用这条弧线来代替原来的线段ABC,使得绘图轨迹更有弧度。
S212,将绘图轨迹与图像叠加展示。
在一个实施例中,终端可将确定的绘图轨迹实时展示在当前最新获取的图像中,那么,展示的绘图轨迹会与用户做出的手势的移动轨迹同步,随着用户手势的移动,相应的绘图轨迹也会增加,直至确定当前用户手势对应的操作类型不为绘图类型。如图9(1)至9(3)所示,为一个实施例中基于用户的手势进行绘图得到绘图轨迹为“爱心”的场景图,终端将当前时刻确定的绘图轨迹实时地展示在当前时刻获取的图像中。
在一个实施例中,终端也可以在确定当前手势对应的操作类型不为绘图类型时,将最后得到的绘图轨迹与当前获取的图像叠加展示。
在一个实施例中,终端也可将绘图轨迹直接展示。在涂鸦场景中,用户可对展示出的绘图轨迹进行按照其他手势类型对应的操作类型进行进一步地处理。在视频通话场景中,终端可将绘图轨迹发送至通话的另一方,由接收的另一方进行展示。
上述基于手势的绘图方法,展示的绘图轨迹是基于获取的图像中手势的绘图位置确定的,可以实现“隔空”绘图的效果。通过对获取的图像中手势的手势类型进行识别,在识别出的手势类型所对应的操作类型为绘图类型时,就可以确定手势在图像中的绘图位置。由于获取的图像是实时采集的图像,因而,根据连续图像中手势的绘图位置就可以确定绘图轨迹,在展示该绘图轨迹后得到所绘制的图像。整个绘图过程无需用户通过输入装置进行操作,用户可在较大的空间范围内通过示出的手势进行绘图,提高了绘图的便利性。
在一个实施例中,步骤S212,将绘图轨迹与图像叠加展示具体包括:在图像中确定绘图轨迹所经过的像素点;将图像中的像素点的像素值更新为预设像素值;展示已更新像素值的图像。
具体地,在将绘图轨迹与图像叠加展示时,为了能够突显绘图轨迹,就可以以异于图像中背景的像素来展示绘图轨迹。绘图轨迹实质上是连续的多帧图像中各绘图位置所对应的坐标形成的轨迹,因而,终端可以根据各个坐标在图像中确定绘图轨迹所经过的像素点,将这些像素点的像素值更新为预设像素值,比如较为鲜艳的绿色对应的像素值,然后将更新了像素值的图像进行展示。
在一个实施例中,对图像中绘图轨迹经过的像素点更新像素值可以是实时进行的,一旦确定了当前图像中绘图位置,就将绘图位置所对应的坐标处的像素值进行更新,这样,可以实现将绘图轨迹实时展示。
在本实施例中,通过对图像中绘图轨迹所经过的像素点的像素值进行更新,可以将绘图轨迹直接展示在当前的图像中,形成实时绘图的效果。
在一个实施例中,基于手势的绘图方法还包括以下步骤:当操作类型从绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;对已形成的绘图轨迹执行与绘图轨迹操作类型相对应的操作;根据操作的结果更新图像中展示的绘图轨迹。
其中,绘图轨迹操作类型包括绘图轨迹擦除操作、绘图轨迹移动操作和退出绘图操作等。为了能够模拟真实的绘图过程,可设定识别出的不同手势类型对应了不同的绘图轨迹操作类型,当确定的操作类型发生变更时,终端可根据手势对已形成的绘图轨迹执行与当前手势的操作类型相对应的操作,并根据操作的结果更新图像中所展示的绘图轨迹。
在一个实施例中,当绘图轨迹操作类型为绘图轨迹擦除操作时,终端可将绘图轨迹部分擦除或全部擦除。在一个实施例中,还可设定不同的手势对应不同的擦除方式。比如,识别到手势类型为“手掌晃动动作”时,确定对应的操作类型为绘图轨迹全部擦除动作,从而终端可将展示的绘图轨迹取消展示。在识别到手势类型为“手掌移动动作”时,确定对应的操作类型为绘图轨迹部分擦除动作,从而终端可根据手势在图像中的操作位置,对操作位置处的绘图轨迹部分擦除。
在一个实施例中,当绘图轨迹操作类型为绘图轨迹移动操作时,终端可按照绘图轨迹移动操作的移动方向将展示的绘图轨迹进行移动,即以相同偏移更新绘图轨迹中各像素点的坐标,将更新后的绘图轨迹展示。
在一个实施例中,步骤根据操作的结果更新图像中展示的绘图轨迹,具体包括:确定手势在图像中的操作位置;按照操作位置对已形成的绘图轨迹进行操作;根据操作的结果更新图像中展示的绘图轨迹。
以绘图轨迹操作类型为绘图轨迹擦除类型来举例说明:终端在确定了操作类型为绘图轨迹擦除类型之后,可确定当前图像中手势的操作位置,对操作位置所对应的绘图轨迹中的像素点的像素值进行更新,使得该操作位置处像素点的像素值与采集的图像中该位置出的像素值一致,实现从图像中擦除手势的操作位置处的绘图轨迹的绘图效果。
在本实施例中,可在确定图像中的手势对应了其它操作类型时,对于终端所展示出的绘图轨迹,执行与操作类型相应的处理,以实现更多的绘图功能和绘图效果。
在一个实施例中,基于手势的绘图方法还包括以下步骤:通过图像识别模型,识别绘图轨迹对应的图案类别;查找与图案类别对应的预设图像;
将展示的绘图轨迹替换为预设图像。
具体地,终端可在确定当前图像中的手势对应的操作类型不为绘图类型时,可将当前确定的绘图轨迹通过训练好的图像识别模型,对该绘图轨迹对应的图案类别进行分类,得到绘图轨迹对应的图案类别。
比如,通过图像识别模型确定的绘图轨迹对应的图案类型是“爱心”,即绘图轨迹实质上描绘的是一个“爱心”,终端就可以从图片库中查找与“爱心”对应的预设图像。与“爱心”对应的预设图像可以是一个包括“爱心”的图片,也可以是包括文字“我喜欢你”的图片等等。终端可从图片库中与“爱心”对应的图片中随机拉取一张图片,也可以按预设图片的标识的顺序查找一张图片。这样,终端可用查找到的与绘图轨迹的图案类别对应的预设图像替换展示的绘图轨迹。
在一个实施例中,终端还可在识别出绘图轨迹对应的图案类别后,在终端屏幕上随机展示与图案类型对应的预设表情包。在基于手势的绘图方法应用于视频通话中时,终端还可将展示的预设表情包同步至通话的另一方。
在一个实施例中,将展示的绘图轨迹替换为预设图像具体包括:当查找到的预设图像为多个时,展示查找到的多个预设图像;获取针对所展示预设图像的选择指令;用选择指令所选中的预设图像替换展示的绘图轨迹。
具体地,终端可对查找到的预设图像全部展示。全部展示时可以以缩小框的形式将所有的图片并排展示在屏幕上。终端还可对查找到的多个预设图像中随机选择预设数量的图像进行展示。终端可获取针对展示的任一图像的选择指令,将展示的绘图轨迹替换为选择指令所针对的图像。其中,选择指令可以是通过用户触摸终端屏幕以选择任一图像触发的,也可以通过手势触发的。通过手势触发时终端需要获取手势的操作位置,根据操作位置确定所选择的预设图像。
在本实施例中,终端可将展示的绘图轨迹替换为与绘图轨迹的图案类别对应的预设图像,从而增强用户在绘画过程中与终端之间的互动性。
如图10所示,在一个具体的实施例中,基于手势的绘图方法具体包括以下步骤:
S1002,获取实时采集的包括手势的图像。
S1004,按照图像的不同图像属性分别对图像提取特征图。
S1006,将各特征图进行特征融合,得到图像的图像特征。
S1008,通过手势区域检测模型,根据图像特征确定手势的包围框坐标。
S1010,按照包围框坐标从图像中分割出手势区域。
S1012,按照手势区域的不同图像属性分别对手势区域提取特征图。
S1014,将各特征图进行特征融合,得到手势区域的图像特征。
S1016,通过骨架节点识别模型,根据手势区域的图像特征,确定手势区域中手势的各骨架节点的坐标。
S1018,根据各骨架节点的坐标确定手势区域中各骨架节点的位置。
S1020,依据各骨架节点的位置,识别出手势的手势类型。
S1022,确定手势类型所对应的操作类型。
S1024,当操作类型为绘图类型时,确定手势中用于绘图的骨架节点。
S1026,获取用于绘图的骨架节点在图像中的位置。
S1028,按照位置确定手势在图像中的绘图位置。
S1030,按照绘图位置确定手势对应的绘图轨迹。
S1032,在图像中确定绘图轨迹所经过的像素点。
S1034,将图像中的像素点的像素值更新为预设像素值。
S1036,展示已更新像素值的图像。
S1038,当操作类型从绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹。
S1040,对已形成的绘图轨迹执行与绘图轨迹操作类型相对应的操作。
S1042,根据操作的结果更新图像中展示的绘图轨迹。
S1044,通过图像识别模型,识别绘图轨迹对应的图案类别。
S1046,查找与图案类别对应的预设图像。
S1048,将展示的绘图轨迹替换为预设图像。
上述基于手势的绘图方法,展示的绘图轨迹是基于获取的图像中手势的绘图位置确定的,可以实现“隔空”绘图的效果。通过对获取的图像中手势的手势类型进行识别,在识别出的手势类型所对应的操作类型为绘图类型时,就可以确定手势在图像中的绘图位置。由于获取的图像是实时采集的图像,因而,根据连续图像中手势的绘图位置就可以确定绘图轨迹,在展示该绘图轨迹后得到所绘制的图像。整个绘图过程无需用户通过输入装置进行操作,用户可在较大的空间范围内通过示出的手势进行绘图,提高了绘图的便利性。
图10为一个实施例中基于手势的绘图方法的流程示意图。应该理解的是,虽然图10的流程图中的各步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图10中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图11所示,在一个实施例中,提供了一种基于手势的绘图装置1100,该装置包括获取模块1102、识别模块1104、操作类型确定模块1106、绘图位置确定模块1108、绘图轨迹确定模块1110和展示模块1112,其中:
获取模块1102,用于获取实时采集的包括手势的图像。
识别模块1104,用于识别图像中手势的手势类型。
操作类型确定模块1106,用于确定手势类型所对应的操作类型。
绘图位置确定模块1108,用于当操作类型为绘图类型时,确定手势在图像中的绘图位置。
绘图轨迹确定模块1110,用于按照绘图位置确定手势对应的绘图轨迹。
展示模块1112,用于将绘图轨迹与图像叠加展示。
在一个实施例中,识别模块1104还用于从图像中分割出手势区域;在手势区域中确定手势各骨架节点的位置;依据各骨架节点的位置,识别出手势的手势类型。
在一个实施例中,识别模块1104还用于按照图像的不同图像属性分别对图像提取特征图;将各特征图进行特征融合,得到图像的图像特征;通过手势区域检测模型,根据图像特征确定手势的包围框坐标;按照包围框坐标从图像中分割出手势区域。
在一个实施例中,识别模块1104还用于按照手势区域的不同图像属性分别对手势区域提取特征图;将各特征图进行特征融合,得到手势区域的图像特征;通过骨架节点识别模型,根据手势区域的图像特征,确定手势区域中手势的各骨架节点的坐标;根据各骨架节点的坐标确定手势区域中各骨架节点的位置。
在一个实施例中,绘图位置确定模块1108还用于确定手势中用于绘图的骨架节点;获取用于绘图的骨架节点在图像中的位置;按照位置确定手势在图像中的绘图位置。
在一个实施例中,展示模块1112还用于在图像中确定绘图轨迹所经过的像素点;将图像中的像素点的像素值更新为预设像素值;展示已更新像素值的图像。
在一个实施例中,装置还包括绘图轨迹更新模块;绘图轨迹更新模块用于当操作类型从绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;对已形成的绘图轨迹执行与绘图轨迹操作类型相对应的操作;根据操作的结果更新图像中展示的绘图轨迹。
在一个实施例中,装置还包括装置还包括绘图轨迹替换模块;绘图轨迹替换模块用于通过图像识别模型,识别绘图轨迹对应的图案类别;查找与图案类别对应的预设图像;将展示的绘图轨迹替换为预设图像。
在一个实施例中,绘图轨迹替换模块还用于当查找到的预设图像为多个时,展示查找到的多个预设图像;获取针对所展示预设图像的选择指令;用选择指令所选中的预设图像替换展示的绘图轨迹。
上述基于手势的绘图装置1100,展示的绘图轨迹是基于获取的图像中手势的绘图位置确定的,可以实现“隔空”绘图的效果。通过对获取的图像中手势的手势类型进行识别,在识别出的手势类型所对应的操作类型为绘图类型时,就可以确定手势在图像中的绘图位置。由于获取的图像是实时采集的图像,因而,根据连续图像中手势的绘图位置就可以确定绘图轨迹,在展示该绘图轨迹后得到所绘制的图像。整个绘图过程无需用户通过输入装置进行操作,用户可在较大的空间范围内通过示出的手势进行绘图,提高了绘图的便利性。
图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110。如图12所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、图像采集装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现基于手势的绘图方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行基于手势的绘图方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的图像采集装置可以是内置的摄像头或外接的摄像头,内置的摄像头可以是前置摄像头或后置摄像头等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的基于手势的绘图装置1100可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行。计算机设备的存储器中可存储组成该基于手势的绘图装置的各程序模块,比如,图11所示的获取模块1102、识别模块1104、操作类型确定模块1106、绘图位置确定模块1108、绘图轨迹确定模块1110和展示模块1112。各程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各实施例的基于手势的绘图方法中的步骤。
例如,图12所示的计算机设备可以通过如图11所示的基于手势的绘图装置中的获取模块1102执行步骤S202。计算机设备可通过识别模块1104执行步骤S204。计算机设备可通过操作类型确定模块1106执行步骤S206。计算机设备可通过绘图位置确定模块1108执行步骤S208。计算机设备可通过绘图轨迹确定模块1110执行步骤S210。计算机设备可通过展示模块1112执行步骤S212。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取实时采集的包括手势的图像;识别图像中手势的手势类型;确定手势类型所对应的操作类型;当操作类型为绘图类型时,确定手势在图像中的绘图位置;按照绘图位置确定手势对应的绘图轨迹;将绘图轨迹与图像叠加展示。
在一个实施例中,计算机程序被处理器执行识别图像中手势的手势类型的步骤时,使得处理器具体执行以下步骤:从图像中分割出手势区域;在手势区域中确定手势各骨架节点的位置;依据各骨架节点的位置,识别出手势的手势类型。
在一个实施例中,计算机程序被处理器执行从图像中分割出手势区域的步骤时,使得处理器具体执行以下步骤:按照图像的不同图像属性分别对图像提取特征图;将各特征图进行特征融合,得到图像的图像特征;通过手势区域检测模型,根据图像特征确定手势的包围框坐标;按照包围框坐标从图像中分割出手势区域。
在一个实施例中,计算机程序被处理器执行在手势区域中确定手势各骨架节点的位置的步骤时,使得处理器具体执行以下步骤:按照手势区域的不同图像属性分别对手势区域提取特征图;将各特征图进行特征融合,得到手势区域的图像特征;通过骨架节点识别模型,根据手势区域的图像特征,确定手势区域中手势的各骨架节点的坐标;根据各骨架节点的坐标确定手势区域中各骨架节点的位置。
在一个实施例中,计算机程序被处理器执行确定手势在图像中的绘图位置的步骤时,使得处理器具体执行以下步骤:确定手势中用于绘图的骨架节点;获取用于绘图的骨架节点在图像中的位置;按照位置确定手势在图像中的绘图位置。
在一个实施例中,计算机程序被处理器执行将绘图轨迹与图像叠加展示的步骤时,使得处理器具体执行以下步骤:在图像中确定绘图轨迹所经过的像素点;将图像中的像素点的像素值更新为预设像素值;展示已更新像素值的图像。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:当操作类型从绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;对已形成的绘图轨迹执行与绘图轨迹操作类型相对应的操作;根据操作的结果更新图像中展示的绘图轨迹。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:通过图像识别模型,识别绘图轨迹对应的图案类别;查找与图案类别对应的预设图像;将展示的绘图轨迹替换为预设图像。
在一个实施例中,计算机程序被处理器执行将展示的绘图轨迹替换为预设图像的步骤时,使得处理器具体执行以下步骤:当查找到的预设图像为多个时,展示查找到的多个预设图像;获取针对所展示预设图像的选择指令;用选择指令所选中的预设图像替换展示的绘图轨迹。
上述计算机设备,展示的绘图轨迹是基于获取的图像中手势的绘图位置确定的,可以实现“隔空”绘图的效果。通过对获取的图像中手势的手势类型进行识别,在识别出的手势类型所对应的操作类型为绘图类型时,就可以确定手势在图像中的绘图位置。由于获取的图像是实时采集的图像,因而,根据连续图像中手势的绘图位置就可以确定绘图轨迹,在展示该绘图轨迹后得到所绘制的图像。整个绘图过程无需用户通过输入装置进行操作,用户可在较大的空间范围内通过示出的手势进行绘图,提高了绘图的便利性。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取实时采集的包括手势的图像;识别图像中手势的手势类型;确定手势类型所对应的操作类型;当操作类型为绘图类型时,确定手势在图像中的绘图位置;按照绘图位置确定手势对应的绘图轨迹;将绘图轨迹与图像叠加展示。
在一个实施例中,计算机程序被处理器执行识别图像中手势的手势类型的步骤时,使得处理器具体执行以下步骤:从图像中分割出手势区域;在手势区域中确定手势各骨架节点的位置;依据各骨架节点的位置,识别出手势的手势类型。
在一个实施例中,计算机程序被处理器执行从图像中分割出手势区域的步骤时,使得处理器具体执行以下步骤:按照图像的不同图像属性分别对图像提取特征图;将各特征图进行特征融合,得到图像的图像特征;通过手势区域检测模型,根据图像特征确定手势的包围框坐标;按照包围框坐标从图像中分割出手势区域。
在一个实施例中,计算机程序被处理器执行在手势区域中确定手势各骨架节点的位置的步骤时,使得处理器具体执行以下步骤:按照手势区域的不同图像属性分别对手势区域提取特征图;将各特征图进行特征融合,得到手势区域的图像特征;通过骨架节点识别模型,根据手势区域的图像特征,确定手势区域中手势的各骨架节点的坐标;根据各骨架节点的坐标确定手势区域中各骨架节点的位置。
在一个实施例中,计算机程序被处理器执行确定手势在图像中的绘图位置的步骤时,使得处理器具体执行以下步骤:确定手势中用于绘图的骨架节点;获取用于绘图的骨架节点在图像中的位置;按照位置确定手势在图像中的绘图位置。
在一个实施例中,计算机程序被处理器执行将绘图轨迹与图像叠加展示的步骤时,使得处理器具体执行以下步骤:在图像中确定绘图轨迹所经过的像素点;将图像中的像素点的像素值更新为预设像素值;展示已更新像素值的图像。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:当操作类型从绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;对已形成的绘图轨迹执行与绘图轨迹操作类型相对应的操作;根据操作的结果更新图像中展示的绘图轨迹。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:通过图像识别模型,识别绘图轨迹对应的图案类别;查找与图案类别对应的预设图像;将展示的绘图轨迹替换为预设图像。
在一个实施例中,计算机程序被处理器执行将展示的绘图轨迹替换为预设图像的步骤时,使得处理器具体执行以下步骤:当查找到的预设图像为多个时,展示查找到的多个预设图像;获取针对所展示预设图像的选择指令;用选择指令所选中的预设图像替换展示的绘图轨迹。
上述计算机可读存储介质,展示的绘图轨迹是基于获取的图像中手势的绘图位置确定的,可以实现“隔空”绘图的效果。通过对获取的图像中手势的手势类型进行识别,在识别出的手势类型所对应的操作类型为绘图类型时,就可以确定手势在图像中的绘图位置。由于获取的图像是实时采集的图像,因而,根据连续图像中手势的绘图位置就可以确定绘图轨迹,在展示该绘图轨迹后得到所绘制的图像。整个绘图过程无需用户通过输入装置进行操作,用户可在较大的空间范围内通过示出的手势进行绘图,提高了绘图的便利性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (18)
1.一种基于手势的绘图方法,包括:
获取实时采集游戏或视频通话过程中的包括手势的图像;
识别所述图像中手势的手势类型;
确定所述手势类型所对应的操作类型;
当所述操作类型为绘图类型时,确定所述手势中用于绘图的骨架节点在所述图像中的绘图位置;
按照连续采集的图像中的多个所述绘图位置,确定所述手势对应的绘图轨迹;
当判断出所述连续采集的图像中的多个所述绘图位置计算失误时,确定所述多个所述绘图位置中位置不一致的绘图位置为错误点,并
针对所述错误点进行以下纠错处理:基于多个所述绘图位置中除所述错误点以外的所述绘图位置生成弧线,以替换所述手势对应的绘图轨迹中对应多个所述绘图位置的线段;
当根据识别到的所述手势类型确定所述操作类型为绘图轨迹部分擦除动作时,根据所述手势在所述图像中的操作位置,对所述操作位置处的所述绘图轨迹进行部分擦除;
将更新后的绘图轨迹展示在实时采集的图像中;
通过图像识别模型,识别所述更新后的绘图轨迹对应的图案类别;
查找与所述图案类别对应的预设图像;
将展示的所述更新后的绘图轨迹替换为所述预设图像后,将所述预设图像展示在实时采集的图像中。
2.根据权利要求1所述的方法,所述识别所述图像中手势的手势类型包括:
从所述图像中分割出手势区域;
在所述手势区域中确定所述手势各骨架节点的位置;
依据各骨架节点的位置,识别出所述手势的手势类型。
3.根据权利要求2所述的方法,其特征在于,所述从所述图像中分割出手势区域包括:
按照所述图像的不同图像属性分别对所述图像提取特征图;
将各所述特征图进行特征融合,得到所述图像的图像特征;
通过手势区域检测模型,根据所述图像特征确定所述手势的包围框坐标;
按照所述包围框坐标从所述图像中分割出手势区域。
4.根据权利要求2所述的方法,其特征在于,所述在所述手势区域中确定所述手势各骨架节点的位置包括:
按照所述手势区域的不同图像属性分别对所述手势区域提取特征图;
将各所述特征图进行特征融合,得到所述手势区域的图像特征;
通过骨架节点识别模型,根据所述手势区域的图像特征,确定所述手势区域中手势的各骨架节点的坐标;
根据各骨架节点的坐标确定所述手势区域中各骨架节点的位置。
5.根据权利要求1所述的方法,其特征在于,所述确定所述手势中用于绘图的骨架节点在所述图像中的绘图位置包括:
确定所述手势中用于绘图的骨架节点;
获取所述用于绘图的骨架节点在所述图像中的位置;
按照所述位置确定所述手势在所述图像中的绘图位置。
6.根据权利要求1所述的方法,其特征在于,所述将更新后的绘图轨迹展示在实时采集的图像中包括:
在所述图像中确定所述更新后的绘图轨迹所经过的像素点;
将所述图像中的所述像素点的像素值更新为预设像素值;
展示已更新像素值的所述图像。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述方法还包括:
当所述操作类型从所述绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;
对所述已形成的绘图轨迹执行与所述绘图轨迹操作类型相对应的操作;
根据所述操作的结果更新所述图像中展示的绘图轨迹。
8.根据权利要求1至6任一项所述的方法,其特征在于,所述将展示的所述更新后的绘图轨迹替换为所述预设图像包括:
当查找到的预设图像为多个时,展示查找到的多个预设图像;
获取针对所展示预设图像的选择指令;
用所述选择指令所选中的预设图像替换展示的所述更新后的绘图轨迹。
9.一种基于手势的绘图装置,其特征在于,所述装置包括:
获取模块,用于获取实时采集游戏或视频通话过程中的包括手势的图像;
识别模块,用于识别所述图像中手势的手势类型;
操作类型确定模块,用于确定所述手势类型所对应的操作类型;
绘图位置确定模块,用于当所述操作类型为绘图类型时,确定所述手势中用于绘图的骨架节点在所述图像中的绘图位置;
绘图轨迹确定模块,用于按照连续采集的图像中的多个所述绘图位置,确定所述手势对应的绘图轨迹;
当判断出所述连续采集的图像中的多个所述绘图位置计算失误时,确定所述多个所述绘图位置中位置不一致的绘图位置为错误点,并
针对所述错误点进行以下纠错处理:基于多个所述绘图位置中除所述错误点以外的所述绘图位置生成弧线,以替换所述手势对应的绘图轨迹中对应多个所述绘图位置的线段;
当根据识别到的所述手势类型确定所述操作类型为绘图轨迹部分擦除动作时,根据所述手势在所述图像中的操作位置,对所述操作位置处的所述绘图轨迹进行部分擦除;
展示模块,用于将更新后的绘图轨迹展示在实时采集的图像中;
图案类别识别模块,用于通过图像识别模型,识别所述更新后的绘图轨迹对应的图案类别;
发送模块,用于查找与所述图案类别对应的预设图像;将展示的所述更新后的绘图轨迹替换为所述预设图像后,将所述预设图像的图像展示在实时采集的图像中。
10.根据权利要求9所述的装置,其特征在于,所述识别模块还用于从所述图像中分割出手势区域;在所述手势区域中确定所述手势各骨架节点的位置;依据各骨架节点的位置,识别出所述手势的手势类型。
11.根据权利要求10所述的装置,其特征在于,所述识别模块还用于按照所述图像的不同图像属性分别对所述图像提取特征图;将各所述特征图进行特征融合,得到所述图像的图像特征;通过手势区域检测模型,根据所述图像特征确定所述手势的包围框坐标;按照所述包围框坐标从所述图像中分割出手势区域。
12.根据权利要求10所述的装置,其特征在于,所述识别模块还用于按照所述手势区域的不同图像属性分别对所述手势区域提取特征图;将各所述特征图进行特征融合,得到所述手势区域的图像特征;通过骨架节点识别模型,根据所述手势区域的图像特征,确定所述手势区域中手势的各骨架节点的坐标;根据各骨架节点的坐标确定所述手势区域中各骨架节点的位置。
13.根据权利要求9所述的装置,其特征在于,所述绘图位置确定模块还用于确定所述手势中用于绘图的骨架节点;获取所述用于绘图的骨架节点在所述图像中的位置;按照所述位置确定所述手势在所述图像中的绘图位置。
14.根据权利要求9所述的装置,其特征在于,所述展示模块还用于在所述图像中确定所述更新后的绘图轨迹所经过的像素点;将所述图像中的所述像素点的像素值更新为预设像素值;展示已更新像素值的所述图像。
15.根据权利要求9至14任一项所述的装置,其特征在于,所述装置还包括绘图轨迹更新模块;所述绘图轨迹更新模块用于当所述操作类型从所述绘图类型变更为绘图轨迹操作类型时,确定发生变更时已形成的绘图轨迹;对所述已形成的绘图轨迹执行与所述绘图轨迹操作类型相对应的操作;根据所述操作的结果更新所述图像中展示的绘图轨迹。
16.根据权利要求9至14任一项所述的装置,其特征在于,所述发送模块还用于当查找到的预设图像为多个时,展示查找到的多个预设图像;获取针对所展示预设图像的选择指令;用所述选择指令所选中的预设图像替换展示的所述更新后的绘图轨迹。
17.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
18.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810487314.7A CN108932053B (zh) | 2018-05-21 | 2018-05-21 | 基于手势的绘图方法、装置、存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810487314.7A CN108932053B (zh) | 2018-05-21 | 2018-05-21 | 基于手势的绘图方法、装置、存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108932053A CN108932053A (zh) | 2018-12-04 |
CN108932053B true CN108932053B (zh) | 2021-06-11 |
Family
ID=64449266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810487314.7A Active CN108932053B (zh) | 2018-05-21 | 2018-05-21 | 基于手势的绘图方法、装置、存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108932053B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109535A (zh) * | 2019-03-18 | 2019-08-09 | 国网浙江省电力有限公司信息通信分公司 | 增强现实生成方法及装置 |
CN110110142A (zh) * | 2019-04-19 | 2019-08-09 | 北京大米科技有限公司 | 视频处理方法、装置、电子设备及介质 |
CN110442238A (zh) * | 2019-07-31 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 一种确定动态效果的方法及装置 |
CN110750160B (zh) * | 2019-10-24 | 2023-08-18 | 京东方科技集团股份有限公司 | 基于手势的绘画屏绘画方法、装置、绘画屏和存储介质 |
CN111124117B (zh) * | 2019-12-19 | 2024-03-29 | 芋头科技(杭州)有限公司 | 基于手绘草图的增强现实交互方法和设备 |
CN111103982A (zh) * | 2019-12-26 | 2020-05-05 | 上海纸上绝知智能科技有限公司 | 基于体感交互的数据处理方法以及装置、系统 |
CN113709389A (zh) * | 2020-05-21 | 2021-11-26 | 北京达佳互联信息技术有限公司 | 一种视频渲染方法、装置、电子设备及存储介质 |
CN112565844B (zh) * | 2020-12-04 | 2023-05-12 | 维沃移动通信有限公司 | 视频通信方法、装置和电子设备 |
CN112684895A (zh) * | 2020-12-31 | 2021-04-20 | 安徽鸿程光电有限公司 | 标记方法、装置、设备及计算机存储介质 |
CN112925414A (zh) * | 2021-02-07 | 2021-06-08 | 深圳创维-Rgb电子有限公司 | 显示屏手势绘画方法、装置及计算机可读存储介质 |
CN113703577A (zh) * | 2021-08-27 | 2021-11-26 | 北京市商汤科技开发有限公司 | 一种绘图方法、装置、计算机设备及存储介质 |
WO2024065345A1 (zh) * | 2022-09-29 | 2024-04-04 | 京东方科技集团股份有限公司 | 隔空手势编辑方法、装置、显示系统及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226708A (zh) * | 2013-04-07 | 2013-07-31 | 华南理工大学 | 一种基于Kinect的多模型融合视频人手分割方法 |
CN103577793A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 手势识别方法及装置 |
CN104361313A (zh) * | 2014-10-16 | 2015-02-18 | 辽宁石油化工大学 | 一种基于多核学习异构特征融合的手势识别方法 |
CN107168527A (zh) * | 2017-04-25 | 2017-09-15 | 华南理工大学 | 基于区域卷积神经网络的第一视角手势识别与交互方法 |
CN107357427A (zh) * | 2017-07-03 | 2017-11-17 | 南京江南博睿高新技术研究院有限公司 | 一种用于虚拟现实设备的手势识别控制方法 |
CN107578023A (zh) * | 2017-09-13 | 2018-01-12 | 华中师范大学 | 人机交互手势识别方法、装置及系统 |
CN107705278A (zh) * | 2017-09-11 | 2018-02-16 | 广东欧珀移动通信有限公司 | 动态效果的添加方法和终端设备 |
CN107728792A (zh) * | 2017-11-17 | 2018-02-23 | 浙江大学 | 一种基于手势识别的增强现实三维绘图系统及绘图方法 |
CN107831894A (zh) * | 2017-11-06 | 2018-03-23 | 浙江工业大学 | 一种适用于移动终端的隔空手势板书方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101404087B (zh) * | 2008-10-27 | 2012-03-28 | 浙江大学 | 一种基于网络搜索的快速电子绘画创作的方法 |
CN104299004B (zh) * | 2014-10-23 | 2018-05-01 | 浙江大学 | 一种基于多特征融合和指尖检测的手势识别方法 |
CN104902212B (zh) * | 2015-04-30 | 2019-05-10 | 努比亚技术有限公司 | 一种视频通信方法及装置 |
CN105187930B (zh) * | 2015-09-18 | 2019-09-06 | 广州酷狗计算机科技有限公司 | 基于视频直播的互动方法及装置 |
CN107340852A (zh) * | 2016-08-19 | 2017-11-10 | 北京市商汤科技开发有限公司 | 手势控制方法、装置和终端设备 |
-
2018
- 2018-05-21 CN CN201810487314.7A patent/CN108932053B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577793A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 手势识别方法及装置 |
CN103226708A (zh) * | 2013-04-07 | 2013-07-31 | 华南理工大学 | 一种基于Kinect的多模型融合视频人手分割方法 |
CN104361313A (zh) * | 2014-10-16 | 2015-02-18 | 辽宁石油化工大学 | 一种基于多核学习异构特征融合的手势识别方法 |
CN107168527A (zh) * | 2017-04-25 | 2017-09-15 | 华南理工大学 | 基于区域卷积神经网络的第一视角手势识别与交互方法 |
CN107357427A (zh) * | 2017-07-03 | 2017-11-17 | 南京江南博睿高新技术研究院有限公司 | 一种用于虚拟现实设备的手势识别控制方法 |
CN107705278A (zh) * | 2017-09-11 | 2018-02-16 | 广东欧珀移动通信有限公司 | 动态效果的添加方法和终端设备 |
CN107578023A (zh) * | 2017-09-13 | 2018-01-12 | 华中师范大学 | 人机交互手势识别方法、装置及系统 |
CN107831894A (zh) * | 2017-11-06 | 2018-03-23 | 浙江工业大学 | 一种适用于移动终端的隔空手势板书方法 |
CN107728792A (zh) * | 2017-11-17 | 2018-02-23 | 浙江大学 | 一种基于手势识别的增强现实三维绘图系统及绘图方法 |
Non-Patent Citations (1)
Title |
---|
基于多特征动态融合的图像分割研究;艾国红;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110915(第09期);32-43页,附图3.1和附图4.1 * |
Also Published As
Publication number | Publication date |
---|---|
CN108932053A (zh) | 2018-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108932053B (zh) | 基于手势的绘图方法、装置、存储介质和计算机设备 | |
CN108762505B (zh) | 基于手势的虚拟对象控制方法、装置、存储介质和设备 | |
US10565437B2 (en) | Image processing device and method for moving gesture recognition using difference images | |
CN107885430B (zh) | 一种音频播放方法、装置、存储介质及电子设备 | |
JP5381569B2 (ja) | ジェスチャ認識装置、ジェスチャ認識方法、およびジェスチャ認識プログラム | |
CN109040474B (zh) | 照片显示方法、装置、终端及存储介质 | |
US20140354540A1 (en) | Systems and methods for gesture recognition | |
JP5780142B2 (ja) | 画像処理装置、画像処理方法 | |
US11681409B2 (en) | Systems and methods for augmented or mixed reality writing | |
CN112764845B (zh) | 视频处理方法及装置、电子设备和计算机可读存储介质 | |
CN110865753B (zh) | 应用消息的通知方法及装置 | |
JP7082587B2 (ja) | 画像処理装置、画像処理方法及び画像処理システム | |
JP2021531589A (ja) | 目標対象の動作認識方法、装置及び電子機器 | |
WO2023071861A1 (zh) | 数据可视化展示方法、装置、计算机设备和存储介质 | |
CN111259907B (zh) | 内容识别方法、装置以及电子设备 | |
CN113129229A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN113727039B (zh) | 视频生成方法、装置、电子设备及存储介质 | |
CN109376618B (zh) | 图像处理方法、装置及电子设备 | |
CN111124111A (zh) | 一种处理方法、电子设备 | |
CN109766530B (zh) | 图表边框的生成方法、装置、存储介质和电子设备 | |
CN113313027A (zh) | 图像处理方法、装置、电子设备和存储介质 | |
CN113129227A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
JP5741660B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
CN113034649A (zh) | 一种汉字绘制展示方法、装置、电子设备及介质 | |
CN110597593A (zh) | 用户引导任务的处理方法、装置、计算机设备及存储介质 |
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 |