CN116009725A - 支持多终端触屏信息采集还原的系统、方法、设备、存储介质 - Google Patents
支持多终端触屏信息采集还原的系统、方法、设备、存储介质 Download PDFInfo
- Publication number
- CN116009725A CN116009725A CN202211737988.0A CN202211737988A CN116009725A CN 116009725 A CN116009725 A CN 116009725A CN 202211737988 A CN202211737988 A CN 202211737988A CN 116009725 A CN116009725 A CN 116009725A
- Authority
- CN
- China
- Prior art keywords
- point
- handwriting
- data
- points
- touch screen
- 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.)
- Pending
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开一种支持多终端触屏信息采集还原的方法,数据采集端在不同签署终端上采集触屏数据;数据处理层中笔迹数据转换模块对从不同签署终端获取的触屏数据进行预处理,将多终端笔迹数据转换为屏幕坐标系中的标准笔迹数据包,确定触屏数据的关键帧,采用补间动画算法生成笔迹点填补触屏数据邻近点位之间的空白处,确保没有断线,调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔迹表现平滑,获得的触屏数据转化成接近人自然手写习惯的线条;渲染层根据数据处理层获得的线条,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成电子签名。
Description
技术领域
本申请涉及电子信息处理技术领域,具体是一种支持多终端触屏信息采集还原技术。
背景技术
随着无纸化办公和教学的普及,用户已经能够方便地使用触摸屏来完成对文档的批注、标记等操作,具体地,用户可以在触摸屏上进行书写,终端可以将用户的触摸轨迹显示在屏幕上以得到用户的书写笔迹,该书写笔迹即可用于对文档的批注、标记等。终端在确定书写笔迹时,可以先在触摸屏中采集多个触摸点,再将该多个触摸点中的每两个相邻触摸点用直线进行连接,以得到每两个触摸点之间的线条,之后,终端可以绘制每两个相邻触摸点之间的线条,以得到触摸屏上的书写笔迹。然而,在该书写笔迹的确定过程中,由于每两个相邻触摸点间仅简单地以直线进行连接,因此,最后得到书写笔迹往往比较生硬,书写效果较差。
由于在浏览器中Javascript在文件操作方面受到不少限制,所以它无法满足直接在前端完成多终端笔记点位还原的需求。对于此问题常规采用的解决方案是访问服务端上所提供的服务,通过多个终端收集笔迹点位数据,将数据上传到服务器端,通过贝塞尔曲线算法进行笔迹数据处理,再通过Canvas进行点位还原即可完成笔迹还原。
公开号CN106527940B,名称“书写笔迹确定方法及装置”公开了一种书写笔迹确定方法及装置,属于触控技术领域。采集触摸屏中的多个触摸点;获取多个中点,各个中点为所述多个触摸点中每两个相邻触摸点之间的中点;将所述多个中点中每两个相邻中点之间的贝塞尔曲线分解为多个分解点;绘制所述多个分解点中每两个相邻分解点之间的线条,以得到所述触摸屏上的书写笔迹。该文献通过二阶贝塞尔曲线完成曲线绘制,仅有一个控制点,对曲线的平滑控制粒度较为粗糙,其次是对笔宽的控制直接依赖笔速控制,笔速快笔迹就细,笔速慢笔迹就粗,对比和真实场景的书写过程有出入。
发明内容
有鉴于此,基于本申请的一个方面,提出一种支持多终端触屏信息采集还原的系统,包括,采集端、数据处理层、渲染层,数据采集端,用于在不同签署终端上采集触屏数据;数据处理层,用于对从不同签署终端获取的触屏数据进行预处理,转换为屏幕坐标系中的标准笔迹数据包,确定触屏数据的关键帧,采用“补间动画”算法生成笔迹点填补触屏数据邻近点位之间的空白处,确保没有断线,调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔划表现平滑,获得的触屏数据转化成接近人自然手写习惯的线条;渲染层根据数据处理层获得的线条,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成电子签名。
进一步优选,数据采集端采集获取触屏数据字段相关值包括:当前轨迹点位在点位坐标系中x轴方向上的值x、y轴方向上的值y、当前点位的实时压感数据p、当前点位相对上一个点位采样间隔时间t、当前点位采样状态标记s;根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框位置坐标界定画布在数据采集终端中的位置;根据点位在数据采集终端的点位坐标界定画布在签署终端中的位置,采集端采样设备中相对左上角原点,且点位坐标范围在[0,0]和[ScreenWidth,ScreenHeight]矩形范围之内。
进一步优选,采样设备内置采集的点位坐标系坐标原点PointMin、点位坐标系最大范围PointMax、矩形框承受的最大压力值Pmax、最小压力值Pmin,所有的点位数据Points满足格式[{x:12,y:22,p:0.5,t:16,s:0},…]。
进一步优选,根据矩形框点位坐标位置确定触控屏签字笔迹回显范围,屏幕左上角作为screen坐标系坐标原点,根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框四个顶点点位所连接成矩形作为画布的范围,调用公式:
RatioX=xMax/ScreenWidth
RatioY=yMax/ScreenHeight
x=P(x)/RatioX-Ax
y=P(y)/RatioY-Ay
将点位坐标系中的笔触点坐标位置换算到屏幕坐标中在画布区域的笔迹点位坐标系,根据公式:p=P(p)/pMax,计算画布区域当前坐标点的压力,获得标准还原笔迹数据。
进一步优选,采用节流阀对单位时间Throttle内获取的部分点位进行清洗,保留有用的点位,具体为:遍历所有转换后的点位数据,如果当前点位P的s属性等于0或者等于2,把当前点位P加入待处理的队列,同时把采样间隔时间累加值PointTime设置为0;如果当前点位P的s属性等于1,并且PointTime大于或者等于Throttle,把当前点位P加入待处理队列,同时设置新的时间间隔累加值为上一时间间隔累加值减去单位时间Throttle。
进一步优选,补间动画算法根据所有邻近的点位之间空白处的距离,生成该距离所需的点位填补到空白处,把两邻近的点位当作两个关键帧,在两个关键帧之间做插补帧,绘制一段线条,该线条的长度由两个关键帧坐标距离差确定,倾斜角度由一个关键帧坐标相对于另一个关键帧坐标位置确定,预设两个关键帧P(p),从第一个关键帧到第二个关键帧的过程中,基于从大到小或者从小到大递减或递增确定插补帧的压力值变化,根据预设笔划粗细值Thickness,调用公式:Thickness*P(p)确定该线条的粗细;根据贝塞尔曲线算法生成的点位作为插补帧与原始采集点位关键帧组成的线条作为笔划轨迹,设置线条起点的关键帧状态为0,线条上的点关键帧状态为1,线条终点的关键帧状态为2,由补间动画算法运算产生每个关键帧之间的插值,直到到达关键帧状态为2的关键帧,视为到达该线条的末端,结束该段线条的补帧插值,获得有起点、终端、无断点、粗细满足要求、且平滑的多段线条。
根据本申请另一方面,提出一种支持多终端触屏信息采集还原的方法,数据采集端在不同签署终端上采集触屏数据;数据处理层中笔迹数据转换模块对从不同签署终端获取的触屏数据进行预处理,将多终端笔迹数据转换为屏幕坐标系中的标准笔迹数据包,确定触屏数据的关键帧,采用补间动画算法生成笔迹点填补触屏数据邻近点位之间的空白处,确保没有断线,调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔迹表现平滑,获得的触屏数据转化成接近人自然手写习惯的线条;渲染层根据数据处理层获得的线条,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成电子签名。
进一步优选,数据采集端采集获取触屏数据字段相关值包括:当前轨迹点位在点位坐标系中x轴方向上的值x、y轴方向上的值y、当前点位的实时压感数据p、当前点位相对上一个点位采样间隔时间t、当前点位采样状态标记s;根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框位置坐标界定画布在数据采集终端中的位置;根据点位在数据采集终端的点位坐标界定画布在签署终端中的位置,采集端采样设备中相对左上角原点,且点位坐标范围在[0,0]和[ScreenWidth,ScreenHeight]矩形范围之内。
进一步优选,根据权利要求1所述的方法,其特征在于,根据矩形框点位坐标位置确定触控屏签字笔迹回显范围,屏幕左上角作为screen坐标系坐标原点,根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框四个顶点点位所连接成矩形作为画布的范围,调用公式:
RatioX=xMax/ScreenWidth
RatioY=yMax/ScreenHeight
x=P(x)/RatioX-Ax
y=P(y)/RatioY-Ay
将点位坐标系中的笔触点坐标位置换算到屏幕坐标中在画布区域的笔迹点位坐标系,根据公式:p=P(p)/pMax,计算画布区域当前坐标点的压力,获得标准还原笔迹数据。
进一步优选,补间动画算法根据所有邻近的点位之间空白处的距离,生成该距离所需的点位填补到空白处,把两邻近的点位当作两个关键帧,在两个关键帧之间做插补帧,绘制一段线条,该线条的长度由两个关键帧坐标距离差确定,倾斜角度由一个关键帧坐标相对于另一个关键帧坐标位置确定,预设两个关键帧P(p),从第一个关键帧到第二个关键帧的过程中,基于从大到小或者从小到大递减或递增确定插补帧的压力值变化,根据预设笔划粗细值Thickness,调用公式:Thickness*P(p)确定该线条的粗细;根据贝塞尔曲线算法生成的点位作为插补帧与原始采集点位关键帧组成的线条作为笔划轨迹,设置线条起点的关键帧状态为0,线条上的点关键帧状态为1,线条终点的关键帧状态为2,由补间动画算法运算产生每个关键帧之间的插值,直到到达关键帧状态为2的关键帧,视为到达该线条的末端,结束该段线条的补帧插值,获得有起点、终端、无断点、粗细满足要求、且平滑的多段线条。
进一步优选,采用节流阀对单位时间Throttle内获取的部分点位进行清洗,保留有用的点位,具体为:遍历所有转换后的点位数据,如果当前点位P的s属性等于0或者等于2,把当前点位P加入待处理的队列,同时把采样间隔时间累加值PointTime设置为0;如果当前点位P的s属性等于1,并且PointTime大于或者等于Throttle,把当前点位P加入待处理队列,同时设置新的时间间隔累加值为上一时间间隔累加值减去单位时间Throttle。
进一步优选,定义一个存放四个点位信息的点位信息变量Points,用于存放四个相邻的触控点(p0,p1,p2,p3),作为贝塞尔曲线算法的支撑点;当前点位的s字段属性P(s)等于0时,当前点位作为笔迹的起点赋值给p0,当P(s)等于1时,把当前点位加入点位队头,上一个操作的时候保存过的数据向右移动一个位置,最后一个点位会被移除;当P(s)等于2时,结束当前笔迹的绘制;确定相邻触控点中P1和P2为笔迹的关键点,根据公式:
C1.x=P1.x-(M1.x-M2.x)*(L2/(L1+L2))
C1.y=P1.y-(M1.y-M2.y)*(L2/(L1+L2))
C2.x=P2.x-(M2.x-M3.x)*(L2/(L2+L3))
C2.y=P2.y-(M2.y-M3.y)*(L2/(L2+L3))
计算P1和P2之间贝塞尔曲线的控制点C1、C2坐标,其中,M1.x,M1.y,M2.x,M2.y,M3.x,M3.y,为相邻触控点的中点坐标,L1,L2,L3相邻触控点直线距离,根据关键点位坐标、控制点坐标,调用公式:
Px(t)=P1.x*((1-t)3+3*C1.x*(1-t)2*t+3*C2.x*(1-t)*t2+P2.x*t3
Py(t)=P1.y*(1-t)3+3*C1.y*(1-t)2*t+3*C2.y*(1-t)*t2+P2.y*t3
计算三阶贝塞尔曲线任意时刻t时该点位坐标值,根据关键点压力值,调用公式:
p=P1.p+(P2.p-P1.p)*t*t,计算时刻t时触控点压力值,其中P1.p为P1点的压力值,P2.p为P2点的压力值。
根据本申请的另一方面,提供一种电子设备,包括:处理器;以及存储程序的存储器,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据上面所述的支持多终端触屏信息采集还原的方法。
根据本申请的另一方面,提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据上面所述的支持多终端触屏信息采集还原的方法。
本申请采用三阶贝塞尔曲线来完成曲线控制,点位与点位之间需要两个控制点来控制曲线的绘制,提高了曲线平滑控制的粒度,表现的更加的平滑,针对笔宽问题,引入了笔压的概念,会根据笔迹绘制时产生的实时压力值来参与笔宽的绘制,笔压得越重,笔迹会表现的较宽,笔压小时,笔迹会表现的较细,而且引入笔迹点位间隔时间概念,精准还原用户笔迹绘制的实时笔迹绘制效果。统一了各个采集端采集笔迹点位时可能产生的数据格式不一致问题,以一个标准的角度对采集的点位完成笔迹回显的功能,支持多个采集设备点位还原,针对不同的采样设备能够实现笔迹还原,节约了成本。
附图说明
图1为本申请示例性实施例中的支持多终端电子签署笔迹数据还原系统原理框图示意;
图2为本申请示例性实施例中根据矩形框点位坐标位置确定签字笔迹回显范围示意图;
图3为本申请示例性实施例中利用贝塞尔曲线绘制笔迹补充点位流程示意图;
图4为能够用于实现本申请的实施例的示例性电子设备的结构框图。
具体实施方式
下面将参照附图更详细地描述本申请的实施例。虽然附图中显示了本申请的某些实施例,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施例仅用于示例性作用,并非用于限制本申请的保护范围。
应当理解,本申请的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本申请的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本申请中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本申请中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本申请实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
本发明统一了各个采集端采集笔迹点位时可能产生的数据格式不一致问题,以一个标准的角度对采集的点位完成笔迹回显的功能,具体来讲:
1、支持来自不同的采集设备点位数据,比如H5、PC、签字板等其他采集笔迹数据设备,以签字板举例:在专业的签字采集设备上,点位采集时点位坐标系数值会远超屏幕分辨率数值,在常规采集中,签字板的笔迹点位坐标值可达几万的数值,提供了非常精确的坐标数据,但是实际用户可见的屏幕分辨率只有1280*800,本系统内置转换模块,自动进行相应的坐标转换以达到正常渲染给用户看的坐标点位,精准还原用户采集时的笔迹效果。
2、支持绘制指定范围的笔迹数据,笔迹采集时,会记录整个采集设备所有相关的触摸事件数据,以支持精确还原用户的所有操作,但是实际系统使用时,绘制的区域可能仅仅局限在一个指定的范围内,超出区域的点位数据并不需要绘制。
如图1所示为本申请示例性实施例中的支持多终端电子签署笔迹数据还原系统原理框图,多终端笔迹采集系统包括,采集端、数据处理层、渲染层,其中,数据采集端采集包括同一签署人在不同签署设备终端(包括但不限于移动终端、电脑PC机端、各种签字版、及其他签署终端触屏)上签署的笔迹数据;数据处理层对从不同终端获取的笔迹数据进行预处理,转换为标准画布坐标系中的数据,采用“补间动画”算法生成笔迹点填补原始笔划邻近点位之间的空白处,确保没有断线;调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔划表现平滑,处理过滤后的笔迹数据转化成接近人自然手写习惯的线条,渲染层根据预处理获得的多个线段,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成签名。
数据处理层中包含笔迹数据转换模块,笔迹数据转换模块将多终端原笔迹数据转换为待绘制的笔迹数据包。根据待绘制的笔迹数据包完成笔迹还原操作。
数据采集端从不同签署终端采集笔迹数据,当手写笔在签署设备上签署产生移动轨迹,数据采集端采集获取笔迹数据字段相关值包括:
当前轨迹点位在点位坐标系中的x轴方向上的值x(单位px),当前轨迹点位在点位坐标系中的y轴方向上的值y(单位px),签署设备当前点位的实时压感数据p,压感数据为float类型,最小值0,当前点位相对上一个点位采样间隔时间t,采样时间间隔可为int类型,单位毫秒,当前点位采样状态标记s,int类型,可选值(0-落笔,1-行笔,2-抬笔)。点位坐标系来自采集设备,坐标原点默认是左上角(0,0),签署过程中产生的任何点位P(x)、P(y)都是当前点位到点位坐标系原点的X方向、Y方向上的距离。
见图2,根据采样终端设备的像素宽度ScreenWidth,采样终端设备的像素高度ScreenHeight确定的矩形框位置坐标界定画布在数据采集设备中的位置,其中,矩形框四个顶点的点位坐标标注为ABCD,其坐标位置A(Ax,Ay)B(Bx,By),C(Cx,Cy),D(Dx,Dy)。
其中ABCD4个顶点坐标是相对采样终端设备的左上角为原点,ABCD围成的矩形范围为用户采样时实际的可绘制笔迹的范围,超出该范围的笔迹应是不可见的,ABCD4个顶点的横坐标值的可选范围需满足[0,ScreenWidth],纵坐标值的可选范围需满足[0,ScreenHeight]。
根据点位在采样设备中相对左上角原点的点位坐标界定画布在签署终端设备中的位置,且点位坐标范围在[0,0]和[ScreenWidth,ScreenHeight]矩形范围之内。
获取采样设备内置采集的点位坐标系坐标原点PointMin(默认坐标为[0,0]),设备内置采集的点位坐标系最大范围PointMax,常见的H5、PC一般等于[ScreenWidth,ScreenHeight],但一些专业的采集工具可能提供更精确的信息,比如签字板可达到几万的值。矩形框承受的最大压力值Pmax、最小压力值Pmin(默认为0),所有的点位数据Points需满足:每一个点位数据包至少包含以下5个数据字段,x,y,p,t,s,其中,x为设备采集点位时返回的实时横坐标,y为设备采集点位时返回的实时纵坐标,p为设备采集点位时返回的实时压力值,t为设备采集点位时返回的距离上一次点位采集事件的时间间隔单位毫秒,s为设备采集点位时的不同行为,int类型,可选值(0-落笔,1-行笔,2-抬笔)。
图2所示为本社情实施例提供的一种用于确定触控屏签字笔迹回显范围示意图,其中,参数包括:
ScreenWidth:笔迹采集终端设备分辨率像素宽度,ScreenHeight:笔迹采集终端设备分辨率像素高度,坐标原点:笔迹采集终端设备左上角(0,0);
Screen坐标系:由笔迹采集终端设备左上角为坐标原点,由[ScreenWidth,ScreenHeight]为最大点位,由[0,0],[0,ScreenHeight],[ScreenWidth,0],[ScreenWidth,ScreenHeight]4个顶点合围成的矩形范围内的所以点均属于该坐标系的点。
Ax:顶点A距离坐标原点的X轴方向上的距离,Ay:顶点A距离坐标原点的Y轴方向上的距离,Bx:顶点B距离坐标原点的X轴方向上的距离,By:顶点B距离坐标原点的Y轴方向上的距离,Cx:顶点C距离坐标原点的X轴方向上的距离,Cy:顶点C距离坐标原点的Y轴方向上的距离,Dx:顶点D距离坐标原点的X轴方向上的距离,Dy:顶点D距离坐标原点的Y轴方向上的距离,CanvasWidth:笔迹采集终端实际绘制区域的像素宽度,可由顶点坐标Bx-Ax获得,CanvasHeight:笔迹采集终端实际绘制区域的像素高度,可由顶点坐标Dy-Ay获得。
根据矩形框ABCD 4个坐标点位可确定签字笔迹回显的范围,相对于屏幕screen坐标系的位置分别设置如下:
屏幕左上角作为screen坐标系坐标原点,4个顶点的点位坐标为左上角A(Ax,Ay)、右上角B(Bx,By)、右下角C(Cx,Xy)、左下角D(Dx,Dy),四个点位所连接成矩形作为画布的范围,即电子签名实际笔迹绘制时的可视范围,该画布是相对于以屏幕screen左上角为坐标原点的坐标系而言,超出画布区域范围的点位应该是不可见的。
其中ABCD4个顶点坐标由采集时的用户可绘制的区域决定,在采集笔迹点位时,假定可以捕获点位信息的设备范围是在ScreenWidth和ScreenHeight范围之间的矩形区域,但是用户实际可绘制的区域是ABCD4个顶点围成的矩形范围,超出ABCD矩形范围之外的点位不参与实际笔迹绘制。
需要说明的是,ABCD的顶点坐标是由实际采集端根据场景确定的。
对于来自不同签名触控终端的笔迹数据,实际的点位坐标系会比较大,坐标系中的点位坐标位置远远大于画布的范围,比如输入的点位信息的PointMax分别是21691与13563,P(x,y)分别是12300与11000,远远大于画布区域的位置范围,这样会必然导致无法正常还原笔迹数据。因此,需要将实际点位坐标系中的坐标位置换算到屏幕坐标系,在进行笔迹还原时,笔迹数据包按标准还原笔迹数据。
其中,根据如下公式将点位坐标换算成在画布区域范围内的坐标,得到转换后的点位坐标:
RatioX=xMax/ScreenWidth
RatioY=yMax/ScreenHeight
x=P(x)/RatioX-Ax
y=P(y)/RatioY-Ay
其中,RatioX为X方向上的最大点位和屏幕分辨率的宽度的比值系数,xMax为采集设备可采集点位坐标最大X值,ScreenWidth为当前采集设备屏幕分辨率的宽度,RatioY为Y方向上的最大点位值和屏幕分辨率的宽度的比值系数,yMax为采集设备可采集点位坐标最大Y值,ScreenHeight为当前采集设备屏幕分辨率的高度,P(x)为点位在点位坐标系中的x值,P(y)为点位在点位坐标系中的y值,Ax为坐标点A的横坐标x值,Ay为坐标点A的纵坐标y值,x为换算后的待渲染到画布中的横坐标值,y为换算后待渲染到画布中的纵坐标值。
将不同触控设备实际坐标点位置换算为屏幕screen坐标系中在画布区域的笔迹点位坐标。
将采样点位压力值换算成标准的0-1范围内的压力值,根据公式:
p=P(p)/pMax
计算换算后的点位压力值p,压力值范围为0-1,其中,P(p)为参与换算点位的实时压力值,pMax为采集设备可以感知的最大压力值。
点位坐标系中的点位经过换算处理,转化成以画布Canvas的左上角为原点(即顶点A为原点)的坐标点位,然后进入笔迹还原的绘制工作。
渲染笔迹数据之前,对笔迹数据进行预处理。
具体的,获取邻近的点位P(n)和P(n+1)笔迹数据,笔迹数据包括:坐标值,采样时间间隔,压力值,当前点位采样状态标记:P(n)({x,y,t,x,s})与P(n+1)({.x,y,t,x,s})、点位的采样间隔时间累加值PointTime。采样间隔时间由系统触发触控屏事件决定,本发明针对不同采样设备提供一个统一的标准。其中P(n)为换算后的任意一个点,P(n+1)为P(n)相邻的下一个点位,且满足n大于等于1小于等于换算后所有点位数减1。
对获取的点位数据进行预处理包括:
清洗点位,本申请示例性实施例采用节流阀对单位时间(Throttle)内获取的部分点位进行清洗,保留有用的点位。具体可为:
遍历所有转换后的点位数据,每遍历一次就取出当前点位P;
判断当前点位P的s属性是否等于0或者等于2,如果满足条件就把当前点位P加入待处理的队列,同时把采样间隔时间累加值PointTime设置为0;
判断当前点位P的s属性是否等于1(该状态为行笔书写状态)并且PointTime大于或者等于Throttle,满足该条件就把当前点位P加入待处理队列,同时设置新的时间间隔累加值:
PointTime’=PointTime–Throttle;
获取加入待处理队列的所有点位即为清洗后的点位数据。
当点位P的s属性满足P(s)==0表示落笔,或者P(s)==2表示抬笔,就把当前点位P加入处理的队列,同时把PointTime设置为0;
P(s)==1,且PointTime>=Throttle,该点位就加入处理的队列,同时把新的采样间隔时间累加值重新设置为上一采样累加值减去采样频率。
其中,Throttle为采样频率,Throttle可以根据实际应用需求进行预先设置,针对点位中s等于1的时候,单位时间内仅保留一个点位数据,例如,Throttle设置为20ms,则清洗点位s字段等于1的点位中,相邻点位t值不超过20ms时丢掉改该点位提升渲染性能。
本实施例采样补间动画算法,经过处理所过滤出的邻近点位之间都会空出一段距离,采用“补间动画”算法结合贝塞尔曲线算法,把处理过滤之后的笔迹数据转化成接近人自然手写习惯的线条。
补间动画算法根据所有邻近的点位之间空白处的距离,把该距离所需的笔迹点生成出来并填补到该空白处,确保不会发生断线的现象。贝塞尔曲线算法对补间动画算法所生成的笔迹点的位置做出稍微的调整,调整后有可能出现一定的空当,甚至有可能断线的问题。据此生成新的笔迹点位填补到空当处,从而由根据贝塞尔曲线算法生成的点位(插补帧)与被过滤出的原始点位(关键帧)组成的线条表现得平滑。
把两邻近的点位当作两个关键帧,在两个关键帧之间做插补帧,绘制一段线条。该线条的长度由两个关键帧的坐标的距离差确定,倾斜角度由一个关键帧的坐标相对于另一个关键帧的坐标确定;
预设两个关键帧P(n),从第一个关键帧P(n)到第二个相邻关键帧P(n+1)的过程中,基于从大到小或者从小到大的补间动画算法上递减或递增确定插补帧的压力值变化,Thickness是确定线条粗细变化的关键因素,根据预设笔划粗细值Thickness,采用预设笔划粗细值与当前贝塞尔曲线中的任意一个点位的压力值相乘确定线条中当前点的粗细。即根据公式:Thickness*P(t)确定该线条的粗细。其中Thickness表示预设的默认笔划粗细值,P(t)为当前贝塞尔曲线中的任意一个点位的压力值。其中,默认笔划粗细值可以根据实际应用需求进行预先设置。
调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧的表现平滑程度。
每个关键帧都有自己的状态P(s),以关键帧状态作为判断是否是同一条线段的依据,设置线段起点的关键帧状态P(s)为0,线段上的点关键帧状态P(s)为1,线段终点的关键帧状态P(s)为2,比如第一个关键帧P(s)是0,表示线条的起点,第二个关键帧P(s)是1,表示线条的延伸,第三个关键帧P(s)是2,表示线条的终点。一段非常复杂的线条是由很多个关键帧组成的,由补间动画算法产生每个关键帧之间的插值,直到到达P(s)为2的关键帧,视为到达线条的末端,结束补间动画算法。
数据处理层经过预处理后获得起点、终端、无断点、粗细满足要求、且平滑的多条线段,将该多条线段数据输出到渲染层,渲染层以用户可见的画布为载体把该数据表现出来。
如图3所示为本实施例中的基于三阶贝塞尔曲线算法笔迹绘制示意图。
本实施例采用三阶贝塞尔曲线算法进行笔迹绘制。鉴于三阶贝塞尔曲线算法的需要,定义一个存放四个点位信息的点位信息变量Points,用于存放四个相邻的触控点(p0,p1,p2,p3),作为贝塞尔曲线算法的支撑点。接收点位信息,并处理。
点位数据可能包含以下三种情况:当前点位的s字段属性P(s)等于0时,当前点位作为笔迹的起点加入运算,把当前点位赋值给p0,因当前没有这么多触控点,故不能满足三阶贝塞尔曲线算法的条件,只有把p0赋值给Points的所有元素,此时Points=[p0,p0,p0,p0]。
P(s)等于1时,先把当前点位加入Points的队头,上一个操作的时候保存过的数据都会向右移动一个位置,最后一个点位会被移除,开始进入笔迹绘制流程。
当P(s)等于2时,结束当前笔迹的绘制。
笔迹绘制流程包括:根据接收的触控点位信息计算控制点,
点位信息变量Points内的4个点位分别为P0,P1,P2,P3,提取P1和P2为笔迹的关键点,通过计算P1和P2之间贝塞尔曲线的控制点C1、C2来完成曲线绘制。
本实施例控制点采用如下方法获取:
根据提取点位P0,P1,P2,P3的坐标位置,调用公式:
M1.x=(P0.x+P1.x)/2
M1.y=(P0.y+P1.y)/2
M2.x=(P1.x+P2.x)/2
M2.y=(P1.y+P2.y)/2
M3.x=(P2.x+P3.x)/2
M3.y=(P2.y+P3.y)/2
计算三个中点M1、M2、M3的坐标。
根据参与绘制的触摸点坐标,计算两个触摸点之间的直线距离,如参与绘制的触摸点为P1、P2两点,根据公式:计算两点间的直线距离。
其中,P0-P1的直线距离L1、P1-P2的直线距离L2、P2-P3的直线距离L3。根据公式:
计算4个点位之间的直线距离L1、L2、L3。
根据前面获得的点位坐标、中点坐标,直线距离调用公式:
C1.x=P1.x-(M1.x-M2.x)*(L2/(L1+L2))
C1.y=P1.y-(M1.y-M2.y)*(L2/(L1+L2))
C2.x=P2.x-(M2.x-M3.x)*(L2/(L2+L3))
C2.y=P2.y-(M2.y-M3.y)*(L2/(L2+L3))
计算控制点坐标。
把距离的整数当成步长,按三阶贝塞尔曲线方程生成曲线上的点。
根据点位坐标、控制点坐标,计算三阶贝塞尔曲线任意时刻t时该点位坐标值,即:
Px(t)=P1,x*(1-t)3+3*C1,x*(1-t)2*t+3*C2.x*(1-t)*t2+P2.x*t3
Py(t)=P1,y*(1-t)3+3*C1.y*(1-t)2*t+3*C2.y*(1-t)*t2+P2.y*t3
其中,t为外部传入变量,t的值范围为[0,1]。
初始化t=0,最大值为1,每次循环递增1/L,循环L次,调用上述公式即可得到在点P1和点P2之间的贝塞尔曲线上的点位。
同时还需实时计算贝塞尔曲线上点位的压力值p,根据公式:
p=P1.p+(P2.p-P1.p)*t*t,计算时刻t时的压力值,其中P1.p为P1点的压力值,P2.p为P2点的压力值。
绘制点到画布上,呈现最终的笔迹还原效果。以变量R为绘制笔迹的圆点直径在画布上绘制圆点,L个圆点完成后链接起来就可以流畅的显示P1到P2之间的贝塞尔曲线,采用绘制圆点的方式可以更好的控制笔宽问题,在一个贝塞尔曲线里边也能很好的按压力值调整笔迹宽度,其中,可根据公式:R=Thickness*P(p)计算绘制圆点的半径。
本申请示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。所述存储器存储有能够被所述至少一个处理器执行的计算机程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本申请实施例的方法。
本申请示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本申请实施例的方法。
本申请示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本申请实施例的方法。
参考图3,现将描述可以作为本申请的服务器或客户端的电子设备300的结构框图,其是可以应用于本申请的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图3所示,电子设备300包括计算单元301,其可以根据存储在只读存储器(ROM)302中的计算机程序或者从存储单元308加载到随机访问存储器(RAM)303中的计算机程序,来执行各种适当的动作和处理。在RAM 303中,还可存储设备300操作所需的各种程序和数据。计算单元301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
电子设备300中的多个部件连接至I/O接口305,包括:输入单元306、输出单元307、存储单元308以及通信单元309。输入单元306可以是能向电子设备300输入信息的任何类型的设备,输入单元306可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元307可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元308可以包括但不限于磁盘、光盘。通信单元309允许电子设备300通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元301可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元301的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元301执行上文所描述的各个方法和处理。例如,在一些实施例中,根据签名笔画的原始轨迹重绘出其肌肉运动轨迹的重构与分解,以及其对数速度曲线的分解等可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元308。在一些实施例中,计算机程序的部分或者全部可以经由ROM 302和/或通信单元309而被载入和/或安装到电子设备300上。在一些实施例中,计算单元301可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行签名笔迹动态获取实现方法。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
如本申请使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
Claims (12)
1.一种支持多终端触屏信息采集还原的系统,其特征在于,包括,采集端、数据处理层、渲染层,数据采集端,用于在不同签署终端上采集触屏数据;数据处理层,用于对从不同签署终端获取的触屏数据进行预处理,转换为屏幕坐标系中的标准笔迹数据包,确定触屏数据的关键帧,采用“补间动画”算法生成笔迹点填补触屏数据邻近点位之间的空白处,确保没有断线,调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔划表现平滑,获得的触屏数据转化成接近人自然手写习惯的线条;渲染层根据数据处理层获得的线条,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成电子签名。
2.根据权利要求1所述的系统,其特征在于,数据采集端采集获取触屏数据字段相关值包括:当前轨迹点位在点位坐标系中x轴方向上的值x、y轴方向上的值y、当前点位的实时压感数据p、当前点位相对上一个点位采样间隔时间t、当前点位采样状态标记s;根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框位置坐标界定画布在数据采集终端中的位置;根据点位在数据采集终端的点位坐标界定画布在签署终端中的位置,采集端采样设备中相对左上角原点,且点位坐标范围在[0,0]和[ScreenWidth,ScreenHeight]矩形范围之内。
3.根据权利要求1或2所述的系统,其特征在于,补间动画算法根据所有邻近的点位之间空白处的距离,生成该距离所需的点位填补到空白处,把两邻近的点位当作两个关键帧,在两个关键帧之间做插补帧,绘制一段线条,该线条的长度由两个关键帧坐标距离差确定,倾斜角度由一个关键帧坐标相对于另一个关键帧坐标位置确定,预设两个关键帧P(p),基于从大到小或者从小到大递减或递增确定插补帧的压力值变化,根据预设笔划粗细值Thickness,调用公式:Thickness*P(p)确定该线条的粗细;根据贝塞尔曲线算法生成的点位作为插补帧与原始采集点位关键帧组成的线条作为笔划轨迹,由补间动画算法运算产生每个关键帧之间的插值,直到到达线条的末端,结束该段线条的补帧插值,获得有起点、终端、无断点、粗细满足要求、且平滑的多段线条。
4.根据权利要求1或2所述的系统,其特征在于,根据矩形框点位坐标位置确定触控屏签字笔迹回显范围,屏幕左上角作为screen坐标系坐标原点,根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框四个顶点点位所连接成矩形作为画布的范围,调用公式:
RatioX=xMax/ScreenWidth
RatioY=yMax/ScreenHeight
x=P(x)/RatioX-Ax
y=P(y)/RatioY-Ay
将点位坐标系中的笔触点坐标位置换算到屏幕坐标中在画布区域的笔迹点位坐标系,根据公式:p=P(p)/pMax,计算画布区域当前坐标点的压力,获得标准还原笔迹数据。
5.一种支持多终端触屏信息采集还原的方法,其特征在于,数据采集端在不同签署终端上采集触屏数据;数据处理层中笔迹数据转换模块对从不同签署终端获取的触屏数据进行预处理,将多终端笔迹数据转换为屏幕坐标系中的标准笔迹数据包,确定触屏数据的关键帧,采用补间动画算法生成笔迹点填补触屏数据邻近点位之间的空白处,确保没有断线,调用贝塞尔曲线算法确定插入两个关键帧之间的中间帧,使得笔迹表现平滑,获得的触屏数据转化成接近人自然手写习惯的线条;渲染层根据数据处理层获得的线条,根据当前点位在画布上的坐标、实时压感数据以及预定粗细确定笔迹点的大小,渲染笔迹轨迹,生成电子签名。
6.根据权利要求5所述的方法,其特征在于,数据采集端采集获取触屏数据字段相关值包括:当前轨迹点位在点位坐标系中x轴方向上的值x、y轴方向上的值y、当前点位的实时压感数据p、当前点位相对上一个点位采样间隔时间t、当前点位采样状态标记s;根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框位置坐标界定画布在数据采集终端中的位置;根据点位在数据采集终端的点位坐标界定画布在签署终端中的位置,采集端采样设备中相对左上角原点,且点位坐标范围在[0,0]和[ScreenWidth,ScreenHeight]矩形范围之内。
7.根据权利要求5或6所述的方法,其特征在于,补间动画算法根据所有邻近的点位之间空白处的距离,生成该距离所需的点位填补到空白处,把两邻近的点位当作两个关键帧,在两个关键帧之间做插补帧,绘制一段线条,该线条的长度由两个关键帧坐标距离差确定,倾斜角度由一个关键帧坐标相对于另一个关键帧坐标位置确定,预设两个关键帧P(p),基于从大到小或者从小到大递减或递增确定插补帧的压力值变化,根据预设笔划粗细值Thickness,调用公式:Thickness*P(p)确定该线条的粗细;根据贝塞尔曲线算法生成的点位作为插补帧与原始采集点位关键帧组成的线条作为笔划轨迹,由补间动画算法运算产生每个关键帧之间的插值,直到到达线条的末端,结束该段线条的补帧插值,获得有起点、终端、无断点、粗细满足要求、且平滑的多段线条。
8.根据权利要求7所述的方法,其特征在于,定义一个存放四个点位信息的点位信息变量Points,用于存放四个相邻的触控点(p0,p1,p2,p3),作为贝塞尔曲线算法的支撑点;当前点位的s字段属性P(s)等于0时,当前点位作为笔迹的起点赋值给p0,当P(s)等于1时,把当前点位加入点位队头,上一个操作的时候保存过的数据向右移动一个位置,最后一个点位会被移除;当P(s)等于2时,结束当前笔迹的绘制;确定相邻触控点中P1和P2为笔迹的关键点,根据公式:
C1.x=P1.x-(M1.x-M2.x)*(L2/(L1+L2))
C1.y=P1.y-(M1.y-M2.y)*(L2/(L1+L2))
C2.x=P2.x-(M2.x-M3.x)*(L2/(L2+L3))
C2.y=P2.y-(M2.y-M3.y)*(L2/(L2+L3))
计算P1和P2之间贝塞尔曲线的控制点C1、C2坐标,其中,M1.x,M1.y,M2.x,M2.y,M3.x,M3.y,为相邻触控点的中点坐标,L1,L2,L3相邻触控点直线距离,根据关键点位坐标、控制点坐标,调用公式:
Px(t)=P1.x*(1-t)3+3*C1.x*(1-t)2*t+3*C2.x*(1-t)*t2+P2.x*t3
Py(t)=P1.y*(1-t)3+3*C1.y*(1-t)2*t+3*C2.y*(1-t)*t2+P2.y*t3
计算三阶贝塞尔曲线任意时刻t时该点位坐标值,根据关键点压力值,调用公式:
p=P1.p+(P2.p-P1.p)*t*t,计算时刻t时触控点压力值,其中P1.p为P1点的压力值,P2.p为P2点的压力值。
9.根据权利要求5、6、8其中之一所述的方法,其特征在于,根据矩形框点位坐标位置确定触控屏签字笔迹回显范围,屏幕左上角作为screen坐标系坐标原点,根据采样终端设备的像素宽度ScreenWidth和像素高度ScreenHeight确定的矩形框四个顶点点位所连接成矩形作为画布的范围,调用公式:
RatioX=xMax/ScreenWidth
RatioY=yMax/ScreenHeight
x=P(x)/RatioX-Ax
y=P(y)/RatioY-Ay
将点位坐标系中的笔触点坐标位置换算到屏幕坐标中在画布区域的笔迹点位坐标系,根据公式:p=P(p)/pMax,计算画布区域当前坐标点的压力,获得标准还原笔迹数据。
10.根据权利要求5、6、8其中之一所述的方法,其特征在于,采用节流阀对单位时间Throttle内获取的部分点位进行清洗,保留有用的点位,具体为:遍历所有转换后的点位数据,如果当前点位P的s属性等于0或者等于2,把当前点位P加入待处理的队列,同时把采样间隔时间累加值PointTime设置为0;如果当前点位P的s属性等于1,并且PointTime大于或者等于Throttle,把当前点位P加入待处理队列,同时设置新的时间间隔累加值为上一时间间隔累加值减去单位时间Throttle。
11.一种电子设备,包括:处理器;以及存储程序的存储器,其特征在于,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求5-11中任一项所述的支持多终端触屏信息采集还原的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,其中,所述计算机指令用于使所述计算机执行根据权利要求5-11中任一项所述的支持多终端触屏信息采集还原的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211737988.0A CN116009725A (zh) | 2022-12-31 | 2022-12-31 | 支持多终端触屏信息采集还原的系统、方法、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211737988.0A CN116009725A (zh) | 2022-12-31 | 2022-12-31 | 支持多终端触屏信息采集还原的系统、方法、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116009725A true CN116009725A (zh) | 2023-04-25 |
Family
ID=86022677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211737988.0A Pending CN116009725A (zh) | 2022-12-31 | 2022-12-31 | 支持多终端触屏信息采集还原的系统、方法、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116009725A (zh) |
-
2022
- 2022-12-31 CN CN202211737988.0A patent/CN116009725A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110531875B (zh) | 书写笔锋的生成方法、终端设备及存储介质 | |
CN113643412B (zh) | 虚拟形象的生成方法、装置、电子设备及存储介质 | |
CN102937848B (zh) | 对手写笔迹进行编辑处理的方法及电子设备 | |
CN112819947A (zh) | 三维人脸的重建方法、装置、电子设备以及存储介质 | |
CN110795177B (zh) | 图形绘制方法及装置 | |
CN106598404A (zh) | 一种窗口显示方法及移动终端 | |
CN101763234B (zh) | 一种模拟各种屏幕分辨率的方法及其装置 | |
US9183428B2 (en) | Method and device for implementing original handwriting trace, and electronic device | |
CN107340964A (zh) | 一种视图的动画效果实现方法及装置 | |
WO2019192165A1 (zh) | 一种分层式图形实时绘制渲染方法与系统 | |
CN113033346B (zh) | 文本检测方法、装置和电子设备 | |
US20240282024A1 (en) | Training method, method of displaying translation, electronic device and storage medium | |
CN107203434A (zh) | 一种纹理共享的方法、装置以及计算机可读存储介质 | |
CN108280864B (zh) | 一种用于优化动态显示手写电子签名过程的方法 | |
CN110502205A (zh) | 图片显示边缘处理方法、装置、电子设备和可读存储介质 | |
CN110782504B (zh) | 模拟书写轨迹的方法、装置、计算机可读存储介质及设备 | |
CN109857322B (zh) | 一种基于安卓的画笔宽度控制方法和装置 | |
CN110765384A (zh) | 客户端的分辨率适配方法、存储介质及终端 | |
CN113110733A (zh) | 一种基于远程双工的虚拟现场交互方法及系统 | |
CN106201314A (zh) | 一种在触控屏上实现手写输入的显示方法及显示装置 | |
CN116009725A (zh) | 支持多终端触屏信息采集还原的系统、方法、设备、存储介质 | |
CN113496506A (zh) | 图像处理方法、装置、设备及存储介质 | |
US9223417B1 (en) | Method and apparatus for on-the-run processing of electronic ink using digital filtering and adaptive parameterization | |
CN114863008B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN110288552A (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 |