CN110045882B - 一种红外触摸数据的处理方法、系统及相关组件 - Google Patents

一种红外触摸数据的处理方法、系统及相关组件 Download PDF

Info

Publication number
CN110045882B
CN110045882B CN201910476896.3A CN201910476896A CN110045882B CN 110045882 B CN110045882 B CN 110045882B CN 201910476896 A CN201910476896 A CN 201910476896A CN 110045882 B CN110045882 B CN 110045882B
Authority
CN
China
Prior art keywords
point
line segment
color value
target
infrared touch
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
Application number
CN201910476896.3A
Other languages
English (en)
Other versions
CN110045882A (zh
Inventor
李振乐
张振普
肖伟华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen KTC Commercial Technology Co Ltd
Original Assignee
Shenzhen KTC Commercial Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen KTC Commercial Technology Co Ltd filed Critical Shenzhen KTC Commercial Technology Co Ltd
Priority to CN201910476896.3A priority Critical patent/CN110045882B/zh
Publication of CN110045882A publication Critical patent/CN110045882A/zh
Application granted granted Critical
Publication of CN110045882B publication Critical patent/CN110045882B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Generation (AREA)
  • Position Input By Displaying (AREA)

Abstract

本申请公开了一种红外触摸数据的处理方法,所述处理方法包括获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;确定所述目标线段上每一特征点的位置信息;根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。本申请能够提高书写线条的抗锯齿能力,优化电子白板的书写效果。本申请还公开了一种红外触摸数据的处理系统、一种计算机可读存储介质及一种电子设备,具有以上有益效果。

Description

一种红外触摸数据的处理方法、系统及相关组件
技术领域
本发明涉及智能触控交互领域,特别涉及一种红外触摸数据的处理方法、系统、一种计算机可读存储介质及一种电子设备。
背景技术
电子白板是通过电磁感应原理,结合计算机和投影仪,实现了无纸办公和教学。对于使用红外触摸框的电子白板,通常采用Android自带的画线算法去开发书写软件。
但是,相关技术中在屏幕绘制直线的时候,会存在锯齿现象。原因是屏幕上能够点亮的像素点是很有限的,而曲线上的点是无限的,而且大都不是整数,所以取整后会导致像素点与原来的线条产生偏离。
因此,如何提高书写线条的抗锯齿能力,优化电子白板的书写效果是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种红外触摸数据的处理方法、系统、一种计算机可读存储介质及一种电子设备,能够提高书写线条的抗锯齿能力,优化电子白板的书写效果。
为解决上述技术问题,本申请提供一种红外触摸数据的处理方法,该处理方法包括:
获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;
确定所述目标线段上每一特征点的位置信息;
根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。
可选的,所述获取红外触摸数据包括:
通过JNI的方式调用内存映射函数mmap获取显存数据;其中,所述显存数据包括所述红外触摸数据。
可选的,生成所述红外触摸数据对应的目标线段包括:
确定所述红外触摸数据对应的所有触摸点的生成顺序;
判断所述生成顺序相邻的两个触摸点之间的相邻距离是否小于第一预设值;
若是,则利用直线连接相邻距离小于所述预设值的触摸点;
若否,则利用贝塞尔方程计算插值点,并根据所述插值点生成所述目标线段。
可选的,所述利用贝塞尔方程计算插值点并根据所述插值点生成所述目标线段包括:
选择2个生成顺序相邻的目标触摸点,并利用二次贝塞尔方程计算所述目标触摸点对应的插值点;
判断所述插值点与2个所述目标触摸点的中点之间的距离是否小于第二预设值;
若是,则直接连接2个所述目标触摸点。
可选的,根据所述插值点生成所述目标线段包括:
基于Bresenham直线绘制算法根据所述插值点生成所述目标线段。
可选的,还包括:
将所述书写线条显示至所述红外触摸数据对应的书写区域。
可选的,根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值包括:
为每一所述特征点生成对应的目标矩形区域;其中,所述特征点为对应目标矩形区域的中心点,所述目标矩形区域的边长等于所述目标线段的线宽;
利用颜色值计算公式根据所述目标矩形区域内每一像素点的颜色值;
其中,所述颜色值公式为
Figure BDA0002082564800000021
C为颜色值,Vb为背景颜色值,Vp为所述目标线段对应的画笔颜色值,p为像素点到所述目标矩形区域的中心点的距离系数,
Figure BDA0002082564800000022
d为像素点到中心点的距离,A为预设系数。
本申请还提供了一种红外触摸数据的处理系统,该处理系统包括:
线段生成模块,用于获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;
位置确定模块,用于确定所述目标线段上每一特征点的位置信息;
线条生成模块,用于根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述红外触摸数据的处理方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述红外触摸数据的处理方法执行的步骤。
本申请提供了一种红外触摸数据的处理方法,包括获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;确定所述目标线段上每一特征点的位置信息;根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。
本申请将目标线段上所在区域内每一像素点与特征点的距离作为像素点颜色值的设置依据,距离特征点越近的像素点的颜色值越接近特征点对应的画笔颜色值。本申请通过采用圆形缓冲加距离加权的方式设置目标线段所在区域内每一像素点的颜色值,提高了显示书写线条的抗锯齿能力,优化电子白板的书写效果。本申请同时还提供了一种红外触摸数据的处理系统、一种计算机可读存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种红外触摸数据的处理方法的流程图;
图2为本申请实施例所提供的另一种红外触摸数据的处理方法的流程图;
图3为本申请在实际应用中的生成书写线条的流程图;
图4为本申请实施例提供的控制点确定示意图;
图5为本申请实施例提供的第一种像素点颜色设置示意图;
图6为本申请实施例提供的第二种像素点颜色设置示意图;
图7为本申请实施例所提供的一种红外触摸数据的处理系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种红外触摸数据的处理方法的流程图。
具体步骤可以包括:
S101:获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;
其中,本实施例可以应用于使用红外触摸框的电子白板,当用户使用手指或触控笔在电子白板上执行触摸操作时,可以检测到相应的红外触摸数据。本实施例中可以将红外触摸框检测的红外触摸数据处于显存数据库中。本步骤中获取红外触摸数据的操作可以为获取显存数据,显存数据中包括红外触摸数据。
红外触摸数据可以为多个触摸点的坐标,红外触摸数据中还可以包括每一触摸点的生成时刻。也就是说,可以根据红外触摸数据确定用户书写痕迹,本步骤中提到的目标线段就是用户的书写痕迹。本实施例不限定目标线段的形状、颜色等信息。需要说明的是,本步骤中生成的目标线段为处理器根据红外触摸数据生成的线段,可以确定目标线段在显示屏上显示的位置及颜色。
S102:确定所述目标线段上每一特征点的位置信息;
其中,本实施例中提到的特征点为目标线段上的点,本实施例不限定特征点的数量。需要说明的是,本步骤中的特征点可以不为红外触摸数据对应的触摸点。具体的,由于红外触摸数据对应的触摸点的连线可以是一群离散的点,本实施例生成的目标线段可以为根据所有触摸点生成的平滑的曲线。
S103:根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,由于显示屏幕上能够点亮的像素点的数量是有限的,而目标线段上的特征点的数量是无限的,而且大都不是整数,因此直接根据目标线段的位置信息进行书写线条的显示将会导致像素点与目标线段产生偏离。本步骤中所提到的目标区域为目标线段所有特征的区域,此处不限定目标线段所在区域的形状。
目标线段所在的区域内可以包括多个像素点,本实施例采用圆心缓冲加距离加权的抗锯齿方案生成书写线条。即像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。对于目标线段所在区域内的一个像素点A来说,可以首先寻找距离像素点A距离近的特征点,计算像素点A与最近的特征点的距离,根据该距离确定像素点A的颜色值,距离特征点越近的像素点颜色越接近画笔颜色值。通过上述像素点的颜色值设置方式,能够使得目标线段所在区域内与目标线段坐标重合的像素点颜色为画笔颜色,距离目标线段越远,颜色越接近背景颜色。此处提到的像素点颜色值接近画笔颜色值可以具体为RGB颜色值上的接近,
本实施例将目标线段上所在区域内每一像素点与特征点的距离作为像素点颜色值的设置依据,距离特征点越近的像素点的颜色值越接近特征点对应的画笔颜色值。本实施例通过采用圆形缓冲加距离加权的方式设置目标线段所在区域内每一像素点的颜色值,提高了显示书写线条的抗锯齿能力,优化电子白板的书写效果。
下面请参见图2,图2为本申请实施例所提供的另一种红外触摸数据的处理方法的流程图。
S201:通过JNI的方式调用内存映射函数mmap获取显存数据;
其中,所述显存数据包括所述红外触摸数据。由于相关技术中红外触摸框对手势的触摸反馈速度较慢,Android的画线算法处理比较耗时,就使得书写时画线速度不够快,尤其是在使用多指进行书写时,卡顿延迟就更加明显。而本实施例通过JNI的方式调用内存映射函数mmap获取显存数据,可以绕过Android的framework层和hal层直接对kernel层的显存数据进行读写,极大地提升了数据读写速度。通过上述方式可以快速响应用户的书写操作,减少卡顿延迟,提升了用户体验。JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信。
S202:确定所述红外触摸数据对应的所有触摸点的生成顺序;
S203:判断所述生成顺序相邻的两个触摸点之间的相邻距离是否小于第一预设值;若是,则进入S204;若否,则进入S205;
S204:利用直线连接相邻距离小于所述预设值的触摸点;
其中,在直接连接相邻距离小于所述预设值的触摸点之后,可以选择新的生成顺序相邻的两个触摸点进入S203的判断操作。
S205:利用贝塞尔方程计算插值点,并根据所述插值点生成所述目标线段。
其中,上述操作是判断生成顺序相邻的两个触摸点之间的距离是否足够小,即小于第一预设值,若足够小则可以直接连接生成顺序相邻的两个触摸点。作为一种可行的实施方式,可以按照触摸点的生成顺序依次选择生成时间前二的两个点进行S203的判断操作,然后再选择生成时间第二名和第三名的点进行S203的判断操作,以此类推直至所有生成顺序相邻的两个触摸点的相邻距离都判断完毕。
作为一种可行的实施方式,S205中利用贝塞尔方程计算插值点,并根据所述插值点生成所述目标线段的过程可以包括:选择2个生成顺序相邻的目标触摸点,并利用二次贝塞尔方程计算所述目标触摸点对应的插值点。
S206:判断所述插值点与2个所述目标触摸点的中点之间的距离是否小于第二预设值;若是,则直接连接2个所述目标触摸点;若否,则保留该插值点;
S207:基于Bresenham直线绘制算法根据所述插值点生成所述目标线段。
S208:确定所述目标线段上每一特征点的位置信息;
S209:为每一所述特征点生成对应的目标矩形区域;其中,所述特征点为对应目标矩形区域的中心点,所述目标矩形区域的边长等于所述目标线段的线宽;
S210:利用颜色值计算公式根据所述目标矩形区域内每一像素点的颜色值;
其中,所述颜色值公式为
Figure BDA0002082564800000071
C为颜色值,Vb为背景颜色值,Vp为所述目标线段对应的画笔颜色值,p为像素点到所述目标矩形区域的中心点的距离系数,
Figure BDA0002082564800000072
d为像素点到中心点的距离,A为预设系数。
在得到每一像素点的颜色值之后,还可以通过JNI的方式调用内存映射函数mmap修改相应的显存数据。
下面通过在实际应用中的实施例说明上述实施例描述的流程。
请参见图3,图3为本申请在实际应用中的生成书写线条的流程图,具体可以包括以下步骤:
步骤1、映射显存数据
由于Android的kernel是linux,所以可以利用linux的内存映射函数mmap来获取显存,本实施例是用c语言实现并打包成so库,开放了一些接口,app通过JNI的方式就可以调用该函数,这样就可以绕过了android的framework和hal层,直接对kernel层显存数据进行读写,极大地提升了速度。
步骤2、传入touch坐标
本实施例需要app层传入三个touch坐标点,然后由这三点来生成平滑的线条。书写速度不同,传递过来的坐标也是有较大的差异的,速度慢,坐标点之间距离小,速度快,点距大。所以本实施例先对前两点点距进行计算,如果距离小于Δ(Δ为一个很小的值),那么就直接连接前两点,下次从第二点开始画;否则,可以利用二次贝塞尔方程计算插值点。
步骤3、二次贝塞尔计算插值点
二次贝塞尔方程如下。采用二次贝塞尔的原因是它需要三个控制点,计算量适中,而更高阶的贝塞尔需要更多的控制点和更多的计算。
f(t)=(1-t)2*p0+2(1-t)*t*p1+t2*p2(p0,p1,p2为控制点,t∈[0,1])
具体的思路如下图4所示,图4为本申请实施例提供的控制点确定示意图,p0,p1,p2为初次传入的touch点,pm1为p1与p2的中点,本实施例以p0,p1,pm1为控制点,生成曲线L,下次只需一个新的touch点p3,由pm1,p2,pm2生成下一段曲线,由于p1,pm1,p2共线,所以连接点处就比较平滑。实验发现该方法生成的曲线和安卓原生曲线相比在结束处会短一些,考虑到原生可能是连线到了最后一个touch点,所以本实施例就用pm1和p2的中点p2'取代pm1,生成曲线L'减少了和原生的差异。
首先t取0和1,这样得到头尾两个控制点,然后t取0和1的均值0.5代入贝塞尔曲线计算出一个插值点,接下来计算该点与两个控制点的中点的距离,如果距离小于0.5,则舍弃插值点,并停止插值;如果距离大于0.5,则保存该插值点,再分别计算0和0.5,0.5和1之间是否需要插入新的点。小于0.5意味着插值点和中点的距离很短,所以本实施例可以直接连接两点而无需插值。这种方法生成的插值点的数目比较少,同时线条也比较平滑。
步骤4、Bresenham直线绘制算法
插值结束后,依次连接相邻的插值点,即可生成曲线,加速库采用的是Bresenham直线绘制算法。
该算法的基本思想是:对于给定的两点P1(x1,y1),P2(x2,y2),首先分别计算从p1到p2在x方向和y方向的差值的绝对值dx1,dy1,然后让这两个值分别乘2得到dx2,dy2,如果dx2>dy2,那么就以x为主方向,p1为起点,x步长为1或-1(步长符号由dx1符号确定),p2为终点,依次点亮像素点,如果d=dy2-dx1>0,那么y也需要增加一个步长,并更新d+=dy2-dx2,否则d+=dy2;如果y为主方向,那么y每次增加一个步长,同时计算类似的d,判断是否x方向需要增加步长。
步骤5、圆形缓冲加距离加权的抗锯齿
理论上,二次贝塞尔曲线是平滑的,可实际上在屏幕绘制直线的时候,锯齿依然会产生,原因是屏幕上能够点亮的像素点是很有限的,而曲线上的点是无限的,而且大都不是整数,所以取整后会导致像素点与原来的线条产生偏离。
通过对比尝试滤波法,距离加权法,形态学抗锯齿法,本实施例的加速库最终采用圆形缓冲加距离加权的方法,即给定一个坐标点和线宽,本实施例首先确定了一个以该点为中心,边长为线宽的正方形区域,然后计算该区域内各个像素点到中心点的距离d,并用d除以0.5倍线宽,得到一个距离系数p,如果p>=1,那么该点就用背景填充,否则该值为Vb*p+Vp*(1-p),Vb表示背景颜色值,Vp表示画笔的颜色值,这样就形成了一个以坐标点为中心的圆,且颜色由中心的画笔色逐步向边缘过渡到背景色。
请参见图5、图6,图5为本申请实施例提供的第一种像素点颜色设置示意图,图6为本申请实施例提供的第二种像素点颜色设置示意图。在图5中,仅对1个特征点进行分析,每一小方块代表一个像素点,小方块中的数字代表像素点的颜色值。当画笔颜色为黑色,背景颜色为白色时,“1”对应的方块为黑色,“2”对应的方块为深灰色,“3”对应的方块为灰色,“4”对应的方块为浅灰色,未标数字的方块为白色。图6是对2个相邻的特征点周围的像素点的颜色值进行设置,可能会存在某些像素点对于不同特征点得到的颜色值不同的情况,本实施例中像素点的颜色值由与该像素点距离最近的特征点的距离大小决定。
请参见图7,图7为本申请实施例所提供的一种红外触摸数据的处理系统的结构示意图;
该系统可以包括:
线段生成模块100,用于获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;
位置确定模块200,用于确定所述目标线段上每一特征点的位置信息;
线条生成模块300,用于根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值。
本实施例将目标线段上所在区域内每一像素点与特征点的距离作为像素点颜色值的设置依据,距离特征点越近的像素点的颜色值越接近特征点对应的画笔颜色值。本实施例通过采用圆形缓冲加距离加权的方式设置目标线段所在区域内每一像素点的颜色值,提高了显示书写线条的抗锯齿能力,优化电子白板的书写效果。
进一步的,线段生成模块100具体为用于通过JNI的方式调用内存映射函数mmap获取显存数据,并生成所述红外触摸数据对应的目标线段的模块;其中,所述显存数据包括所述红外触摸数据。
进一步的,线段生成模块100包括:
顺序确定单元,用于确定所述红外触摸数据对应的所有触摸点的生成顺序;
判断单元,用于判断所述生成顺序相邻的两个触摸点之间的相邻距离是否小于第一预设值;若是,则利用直线连接相邻距离小于所述预设值的触摸点;若否,则利用贝塞尔方程计算插值点,并根据所述插值点生成所述目标线段。
进一步的,所述判断单元包括:
插值点确定子单元,用于选择2个生成顺序相邻的目标触摸点,并利用二次贝塞尔方程计算所述目标触摸点对应的插值点;
距离判断子单元,用于判断所述插值点与2个所述目标触摸点的中点之间的距离是否小于第二预设值;若是,则直接连接2个所述目标触摸点。
进一步的,还包括:
Bresenham模块,用于基于Bresenham直线绘制算法根据所述插值点生成所述目标线段。
进一步的,还包括:
显示模块,用于将所述书写线条显示至所述红外触摸数据对应的书写区域。
进一步的,线条生成模块300包括:
区域生成单元,用于为每一所述特征点生成对应的目标矩形区域;其中,所述特征点为对应目标矩形区域的中心点,所述目标矩形区域的边长等于所述目标线段的线宽;
颜色值计算单元,用于利用颜色值计算公式根据所述目标矩形区域内每一像素点的颜色值;
其中,所述颜色值公式为
Figure BDA0002082564800000111
C为颜色值,Vb为背景颜色值,Vp为所述目标线段对应的画笔颜色值,p为像素点到所述目标矩形区域的中心点的距离系数,
Figure BDA0002082564800000112
d为像素点到中心点的距离,A为预设系数。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (9)

1.一种红外触摸数据的处理方法,其特征在于,包括:
获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;其中,所述红外触摸数据包括多个触摸点的坐标,所述目标线段为根据所有所述触摸点生成的平滑的曲线;
确定所述目标线段上每一特征点的位置信息;
根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值;
其中,根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值包括:
为每一所述特征点生成对应的目标矩形区域;其中,所述特征点为对应目标矩形区域的中心点,所述目标矩形区域的边长等于所述目标线段的线宽;
利用颜色值计算公式根据所述目标矩形区域内每一像素点的颜色值;
其中,所述颜色值计算公式为
Figure DEST_PATH_IMAGE002
;C为颜色值,Vb为背景颜色值,Vp为所述目标线段对应的画笔颜色值,p为像素点到所述目标矩形区域的中心点的距离系数,
Figure DEST_PATH_IMAGE004
,d为像素点到中心点的距离,A为预设系数。
2.根据权利要求1所述处理方法,其特征在于,所述获取红外触摸数据包括:
通过JNI的方式调用内存映射函数mmap获取显存数据;其中,所述显存数据包括所述红外触摸数据。
3.根据权利要求1所述处理方法,其特征在于,生成所述红外触摸数据对应的目标线段包括:
确定所述红外触摸数据对应的所有触摸点的生成顺序;
判断所述生成顺序相邻的两个触摸点之间的相邻距离是否小于第一预设值;
若是,则利用直线连接相邻距离小于所述预设值的触摸点;
若否,则利用贝塞尔方程计算插值点,并根据所述插值点生成所述目标线段。
4.根据权利要求3所述处理方法,其特征在于,所述利用贝塞尔方程计算插值点并根据所述插值点生成所述目标线段包括:
选择2个生成顺序相邻的目标触摸点,并利用二次贝塞尔方程计算所述目标触摸点对应的插值点;
判断所述插值点与2个所述目标触摸点的中点之间的距离是否小于第二预设值;
若是,则直接连接2个所述目标触摸点。
5.根据权利要求3所述处理方法,其特征在于,根据所述插值点生成所述目标线段包括:
基于Bresenham直线绘制算法根据所述插值点生成所述目标线段。
6.根据权利要求1所述处理方法,其特征在于,还包括:
将所述书写线条显示至所述红外触摸数据对应的书写区域。
7.一种红外触摸数据的处理系统,其特征在于,包括:
线段生成模块,用于获取红外触摸数据,并生成所述红外触摸数据对应的目标线段;其中,所述红外触摸数据包括多个触摸点的坐标,所述目标线段为根据所有所述触摸点生成的平滑的曲线;
位置确定模块,用于确定所述目标线段上每一特征点的位置信息;
线条生成模块,用于根据所述位置信息设置所述目标线段所在区域内每一像素点的颜色值,以便生成所述红外触摸数据对应的书写线条;
其中,所述像素点与所述特征点的距离越小所述像素点的颜色值越接近所述特征点对应的画笔颜色值;
其中,所述线条生成模块包括:
区域生成单元,用于为每一所述特征点生成对应的目标矩形区域;其中,所述特征点为对应目标矩形区域的中心点,所述目标矩形区域的边长等于所述目标线段的线宽;
颜色值计算单元,用于利用颜色值计算公式根据所述目标矩形区域内每一像素点的颜色值;
其中,所述颜色值计算公式为
Figure 84820DEST_PATH_IMAGE002
;C为颜色值,Vb为背景颜色值,Vp为所述目标线段对应的画笔颜色值,p为像素点到所述目标矩形区域的中心点的距离系数,
Figure 267540DEST_PATH_IMAGE004
,d为像素点到中心点的距离,A为预设系数。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述红外触摸数据的处理方法的步骤。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述红外触摸数据的处理方法的步骤。
CN201910476896.3A 2019-06-03 2019-06-03 一种红外触摸数据的处理方法、系统及相关组件 Active CN110045882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910476896.3A CN110045882B (zh) 2019-06-03 2019-06-03 一种红外触摸数据的处理方法、系统及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910476896.3A CN110045882B (zh) 2019-06-03 2019-06-03 一种红外触摸数据的处理方法、系统及相关组件

Publications (2)

Publication Number Publication Date
CN110045882A CN110045882A (zh) 2019-07-23
CN110045882B true CN110045882B (zh) 2022-10-11

Family

ID=67284520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910476896.3A Active CN110045882B (zh) 2019-06-03 2019-06-03 一种红外触摸数据的处理方法、系统及相关组件

Country Status (1)

Country Link
CN (1) CN110045882B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112528796A (zh) * 2020-12-04 2021-03-19 浪潮云信息技术股份公司 一种基于智能移动终端的指纹签名采集系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103761A (zh) * 2011-01-31 2011-06-22 周佳 手写原笔迹的实现方法
CN102520849A (zh) * 2011-11-28 2012-06-27 北京盛世宣合信息科技有限公司 电子毛笔书写方法及系统
CN102521858A (zh) * 2011-11-28 2012-06-27 北京盛世宣合信息科技有限公司 电子毛笔书写笔迹生成方法
CN102937848A (zh) * 2012-12-04 2013-02-20 上海合合信息科技发展有限公司 对手写笔迹进行编辑处理的方法及电子设备
CN108280864A (zh) * 2018-01-24 2018-07-13 福建升腾资讯有限公司 一种用于优化动态显示手写电子签名过程的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103761A (zh) * 2011-01-31 2011-06-22 周佳 手写原笔迹的实现方法
CN102520849A (zh) * 2011-11-28 2012-06-27 北京盛世宣合信息科技有限公司 电子毛笔书写方法及系统
CN102521858A (zh) * 2011-11-28 2012-06-27 北京盛世宣合信息科技有限公司 电子毛笔书写笔迹生成方法
CN102937848A (zh) * 2012-12-04 2013-02-20 上海合合信息科技发展有限公司 对手写笔迹进行编辑处理的方法及电子设备
CN108280864A (zh) * 2018-01-24 2018-07-13 福建升腾资讯有限公司 一种用于优化动态显示手写电子签名过程的方法

Also Published As

Publication number Publication date
CN110045882A (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
US5272469A (en) Process for mapping high resolution data into a lower resolution depiction
US9857909B2 (en) Straight line gesture recognition and rendering
CN110321054B (zh) 毛笔笔迹绘制方法、装置、设备及可读存储介质
US9720537B2 (en) Scaling pressure data from a pressure-sensitive device
CN112115678B (zh) 信息展示方法及装置、存储介质及电子设备
US11526272B2 (en) Systems and methods for interactive image caricaturing by an electronic device
CN108830923B (zh) 图像渲染方法、装置及存储介质
CN108805849B (zh) 图像融合方法、装置、介质及电子设备
CN110045882B (zh) 一种红外触摸数据的处理方法、系统及相关组件
CN114041111A (zh) 笔迹绘制方法、装置、电子设备、介质和程序产品
CN104899038A (zh) 一种界面样式变换方法及装置
US11494961B2 (en) Sticker generating method and apparatus, and medium and electronic device
CN114862725A (zh) 基于光流法实现运动感知模糊特效的方法及装置
CN114820972A (zh) 等值线和/或等值面生成方法、系统、设备及存储介质
CN111273807A (zh) 笔迹实现与优化方法、装置与计算机设备
CN114494046A (zh) 触摸轨迹处理方法、装置、终端、存储介质及程序产品
KR20160046574A (ko) 그래픽 프로세싱 유닛, 이를 포함하는 그래픽 프로세싱 시스템, 및 이를 이용한 안티 에일리어싱 방법
JPH10164370A (ja) 画像の階調補間方法および装置並びに画像フィルタリング方法および画像フィルタ
CN109522532B (zh) 一种折线图框选范围的计算方法及装置
CN115330925A (zh) 图像渲染方法、装置、电子设备及存储介质
US10739911B2 (en) Unified drawing framework
JPH11242753A (ja) 3次元描画方法および装置
CN114299203A (zh) 虚拟模型的处理方法和装置
CN117075789B (zh) 墨水屏的笔迹显示方法、装置、设备及存储介质
CN114972558A (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