CN104951129A - 将覆盖数据与视频图像相组合的方法和系统及显示系统 - Google Patents
将覆盖数据与视频图像相组合的方法和系统及显示系统 Download PDFInfo
- Publication number
- CN104951129A CN104951129A CN201510150326.7A CN201510150326A CN104951129A CN 104951129 A CN104951129 A CN 104951129A CN 201510150326 A CN201510150326 A CN 201510150326A CN 104951129 A CN104951129 A CN 104951129A
- Authority
- CN
- China
- Prior art keywords
- hand edge
- edge point
- entry
- touch
- point
- 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
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/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/265—Mixing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
提供一种用于将覆盖数据与视频图像相组合的系统和方法以及显示系统。用于将覆盖数据与视频图像相组合的系统包括:触摸路径模块,用于接收多个触摸事件并基于触摸事件生成输出;以及渲染模块,用于:接收视频图像;接收触摸路径模块的输出;确定限定形状的边界的多个点,该形状是基于触摸路径模块的输出来确定的;根据多个点将视频图像与覆盖数据相组合来生成组合显示图像;以及输出组合显示图像。
Description
相关申请的交叉引用
本申请要求2014年3月31日向美国专利商标局递交的标题为“MEMORY-EFFICIENT METHOD AND APPARATUS TO REDUCE DISPLAY LATENCY OF TOUCH EVENTS”的美国临时专利申请61/973,149号的优先权和权益,这里通过引用并入该美国临时专利申请的全部公开内容。
技术领域
本发明的实施例涉及具有触摸输入设备的显示设备,更具体而言涉及用于减小触摸输入设备与显示设备之间的显示滞后(display lag)的系统和方法。
背景技术
包含或耦合到覆盖的触摸传感器面板的显示面板为能够触摸的计算设备(例如移动电话、平板计算机、膝上型计算机或者桌面型计算机)提供交互系统。在这种计算设备中,图形被显示在显示面板上,并且用户可通过触摸屏幕(例如利用主动式触控笔、被动式触控笔或者诸如手指之类的身体部位)来与这些设备交互,从而提供了直观的用户界面。
由触摸传感器面板检测到的触摸事件通常由在设备的应用处理器(application processor,AP)上运行的高级别应用软件来处理。触摸传感器面板与AP之间的许多处理操作以及AP上的非确定处理时间(包括由于AP执行的其他计算任务引起的延迟)引入了较高水平的延时(例如,70至100毫秒),而这种延时降低了计算设备对用户的触摸输入的响应性。
发明内容
本发明的实施例的一些方面涉及减小触摸事件与对此触摸事件的显示响应之间的延时。
根据本发明的一个实施例,一种系统包括:触摸路径模块,用于接收多个触摸事件并基于触摸事件生成输出;以及渲染模块,用于:接收视频图像; 接收触摸路径模块的输出;确定限定形状的边界的多个点,该形状是基于触摸路径模块的输出来确定的;根据多个点将视频图像与覆盖数据相组合来生成组合显示图像;以及输出组合显示图像。
组合显示图像可包括多行,其中,每个点包括行坐标,渲染模块还用于:将点分类为左边缘点和右边缘点中的一个或多个;按行坐标来整理左边缘点;以及按行坐标来整理右边缘点,并且对于组合显示图像的多行中的当前行,渲染模块还用于:基于当前行与由左边缘点之中的第一左边缘点和左边缘点之中的第二左边缘点限定的左边缘之间的左交点来确定开始条目;基于当前行与由右边缘点之中的第一右边缘点和右边缘点之中的第二右边缘点限定的线条之间的右交点来确定停止条目;基于开始条目和停止条目为当前行生成包括多个条目的行掩模;以及根据行掩模对于当前行将视频图像与覆盖数据相组合。
当前行可包括多个条目,其中,行掩模的每个条目具有第一掩模值或第二掩模值,渲染模块还可对于当前行的每个条目:当行掩模的相应条目具有第一值时输出覆盖数据;以及当行掩模的相应条目具有第二值时输出视频图像。
行掩模的在开始条目和停止条目之间的每个条目可具有第一掩模值。
该系统还可包括用于在查找表中存储左边缘点和右边缘点的存储器。
渲染模块还可用于基于线条宽度参数来确定限定形状的边界的多个点。
触摸事件可包括触摸压力信息,并且其中,渲染模块还可被配置为基于触摸压力信息来确定限定形状的边界的多个点。
根据本发明的一个实施例,一种用于将覆盖数据与视频图像相组合的方法包括:接收视频图像;从触摸路径模块接收触摸路径;确定限定形状的边界的多个点,该形状是基于触摸路径来确定的;将视频图像与覆盖数据相组合来生成组合显示图像;以及输出组合显示图像。
组合显示图像可包括多行,其中,每个点包括行坐标,并且其中,该方法还可包括:将点分类为左边缘点和右边缘点中的一个或多个;按行坐标来整理左边缘点;按行坐标来整理右边缘点;基于多行之中的当前行与由左边缘点之中的第一左边缘点和左边缘点之中的第二左边缘点限定的左边缘之间的左交点为当前行确定开始条目;基于当前行与由右边缘点之中的第一右边缘点和右边缘点之中的第二右边缘点限定的右边缘之间的右交点为当前行确 定停止条目;基于开始条目和停止条目为当前行生成包括多个条目的行掩模;以及根据行掩模对于当前行将视频图像与覆盖数据相组合。
当前行可包括多个条目,其中,行掩模的每个条目具有第一掩模值或第二掩模值,并且将视频图像与覆盖数据相组合可包括:当行掩模的相应条目具有第一值时输出覆盖数据;以及当行掩模的相应条目具有第二值时输出视频图像。
行掩模的在开始条目和停止条目之间的每个条目可具有第一掩模值。
该方法还可包括在查找表中存储左边缘点和右边缘点。
该方法还可包括基于线条宽度参数来确定限定形状的边界的多个点。
触摸路径可包括触摸压力信息,并且该方法还可包括基于触摸压力信息来确定限定形状的边界的多个点。
根据本发明的一个实施例,一种系统包括:触摸面板;显示面板;应用处理器;触摸路径模块,用于从触摸面板接收多个触摸事件并基于触摸事件生成输出;以及渲染模块,用于:从应用处理器接收视频图像;接收触摸路径模块的输出;确定限定形状的边界的多个点,该形状是基于触摸路径模块的输出来确定的;根据多个点将视频图像与覆盖数据相组合来生成组合显示图像;以及将组合显示图像输出到显示面板。
组合显示图像可包括多行,其中,每个点包括行坐标,渲染模块还可用于:将点分类为左边缘点和右边缘点中的一个或多个;按行坐标来整理左边缘点;以及按行坐标来整理右边缘点,并且对于组合显示图像的多行中的当前行,渲染模块还可以:基于当前行与由左边缘点之中的第一左边缘点和左边缘点之中的第二左边缘点限定的左边缘之间的左交点来确定开始条目;基于当前行与由右边缘点之中的第一右边缘点和右边缘点之中的第二右边缘点限定的线条之间的右交点来确定停止条目;基于开始条目和停止条目为当前行生成包括多个条目的行掩模;以及根据行掩模对于当前行将视频图像与覆盖数据相组合。
当前行可包括多个条目,其中,行掩模的每个条目具有第一掩模值或第二掩模值,渲染模块还可被配置为对于当前行的每个条目:当行掩模的相应条目具有第一值时将覆盖数据输出到显示面板;以及当行掩模的相应条目具有第二值时将视频图像输出到显示面板,其中,行掩模的在开始条目和停止条目之间的每个条目具有第一掩模值。
该系统还可包括用于在查找表中存储左边缘点和右边缘点的存储器。
渲染模块还可用于基于从应用处理器接收的线条宽度参数来确定限定形状的边界的多个点。
触摸事件还可包括触摸压力信息,并且渲染模块还可被配置为基于触摸压力信息来确定限定形状的边界的多个点。
附图说明
附图与说明书一起阐明了本发明的示范性实施例并且与描述一起用来说明本发明的原理。
图1A图示出包括相关技术的触摸输入处理设备的设备的响应,并且图1B图示出包括根据本发明的实施例的触摸输入处理设备的设备的响应。
图2是根据本发明的实施例的一方面的低延时反馈路径和相关技术的反馈路径两者的示意性图示。
图3是图示出包括根据本发明的一个实施例的低延时覆盖系统的设备的框图。
图4是图示出根据本发明的一个实施例的低延时覆盖系统内的组件的框图。
图5A是根据本发明的一个实施例的将视频图像数据、覆盖数据和触摸路径信息相组合来生成组合显示图像的示意性图示。
图5B是图示出根据本发明的一个实施例的用于将覆盖数据与视频图像相组合以生成组合显示图像的方法的流程图。
图6A是根据本发明的一个实施例的查找表生成模块的示意性图示,该查找表生成模块被配置为基于触摸输入数据生成与掩模相对应的查找表。
图6B是图示出根据本发明的一个实施例的用于基于触摸输入数据来生成查找表的方法的流程图。
图7A是根据本发明的一个实施例的用于基于形状的轮廓的坐标来确定该形状的一组“L”边缘和一组“R”边缘的方法的图示。
图7B是图示出根据本发明的一个实施例的用于基于形状的轮廓的坐标来生成该形状的一组“L”边缘和一组“R”边缘的方法的流程图。
图8A是根据本发明的一个实施例的基于表示形状的查找表来生成掩模的一行的示意图。
图8B是图示出根据本发明的一个实施例的用于基于表示形状的查找表来生成掩模的一行的方法的流程图。
图9是图示出根据本发明的一个实施例的当基于计算器的输出来生成掩模的一行时像素填充模块的操作的示意图。
具体实施方式
在以下详细描述中,只是以举例说明的方式示出和描述了本发明的某些示范性实施例。正如本领域技术人员将会认识到的,本发明可以以许多不同的形式来实现,而不应当被解释为限于本文记载的实施例。贯穿说明书各处,相似的标号指代相似的元素。
本文使用的术语只是为了描述特定实施例,而并不打算限制发明构思。就本文使用的而言,单数形式“一”和“该”打算也包括复数形式,除非上下文明确地另有指示。还要理解,术语“包括”当在本说明书中使用时指明了所记述的特征、整数、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或其群组的存在或添加。就本文使用的而言,术语“和/或”包括关联的列出项目中的一个或多个的任意和所有组合。诸如“…中的至少一个”之类的表述当在元素的列表之前时修饰整个元素列表,而不修饰列表中的个体元素。另外,在描述发明构思的实施例时对“可”的使用指的是“发明构思的一个或多个实施例”。另外,术语“示范性”意在指示例或例示。就本文使用的而言,术语“使用”、“在使用”和“被使用”可被认为分别与术语“利用”、“在利用”和“被利用”同义。当第一元素被描述为“耦合”或“连接”到第二元素时,第一元素可直接“耦合”或“连接”到第二元素,或者一个或多个其他居间元素可位于第一元素和第二元素之间。
本发明的实施例通过在应用处理器渲染图像之前基于触摸位置显示图像来允许用户感知到更快的触摸响应。
为触摸界面设计的软件经常利用对伪“真实世界”对象的直接物理操纵的比拟和/或屏幕上路径的描绘来提供视觉反馈(例如,用于在挥扫型或基于手势的屏上键盘上的手指的踪迹、用于绘画或速写应用中的路径的踪迹、用于对于在游戏中描绘的路径)。
移动电话的常见问题是用户界面(user interface,UI)的滞后(或者滞后 时间或延时)。当前的移动电话响应于触摸动作通常要花50至200毫秒来更新显示。例如,基于60帧每秒(frames per second,FPS)的刷新率,在相关技术的智能电话上测量到的对触摸事件的典型显示响应时间可大于100毫秒或者可大致超过6帧视频图像,这是大部分用户可以注意到的。
图1A图示了包括相关技术的触摸输入处理设备的设备的响应,其中显示的线条100在手指的位置与显示的线条100的最后描绘部分之间具有间隙102。间隙102引起用户的触摸与显示的线条之间的明显的显示滞后。当使用触控笔——无论是主动式还是被动式——的时候,也通常会遇到类似的显示滞后。
本发明的实施例通过提前于AP渲染图像在触摸路径中覆盖图像来允许了用户感知更快的触摸响应。通过闭合用户的触摸点(无论是使用手指、触控笔还是其他工具)与屏幕上线条的描绘之间的间隙,可以减小感知到的显示滞后。就本文使用的而言,术语“覆盖”(overlay)当用作动词时指的是将视频图像(例如AP渲染图像)与附加图像数据相组合,以使得该附加图像数据替换(或“覆盖”)原始视频图像的某个部分。术语“覆盖”当用作名词时也可以指该附加图像数据在组合显示图像中的出现。
此外,通过使用覆盖方法,应用软件还可控制对触摸事件的所显示的响应的区域(例如在显示器上的位置)、颜色和渲染操作。
图1B图示出包括根据本发明的实施例的触摸输入处理设备的设备的显示响应,其中显示的线条包括由根据本发明的实施例的低延时覆盖系统描绘的估计或计算出的部分104,从而减小了用户感知到的显示滞后。
参考图2,在计算设备250中,作为对相关技术的系统的替换,本发明的实施例涉及一种低延时覆盖系统(其也可称为“加速器”或“视觉反馈加速器”),其在通过触摸控制器200和显示驱动器接口控制器(display driver interface controller,DDIC)204的低延时路径212上立即或更迅速地提供视觉反馈,之后在通过应用处理器202的更长延时路径210上以更长延时水平提供视觉图像。
参考图3,通常,触摸屏系统和显示系统独立地操作。触摸控制器200处理来自触摸传感器面板300的触摸信号302,并且向应用处理器(AP)202输出触摸事件304,例如坐标。
参考图3,触摸传感器面板300被配置为检测用户的触摸并相应地生成 触摸信号302,这些触摸信号302通过数据总线被提供给触摸控制器200。本发明的实施例可与利用诸如身体部位(例如手指)、触控笔等等之类的任何类型(或种类)的指示工具来检测用户的触摸的触摸传感器面板300一起使用。就本文使用而言,术语“指示工具”(pointing implement)指的是能够被触摸传感器面板300检测的对象,包括设备(例如主动式触控笔或被动式触控笔)和身体部位(例如手指或手)。本发明的实施例可与诸如以下的多种类型(或种类)的触摸输入面板中的任何一种一起使用:电阻式触摸面板、表面声波触摸面板、电容式触摸面板、红外触摸面板或者光学触摸面板。在一个实施例中,触摸信号302对应于由触摸传感器面板300提供的原始数据,例如对触摸传感器面板中的每个位置的电容或电压或电流的测量值。在另一实施例中,触摸信号302对应于基于经处理的原始数据的计算出的触摸的位置。用于触摸事件304的数据总线连接到AP 202和低延时覆盖系统310两者。触摸事件304可以是与检测到用户的触摸的位置相对应的数据值的流(例如,具有充分高的值以至于足以构成对触摸事件的检测的电容或电压或电流的变化)。在一些实施例中,触摸事件304包括指示被施加到触摸传感器面板的压力的压力数据。
AP 202处理触摸事件304,并且从AP 202运行的应用软件通过向DDIC204渲染视频图像316(或者视频图像的帧)以便显示在显示面板322上,来相应地更新显示构成。AP 202可包括中央处理单元(central processing unit,CPU)、图形处理单元(graphical processing unit,GPU)和存储器。显示面板322可以例如是有机发光二极管(organic light emitting diode,OLED)显示面板或者液晶显示器(liquid crystal display,LCD)面板。
AP 202连接到DDIC 204,DDIC 204进而又连接到显示面板322。DDIC204从AP 202接收视频图像316并且向显示面板322提供像素驱动信号320。
在一个实施例中,触摸传感器面板300、触摸控制器200、DDIC 204和显示面板322都是显示模块的组件,它们可与AP 202分开。在另一实施例中,触摸传感器面板300、触摸控制器200、DDIC 204和显示面板322或者其组合可驻留于单独的模块中,或者与AP 202相结合。
DDIC 204处理从AP 202接收的视频图像(或者视频图像的帧)316,并且向显示面板322输出像素驱动信号320。
下面将更详细描述参数312和覆盖数据314的功能。
根据本发明的实施例,低延时覆盖系统310处理触摸事件304与视频图像316,以使得显示面板322比相关技术的实现方式中更快地示出对触摸事件的视觉响应。与一些相关技术的设备中的大致(或大约)6帧或以上的显示滞后不同,本发明的实施例可将滞后减小到1至2帧。
更详细地说,图4是图示出根据本发明的一个实施例的低延时覆盖系统310内的组件的框图。参考图4,本发明的实施例包括六个部分:触摸路径模块(或逻辑)400、查找表生成器401、查找表存储模块402、控制模块(或逻辑)403、渲染模块(或逻辑)404以及覆盖缓冲器406。覆盖系统310可被包括为DDIC 204的组件,或者覆盖系统310的一些部分可被包括在DDIC204或AP 202中并且其他部分可被包括在触摸控制器200中。
如图4所示,在一个实施例中,触摸路径模块400连接到触摸控制器200并且从触摸控制器200接收触摸事件304。触摸路径模块400还可连接到AP202以接收配置参数312。触摸路径模块400还连接到查找表生成器401,查找表生成器401生成存储在查找表(或“LUT”)402中的值(或“坐标阵列”)。控制模块使用存储在LUT 402中的坐标阵列来逐行地生成掩模并且将掩模500(例如,“1”和/或“0”值的比特流)提供给渲染模块404。
根据一个实施例,覆盖缓冲器406是DDIC 204内的存储器设备,其连接到AP 202并且存储从AP 202接收的覆盖数据314。覆盖缓冲器406被配置为将存储的覆盖数据314提供给渲染模块404。然而,本发明的实施例不限于此。例如,在一个实施例中,可在覆盖系统310内部创建覆盖数据314,而无需来自AP 202的输入。在另一实施例中,覆盖数据314可以是在覆盖系统310内部创建的数据和与来自AP 202的输入相对应的数据的组合。
根据一个实施例,渲染模块404耦合到AP 202和覆盖缓冲器406,并且被配置为根据由控制模块403输出的掩模来将覆盖数据314与视频图像316组合。渲染模块404的输出连接到显示面板322以将覆盖数据314和视频图像316的组合显示图像作为像素驱动信号320提供给显示面板322。
然而,本发明的实施例不限于此。
例如,在一个实施例中,触摸路径模块400、查找表生成器401、LUT 402、控制模块403、渲染模块404和覆盖缓冲器406是各自利用不同的专用集成电路(application specific integrated circuit,ASIC)来实现的。在本发明的其他实施例中,各种组件(包括所有组件)的各种组合是由单个ASIC实现的 (例如,触摸路径模块400、LUT生成器401、LUT 402和控制模块403可全都利用同一ASIC来实现)。在本发明的另外一些实施例中,现场可编程门阵列(field programmable gate array,FPGA)被编程为执行触摸路径模块400、查找表生成器401、LUT 402、控制模块403、渲染模块404和覆盖缓冲器406中的每一者的功能。在其他一些实施例中,触摸路径模块400、查找表生成器401、LUT 402、控制模块403、渲染模块404和覆盖缓冲器406中的一个或多个的功能被实现为AP 202的组件。
另外,虽然触摸路径模块400、查找表生成器401、LUT 402、控制模块403、渲染模块404和覆盖缓冲器406在图4中被示为DDIC 204的组件,但本发明的实施例不限于此。在一些实施例中,触摸路径模块400、查找表生成器401、LUT 402、控制模块403、渲染模块404和覆盖缓冲器406(或者能够执行这些功能的组件)中的一个或多个位于例如触摸控制器200、AP 202内,或者作为单独的组件。此外,它们执行的组件或功能可位于设备的不同部分中。例如,触摸路径模块400可被实现为触摸控制器200的组件或功能,并且覆盖缓冲器406和渲染模块404两者可被实现为AP 202的(一个或多个)组件或(一个或多个)功能。
此外,虽然触摸控制器200被示为物理上单独的组件,但在本发明的一些实施例中,触摸控制器200是更大的集成电路的一部分。例如,触摸控制器可与AP 202和/或DDIC 204一起被实现在同一集成电路中。
图5A是根据本发明的一个实施例的将视频图像数据316、覆盖数据314和触摸事件304相组合来生成组合显示图像的示意性图示。参考图5,触摸路径模块400处理来自触摸控制器的触摸事件304,并且通过在数个先前的连续帧(例如过去的X帧)上在接收到的触摸事件的子集——例如相继触摸事件的集合——的位置之间进行内插和/或外推来生成估计触摸路径。估计触摸路径(或者“内插的触摸点”)随后被LUT生成器401分析来生成被存储在LUT 402中的一组坐标阵列。控制模块403使用LUT 402中存储的坐标阵列来逐行地生成掩模数据500并且将掩模数据500提供给渲染模块404。渲染模块404根据由控制模块403输出的掩模数据将覆盖缓冲器406中存储的覆盖数据314与来自AP 202的视频图像316相组合,以通过在覆盖数据314和视频图像316之间进行选择(或者混合这两者)来生成组合显示图像510。
根据一个实施例,控制模块403逐行地输出掩模数据500,其中给定行 的掩模数据是数值的阵列,其中该阵列中的一个位置对应于显示面板322的一行中的一个像素的位置,并且其中该阵列中的值的相对位置对应于显示面板322的一行中的像素的相对位置(例如,掩模数据可被视为与组合显示图像510的一行中的像素位置的一维地图相对应的一维阵列)。根据一个实施例,掩模数据500的每个值被表示为单个比特,并且掩模数据阵列中的值的位置对应于组合显示图像的一行中的位置。在组合显示图像的给定行中要示出覆盖数据的位置具有被设定为第一值(例如“1”)的值,而不示出覆盖数据(例如要示出视频图像数据316)的位置具有被设定为不同的第二值(例如“0”)的值。控制模块403可与从AP 202提供视频数据316同步地发出掩模数据,以使得给定行的掩模数据在渲染模块404处理视频数据316的相应行的同时被提供给渲染模块404。控制模块403与视频数据316的同步可通过向覆盖系统310提供视频数据316的水平同步(HSYNC)和垂直同步(VSYNC)信号来实现。
根据本发明的其他实施例,掩模数据500中的每个数值由多个比特(例如8比特)来表示,其中掩模数据的数值指的是显示中的每个位置处的覆盖数据的“透明”。就本文使用而言,术语“透明”(transparency)表示混合(例如融合)覆盖数据314和视频图像316以使得组合显示图像510具有覆盖数据314和视频图像316两者的特性。
在一个实施例中,对于每个视频帧,触摸路径模块400基于与固定数目的视频帧相对应的触摸事件的子集来生成估计触摸路径。
在另一实施例中,视频帧的数目是可配置的,以与来自AP 202的显示滞后相符。
在另一实施例中,触摸路径模块400对于可变数目的视频帧生成触摸路径。可从外部模块基于来自AP 202的过去视频图像316来确定视频帧的数目。
当生成路径时一组参数312约束估计触摸路径的特性。这些参数可具有启动时的默认值,但可由软件或其他机制在运行时间期间根据需要来加以调整。这些参数包括但不限于:生成的路径的宽度;生成的线段的式样,例如简单的直线段或曲线;允许该路径的显示区域(例如,活跃描绘区域);以及渲染操作的式样(例如,反混叠操作、平滑操作以及透明度)。
例如,当在用于绘画的软件应用(例如数字速写本)的情境中使用本发明的实施例时,作为组合显示图像510的一部分的覆盖图像片段508(也可 称为计算出的部分104)仅被应用到与活跃描绘区域相对应的显示部分。覆盖系统310一般不将覆盖数据应用到在活跃描绘区域之外的显示部分。这样,可以设定参数312来将估计触摸路径限制到与有效描绘区域相对应的显示部分。在另一示例中,参数312可包含描绘的线条的线条宽度。触摸路径模块400将使用此参数以及来自触摸事件304的压力数据来在来自AP 202的AP生成线条(或图像片段)506之前在掩模数据500中渲染线条的形状。(图像片段506也可称为显示线条100。)
在本发明的一些实施例中,触摸路径模块400将线条宽度和压力信息提供给LUT生成器。是LUT生成器401而不是触摸路径模块400来渲染描绘的线条的形状。
当视频图像316的每个像素被渲染模块404处理时,渲染模块404检索掩模数据500中的值,其中掩模数据中的值的位置(例如矩阵中的位置)对应于视频图像316中的像素的位置,并且渲染模块404根据掩模数据500中的值来执行利用覆盖数据314对视频图像316的像素的替代或者视频图像316的像素和覆盖数据314的混合,以实现期望的视觉效果(例如,透明和/或反混叠),并且将覆盖数据314或者视频图像316的像素或者其混合经由像素驱动信号320输出到显示面板322。
例如,在本发明的替代实施例中,可以利用由掩模数据500中的值限定的单个比特来指定渲染模块404的渲染操作。渲染操作对于每个像素基于掩模数据500中与该像素在组合显示图像510中的位置相对应的位置处的值来将渲染模块的输出选择为视频图像316或者覆盖数据314。
在本发明的一个实施例中,掩模数据500的值的数目(或者掩模数据500的大小)等于视频图像316的一行中的像素的数目,而视频图像316的一行中的像素的数目进而又等于组合显示图像510的一行中的像素的数目。从而,在掩模数据500中的每个值与视频图像316的一行中的每个像素之间存在一对一关系。换言之,渲染模块404的替代实施例是通过将掩模数据500中的每个值匹配到视频图像316的当前行中的相应像素并且将视频图像316的像素或者覆盖数据314输出到显示面板322来逐行地执行的。例如,在一个实施例中,渲染模块404迭代经过掩模数据500的每个值。如果在掩模数据500中的特定位置处存在值“0”,则渲染模块404输出视频图像316的相应像素。另一方面,如果在掩模数据500中的特定位置处存在值“1”,则渲染模块404 输出覆盖数据314。作为该迭代过程的结果,渲染模块404将在像素驱动信号320中表示的组合显示图像510的一行输出到显示面板322。在每个帧期间,该过程在视频图像316的每一行上迭代地操作以生成整个组合显示图像。
在本发明的另一实施例中,掩模数据500中的值的数目可以小于视频图像316的一帧的一行中的像素的数目。从而,掩模数据500中的每个值可与视频图像316的像素具有一对多关系,使得掩模数据500中的一个值对应于视频图像316的多个像素,从而减小了掩模数据500的大小并且降低了掩模缓冲器402的存储要求。
此外,在一些实施例中,相同的掩模数据500可被用于多行,从而也在掩模数据的值与视频图像的像素之间创建了一对多关系。
然而,本发明的实施例不限于此。在本发明的混合实施例中,可利用由掩模数据500中的值限定的多个比特来指定渲染模块404的渲染操作。例如,掩模数据500中的值可标识渲染模块404要渲染的混合的水平(例如,透明的水平)。在另一示例中,如果渲染模块404支持多个渲染操作,则掩模数据500中的值的一个或多个比特可用于限定期望的渲染操作,而其他比特可用于调整这些渲染操作的规格。渲染模块404可在视频图像316中携带的信息和覆盖数据314中携带的信息之间执行各种渲染操作,例如边缘增强、加亮(亮化)、减暗(暗化)等等。在其他实施例中,渲染操作可改变视频图像316的一些部分的颜色或亮度,从而生成透明着色(或亮光笔)效果或阿尔法合成效果。
渲染模块404接收两个输入,第一输入包含来自AP 202的视频图像316,并且第二输入包含来自覆盖缓冲器406的覆盖数据314。覆盖缓冲器406存储要被渲染模块404处理的覆盖数据314。覆盖数据314可由AP 202提供或者在覆盖系统310中内部创建,其中覆盖数据314的特性由渲染模块404的期望输出来确定。在一个实施例中,沿着显示线条100将覆盖数据314的特性(例如外观)与视频图像316的特性(例如外观)相匹配,以使得当根据掩模数据500来渲染时,组合显示图像510包含图像片段506和覆盖图像片段508之间的无缝过渡。这些特性可包括颜色。例如,如果应用软件描绘一条黑线,则覆盖数据314将由AP 202提供或由覆盖系统310内部创建为包含与软件描绘的线条相同的黑色(例如,所有像素为黑的位图图像)。渲染模块404将输出组合显示图像510,该组合显示图像510包含通过邻接来自AP 202 的图像片段506(例如软件描绘的黑线)和由掩模数据500及覆盖数据314确定的覆盖图像片段508来形成的黑线。覆盖数据314也可被纹理化或着色,或者可包括位图图像数据。覆盖数据314的内容可随着时间而动态变化并且可被AP 202更新,或者由DDIC 204内的机制更新。内容在大小和形状上也可以是动态变化的。
在本发明的一个实施例中,表示多个覆盖的多个不同的覆盖数据314的组可被存储在覆盖缓冲器406中,例如每组具有不同的颜色、不同的图像或不同的纹理。这些覆盖数据314的组在本文中可称为“页面”。在这种实施例中,掩模数据500中的值还可包括允许渲染模块404在渲染操作期间识别覆盖数据314的(一个或多个)特定页面并且只使用识别出的(一个或多个)页面的信息。这样,在一些实施例中,掩模数据500的值包含对覆盖数据314的页面的索引,以允许渲染模块404在渲染操作期间在覆盖数据314的不同页面之间切换。
在本发明的一个实施例中,覆盖数据314的每个页面的值的数目(或每个页面的大小)等于视频图像316的一个帧中的像素的数目,而视频图像316的一个帧中的像素的数目进而又等于组合显示图像510中的像素的数目。从而,覆盖数据314的每个页面的每个值与视频图像316的每个像素之间存在一对一关系。
在本发明的另一实施例中,覆盖数据314的每个页面的值的数目(或者每个页面的大小)可以小于视频图像316的一帧中的像素的数目。从而,覆盖数据314的每个页面的每个值可与视频图像316的像素具有一对多关系,使得覆盖数据314的每个页面的一个值对应于视频图像316的多个像素,从而减小了覆盖数据314的大小并且降低了覆盖缓冲器406的存储要求。例如,在一些实施例中,覆盖数据314包含单一颜色值,例如RGB(红绿蓝)颜色值,其中整个覆盖图像(或者覆盖图像片段)508被描绘为该单一颜色值。在其他实施例中,覆盖数据314的不同页面是对应于单一颜色(例如不同颜色)的单一值。在其他实施例中,单一值可与包含位图图像的其他页面或者覆盖数据314内的其他值相搀杂。
图5B是图示出根据本发明的一个实施例的用于将覆盖数据与视频图像相组合以生成组合显示图像的方法的流程图。参考图5B,根据本发明的一个实施例,在操作552中,从触摸控制器200接收触摸事件。触摸路径(或估 计触摸路径)是在操作554中由触摸路径模块400通过例如在触摸事件之间进行内插或外推来根据触摸事件生成的。内插的触摸点在操作556中被LUT生成器401处理来生成坐标阵列,这些坐标阵列被存储在LUT 402中。在操作558中,控制模块403利用LUT 402中存储的坐标阵列为每一行生成掩模数据500,其中掩模数据指示组合显示图像的相应像素是应当包含来自覆盖缓冲器406的覆盖数据还是来自AP 202的视频图像数据,还是其混合组合。
在操作560中,掩模数据500的与显示面板中的像素的当前正处理的行的位置相对应的值被渲染模块404用来选择性地输出来自覆盖缓冲器406的覆盖数据或者来自AP 202的视频图像,或者其混合。
在操作562中,显示图像的组合行被输出并提供给显示面板以与给定行的视频图像合成地显示覆盖数据314。该过程被应用到图像的每一行以生成组合数据(或者整个组合图像帧)。
图6A是根据本发明的一个实施例的查找表生成模块401的示意性图示。查找表生成模块401被配置为基于触摸输入数据生成与掩模相对应的查找表。
图6B是图示出根据本发明的一个实施例的用于如操作556中那样、基于触摸输入数据生成要存储在查找表中的表示线条的形状的坐标阵列的方法的流程图。
参考图6A和图6B,在操作652中,查找表生成模块401的线条宽度模块602从例如触摸路径模块400接收内插的点(以及压力信息)。如图6A所示,在工作示例中,用户描绘的线条的内插触摸点包括坐标[(14,5),(10,9),(10,15),(12,18)]。在操作654中,线条宽度模块602还从软件接收线条宽度设定(例如,作为从AP 202接收的参数312之一)。
在操作656中,线条宽度模块602生成与用户描绘的线条的“加宽”版本相对应的一组点。在图6A所示的工作示例中,线条宽度设定是4个像素,并且线条宽度模块602识别出沿着与触摸路径垂直的方向距离触摸点2个像素(线条宽度/2)的坐标。在本发明的一个实施例中,与触摸路径垂直的方向可通过计算相邻点之间的斜率的平均值的倒数来估计。
例如,对于点(10,9),从前一触摸点(14,5)到(10,9)的斜率是“1”,因为(14,5)在(10,9)的右侧第4列和上方第4行并且4/4=1。到下一触摸点(10,15)的斜率是“0”,因为其与(10,9)在同一行中。因此,从前一触摸点到下一触摸点的斜 率的平均值是1/2。这样,与此斜率垂直的线条的斜率是-2。沿着具有斜率-2、经过(10,9)的线条在任一方向上距离2像素的最近像素在(12,10)和(8,8)。
例如,如以下的表1中所示,线条的每个坐标被映射到两对坐标:
表1
在本发明的一些实施例中,压力信息也被用于改变每个触摸点处的线条的宽度。例如,压力信息可用于在每个触摸点处缩放来自处理器的线条宽度以使得所得到的线条宽度在高压力的位置更宽并且在低压力的位置被设定得更窄。
这样,在操作656中,生成提供掩模的形状的轮廓的一组轮廓点。轮廓点被提供给LUT生成模块401的边缘识别器模块604。
在操作658中,边缘识别器模块604从轮廓点识别左边缘点(例如,限定轮廓的左边缘的点;在图7A中被表示为“L”点)和右边缘点(在图7A中被表示为“R”点)。左边缘点限定与在从左到右“进入”形状时穿过的该形状的边界相对应的左边缘。类似地,右边缘点限定与在从左到右“离开”形状时穿过的该形状的边界相对应的右边缘,其中原始触摸点(在图7A中被表示为X)被认为在该形状的“内部”。左边缘点被存储在左边缘阵列中,并且右边缘点被存储在右边缘阵列中。除了点以外,每个阵列还包括指派的索引(下文参考图7A描述)。
在操作660中,整理模块606按行坐标对左边缘阵列中的左边缘点和右边缘阵列中的右边缘点进行整理以生成经整理的坐标阵列,经整理的坐标阵列随后被存储在LUT 402中。
图7A是根据本发明的一个实施例的用于基于形状的轮廓的坐标来确定该形状的一组左边缘和一组右边缘的方法的图示。
如图7A所示,在一个实施例中,边缘识别器604向左边缘阵列添加作为左边缘的一部分的左边缘点并且向右边缘阵列添加作为右边缘的一部分的点。与左边缘和右边缘之间的过渡相对应的一些点出现在左边缘阵列和右边 缘阵列两者中(例如,如图7A所示的(16,7)、(12,14)、(8,16)和(14,17))。左边缘阵列和右边缘阵列中的每个点被指派一索引。出现索引值中的间隙来表明两个条目是脱离的。例如,从(16,7)到(12,3)、从(12,3)到(8,8)和从(8,8)到(8,16)的边缘都是“L”边缘,因此坐标(16,7)、(12,3)、(8,8)和(8,16)分别被标记为L0、L1、L2和L3。然而,从(12,14)和(14,17)的下一个“L”边缘与其他“L”边缘是脱离的。因此,没有坐标L4,并且坐标(12,14)和(14,17)分别被标记为L5和L6。
水平边缘,例如从(8,8)到(8,16)和从(12,10)到(12,14)的那些,可被标记为“L”边缘或“R”边缘,而对结果没有任何改变。
图7B是图示出根据本发明的一个实施例的用于基于形状的轮廓的坐标来生成该形状的一组左边缘和一组右边缘的方法的流程图。参考图7B,在操作751中,边缘识别器604被配置为从线条宽度模块602接收与线条相对应和与轮廓相对应的坐标。触摸坐标可被分组为相继的触摸坐标的对(例如,第一组包括第一和第二触摸坐标,第二组包括第二和第三触摸坐标,并且第三组包括第三和第四触摸坐标)连同相应的轮廓坐标(例如,如图7A所示,第一组包括点(12,3)、(8,8)、(16,7)和(12,10),第二组包括点(8,8)、(8,16)、(12,14)和(12,10),并且第三组包括点(8,16)、(10,19)、(14,17)和(12,14))。在操作753中一次一组地选择每一组。在操作755中,基于两个相邻的触摸坐标之间的中点来计算中心点。例如,如图7A所示,第一组的中心点位于(12,7)处(标记为“1”),即在(14,5)和(10,9)处的第一组的两个触摸点之间的中点。
在操作757中,该组的轮廓坐标被分类为“顶”、“底”、“左”和“右”坐标,其中每一类轮廓坐标被分类为四类坐标中的恰好一类。具有最小y值的坐标被分类为“底”坐标,并且具有最大y值的坐标被分类为“顶”。此外,具有最小x值的轮廓坐标被分类为“左”,并且具有最大x值的轮廓坐标被分类为“右”。如果多于一个的点具有相同的y值,则任一者可被选择来用作“顶”或“底”点。类似地,如果多于一个的点具有相同的x值,则任一者可被选择来用作“左”或“右”点。这些点随后被用于形成线段。在操作759中,包括左坐标(例如,图7A中的第一组的(12,3))的线段被分类为“L”边缘(例如,(12,3)和(8,8)之间的线段和(12,3)和(16,7)之间的线段),并且在操作761中,所有其他线段被分类为“R”边缘(例如,(8,8)和(12,10)之间的线段和(16,7)和(12,10)之间的线段)。
在操作763中,将所识别的线段与已经在边缘阵列中的边缘相比较。因为这是第一组,所以在边缘阵列中不存在已有边缘,因此在操作765中所有四个边缘全都被添加到边缘阵列。在操作767中,边缘识别器604确定是否有更多的组要处理。例如,边缘识别器可基于第二和第三触摸坐标(例如,图7A中的(10,9)和(10,15))来识别第二组并且该过程可对第二组重复。当处理第二组时,线段之一将连接点(8,8)和(12,10)。因为在处理第一组时该线段已经被添加到右边缘阵列,所以该线段在操作763中被从右边缘阵列去除并且在操作765中不被重插入,因为其是“内部”边缘(或者在形状的内部)。
在所有组都已被处理之后,在操作769中输出左边缘阵列和右边缘阵列。
图8A是根据本发明的一个实施例的基于表示形状的查找表来生成掩模的一行的示意图。具体地,图8A描绘了生成掩模数据的第11行,作为用于生成掩模的所有行的操作的示例。图8B是图示出根据本发明的一个实施例在操作558中(例如参见图5B)基于表示形状的查找表来生成掩模的一行的方法的流程图。
参考图8A和图8B,控制模块403的行计数器模块802从诸如AP 202之类的外部源接收HSYNC和VSYNC信号。在操作851中,行计数器模块802与HSYNC和VSYNC信号同步地生成当前行标识符(例如,从第一行起计数直到最末行为止)。例如,在一个实施例中,行计数器模块802响应于接收到第r个HSYNC信号而输出数字r,并且在每次其接收到VSYNC信号时复位该计数器,表明新帧的开始。如图8A的示例中所示,行计数器802在输出“11”作为当前行。
在操作853中,通过在LUT 402中查找行坐标在当前行r的k行内的条目(换言之,落在r–k和r+k之间的条目)来识别当前行r附近的边缘位置。在图8A的示例中,k被设定为3,因此LUT 402返回行8和14之间的条目(由图8A中的虚线指示)并且排除(16,7),因为行16在附近行的范围之外。
左边缘阵列和右边缘阵列被提供给计算器804,并且在操作855中,计算器804基于所识别的边缘位置来计算一个或多个开始和停止位置。为了识别开始和停止位置,计算器804通过识别相邻的点(例如,具有连续的第一值的点,比如(2,8,8)和(3,8,16))来从附近行中识别边缘。计算器804随后确定这些边缘中的每一个是否穿过当前行,并且如果是,则确定这些边缘穿过当前行处的列(例如,(1,12,3)和(2,8,8)之间的边缘在列4穿过行11)。开始 和停止位置随后被收集并按列号来整理并且被提供给像素填充模块806。
图9是图示出根据本发明的一个实施例的当基于计算器的输出来生成掩模的一行时像素填充模块806的操作的示意图。像素填充模块806从计算器接收开始和停止位置并且输出具有与掩模的长度相等的长度的一行的掩模数据。在一个实施例中,在操作857中,像素填充模块806通过将阵列初始化到第一值(例如,“0”)并随后将从开始位置起直到停止位置为止的所有比特设定到第二值(例如,“1”)来执行像素填充操作。在另一实施例中,像素填充模块806根据当前位置是否在开始和停止位置之间来迭代地将阵列中的每个值设定到第一值或第二值。
在一个实施例中,存在多个开始和停止位置,因此像素填充模块806对于每一行计算多个阵列。像素填充模块806利用按位或(bitwise or operation)操作来组合这多个阵列。
在操作859中,像素填充模块806输出经像素填充的比特流作为一行的掩模数据来控制渲染模块404。如上文关于图5A和图5B所述,掩模数据500用于控制覆盖数据406与视频帧316的组合以便生成组合数据。
这样,本发明的实施例涉及用于为计算出的触摸路径的覆盖生成掩模数据的系统和方法,其中掩模数据被存储在查找表中并且具有降低的存储要求。
低延时显示图像可通过组合来自从触摸路径生成的掩模数据500的信息、来自覆盖缓冲器的覆盖数据314和来自AP 202的高延时视频图像来生成。触摸路径是根据随着时间的流逝而记录的触摸事件(例如,来自触摸控制器的输出)来计算的。覆盖数据314可由AP 202提供或在覆盖系统中生成。
可以动态调整覆盖特性,包括但不限于颜色、尺寸(例如宽度)、持续性、明暗以及定时。这些调整可由AP 202以一组参数的形式提供或者可在覆盖系统内部例如通过分析来自AP 202的视频图像来得出。这些调整也可由触摸行为来确定。例如,可根据施加到触摸传感器面板的压力来调整所得到的线条的宽度(例如,宽度参数与测量到的触摸事件的压力成比例)。
显示图像由覆盖系统经由掩模数据500来生成,掩模数据500是从触摸路径计算出的。映射和缩放参数可由AP 202提供或者可在覆盖系统内部通过例如分析触摸事件或来自AP 202的视频图像来计算出。
渲染模块可在像素级将覆盖数据与来自AP 202的视频图像融合。在一个实施例中,根据掩模数据的值利用来自覆盖数据的像素特性替代来自视频图 像的像素特性。在其他实施例中,基于来自视频图像和覆盖数据的相应像素特性的混合来创建新的像素特性。
虽然已联系某些示范性实施例描述了本发明,但要理解本发明不限于公开的实施例,而是相反,打算涵盖包括在所附权利要求及其等同物的精神和范围内的各种修改和等同布置。
Claims (20)
1.一种用于将覆盖数据与视频图像相组合的系统,包括:
触摸路径模块,用于接收多个触摸事件并基于所述触摸事件生成输出;
控制模块,用于确定限定形状的边界的多个点,所述形状是基于所述触摸路径模块的输出来确定的;以及
渲染模块,用于:
接收视频图像;
根据所述多个点将所述视频图像与覆盖数据相组合来生成组合显示图像;以及
输出所述组合显示图像。
2.如权利要求1所述的系统,其中,所述组合显示图像包括多行,
其中,每个所述点包括行坐标,
所述控制模块还用于:
将所述多个点分类为左边缘点和右边缘点;
按行坐标来整理所述左边缘点;以及
按行坐标来整理所述右边缘点,并且
对于所述组合显示图像的多行中的当前行,所述控制模块还用于:
基于所述当前行与由所述左边缘点之中的第一左边缘点和所述左边缘点之中的第二左边缘点限定的左边缘之间的左交点来确定开始条目;
基于所述当前行与由所述右边缘点之中的第一右边缘点和所述右边缘点之中的第二右边缘点限定的线条之间的右交点来确定停止条目;以及
基于所述开始条目和所述停止条目为所述当前行生成包括多个条目的行掩模,
所述渲染模块还用于:
根据所述行掩模对于所述当前行将所述视频图像与所述覆盖数据相组合。
3.如权利要求2所述的系统,其中,所述当前行包括多个条目,
其中,所述行掩模的每个条目具有第一掩模值或第二掩模值,
对于所述当前行的每个条目,所述渲染模块还用于:
当所述行掩模的相应条目具有第一值时输出所述覆盖数据;以及
当所述行掩模的相应条目具有第二值时输出所述视频图像。
4.如权利要求3所述的系统,其中,所述行掩模的在所述开始条目和所述停止条目之间的每个条目具有所述第一掩模值。
5.如权利要求2所述的系统,还包括用于在查找表中存储所述左边缘点和所述右边缘点的存储器。
6.如权利要求1所述的系统,其中,所述控制模块还用于基于线条宽度参数来确定限定所述形状的边界的所述多个点。
7.如权利要求1所述的系统,其中,所述触摸事件包括触摸压力信息,并且
其中,所述控制模块还被配置为基于所述触摸压力信息来确定限定所述形状的边界的所述多个点。
8.一种用于将覆盖数据与视频图像相组合的方法,所述方法包括:
接收所述视频图像;
从触摸路径模块接收触摸路径;
确定限定形状的边界的多个点,所述形状是基于所述触摸路径来确定的;
将所述视频图像与所述覆盖数据相组合来生成组合显示图像;以及
输出所述组合显示图像。
9.如权利要求8所述的方法,其中,所述组合显示图像包括多行,
其中,每个所述点包括行坐标,并且
其中,所述方法还包括:
将所述多个点分类为左边缘点和右边缘点;
按行坐标来整理所述左边缘点;
按行坐标来整理所述右边缘点;
基于所述多行之中的当前行与由所述左边缘点之中的第一左边缘点和所述左边缘点之中的第二左边缘点限定的左边缘之间的左交点为所述当前行确定开始条目;
基于所述当前行与由所述右边缘点之中的第一右边缘点和所述右边缘点之中的第二右边缘点限定的右边缘之间的右交点为所述当前行确定停止条目;
基于所述开始条目和所述停止条目为所述当前行生成包括多个条目的行掩模;以及
根据所述行掩模对于所述当前行将所述视频图像与所述覆盖数据相组合。
10.如权利要求9所述的方法,其中,所述当前行包括多个条目,
其中,所述行掩模的每个条目具有第一掩模值或第二掩模值,并且
其中,将所述视频图像与所述覆盖数据相组合包括:
当所述行掩模的相应条目具有第一值时输出所述覆盖数据;以及
当所述行掩模的相应条目具有第二值时输出所述视频图像。
11.如权利要求10所述的方法,其中,所述行掩模的在所述开始条目和所述停止条目之间的每个条目具有所述第一掩模值。
12.如权利要求9所述的方法,还包括在查找表中存储所述左边缘点和所述右边缘点。
13.如权利要求8所述的方法,还包括基于线条宽度参数来确定限定所述形状的边界的所述多个点。
14.如权利要求8所述的方法,其中,所述触摸路径包括触摸压力信息,并且
其中,所述方法还包括基于所述触摸压力信息来确定限定所述形状的边界的所述多个点。
15.一种显示系统,包括:
触摸面板;
显示面板;
应用处理器;
触摸路径模块,用于从所述触摸面板接收多个触摸事件并基于所述触摸事件生成输出;
控制模块,用于确定限定形状的边界的多个点,所述形状是基于所述触摸路径模块的输出来确定的;以及
渲染模块,用于:
从所述应用处理器接收视频图像;
根据所述多个点将所述视频图像与覆盖数据相组合来生成组合显示图像;以及
将所述组合显示图像输出到所述显示面板。
16.如权利要求15所述的系统,其中,所述组合显示图像包括多行,
其中,每个所述点包括行坐标,
所述控制模块还用于:
将所述多个点分类为左边缘点和右边缘点;
按行坐标来整理所述左边缘点;以及
按行坐标来整理所述右边缘点,并且
对于所述组合显示图像的多行中的当前行,所述控制模块还用于:
基于所述当前行与由所述左边缘点之中的第一左边缘点和所述左边缘点之中的第二左边缘点限定的左边缘之间的左交点来确定开始条目;
基于所述当前行与由所述右边缘点之中的第一右边缘点和所述右边缘点之中的第二右边缘点限定的线条之间的右交点来确定停止条目;以及
基于所述开始条目和所述停止条目为所述当前行生成包括多个条目的行掩模,
所述渲染模块还用于:
根据所述行掩模对于所述当前行将所述视频图像与所述覆盖数据相组合。
17.如权利要求16所述的系统,其中,所述当前行包括多个条目,
其中,所述行掩模的每个条目具有第一掩模值或第二掩模值,
对于所述当前行的每个条目,所述渲染模块还用于:
当所述行掩模的相应条目具有第一值时将所述覆盖数据输出到所述显示面板;以及
当所述行掩模的相应条目具有第二值时将所述视频图像输出到所述显示面板,
其中,所述行掩模的在所述开始条目和所述停止条目之间的每个条目具有所述第一掩模值。
18.如权利要求16所述的系统,还包括用于在查找表中存储所述左边缘点和所述右边缘点的存储器。
19.如权利要求15所述的系统,其中,所述控制模块还用于基于从所述应用处理器接收的线条宽度参数来确定限定所述形状的边界的所述多个点。
20.如权利要求15所述的系统,其中,所述触摸事件包括触摸压力信息,并且
其中,所述控制模块还被配置为基于所述触摸压力信息来确定限定所述形状的边界的所述多个点。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461973149P | 2014-03-31 | 2014-03-31 | |
US61/973,149 | 2014-03-31 | ||
US14/663,399 | 2015-03-19 | ||
US14/663,399 US9710098B2 (en) | 2014-03-31 | 2015-03-19 | Method and apparatus to reduce latency of touch events |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104951129A true CN104951129A (zh) | 2015-09-30 |
CN104951129B CN104951129B (zh) | 2019-12-24 |
Family
ID=52807615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510150326.7A Active CN104951129B (zh) | 2014-03-31 | 2015-03-31 | 将覆盖数据与视频图像相组合的方法和系统及显示系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9710098B2 (zh) |
EP (1) | EP2927794B1 (zh) |
KR (1) | KR102199357B1 (zh) |
CN (1) | CN104951129B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074189A (zh) * | 2016-02-02 | 2018-12-21 | 触觉实验室股份有限公司 | 用于对输入感测、渲染及显示进行定时以便最小化时延的系统和方法 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9483176B2 (en) * | 2013-07-08 | 2016-11-01 | Samsung Display Co., Ltd. | Method and apparatus to reduce display lag of soft keyboard presses |
KR102314110B1 (ko) * | 2014-09-16 | 2021-10-18 | 삼성디스플레이 주식회사 | 시각화 가속부를 포함하는 터치 표시 장치 |
US9804709B2 (en) * | 2015-04-28 | 2017-10-31 | Samsung Display Co., Ltd. | Vector fill segment method and apparatus to reduce display latency of touch events |
US9740310B2 (en) * | 2015-05-22 | 2017-08-22 | Adobe Systems Incorporated | Intuitive control of pressure-sensitive stroke attributes |
KR20170125366A (ko) * | 2015-05-28 | 2017-11-14 | 미쓰비시덴키 가부시키가이샤 | 입력 표시 장치, 입력 표시 방법, 및 프로그램 |
US9767590B2 (en) * | 2015-10-23 | 2017-09-19 | Apple Inc. | Techniques for transforming a multi-frame asset into a single image |
JP6784115B2 (ja) * | 2016-09-23 | 2020-11-11 | コニカミノルタ株式会社 | 超音波診断装置及びプログラム |
US20190087060A1 (en) * | 2017-09-19 | 2019-03-21 | Sling Media Inc. | Dynamic adjustment of media thumbnail image size based on touchscreen pressure |
KR102452620B1 (ko) | 2017-09-29 | 2022-10-07 | 삼성전자주식회사 | 터치 검출을 위한 장치 및 방법 |
CN110083430B (zh) * | 2019-04-30 | 2022-03-29 | 成都映潮科技股份有限公司 | 一种系统主题色更换方法、装置及介质 |
KR20210137710A (ko) | 2020-05-11 | 2021-11-18 | 삼성전자주식회사 | 빠른 터치 반응성을 가지는 터치 및 디스플레이 제어 장치, 이를 포함하는 디스플레이 장치 및 이의 구동 방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040196255A1 (en) * | 2003-04-04 | 2004-10-07 | Cheng Brett Anthony | Method for implementing a partial ink layer for a pen-based computing device |
CN102253802A (zh) * | 2010-06-22 | 2011-11-23 | 微软公司 | 墨水滞后补偿技术 |
US20110298807A1 (en) * | 2010-06-07 | 2011-12-08 | Samsung Electronics Co., Ltd. | Touch screen and display method |
CN102414649A (zh) * | 2009-04-30 | 2012-04-11 | 辛纳普蒂克斯公司 | 按照多个规则集合来操作触摸屏控制系统 |
US20130091449A1 (en) * | 2011-10-06 | 2013-04-11 | Rich IP Technology Inc. | Touch processing method and system using a gui image |
US20130265239A1 (en) * | 2012-04-05 | 2013-10-10 | Research In Motion Limited | Electronic device and method of controlling display of information on a touch-sensitive display |
US20130293554A1 (en) * | 2012-05-04 | 2013-11-07 | Canon Kabushuki Kaisha | A method for stroking paths |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000517445A (ja) * | 1996-08-28 | 2000-12-26 | ヴィーア・インコーポレイテッド | タッチ画面装置及び方法 |
US8184102B2 (en) | 2008-12-17 | 2012-05-22 | Cypress Semiconductor Corporation | Finger gesture recognition for touch sensing surface |
US8890771B2 (en) * | 2010-01-06 | 2014-11-18 | Apple Inc. | Transparent electronic device |
US8847961B2 (en) * | 2010-06-14 | 2014-09-30 | Microsoft Corporation | Geometry, speed, pressure, and anti-aliasing for ink rendering |
KR20110138095A (ko) | 2010-06-18 | 2011-12-26 | 삼성전자주식회사 | 터치 시스템에서 좌표 보정 방법 및 장치 |
US8913056B2 (en) * | 2010-08-04 | 2014-12-16 | Apple Inc. | Three dimensional user interface effects on a display by using properties of motion |
KR20130050606A (ko) | 2011-11-08 | 2013-05-16 | 삼성전자주식회사 | 터치스크린을 구비한 전자 기기에서 독서 실행 방법 및 장치 |
US9612739B2 (en) * | 2012-02-02 | 2017-04-04 | Microsoft Technology Licensing, Llc | Low-latency touch-input device |
US20130271487A1 (en) * | 2012-04-11 | 2013-10-17 | Research In Motion Limited | Position lag reduction for computer drawing |
US20140098072A1 (en) * | 2012-10-04 | 2014-04-10 | Research In Motion Limited | Method and apparatus pertaining to predicting movement of a stylus |
SG11201502619UA (en) * | 2012-10-05 | 2015-05-28 | Tactual Labs Co | Hybrid systems and methods for low-latency user input processing and feedback |
US9529525B2 (en) * | 2013-08-30 | 2016-12-27 | Nvidia Corporation | Methods and apparatus for reducing perceived pen-to-ink latency on touchpad devices |
-
2015
- 2015-03-19 US US14/663,399 patent/US9710098B2/en active Active
- 2015-03-26 EP EP15160947.6A patent/EP2927794B1/en active Active
- 2015-03-31 CN CN201510150326.7A patent/CN104951129B/zh active Active
- 2015-03-31 KR KR1020150045514A patent/KR102199357B1/ko active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040196255A1 (en) * | 2003-04-04 | 2004-10-07 | Cheng Brett Anthony | Method for implementing a partial ink layer for a pen-based computing device |
CN102414649A (zh) * | 2009-04-30 | 2012-04-11 | 辛纳普蒂克斯公司 | 按照多个规则集合来操作触摸屏控制系统 |
US20110298807A1 (en) * | 2010-06-07 | 2011-12-08 | Samsung Electronics Co., Ltd. | Touch screen and display method |
CN102253802A (zh) * | 2010-06-22 | 2011-11-23 | 微软公司 | 墨水滞后补偿技术 |
US20130091449A1 (en) * | 2011-10-06 | 2013-04-11 | Rich IP Technology Inc. | Touch processing method and system using a gui image |
US20130265239A1 (en) * | 2012-04-05 | 2013-10-10 | Research In Motion Limited | Electronic device and method of controlling display of information on a touch-sensitive display |
US20130293554A1 (en) * | 2012-05-04 | 2013-11-07 | Canon Kabushuki Kaisha | A method for stroking paths |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074189A (zh) * | 2016-02-02 | 2018-12-21 | 触觉实验室股份有限公司 | 用于对输入感测、渲染及显示进行定时以便最小化时延的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20150114433A (ko) | 2015-10-12 |
US9710098B2 (en) | 2017-07-18 |
CN104951129B (zh) | 2019-12-24 |
US20150277653A1 (en) | 2015-10-01 |
EP2927794A1 (en) | 2015-10-07 |
EP2927794B1 (en) | 2017-02-01 |
KR102199357B1 (ko) | 2021-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104951129A (zh) | 将覆盖数据与视频图像相组合的方法和系统及显示系统 | |
TWI611354B (zh) | 使用圖像重疊減少顯示延遲的系統及方法,以及用於提供回應顯示裝置上所畫路徑之回饋的加速器 | |
CN104951127B (zh) | 用于生成显示覆盖的系统和方法以及显示系统 | |
CN105022580B (zh) | 图像显示系统 | |
EP3089004B1 (en) | A vector fill segment method and apparatus to reduce display latency of touch events | |
KR102374160B1 (ko) | 스케일링을 사용하여 디스플레이 지연을 감소시키는 방법 및 장치 | |
US11175874B2 (en) | Image display method | |
US9811301B2 (en) | Terminal and apparatus and method for reducing display lag | |
KR102161745B1 (ko) | 터치 입력에 시각적 피드백을 제공하는 가속기, 터치 입력에 시각적 피드백을 제공하는 터치 입력 프로세싱 디바이스 및 방법 | |
CN104820489B (zh) | 管理低延时的直接控制反馈的系统和方法 | |
NL2023600B1 (en) | Method, device and computer program for overlaying a graphical image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |