CN106537305A - 触摸分类 - Google Patents
触摸分类 Download PDFInfo
- Publication number
- CN106537305A CN106537305A CN201580037941.5A CN201580037941A CN106537305A CN 106537305 A CN106537305 A CN 106537305A CN 201580037941 A CN201580037941 A CN 201580037941A CN 106537305 A CN106537305 A CN 106537305A
- Authority
- CN
- China
- Prior art keywords
- classification
- touch
- frame
- blob
- data
- 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 OR CALCULATING; 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
- G06F3/0418—Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
- G06F3/0418—Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
- G06F3/04186—Touch location disambiguation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/044—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/027—Frames
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Supplying Of Containers To The Packaging Station (AREA)
- Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
- Automatic Disk Changers (AREA)
- Sorting Of Articles (AREA)
Abstract
一种用于触摸分类的方法,该方法包括:获得表示由触敏设备捕捉的多个帧的帧数据;分析帧数据以定义多个帧中的每一帧中的相应团块,这些团块指示触摸事件;计算该触摸事件的多个特征集,每一特征集指定多个帧中的每一帧中的相应团块的属性;以及,经由机器学习分类来确定该触摸事件的类型,该机器学习分类被配置成基于多个特征集来为多个帧提供多个非双模分类分数,每一非双模分类分数指示该机器学习分类中的不确定度水平。
Description
附图描述
为更完全地理解本公开,参考以下详细描述和附图,在附图中,相同的参考标号可被用来标识附图中相同的元素。
图1是根据一个示例的被配置用于触摸分类的系统的框图。
图2是根据一个示例的用于触摸分类的计算机实现的方法的流程图。
图3是根据一个示例的图2的方法的非双模评分过程的流程图。
图4是根据另一示例的图2的方法的非双模评分过程的流程图。
图5是根据用于所公开的方法和系统或其一个或多个组件或方面的实现的一个示例的计算环境的框图。
尽管所公开的系统和方法易于具有各种形式的实施例,但在附图中示出了(并在下文描述了)各具体实施例,其中要理解,本公开旨在是说明性的,而不将本发明限于本文所描述和示出的各具体实施例。
详细描述
提供了用于对计算设备的触敏表面上的触摸事件进行分类的方法、系统和计算机程序产品。机器学习分类器被用来在有意和无意触摸之间进行区分。无意触摸事件可由用户手掌不经意地或者以其他方式接触触摸表面而引起。其他无意的触摸可包括拇指或手的其他部分在手持式设备的边框上。该区分可允许这样的无意触摸事件被计算设备拒绝或忽略。对无意触摸事件的拒绝与对有意触摸事件(诸如故意的手指或指示笔(或笔)触摸)的正确识别耦合可提供对计算设备的经改善的用户体验。在一些情况下,分类技术还可在不同类型的有意触摸之间(例如,在手指和笔触摸事件之间)进行区分。该区分还可包括生成指示分类的置信度或不确定度水平的数据。
这些分类技术可解决由被配置用于指示笔或笔触摸的触摸系统呈现的挑战。例如,在用指示笔或其他笔工具将标记施加到触敏表面上的过程中,用户可不经意地将他或她的手掌(或手或手腕的其他部分)放在该表面上。计算设备可能随后将该不经意的手掌接触不正确地解释为合法的输入活动,由此引起计算设备的可能不想要的行为。其他无意触摸可涉及用户意外地相对于该表面的其他部分滑刷或撞击手(或抓握在同一手中的笔或指示笔设备)。可通过这些分类技术解决的又一指示笔相关的挑战涉及正确地分类没有握持指示笔的手指,这样的手指通常接触屏幕。使事情更困难的是,当手掌在屏幕的边缘附近向下触摸时,仅该手掌的一小部分可被触敏表面检测到。尽管手掌与触敏表面接触的面积减小了,这些分类技术还可正确地分类手掌。
这些分类技术可实时地提供在有意触摸和无意触摸之间进行可靠地区分的低计算复杂性过程。这些技术可实现低错误率,而不会在用户界面响应性方面引入不合适的延迟。假肯定(输入无意触摸)和假否定(错过的有意触摸)通过机器学习分类器的配置和/或这些技术的其他方面来避免。机器学习分类器可经由针对(例如,来自多个人的)每一类型的触摸收集的传感器图像(或帧数据)来训练。这些分类技术由此不必为了使用户界面处理时的等待时间最小化而依赖于简单算法。机器学习分类实时地提供可靠的分类,即不会引入等待时间影响。
准确性方面的改善可在有不同量的存储器和其他计算资源可用的计算设备中被实现。不同的机器学习分类器可被用于适应不同的资源水平。例如,在一些情况下,机器学习分类器被配置为随机决策森林(RDF)分类器,该随机决策森林(RDF)分类器被配置成提供条件概率分布。RDF分类器可涉及在数万字节的存储器的量级上对RDF树数据结构的存储。RDF实现可由此在触摸分类发生在软件级(诸如操作系统级)的情况下对通用处理器(例如,中央处理单元或图形处理单元)有用。
分类技术还可在其中存储器和其他计算资源被更多约束的计算环境中实现。在一些情况下,机器学习分类经由被实现为一个或多个查找表的决策树分类器来提供。当分类由微控制器和其他资源受限硬件来实现时,查找表的较小的分类数据结构是有用的。分类计算由此可在各种各样的计算平台上实现。虽然以下结合RDF和查找表示例来进行描述,但分类技术不限于任何特定类型的机器学习分类器。例如,可使用神经网络、模糊逻辑、支持向量机和逻辑回归分类器。
分类技术被配置成在触摸事件的多个帧上聚集触摸信息以改善分类的准确性。该聚集避免了在尝试仅基于单个图像或帧来对触摸事件进行分类时可引起的问题。例如,当手掌首先与表面接触时,或者当手掌几乎已从表面移走时,手掌可表现为类似于有意触摸。在任一点,仅手掌的一小部分可被检测到。在一些情况下,聚集涉及聚集在多个帧上的分类分数。在其他情况下,聚集涉及聚集在多个帧上触摸事件的属性或特征。在又一些情况下,分类技术可使用这两种类型的聚集的组合。聚集还可有助于避免由其他情况(诸如在通常大面积的手掌触摸由于用户正处于电悬浮状态(例如,用户不具有良好的到地的高频连接)而趋于消失时)引起的假肯定。
机器学习分类器被配置成提供多个非双模分类分数。在机器学习分类中,每一非双模分类分数都指示机器学习分类中的不确定度或置信度水平。分类分数的性质可根据例如所使用的分类器的类型而变化。例如,每一分类分数在该分类分数是概率值(例如,浮点或落在0和1之间的其他非整数数字)的意义上可以是非双模的。可提供多个概率值(例如,每一类型的触摸事件一个概率值)。其他类型的分类分数可改为使用整数数字。例如,分类分数可以是落在可能分数范围(例如,-9到+9)内的分数评级。在这样的情况下,多个非双模分数可被组合(例如,相加)以确定最终的复合评级。例如,可为每一帧组合来自多个查找表的非双模分数,其随后可跨与触摸事件相关联的所有帧被聚集。可使用其他类型的非双模分数。例如,分类分数的概率和评级类型可在变化的程度上被集成以提供混合分类办法。
术语“手指触摸”在本文中被用于指代涉及用户的手或其他身体部位的任何故意或有意的触摸事件。例如,手指触摸可涉及拇指的侧面接触触敏表面,这可例如在双手指缩放姿势期间发生。该触摸可以是直接或间接的。例如,触摸可用带手套的手或以其他方式着装的身体部位作出。
术语“笔触摸”用于指代涉及笔、指示笔或由用户握持来与触敏表面交互的其他对象的各种不同的有意触摸。计算设备可被配置为供与各种不同的或经标记的物理对象一起使用,物理对象包括圆盘、诸如刷子或喷枪之类的专用工具、移动设备、玩具和其他物理图标或有形对象。
术语“触摸”被用于指代由与触敏表面相关联的输入传感器检测到的与触敏表面的任何交互。触摸可不包括或涉及直接物理接触。交互可以是间接的。例如,触敏表面可被配置为具有邻近度传感器。该交互可经由各种物理属性(诸如电磁场)来检测。触摸的性质和/或源可由此变化,包括例如手指或手接触、笔或指示笔接触、基于悬停的输入、经标记的对象、和被放置为与输入表面接触或以其他方式邻近于触摸表面的任何其他对象。因此,结合涉及投射电容、光学和/或其他感测技术的姿势和悬停类型的触摸事件,这些分类技术可以是有用的。
术语“手掌”和“手掌触摸”被用于指代涉及用户不旨在解释为触摸或与触敏表面的其他交互的任何一个或多个身体部位的接触或其他触摸表面交互。这些身体部位可包括手的除手掌以外的其他部位,诸如手的指节、手指的侧面、手腕或前臂、或者其他身体部位。
这些分类技术可对各种手持式和其他计算设备有用。因此,触敏表面以及由此与触敏表面的交互的性质可以变化。由此,有意触摸不限于涉及用户的指尖或手指。结合具有一个或多个触敏表面或区域(例如,触摸屏、触敏边框或外壳、用于检测悬停类型的输入的传感器、光学触摸传感器等)的任何触敏计算设备,这些分类技术是兼容并有用的。基于触摸的计算设备的示例包括但不限于连接到计算设备的触敏显示设备、触敏电话设备、触敏媒体播放器、触敏电子阅读器、笔记本、上网本、电子书(双屏)、或平板型计算机、或者具有一个或多个触敏表面的任何其他设备。由此,触敏计算设备的尺寸和形状因子可以变化。例如,触敏表面的尺寸的范围可从手持式或可穿戴计算设备的显示器到壁挂式显示器或其他大尺寸显示屏。然而,触敏表面可以或可以不与显示器或触摸屏相关联,或者可以或可以不包括显示器或触摸屏。例如,触敏表面可作为跟踪垫来提供,或者可以是在空间上被实现为用于检测触摸输入的平面(例如如可使用微软公司的Kinect设备来实现)的虚拟表面。
这些分类技术是结合电容触摸系统来描述的。尽管本文中参考了电容感测,但本文中描述的触摸分类技术不限于任何特定类型的触摸传感器。触敏表面可替换地使用电阻、声学、光学和/或其他类型的传感器。触敏表面可由此替换地检测压力、光照、位移、热量、电阻和/或其他物理参数方面的改变。触敏表面检测输入设备(诸如指示笔或笔)的方式可以变化。例如,笔可以是无源和/或有源的。任何有源笔都可发出或重传通过触敏表面检测到的信号。出于邻近度检测的目的,无源笔可包括干扰触敏表面的电磁场或其他特征的磁体或其他对象或材料(例如指示笔尖)。触摸传感器技术的性质的其他方面可以变化。
图1描绘了被配置成实现触摸分类的触敏设备100。设备100包括触摸系统102和触敏表面104。触敏表面104可以是触摸屏或其他触敏显示器。可包括任何数目的触敏表面104。在该示例中,设备100还包括处理器106和一个或多个存储器108。触摸系统102可用作触敏表面104与处理器106和存储器108所支持的操作环境之间的接口或其他中间件。处理器106可以是通用处理器,诸如中央处理单元(CPU)、图形处理单元(GPU)、或者任何其他专用处理器或处理单元。可包括任何数目的这样的处理器或处理单元。
触摸系统102可通信地耦合到处理器106和/或存储器108以提供指示触敏表面104处发生的触摸事件的数据。该触摸事件数据可指定触摸事件的位置和类型。该数据还可表示该类型指派的不确定度水平。更多、更少或替换信息可由触摸系统102结合事件类型一起提供。例如,触摸事件类型可与指示触摸事件标识码的数据一起被提供。触摸事件的位置和/或其他信息可由触摸系统102分开地提供。
在图1的示例中,触摸系统102包括一个或多个触摸传感器110、固件和/或驱动程序112、处理器114、和一个或多个存储器116。处理器114通信地耦合到每一存储器116和/或固件/驱动程序112。处理器114被配置成获得经由触敏表面104捕捉的帧数据。帧数据表示经由触敏表面104捕捉的多个帧。每一帧的帧数据可包括值或像素的矩阵,其一起形成触摸事件在表面104处发生的程度的图像。每一像素的值指示传感器110已在表面104上的特定位置处检测到的触摸量。帧数据可包括触摸传感器110的原始输出数据和/或包括原始输出数据的经处理的表示。
处理器114获得帧数据的方式可以变化。例如,帧数据可经由固件/驱动程序112来接收和/或通过访问存储器116来获得。
帧数据可替换地或附加地被处理器106获得。在一些情况下,处理器106出于实现触摸类型确定的目的而获得帧数据。在这样的情况下,处理器114可涉及控制传感器110和/或被配置成实现一个或多个预处理任务或其他任务来为确定作准备。帧数据的处理和触摸分类技术的其他方面可由处理器106和处理器114的任何组合实现。在其他示例中,出于获得并处理帧数据的目的,设备100包括单个处理器(即,处理器106、处理器114或不同的处理器)。
设备100中的触摸系统硬件的配置和布置可以变化。例如,每一触摸传感器100可替换地被配置为触敏表面104的组件。驱动程序和经由固件112提供的其他信息可替换地被存储在存储器116中。
处理器114被配置成执行存储在存储器116和/或存储器108中的多个指令集。这些指令集可被布置为相应的软件模块。各模块或其他指令集可被集成到任何所需程度。指令集包括团块定义指令118、特征计算指令120和机器学习分类指令122。团块定义指令118可涉及跨帧数据的多个帧为触摸事件定义团块或连接组分。相应的团块可被定义在其中发生触摸事件的每一帧中。特征计算指令120可涉及计算团块的属性或特征。每一特征可表征团块的可有助于标识触摸事件的类型的方面。机器学习分类指令122涉及通过机器学习分类基于特征集来确定触摸事件的类型。分类的输出包括多个非双模分类分数,该分数标识该分类的不确定度水平。结果,(诸)特征集可被应用于机器学习分类器以生成分类分数。结合以下多个示例描述每一指令集。可包括附加的指令、模块或指令集。例如,可包括用于基于机器学习分类器的输出来生成触摸类型和/或向处理器106或设备100的其他组件传送指示触摸类型的数据的一个或多个指令集。
处理器114被配置成执行团块定义指令118来分析帧数据以在多个帧中的每一帧中为触摸事件定义相应的团块。给定触摸事件可跨越任何数目的帧。在多个帧上的团块的定义确立在对触摸事件进行分类时要处理的输入数据。
团块定义指令118可使得处理器114执行多个预处理动作以使帧数据准备好供分析。例如,帧数据(例如,原始帧数据)可在该分析(例如,团块定义分析)之前被上采样和/或阈值化。对帧数据进行上采样可包括经由双线性插值的4倍或其他上采样速率。可使用其他上采样过程,诸如双三次、卷积和最近邻技术。可使用其他过程。在一些情况下,帧数据在不进行上采样、不进行阈值化、或不进行上采样且不进行阈值化的情况下被分析。例如,在其中查找表分类器被使用的一些情况下,帧数据不被上采样。
对帧数据进行阈值化可涉及消除帧数据中归因于噪声的小波动。例如,预定的强度阈值被用于将帧数据中具有低于该阈值的强度值的所有像素重置到0值。附加或替换滤波技术可被用于移除噪声。在其中帧数据被上采样的情况中,在该上采样之后实现阈值化。
帧数据阈值可不同于触摸系统102所使用的其他阈值。例如,帧数据阈值可低于被触摸系统102用来检测触摸事件的阈值。较低的阈值在检测在与表面104的实际接触之前和之后的手掌和/或其他触摸事件时可以是有用的。例如,检测紧接在接触之前的手掌(例如,手掌逼近表面104)可提供用于区分手掌触摸与有意触摸的目的的一个或多个附加数据帧。在一些情况下,该阈值可被确立为触摸系统阈值的可配置或预定百分比,其取决于触摸系统102检测到的阈值水平可以是可变阈值。
该阈值可替换地或附加地被配置成并涉及在逐像素的基础上生成帧数据的二进制表示。每一像素基于该像素的强度值相对于该阈值而为“打开”或“关闭”。帧数据的二进制表示可被用来简化用于定义帧数据中的团块的过程。
通过分析帧数据以确定哪些“打开”像素(例如,具有非零强度的像素)毗邻其他“打开”像素来在该帧数据中定义团块。这样的毗邻像素被认为彼此连接。连接像素的群组随后被认为是帧图像中的连接组分或团块。每一帧可具有多个团块,这些团块中的每一者可被分开地分类。跨整个帧数据集执行连接组分分析以检测该帧中的所有团块。团块定义指令118可引导处理器114出于跟踪和定向与每一团块有关的将来处理的目的向每一团块分配标识符。
在许多情况下,每一团块对应于触摸表面104的分立对象。然而,存在其中两个或更多个团块由同一对象引起的情况。例如,手掌的触摸接触有时被划分成两个或更多个分离的团块。在其他情况下,单个触摸团块是彼此太过接近的多个对象(例如彼此触摸的手指的指尖)的结果。帧数据的连接组分分析可由此包括对帧数据的进一步处理以解决这些潜在的难题。例如,团块定义指令118可使得处理器114进一步分析帧数据以确定团块拆分和/或团块合并是否被保证。
在团块拆分分析中,每一团块可被分析以确定该团块是否是属于接近的手指的多个指尖的接触的结果。该确定可使用分类器。被认为对应于多个手指的团块被拆分成分开的子团块以供分析。在一个示例中,基于局部最大值(例如,强度值大于或等于所有8个邻接邻居的像素)在团块中的位置来确定每一指尖接触的坐标。假定指尖位于团块中的每一强度局部最大值处,并通过将原始团块中的每一像素分配给与位置(例如,局部最大值)最接近该像素的指尖相关联的子团块来将团块分区成各子团块。
关于给定团块是否事实上是从多个指尖生成的决策可使用分类器来实现。在一个示例中,该分类器经由一个或多个决策树来实现。但是可使用各种不同的分类器。分类器可以是或可以不是机器学习式的。例如,分类器可基于经验或其他数据来手工实现。
在一个示例性团块拆分过程中,团块中具有高于或等于给定阈值的强度的所有局部最大值的坐标(其可以是子像素准确性)的列表被生成。该列表中的最大值按其最短遍历(即通过该列表中的所有局部最大值的最短路径)的可能次序之一来排序。从作为由对应于指尖的局部最大值达成的最小强度值的训练数据来找出阈值。
分类器所采用的特征可以是或包括团块的面积、局部最大值的数目、(即,采用其最短遍历次序的)经排序的群组中的各连贯局部最大值之间的距离、以及沿着连接经排序的群组中的各连贯局部最大值的线的强度变化。分类器可由此被配置成对各局部最大值之间的距离以及强度落在各局部最大值之间的程度作出响应。
一旦团块已被认为对应于多个指尖,该团块被拆分成各分开的团块,每一团块与局部最大值中的相应一个局部最大值相关联。每一这样的团块由来自原始团块的像素的子集形成,或者包括来自原始团块的像素的子集。原始团块中的像素与具有较接近(或最接近)的局部最大值的新团块中的相应新团块相关联。
在触摸分类方面涉及更多复杂性的情况下,可实现团块拆分。例如,在随机决策森林分类器被用于触摸分类的情况下,可实现团块拆分。在其他情况下,包括查找表和其他低资源分类器用于触摸分类的一些情况,不实现团块拆分。尽管如此,在任一这些情况下都可实现或不实现团块拆分。
在团块拆分未被实现的情况下,团块定义指令118可引导处理器114标识并存储每一团块内的局部最大值。随着每一最大值被标识出,后续帧中的每一团块(例如,在每一团块内找到的局部最大值)的改变可被跟踪。例如,如果在指尖分散开时团块变成两个分开的团块,则局部最大值可被用来支持对这两个分开的团块的分开的分类。最大值的位置可附加地或替换地被用来将触摸事件与由触摸系统102的其他部分检测到潜在触摸相关。例如,固件112、存储器116和/或另一存储器可包括涉及检测触摸事件而无需分类的指令。
团块合并可被实现为替换的或附加的团块定义过程。在团块合并时,紧密间隔的团块被合并在一起以形成单个团块。合并可被实现以使稍后处理和分类的团块的数目最小化。因此,合并可在查找表和其他低资源分类平台中被实现。合并还可有用于将接近手指触摸与相应的手掌合并。团块被合并在一起的距离可以是可配置的。在一个示例中,该距离是两个图像像素,其在一些触摸系统中可对应于大致9毫米。
在一些情况下,团块定义指令118还包括引导处理器114向踪迹分配团块的指令。术语“踪迹”被用来指代由特定对象在一系列连贯帧上(例如,在该对象与表面104接触时)生成的团块的集合(以及底层的帧数据)。踪迹分配和定义可在任何团块拆分或合并之后被实现。踪迹的定义允许跟踪团块跨多个帧经历的移动和其他改变。通过向特定踪迹分配团块,相应帧中的团块可彼此关联作为同一触摸事件的一部分。例如,各后继帧中的多个团块可彼此关联作为涉及用户指尖以滑刷姿势跨表面104移动的触摸事件的一部分。每一新团块可被分配给新踪迹或活动踪迹。活动踪迹是已经被定义为先前帧的踪迹的踪迹。
在一些情况下,可经由对相应帧中的团块的双向匹配或其他分析来向各活动踪迹分配新团块。各种匹配技术可被用来将在当前帧中检测到的团块与先前帧中的团块相关联。双向匹配中采用的成本函数可基于每一新团块的位置和如从先前踪迹的迹线中估计的每一踪迹的接触点的预期位置之间的距离。由每一后继帧呈现的团块确定扩展还是移除踪迹。
触摸系统102存储活动踪迹及其相关联的属性的列表。在图1的示例中,该列表被存储在数据库124中,该数据库124进而可被存储在存储器116之一中。可使用其他存储位置和/或数据结构。将不可通过当前团块来扩展的踪迹从活动踪迹列表中移除。对于不可被匹配到任何现有活动踪迹或不可以其他方式与任何现有活动踪迹相关联的每一团块,新活动踪迹被添加到该列表中。团块定义指令118可被配置成经由踪迹标识符(诸如踪迹ID号)将团块与踪迹相关联。
当踪迹变得成熟时,团块定义指令118可将控制传递给团块特征计算指令120。当某踪迹已被扩展至少预定数目的帧时,该踪迹被认为是成熟的。例如,该数目的帧可以是三个帧。
当机器学习分类中要应用的特征包括踪迹的特征时,将团块分配到踪迹可以是有用的。除了各个体团块的特征外还可应用踪迹特征,如以下结合涉及随机决策森林(RDF)分类器的示例所描述的。在其他情况下,包括在踪迹特征在分类中不被使用的那些情况下,也可使用踪迹。在又一些情况下,团块不被分配给踪迹。例如,在查找表和具有小特征集的其他低资源分类技术中可不使用踪迹。
处理器114被配置成执行特征计算指令120来为每一触摸事件计算多个特征集。每一特征集指定多个帧中的每一帧中的相应团块的属性。这些属性可随着这些团块被定义或者在稍后的时间点(诸如在踪迹被认为成熟时)被计算。例如,团块特征计算指令120可被配置成使得处理器114在确定触摸事件的类型时将特征集数据应用于机器学习分类器之前聚集特征集数据。在其他情况下,在进一步特征数据集的计算正在进行时,特定团块的特征集数据被应用于机器学习分类器。例如,第一帧的特征集数据的应用可与第二帧的特征集数据的计算并发地被应用于分类器。在针对每一帧分开地将特征数据应用于分类器的情况中,这样的并发处理可以是有用的。
要计算的团块属性可以变化。在涉及随机决策森林(RDF)分类器的一个示例中,可为每一团块计算以下团块属性的任何组合:(i)面积;加权质心(例如,∑(x,y)∈团块(x,y)*强度(x,y));(ii)最小、最大和平均强度;(iii)最小、最大和平均强度梯度量值;(iv)周长;(v)圆度度量,诸如等周商数(isoperimetric quotient)(即,4*PI*面积/周长*2);(vi)从加权质心到最近图像边缘的距离;(vii)图像边缘上的团块像素(即,该像素沿着该图像中的第一行或列或最后一行或列)的平均强度;(viii)图像边缘处的宽度(即,图像边缘上的团块像素的数目);(ix)以加权质心为中心的5x 5图像片(来自原始或阈值化帧数据)的外观;以及(x)以加权质心为中心的17x 17图像片(来自原始或阈值化帧数据)的外观。图像片的外观可经由对该片中的相应像素的强度值的分析来量化。图像片特征的尺寸可以变化。图像片也可以以处于除加权质心以外的位置为中心,或以其他方式相对于该团块被设置。
可为RDF分类器和/或其他类型的机器学习分类器计算更多、更少或替换属性。例如,在涉及查找表分类器的一个示例中,为每一团块计算以下特征:该团块的高度(例如,该团块中的最大像素强度值);该团块的面积;以及,该团块的纹理。纹理特征可指示该团块内的强度值的梯度。例如,纹理可被计算为该团块中的每一像素和其8个最近邻之差的绝对值的总和除以该团块的面积的8倍。由手掌生成团块趋于更平坦,或者具有更光滑的内部,并由此相比于通过多个紧密间隔的手指触摸生成的团块具有更少的纹理。计算更少的特征可减少计算指令120的代码空间和处理时间。更少的特征还可减少在存储针对每一团块的计算的结果时所涉及的存储器的量。
在涉及踪迹的一些情况下,团块特征计算指令120还可使得处理器114计算触摸事件的踪迹的一个或多个特征。除了踪迹内的每一团块的特征集外,还可计算该踪迹的踪迹特征集,其示例在以上列出。踪迹特征集可在踪迹达到成熟之际被计算。
踪迹特征集可包括作为以上引用的团块属性中的一者或多者的累积的特征。在涉及随机决策森林(RDF)分类器的一个示例中,在踪迹的预定数目的帧上计算以下团块属性的最小、最大和平均值:(i)面积;(ii)连贯帧之间面积方面的改变;(iii)连贯帧之间位置方面的改变;(iv)等周商数;(v)强度;(vi)强度梯度幅值;(vii)距最近图像边缘的距离;(viii)图像边缘上的像素的平均强度;以及(ix)图像边缘处的宽度。
踪迹特征集可附加地或替换地包括涉及各个体团块在踪迹的第一F帧内的属性的特征。由此,在一些情况下,计算每一帧处的团块属性可以是收集针对踪迹的数据的一种方式。例如,可为每一个体团块计算以下特征:(i)面积;(ii)连贯帧之间面积方面的改变;(iii)连贯帧之间位置方面的改变;(iv)等周商数或其他圆度度量;(v)最小、最大和平均强度;(vi)最小、最大和平均强度梯度量值;(vii)距最近图像(或帧)边缘的距离;(viii)图像边缘上的像素的平均强度;(ix)图像边缘处的宽度;(x)以加权质心为中心的5x 5图像片(来自原始或经阈值化帧数据)中的像素的强度;(xi)以加权质心为中心的17x 17图像片(来自原始或经阈值化帧数据)中的像素的强度;(xii)来自5x 5图像片的各像素对之间的强度差;(xiii)来自17x 17图像片的各像素对之间的强度差;(xiv)17x17片中的两个同心环之间的最小强度差,例如,min{I(p):‖p-c‖=r_1}-max{I(p):‖p-c‖=r_2},其中r_1<r_2,其中I是图像强度矩阵且c是加权质心。可结合踪迹计算更多、更少或替换特征。
处理器114被配置成执行机器学习分类指令122以确定触摸事件的类型或性质。该类型是经由机器学习分类来确定的。该分类被配置成基于多个帧的多个特征集来提供多个非双模分类分数。在机器学习分类中,每一非双模分类分数都指示不确定度或置信度水平。例如,每一分类分数可以是触摸事件具有特定类型的概率。在其他示例中,分类算法是沿着指示触摸事件是否具有特定类型的范围或尺度的各个体评级。在一些情况下可聚集这些个体评级以确定累积评级。可将累积评级或其他分类分数与以下描述的阈值进行比较以确定触摸事件类型。
一旦触摸事件类型被确定,分类指令122还可被配置成使得处理器114将指示该类型的数据提供给设备100。在图1的示例中,处理器114可将类型数据提供给处理器106。类型数据可被存储到或提供给主机设备的任何组件。类型数据可连同指示触摸事件的其他数据一起被提供。在一些情况下,其他数据包括踪迹ID和触摸事件在当前(例如,最后一个)帧中的坐标。在其他情况下,其他数据可与触摸类型一起被提供。例如,触摸类型可与触摸事件坐标一起被提供。
机器学习分类指令122可按照分类被调用一次或者被迭代地调用。指令122被调用的方式可取决于特征集数据何时被计算。对于其踪迹数据被计算的触摸事件,处理器114可在针对该踪迹的单个调用中将全部特征集数据共同应用于机器学习分类器。在一些其他情况下,在为每一帧计算特征集数据时迭代地实现分类指令122。例如,每一团块的特征集数据被分开地应用于机器学习分类器。在先前计算的特征集数据被应用于机器学习分类器的同时,进一步的特征集数据可随后被计算。
机器学习分类指令122可使得处理器14访问一个或多个分类器数据结构126。分类器数据结构126可被存储在存储器116和/或其他存储器中。分类器数据结构126的格式和其他特性可根据要被使用的机器学习分类器的类型而变化。为了便于解说和描述,图1中示出了分类数据结构的两个示例,因为设备100通常仅配置有单个分类器。这两个示例性数据结构是随机决策森林(RDF)数据结构128和查找表数据结构130。尽管特征集数据通常仅被应用于一个数据结构,在一些情况下可使用一个以上的分类器。例如,多个分类器的输出可被比较或处理以确定最终分类。
RDF分类是分类指令122可使用的多个区别性分类技术之一。区别性分类器针对给定输入阵列以一组分类上的离散概率分布的形式生成或返回多个非双模分类分数。在该示例中,这些分类与可能的触摸事件类型相对应,例如有意的指尖触摸、电容式指示笔或其他笔触摸、和无意的触摸(诸如手掌)。例如,示例性输出为{0.45,0.32,0.23}、有45%的机会该触摸事件是有意的指尖触摸、有32%的机会该触摸事件为笔触摸、以及有23%的机会该触摸事件为无意的触摸事件(例如,手掌触摸)。每一概率分数由此表示触摸事件具有特定类型的概率。在其他情况下,可使用更多、更少或替换分类。例如,在于有意和无意触摸事件之间进行区分的情况中,可仅使用两个分类。
区别性分类器可被配置成接受多个特征数据集作为输入。区别性分类器的输入可由此是根据计算指令120为触摸踪迹(例如,前几个帧或另一预定数目的帧)计算的团块和踪迹特征数据。在踪迹示例中,每一踪迹的特征集在该踪迹达到成熟时被应用于分类器。分类器由此提供每一成熟踪迹的概率分布输出。
RDF数据结构128包括随机决策树RDT1、RDT2、RDT3、……、RDTn的集合,其中n可以是任何数字。在一个示例中,数据结构包括20个树,每一树具有为11的最大决策高度。在随机决策森林过程中,同一输入数组被应用于每一棵树。该RDF针对给定输入的输出是通过对这些树中的每一者针对给定输入的输出求平均来计算的。这些树的数量和高度可以变化。
每一RDT是其中每一内部(即,非叶)节点都具有相关联的“分裂”二进制函数的二进制决策树。当分裂二进制函数被应用于输入时,该函数返回该输入将被路由到该节点在该树中的下一节点层中的右子节点还是左子节点的决策。RDT中针对给定输入X的分类过程经由在该树的根节点中通过应用该根的相关联的分裂函数来处理X来开始,并在对应于该分裂函数的结果的子节点上对该输入递归地继续该过程。最后,该过程到达叶节点,在该叶节点处,返回在分类集合C上的离散概率分布作为过程输出。
这些树内的分裂函数可被实现为特征的值和阈值之间的不等式比较,即f<τ,其中f是特定特征的值并且τ是阈值。要在每一节点处使用的特定特征和阈值是在训练过程期间学习到的。
在训练期间,在每一节点处,从每一类型的特征的空间的采样中选择最佳特征。对于特征空间,与空间尺寸的平方根一样多的样本被采样。
在图1的示例中,仅单个RDF结构128被示出,并被用于提供所有三个分类分数(例如,指尖、笔、手掌)。但是在一些情况下,可使用多个RDF分类器来提供这些分类分数。例如,可使用各自具有相应的树集合的两个RDF分类器来提供这三个分类分数。在一个示例中,可使用一个RDF分类器来在有意触摸和无意触摸之间进行区分。随后结合有意触摸使用另一RDF分类器来在笔和指尖触摸之间进行区分。
在一些情况下,可调整RDF分类的输出。例如,这些调整可解决涉及具有多个新近成熟的踪迹的帧的情况。在某帧中所有新近成熟的踪迹的触摸类型都被分类后,分类指令122可使得处理器114调整在被分类为无意(例如,手掌)触摸事件的踪迹附近的各踪迹的类型。如果第一踪迹的团块的当前位置落在被分类为无意触摸的第二踪迹的团块的阈值之内,则第一踪迹也被分类为无意触摸。这样的调整可以是有用的,因为这些邻近团块通常由来自具有停留在表面104上的手掌的手的指节或手指的无意触摸产生。
附加的或替换的机器学习分类器可被分类指令122使用。例如,其他类型的区别性分类技术可被使用。在一些示例中,机器学习分类器是查找表分类器。结合具有有限处理和/或存储器资源的设备(诸如当处理器114是微控制器时),基于查找表的分类可以是有用的。对查找表的使用可极大地减少用于该分类的存储器占用(footprint)以及处理时间。
在图1所示的示例中,查找表数据结构130包括在有意和无意触摸事件进行区分的一对查找表。特征集数据被应用于每一查找表。每一表随后提供相应的个体非双模分类分数或评级,如以下所描述的。第一查找表可被配置成提供关于触摸事件是否是有意触摸的第一评级。第二查找表可被配置成提供关于触摸事件是否是无意触摸的第二评级。相应帧的这些个体评级或分数中的每一者可随后被组合以生成该相应帧的帧分类评级分数。附加查找表可被提供以例如进一步区分触摸事件类型。在其他情况下,数据结构130仅包括单个查找表。
在该基于查找表的分类示例中,特征集数据在逐帧的基础上被应用于分类器。例如,相应帧的特征集数据被应用于数据结构130中的每一查找表。每一表随后为那个帧提供相应的个体非双模分类分数或评级,如以下所描述的。期间存在该触摸事件的各帧的帧分类评级分数随后被聚集(例如,求和)以确定该触摸事件的累积多帧分类分数。
以下结合其中各个体评级通过将评级彼此相减来组合的示例描述了用于跨各帧组合并随后聚集分类评级或分数的方式。各个体评级可用各种各样的其他方式来组合。例如,个体评级或分数可被配置成使得组合涉及加法操作、求平均操作和/或其他操作。跨各帧的分类分数聚集也可用除以上描述的求和操作以外的方式来实现。分类指令122可随后使得处理器114确定累积多帧分类分数是否越过了阈值。在一些示例中,提供多个分类阈值,每一可能触摸事件类型一个分类阈值。如果(诸)阈值没有被超过,则不确定度水平可被认为对于可靠地对触摸事件进行分类而言过高了。此时,团块定义指令118和计算指令120可被再次调用来为下一帧提供特征集数据。新特征集数据可随后被再次应用于(诸)查找表以实现进一步评分、聚集和阈值化。
查找表分类器可被配置成使用团块的特征作为(诸)查找表的索引。为每一团块计算的特征可以是高度、尺寸和纹理,如以上所描述的。可包括更多、更少或替换特征。在一个示例中,该表中的每一条目是指示团块具有特定触摸事件类型(即该表的关联分类)的可能性的二比特评级。为3的评级指示该团块非常有可能是该分类的成员。为2的评级指示该团块略有可能是该分类的成员。为1的评级指示该团块有可能但不是高度有可能是该分类的成员。为0的评级指示该团块非常不可能是该分类的成员。
在该示例中,各个体团块评级分数是从两个分类表中获得的,一个分类表针对有意触摸(例如,手指或笔),且另一分类表针对无意触摸(例如,手掌)。每一团块是通过将特征集数据应用于这两个表而在这两个表中查找出的。因帧而异的团块分类评级(或“团块分类评级”)可随后通过以下方式来为该团块计算:通过如下将来自相应表的各个体评级彼此相减来组合这些个体评级:
团块分类评级=手指表评级-手掌表评级
结果,团块分类评级的范围为从-3到+3,其中正值指示该团块较有可能是有意触摸,并且其中负值指示该团块更有可能是无意触摸。评级的绝对值是对该分类的确定度或该评级方面的不确定度水平的指示。团块分类评级是针对触摸图像中的每一团块来计算的。
特定触摸事件的团块分类评级可随后跨多个帧被累积或聚集以生成该触摸事件的聚集团块评级。例如,如果该团块在前三个帧中具有为+2、+1和+2的团块分类评级,则累积团块评级为+5,即三个团块分类评级的总和。
累积团块评级随后被用于确定触摸事件类型。累积评级可与一个或多个阈值比较。在一个示例中,两个阈值被用来支持分化为三个可能的分类之一。小于或等于手掌阈值的负触摸评级被分类为手掌触摸事件。大于或等于手指阈值的正触摸评级被分类为手指/笔触摸事件。所有其他触摸评级被分类为未知。手掌和手指阈值是可配置的,但是示例性设置为用于手掌阈值的-9和用于手指阈值的+6。
累积团块评级也可被用于确定处理进一步帧数据是否被保证。如果累积评级落在未知范围内,则进一步帧数据可被处理以将另一团块分类评级纳入聚集。例如,向接近手掌的第一图像(或帧)分配为+1的团块分类评级。由于这是该手掌的第一图像,累积评级也为+1。在下一图像中,团块分类评级再次被分配为+1。累积评级现在为+2。在下一图像中,大部分手掌向下触摸,使得团块分类评级变为-2,并且累积评级现在为0。随后向下三个图像分配为-3的团块分类评级,从而得到为-9的累积评级,这时触摸被分类为手掌触摸事件。所有先前的触摸都将被分类为未知。即使前两个触摸图像看上去略微更像手指而非手掌,分类器仍达到正确的最终分类,而不是错误的假肯定分类。
分类指令122可被配置成使得处理器114将各团块与触摸事件相关联。在一些情况下,触摸事件可最初通过固件112或触摸系统02的其他组件来标识。对于每一潜在触摸事件,可定义该触摸事件的边界框并将其与在当前触摸图像(或帧数据)中发现的所有最大值进行比较以标识出哪个团块与该触摸事件相关联。大多数触摸图像将仅有单个团块在边界框内,并由此与一触摸事件相关联。在多个团块有位于边界框内的最大值的不可能事件中,触摸事件的累积评级可被计算为这样的交叠团块的累积评级的平均。
分类指令122还可将多个调整纳入该复合评级以解决一个或多个唯一性情形。每一调整都是基于规则或条件是否被满足或存在来纳入的。调整可补充查找表的分类能力,而不会将显著的复杂性添加到该过程。
边缘效应规则。通常离开触摸屏的边缘的手掌由于其小尺寸可具有看上去像有意触摸的倾向。在这些情况下,为了改善性能,可跟踪每一团块中边缘像素的数目。分类指令122可确定边缘像素的数目是否超过阈值。如果边缘像素的数目超过阈值,则团块分类评级分数被调整。在一个示例中,从团块分类评级分数中减去边缘像素的数目和阈值之差。该调整使这些团块的评级偏向手掌评级阈值。由单个有意触摸造成的团块往往具有小数目的边缘像素,并因此不受调整规则的影响。由表面104的边缘处的手掌造成的团块更可能具有更大数目的边缘像素,并因此偏向手掌分类以使假肯定最小化。尽管由边缘处多个紧密间隔的手指造成的团块依据该规则也可偏向手掌评级并导致假否定,但在接近该边缘的姿势通常为单个手指姿势的范围内,这样的假否定结果的比率可能可接受地低。
手掌邻近度调整。正用指示笔写字的用户通常将其手掌放在屏幕上,同时用2个手指和拇指抓住该指示笔。这个手的其他两个手指接近表面104,并通常在写字期间接触表面104。该情形形成可表现为有意触摸的团块。为了使这些情况下的假肯定最小化,团块分类评级分数可通过减去一商数来调整,该商数通过将该团块的团块面积除以阈值面积来计算出。该调整可在团块的面积高于阈值并且该团块在看上去像手掌的另一团块附近(例如,为负团块评级)时被作出。该调整趋于使非常接近手掌的手指触摸偏向手指评级以使假肯定最小化。即使在指示笔触摸也接近手掌时,该调整也无法单独影响这些指示笔触摸的分类,因为指示笔触摸具有小于阈值的面积。
反触摸调整。当用户没有到触摸系统地的良好高频连接(即,用户正悬浮)时,大触摸面积可趋于消失或甚至转为反触摸(即,其中正常触摸将为正的触摸图像中的负面积)。该情形可导致假肯定,因为手掌的正常大面积在尺寸方面被显著减小,并且到其他无意触摸(诸如没有握持指示笔的手指)的间隔增加了。为了使这些情况下的假肯定最小化,两个调整可被纳入分类评级过程。第一规则是一旦触摸事件累积评级越过了该手掌阈值,下一帧中与该团块交叠的任何团块也被分配手掌评级。该调整在悬浮情形中可改善性能,因为手掌的各部分可趋于随时间消失。尽管手掌在早期向下触摸期间趋于看上去正常(并且可被分配手掌评级),但随着该手掌的越来越多部分触摸该表面,该手掌的诸部分趋于消失,而剩下部分可表现为有意触摸。然而,由于剩下部分与在较早帧中看见的手掌交叠,这些剩下部分仍被分配手掌评级。
可在悬浮情况下可用于改善性能的第二规则涉及除正常团块外还跟踪反团块。反团块可被检测为在触摸图像中的像素值小于或等于负阈值的连接像素组分。随着反团块也被定义在帧数据中,团块分类评级分数可随后通过在相应的团块与反团块交叠的情况下从该团块分类评级分数中减去某值来调整。该调整可限于其中反团块很大(例如,反团块的尺寸超过阈值)的那些情况。通过从与大反团块交叠的正常团块的团块分类评级中减去某值,这些正常团块随后偏向手掌评级。所减的值可以是固定值或对于越大的团块面积变得越大的值。结合涉及多个紧密间隔的手指在对角线上对准的情况,将大反团块的阈值设置为相对较大的尺寸(例如,50像素)可有助于避免对该调整的错误应用。
机器学习分类器可经由离线数据收集阶段来训练,在离线数据收集阶段期间,涉及指示笔、指尖触摸及无意的非指尖触摸事件的多个图像序列被接收。这些序列可在各种各样的可能设备使用场景中被实现,和/或涉及各种各样的用户。可存在压力、姿势、定向和其他触摸事件特性方面的差异。有意触摸事件(例如,指尖触摸、或指示笔、或非指尖触摸)的序列被分开地收集,由此避免对触摸事件的手动标记。这些序列中每一计算出的踪迹的特征数据集变为训练示例。
在RDF示例中,RDF分类器可通过独立地训练该数据结构中的每一棵树来训练。从树的根节点开始一次一个节点地对树进行训练。每一节点都是使用输入训练集来训练的。最初,整个训练集是用于训练根节点的输入集。
对节点n给定输入训练集T,该节点是通过采样各拆分函数及其参数的空间达一定的次数(例如,与各拆分函数及其参数的空间的尺寸的平方根相对应的数目)来训练的。对于每一经采样(经参数化的)拆分函数,还采样多个可能的阈值(例如,100个阈值)。
对于拆分函数类型splitF、拆分函数参数化θ和阈值τ的给定拆分组合Σ=(splitF,θ,τ),每一输入x∈T是根据splitF_θ(x)的值低于还是高于还是等于阈值τ来拆分的。
训练过程在所有经采样的拆分组合之上标识在该节点的输入集T中的所有元素的拆分上实现最大信息增益的拆分组合。如果该增益过小或者如果节点n在最大预先选择高度(例如,为11)处,则该节点被设为叶节点,并且与该叶节点相关联的每一分类(例如,指尖触摸、笔或指示笔、或手掌)的概率被设为该分类的样本数与该节点的输入集“T中的总样本数的比。另一方面,如果该增益显著地高或者节点n的高度小于最大预先选择高度,则实现该最大增益的拆分组合Σ被关联到该节点n,该节点的输入集T被使用Σ拆分成两个子集T_L和T_R,并且节点n被分配两个子节点即左子节点和右子节点,每一子节点分别是使用输入集T_L和T_R递归地训练出的。
在训练查找表分类器时可使用用于收集训练样本的类似方法。例如,触摸图像序列按自标记方式生成。例如,每一序列仅包含一个分类的触摸(例如,全部为手指或全部为手掌)。团块和相应的特征数据随后从触摸图像中被提取出,并被传递到训练过程以用作训练样本。
在一个查找表训练示例中,训练样本根据高度特征被分组在多个桶(例如,8个桶)中。例如,在其中触摸图像中的任何像素的最大高度大致为1600的触摸系统中,具有在0和199之间的高度的样本被分配给桶0,具有在200-399的高度的样本被分配给桶1,并以此类推。为了改善这些分类器的一般化,还可实现对样本的微小“拖尾”。例如,高度210的样本可被分配给桶0和1两者。拖尾的量是可配置的,并且可以变化,但是在一个示例中,在分组边界的10%内的样本被分配给两个组。随后为每一高度分组内的所有样本确定面积和纹理特征的最小和最大值。这时拖尾也被应用,使得最小和最大值被向下/向上调整小量(例如,10%)。这些样本随后根据面积特征被拆分成多个集合(例如,16个)(如以上所确定的,被均匀地分布在该面积特征的经拖尾最小值/最大值之间)。这些面积桶内的样本随后根据纹理特征被进一步拆分成多个桶(例如,16个)(如以上那样被均匀地分布并被拖尾化)。随着样本被依据面积和纹理拆分,这些样本可再次被拖尾化大致10%。在其中样本被拖尾化的示例中,未经拖尾化的样本可比经拖尾化的样本被给予更高的优先级。较高的优先级可通过以下来提供:将每一未经拖尾化的样本看成多个样本(例如,9个),同时将每一经拖尾化的样本看作仅单个样本。
随后可对这些最终桶中的每一者中的样本数进行计数。随后将这些计数与若干阈值进行比较。如果样本数大于或等于“非常可能”阈值,则针对那个桶的分类器表值被设为最高分类分数(例如,3)。如果样本数大于或等于“很可能”阈值,则表值被设为次高分数(例如,2)。如果样本数大于或等于“可能”阈值,则表值被设为下一次高分数(例如,1)。在2比特评分示例中,表值否则被设为0。这些阈值是可配置的,并且可以随使用的训练样本数而变化,但是在一个示例中,对非常可能、很可能和可能阈值可分别使用阈值90、9和1。2比特分数随后根据分组、设置和桶划分被存储在表中。表条目由此也影响面积和纹理特征的最小值和桶尺寸。高度特征的最小值和桶尺寸可分别被固定为0和200。
在分类期间,除了以下例外外,表边界之外的任何值默认被给予最低评级(例如,0)。具有大于或等于1600的高度的团块被集总到1400-1599桶。具有高于在对指定高度的桶进行训练时看到的任何手掌面积的面积的团块被给予为1的手掌评级。这些异常可有助于分类器对在训练时从未看到的非常大的团块进行正确地概括。
图2描绘了用于触摸分类的示例性方法200。该方法是计算机实现的。例如,图1所示的触敏设备100和/或另一触敏设备的一个或多个计算机可被配置成实现该方法或其一部分。每一动作的实现可通过由触摸系统102的处理器、设备100和/或另一处理器或处理系统执行的相应计算机可读指令来指导。可以在方法中包括更多、更少或替换的动作。例如,方法200可不包括涉及输出功能性的动作。
方法200可始于涉及捕捉帧数据的一个或多个动作。捕捉帧数据的方式可以变化。帧数据可由不同的设备或处理器和/或结合由实现方法200的同一处理器或设备实现的不同方法来捕捉。
在图2的实施例中,方法200始于动作202,在动作202中,帧数据被获得。帧数据表示由触敏设备捕捉的多个帧(或触摸传感器图像)。帧数据可直接接收自触摸系统102的硬件或(诸)其他组件(诸如固件112(图1))以用于进行实时处理。替换地或附加地,帧数据可以是先前捕捉和存储的帧数据。帧数据可由此通过访问存储器(诸如结合图1描述的存储器之一(即存储器108、116)和/或另一存储器)来获得。
在动作204,帧数据被处理以定义多个帧中的每一帧中的相应团块。团块指示触摸事件。这些团块可跨本文中描述的多个帧被跟踪或彼此关联,以在发生在同一帧中的多个触摸事件之间进行区分。
该分析可包括在动作206对帧数据进行上采样,在动作208对帧数据进行阈值化,在动作210进行团块拆分,和/或在动作212进行团块合并。如上所述,可实现这些处理动作中的每一者。方法200可包括这些处理动作中的任何一者或多者。例如,在一些RDF示例中,实现动作210的团块拆分,但不实现动作212的团块合并。相反,在一些查找表示例中,实现动作212的团块合并,但不实现动作210的团块拆分。
在一些情况(例如,一些RDF示例)中,在动作214,针对触摸事件来定义或者按其他方式更新各团块跨多个帧的踪迹。踪迹定义可在团块定义之后发生。从当前帧提取的团块数据被处理以更新在先前帧中标识出的踪迹。动作214由此定义新踪迹、扩展活动踪迹和/或终止活动踪迹。活动踪迹要么在当前帧中存在团块的情况下被扩展一附加帧,要么由于缺少团块而被终止,如以上所描述的。指示活动踪迹的数据也被存储在数据存储216中。动作214可包括访问如图所示的数据存储216以及处理活动踪迹。
在其他情况(例如,一些查找表示例)中,特定帧的帧数据与后续帧的帧数据被分开地处理。动作204可涉及对单个帧的帧数据的分析。那个帧数据随后准备好供进一步处理(例如,特征集计算和应用到机器学习分类器),该进一步处理与后续帧的帧数据的处理分开。
在动作218,为触摸事件计算多个特征集。每一特征集指定多个帧中的每一帧中的相应团块的属性。在动作218计算出的特征和属性可以变化,如以上所描述的。特征或属性的数目也可随着分类器的复杂性而变化。如图2所示,在一些情况中,特征集数据可被存储在其中存储活动踪迹数据的数据存储216中。
在一些情况(例如,在RDF示例)中,可在动作220在多个帧上聚集特征集,并可在动作222计算踪迹特征。例如,在其中踪迹被定义和/或触摸事件的多个帧的帧数据已按其他方式可用的情况下,可实现动作220和222。在确定触摸事件的类型时,聚集在将多个特征应用于机器学习分类器之前发生。
在动作224应用特征集数据来经由机器学习分类确定触摸事件的类型。该分类被配置成基于多个帧的多个特征集来提供多个非双模分类分数,如以上所描述的。在机器学习分类中,每一非双模分类分数都指示不确定度或置信度水平。在一些情况下,数据存储216可如图所示被访问以支持该分类。
在涉及踪迹定义和扩展的情况中,动作224的分类的定时可取决于踪迹何时成熟(例如,踪迹被扩展了三次)。在这些情况下,当刚被扩展的活动踪迹达到成熟时,其触摸类型在动作224被确定。动作224可由此与动作204和218的帧数据处理和特征集计算并发且独立地被实现。
对已经被分类但在当前帧中保持活动(例如,作为在当前帧中通过团块扩展的结果)的成熟踪迹的处理可以或可以不依赖于先前分类。在一些情况中,动作224可被配置成使得先前帧中已经成熟的踪迹自动将其触摸类型传递给轨迹通过其来扩展的团块。在其他情况中,在给出新聚集的特征集数据(即包括由当前帧贡献的数据)的情况下,动作224的分类被重复。
机器学习分类可包括在动作226将一个或多个特征集应用于机器学习分类器。在一些情况(例如,一些RDF示例)中,多个帧的特征集数据被共同应用于分类器。在这样的情况下,踪迹特征数据也可被应用。在其他情况(例如,一些查找表示例)中,特征集数据被逐帧地应用于分类器。
在特征集数据被应用于分类器后,一个或多个阈值可在动作228被应用于分类分数。(诸)阈值可被应用以确定触摸事件类型和/或确定对进一步帧数据的处理是否被保证(例如,不确定度水平对于要知道的事件类型而言是否过高)。
方法200可包括涉及提供输出的一个或多个过程。在图2的示例中,指示触摸事件类型和位置坐标的输出数据在动作230被提供。这些坐标可指示与触摸事件相关联的多个帧中的最后一个团块的位置。可提供附加或替换的输出数据。例如,可提供踪迹ID。
在一些情况下,图2中示出的方法动作中的一者或多者可在多个帧上被迭代或以其他方式涉及迭代。例如,在查找表示例中,特征集数据被针对每一帧迭代地应用于查找表分类器。关于这样的迭代的进一步细节结合图4的示例来描述。
该方法的动作的顺序可以与所示的示例有所不同。例如,在一些情况下,这些动作按流水线样式来实现,例如结合每一抵达帧来执行。这些动作可在处理不同帧的帧数据、团块和/或踪迹时被并行或并发地实现。例如,动作218的特征集计算可与动作224的机器学习分类处理中的一些并发地实现。
图3结合涉及随机决策森林(RDF)分类器的示例示出关于触摸事件确定动作224(图2)的进一步细节。在该示例中,触摸分类过程在动作302始于获取多个帧的聚集特征集。一旦触摸事件的团块已被跟踪了足够数目的帧(即,踪迹已被扩展到成熟),就可提供聚集特征集,如以上所描述的。聚集特征集合还可包括踪迹特征数据,如以上所描述的。聚集特征集随后在动作304被应用于RDF分类器中的每一随机决策树。每一树的输出在动作306被求平均以生成多个非双模分类分数。在该情况下,每一非双模分类分数表示触摸事件具有相应类型的概率。阈值可随后被应用于概率分数以确定触摸事件类型。可为每一触摸事件类型指定一个或多个阈值。例如,如果手指、指示笔和手指分类的概率分数分别为0.3以下、0.6以上和0.2以下,则触摸事件可被分类为有意指示笔触摸事件。可随后提供指示触摸事件类型、踪迹ID和踪迹(即,团块)在当前帧中的位置的输出。
图4结合涉及查找表(LUT)分类器的示例示出关于触摸事件确定动作224(图2)的进一步细节。在该示例中,触摸分类过程在动作402始于获取当前帧的特征集。特征集随后在动作404被应用于多个查找表。每一查找表确定个体(即,因表而异的)非双模分类分数。例如,多个查找表可包括被配置成提供触摸事件为有意触摸的第一评级(例如,0到3)的第一查找表以及用于确定触摸事件为无意触摸的第二评级(例如0到3)的第二查找表。各个体分类分数随后在动作406被组合以计算团块的因帧而异的分类分数(即,团块分类分数)。例如,可从第一评级中减去第二评级,使得团块分类分数落在从-3到+3的范围内,其中负数更多指示无意触摸,而正数更多指示有意触摸。
触摸事件的因帧而异的团块分类分数在动作408被聚集。该聚集可包括将当前团块分类分数与针对较早帧的任何先前计算的团块分类分数相加。累积(即,多帧)分类分数可由此被计算出。
决策框410随后确定触摸类型分类的阈值是否被满足。可为每一触摸事件类型提供一相应的阈值。例如,如果累积分数大于+7,则触摸事件被分类为有意触摸。如果累积分数小于-6,则触摸事件被分类为无意触摸。如果任一阈值被满足,则控制可传递到动作412,在动作412,触摸事件类型被确定,并作为输出被提供。如果任一阈值都没被满足,则控制返回动作402以获得下一帧的进一步帧数据,并结合进一步帧数据来迭代特征应用动作404、分数组合动作406和分数聚集动作408。
在图4的示例中,多个动作可被实现以结合若干专用情形调整分类分数或分类。决策框414可被用来确定在后续帧是否应当发生对与被认为是手掌触摸事件的触摸事件交叠的团块的调整。在该示例中,如果当前触摸事件被分类为手掌触摸事件,则控制传递到动作416,在动作416,标志、状态或其他变量被设置以将下一帧中的任何交叠团块分类为手掌触摸事件。
其他调整可被实现为对分类分数的调整。在图4的示例中,这些调整结合在动作406计算团块分类分数来实现。在动作418的调整可涉及通过在团块与足够大的反团块(例如,大于50像素)交叠的情况下从团块分类分数中减去某值来解决反团块情形,如以上所描述的。在动作420的另一调整可涉及通过减去一商数来解决团块何时接近手掌触摸事件,该商数是通过将团块的团块面积除以阈值面积来计算出的,如以上所描述的。在动作422的又一调整可涉及通过从团块分类评级分数中减去边缘像素数和阈值之差来解决边缘效应,如以上所描述的。
参考图5,示例性计算环境500可被用来实现上述方法和/或系统的一个或多个方面或元素。计算环境500可以由触敏设备100(图1)或其一个或多个元件来使用或被合并到其中或者与其相对应。例如,计算环境500可用于实现触摸系统102(图1)或与触摸系统102通信的主机设备或系统。计算环境500可以是被用来实现结合图2-4描述的动作中的一者或多者的通用计算机系统。计算环境500可与各种各样的计算设备之一向对应,这些计算设备包括但不限于个人计算机(PC)、服务器计算机、平板和其他手持式计算设备、膝上型或移动计算机、诸如移动电话之类的通信设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、音频或视频媒体播放器等。
计算环境500具有足够的计算能力和系统存储器来允许基本计算操作。在该示例中,计算环境500包括一个或多个处理单元510,其在本文中可被单独或一起称为处理器。计算环境500还可包括一个或多个图形处理单元(GPU)515。处理器510和/或GPU 515可包括集成存储器和/或与系统存储器520通信。处理器510和/或GPU 515可以是专用微处理器(诸如数字信号处理器(DSP)、超长指令字(VLIW)处理器或其他微处理器),或者可以是具有一个或多个处理核的通用中央处理单元(CPU)。计算环境500的处理器510、GPU 515、系统存储器520和/或任何其他组件可被封装或以其他方式集成为片上系统(SoC)、专用集成电路(ASIC)或其他集成电路或系统。
计算环境500还可包括其他组件,诸如例如通信接口530。还可提供一个或多个计算机输入设备540(例如,定点设备、键盘、音频输入设备、视频输入设备、触觉输入设备、用于接收有线或无线数据传输的设备等)。输入设备540可包括一个或多个触敏表面,诸如跟踪垫。还可提供各种输出设备550,包括触摸屏或(诸)触敏显示器555。输出设备550可包括各种不同的音频输出设备、视频输出设备、和/或用于传送有线或无线数据传输的设备。
计算环境500还可包括用于存储信息(诸如计算机可读或计算机可执行指令、数据结构、程序模块或其他数据)的各种计算机可读介质。计算机可读介质可以是可通过存储设备560访问的任何可用介质,并且包括易失性和非易失性介质两者,而不管在可移动存储570和/或不可移动存储580中。
计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算环境500的处理单元访问的任何其他介质。
本文中描述的触摸事件分类技术可用由计算环境500执行的计算机可执行指令(诸如程序模块)来实现。程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本文描述的各技术还可以在其中任务由通过一个或多个通信网络链接的一个或多个远程处理设备执行或者在该一个或多个设备的云中执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于包括媒体存储设备的本地和远程计算机存储介质两者中。
这些技术可以部分地或整体地作为可以包括或不包括处理器的硬件逻辑电路或组件来实现。硬件逻辑组件可被配置为现场可编程门阵列(FPGA)、专用集成电路(ASIC)、程序专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)和/或其他硬件逻辑电路。
以上描述的分类技术可在触敏设备中的有意触摸事件和无意触摸事件之间进行稳健地区分。机器学习分类器被用于确定触摸事件归因于有意的手指触摸还是无意的手掌触摸。分类器还可确定触摸事件是否是笔或指示笔接触或触摸。一些分类器(例如,RDF分类器)可被配置用于软件实现,例如处于其中不存在对存储器可用性的硬约束的操作系统级或其他级。其他分类器可被配置用于资源有限平台(诸如触摸处理系统中当前使用的微控制器)中的实现。在这样的情况下,可使用具有更有限的特征集合的查找表分类器(例如,3D查找表分类器)。
在一些情况下,在应用于分类器之前,触摸事件的属性或特征跨多个帧被计算和跟踪。在触摸事件的踪迹达到预定帧数(例如,3个)后,特征集可被应用于分类器以确定触摸事件的多个概率分数。每一概率分数是指示触摸事件具有特定类型的概率的非双模分数。触摸类型的确定可随后基于该概率分数来确定。
其他情况可涉及用于随时间聚集触摸事件的信息以及不同类型的分类分数的不同办法。在一些情况下,查找表办法被用于生成每一帧的非双模分类分数。分类分数可随后在多个帧上聚集(例如,求和)以确定触摸事件的累积多帧分类分数。
由机器学习分类器提供的分类分数指示触摸为有意或无意的可能性。分类分数的非双模性质允许这些分数还指示该分类器确定的不确定度水平。该确定基于跨帧边界获得的信息,并由此基于来自多个时间点的信息。通过这种方式,例如,关于手掌第一次向下触摸的早期帧可看上去像弱“触摸”分类,随着更多信息变得可用,该弱“触摸”分类稍后变为强“手掌”分类。出错性能可由此被改善。
分类分数可依据一个或规则来调整。这些规则可根据特征集数据所呈现的情形来应用或加强。这些情形可涉及帧的边缘处的触摸事件、手掌附近的手指触摸、以及由“悬浮”用户造成的触摸图像失真。这些调整可使分类器结果偏向或偏离手掌触摸或其他触摸类型。
此处所描述的技术可用各种其他通用或专用计算系统环境或配置来操作。适合与此处的技术一起使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机(包括服务器-客户端体系架构)、手持式或膝上型设备、移动电话或设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型机、大型计算机、包含上述系统或设备中的任一个的分布式计算机环境等。该方法或过程步骤和功能中的一些或全部可由与正由用户操作的客户端或本地设备通信的联网或远程处理器来执行。将各函数从本地设备卸载到远程设备的潜在优点是节省本地设备的计算和电力资源。
本文的技术可在诸如程序模块等由计算机执行的计算机可执行指令的通用上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本文的技术也可以在任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机存储介质两者中。
尽管已经参考具体示例描述了本发明,其中这些示例旨在仅仅是说明性的而非本发明的限制,但本领域普通技术人员将明白,可以对所公开的实施例作出改变、添加和/或删除而不背离本发明的精神和范围。
上述描述只是出于清楚理解的目的给出的,并且不应从中理解出不必要的限制,因为本发明的范围内的修改对本领域普通技术人员而言是显而易见的。
Claims (15)
1.一种计算机实现的方法,包括:
获得表示由触敏设备捕捉的多个帧的帧数据;
分析所述帧数据以定义所述多个帧中的每一帧中的相应团块,所述团块指示触摸事件;
计算所述触摸事件的多个特征集,每一特征集指定所述多个帧中的每一帧中的相应团块的属性;以及
经由机器学习分类确定所述触摸事件的类型,所述机器学习分类被配置成基于所述多个特征集来为所述多个帧提供多个非双模分类分数,每一非双模分类分数指示所述机器学习分类中的不确定度水平。
2.如权利要求1所述的计算机实现的方法,其特征在于,所述机器学习分类被配置成生成所述非双模分类分数,使得每一非双模分类分数表示所述触摸事件具有相应类型的概率。
3.如权利要求2所述的计算机实现的方法,其特征在于,所述非双模分类分数中的每一者由被配置成接受所述多个特征集作为输入的机器学习分类器生成。
4.如权利要求3所述的计算机实现的方法,其特征在于,所述机器学习分类器包括随机决策森林分类器。
5.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括:
为所述触摸事件定义所述团块跨所述多个帧的踪迹;以及计算所述踪迹的踪迹特征集,
其中确定所述类型包括将所述踪迹特征集应用于机器学习分类器。
6.如权利要求1所述的计算机实现的方法,其特征在于,计算所述多个特征集包括在确定所述触摸事件的类型时将所述多个特征集应用于机器学习分类器之前,聚集指示所述多个特征集的数据。
7.如权利要求1所述的计算机实现的方法,其特征在于,所述机器学习分类包括基于查找表的分类。
8.如权利要求1所述的计算机实现的方法,其特征在于,确定所述类型包括将所述多个帧中的相应帧的特征集应用于多个查找表,每一查找表提供所述多个非双模分类分数的相应个体非双模分类分数。
9.如权利要求8所述的计算机实现的方法,其特征在于,确定所述类型包括组合所述相应帧的各个体非双模分类分数中的每一者以生成所述相应帧的团块分类评级分数。
10.如权利要求9所述的计算机实现的方法,其特征在于:
所述多个查找表包括被配置成提供所述触摸事件是有意触摸的第一评级的第一查找表,并进一步包括用于确定所述触摸事件是无意触摸的第二评级的第二查找表;以及
确定所述类型包括从所述第一评级中减去所述第二评级以确定所述相应帧的所述团块分类评级分数。
11.如权利要求9所述的计算机实现的方法,其特征在于,确定所述类型包括跨所述多个帧聚集所述团块分类评级分数以确定所述触摸事件的累积多帧分类分数。
12.如权利要求11所述的计算机实现的方法,其特征在于,确定所述类型包括:
确定所述累积多帧分类分数是否越过多个分类阈值之一;以及
如果否,则结合所述多个特征集中的进一步特征集来迭代特征集应用、分类分数组合和评级分数聚集动作。
13.如权利要求1所述的计算机实现的方法,其特征在于,每一特征集包括指示设置在每一帧中的相应团块处的图像片的外观的数据。
14.如权利要求1所述的计算机实现的方法,其特征在于,每一特征集包括指示每一帧中的相应团块的帧数据中的强度梯度的数据。
15.如权利要求1所述的计算机实现的方法,其特征在于,每一特征集包括指示每一帧中的相应团块的圆度的等周商数或其他度量的数据。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/329,052 | 2014-07-11 | ||
| US14/329,052 US9558455B2 (en) | 2014-07-11 | 2014-07-11 | Touch classification |
| PCT/US2015/039282 WO2016007450A1 (en) | 2014-07-11 | 2015-07-07 | Touch classification |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN106537305A true CN106537305A (zh) | 2017-03-22 |
| CN106537305B CN106537305B (zh) | 2019-12-20 |
Family
ID=53758517
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201580037941.5A Active CN106537305B (zh) | 2014-07-11 | 2015-07-07 | 对触摸事件进行分类的方法以及触敏设备 |
Country Status (11)
| Country | Link |
|---|---|
| US (2) | US9558455B2 (zh) |
| EP (1) | EP3167352B1 (zh) |
| JP (1) | JP6641306B2 (zh) |
| KR (1) | KR102424803B1 (zh) |
| CN (1) | CN106537305B (zh) |
| AU (1) | AU2015288086B2 (zh) |
| BR (1) | BR112016029932A2 (zh) |
| CA (1) | CA2954516C (zh) |
| MX (1) | MX2017000495A (zh) |
| RU (1) | RU2711029C2 (zh) |
| WO (1) | WO2016007450A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111524157A (zh) * | 2020-04-26 | 2020-08-11 | 南瑞集团有限公司 | 基于摄像头阵列的触屏物体分析方法、系统及存储介质 |
| CN113490556A (zh) * | 2019-02-27 | 2021-10-08 | 锂工科技股份有限公司 | 用于智能电池收集、分类和包装的方法和系统 |
Families Citing this family (53)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11327599B2 (en) | 2011-04-26 | 2022-05-10 | Sentons Inc. | Identifying a contact type |
| EP2769291B1 (en) | 2011-10-18 | 2021-04-28 | Carnegie Mellon University | Method and apparatus for classifying touch events on a touch sensitive surface |
| US11262253B2 (en) | 2017-08-14 | 2022-03-01 | Sentons Inc. | Touch input detection using a piezoresistive sensor |
| KR101750300B1 (ko) | 2011-11-18 | 2017-06-23 | 센톤스 아이엔씨. | 터치 입력 힘 검출 |
| KR20140114766A (ko) | 2013-03-19 | 2014-09-29 | 퀵소 코 | 터치 입력을 감지하기 위한 방법 및 장치 |
| US9612689B2 (en) | 2015-02-02 | 2017-04-04 | Qeexo, Co. | Method and apparatus for classifying a touch event on a touchscreen as related to one of multiple function generating interaction layers and activating a function in the selected interaction layer |
| US9013452B2 (en) | 2013-03-25 | 2015-04-21 | Qeexo, Co. | Method and system for activating different interactive functions using different types of finger contacts |
| JP2017505946A (ja) * | 2014-01-17 | 2017-02-23 | ケーピーアイティ テクノロジーズ リミテッド | 車両検出システムおよびその方法 |
| US9558455B2 (en) * | 2014-07-11 | 2017-01-31 | Microsoft Technology Licensing, Llc | Touch classification |
| CN104199572B (zh) * | 2014-08-18 | 2017-02-15 | 京东方科技集团股份有限公司 | 一种触摸显示装置的触摸定位方法及触摸显示装置 |
| US9329715B2 (en) | 2014-09-11 | 2016-05-03 | Qeexo, Co. | Method and apparatus for differentiating touch screen users based on touch event analysis |
| US11619983B2 (en) | 2014-09-15 | 2023-04-04 | Qeexo, Co. | Method and apparatus for resolving touch screen ambiguities |
| US9864453B2 (en) * | 2014-09-22 | 2018-01-09 | Qeexo, Co. | Method and apparatus for improving accuracy of touch screen event analysis by use of edge classification |
| US10606417B2 (en) | 2014-09-24 | 2020-03-31 | Qeexo, Co. | Method for improving accuracy of touch screen event analysis by use of spatiotemporal touch patterns |
| US10282024B2 (en) | 2014-09-25 | 2019-05-07 | Qeexo, Co. | Classifying contacts or associations with a touch sensitive device |
| JP6543790B2 (ja) * | 2015-03-18 | 2019-07-17 | 株式会社トヨタIt開発センター | 信号処理装置、入力装置、信号処理方法、およびプログラム |
| US10642404B2 (en) | 2015-08-24 | 2020-05-05 | Qeexo, Co. | Touch sensitive device with multi-sensor stream synchronized data |
| US10083378B2 (en) * | 2015-12-28 | 2018-09-25 | Qualcomm Incorporated | Automatic detection of objects in video images |
| TWI606376B (zh) * | 2016-08-08 | 2017-11-21 | 意象無限股份有限公司 | 觸控感測裝置及濾除誤觸的觸控方法 |
| US10313348B2 (en) * | 2016-09-19 | 2019-06-04 | Fortinet, Inc. | Document classification by a hybrid classifier |
| CN106708317A (zh) * | 2016-12-07 | 2017-05-24 | 南京仁光电子科技有限公司 | 判断触控点的方法和装置 |
| US11580829B2 (en) | 2017-08-14 | 2023-02-14 | Sentons Inc. | Dynamic feedback for haptics |
| US11057238B2 (en) | 2018-01-08 | 2021-07-06 | Brilliant Home Technology, Inc. | Automatic scene creation using home device control |
| CN112041799A (zh) * | 2018-02-19 | 2020-12-04 | 拉普特知识产权公司 | 触摸敏感装置中的不需要的触摸管理 |
| CN110163460B (zh) * | 2018-03-30 | 2023-09-19 | 腾讯科技(深圳)有限公司 | 一种确定应用分值的方法及设备 |
| KR102606766B1 (ko) | 2018-06-01 | 2023-11-28 | 삼성전자주식회사 | Em 센서 및 이를 포함하는 모바일 기기 |
| KR102104275B1 (ko) * | 2018-06-01 | 2020-04-27 | 경희대학교 산학협력단 | 스타일러스 펜을 이용하는 터치 시스템 및 이를 이용한 터치 검출 방법 |
| US10985972B2 (en) | 2018-07-20 | 2021-04-20 | Brilliant Home Technoloy, Inc. | Distributed system of home device controllers |
| US11009989B2 (en) * | 2018-08-21 | 2021-05-18 | Qeexo, Co. | Recognizing and rejecting unintentional touch events associated with a touch sensitive device |
| WO2020203238A1 (ja) * | 2019-03-29 | 2020-10-08 | ソニー株式会社 | 画像処理装置および方法、並びに、プログラム |
| US10942603B2 (en) | 2019-05-06 | 2021-03-09 | Qeexo, Co. | Managing activity states of an application processor in relation to touch or hover interactions with a touch sensitive device |
| US11231815B2 (en) | 2019-06-28 | 2022-01-25 | Qeexo, Co. | Detecting object proximity using touch sensitive surface sensing and ultrasonic sensing |
| KR20190104101A (ko) * | 2019-08-19 | 2019-09-06 | 엘지전자 주식회사 | 전자 장치의 터치 스크린에서 오류 터치를 판정하는 방법, 장치 및 시스템 |
| CN111881287B (zh) * | 2019-09-10 | 2021-08-17 | 马上消费金融股份有限公司 | 一种分类模糊性分析方法及装置 |
| US11301099B1 (en) * | 2019-09-27 | 2022-04-12 | Apple Inc. | Methods and apparatus for finger detection and separation on a touch sensor panel using machine learning models |
| EP3835929A1 (en) * | 2019-12-13 | 2021-06-16 | Samsung Electronics Co., Ltd. | Method and electronic device for accidental touch prediction using ml classification |
| US11528028B2 (en) | 2020-01-05 | 2022-12-13 | Brilliant Home Technology, Inc. | Touch-based control device to detect touch input without blind spots |
| CN115398361A (zh) * | 2020-01-05 | 2022-11-25 | 布里恩特家居科技有限公司 | 基于触摸的控制装置 |
| US11592423B2 (en) | 2020-01-29 | 2023-02-28 | Qeexo, Co. | Adaptive ultrasonic sensing techniques and systems to mitigate interference |
| US11620294B2 (en) * | 2020-01-30 | 2023-04-04 | Panasonic Avionics Corporation | Dynamic media data management |
| GB2591764B (en) * | 2020-02-04 | 2024-08-14 | Peratech Holdco Ltd | Classifying pressure inputs |
| US11599223B1 (en) | 2020-03-13 | 2023-03-07 | Apple Inc. | System and machine learning method for separating noise and signal in multitouch sensors |
| US11899881B2 (en) | 2020-07-17 | 2024-02-13 | Apple Inc. | Machine learning method and system for suppressing display induced noise in touch sensors using information from display circuitry |
| KR102859761B1 (ko) | 2020-08-21 | 2025-09-16 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
| US11954288B1 (en) | 2020-08-26 | 2024-04-09 | Apple Inc. | System and machine learning method for separating noise and signal in multitouch sensors |
| US11481070B1 (en) | 2020-09-25 | 2022-10-25 | Apple Inc. | System and method for touch sensor panel with display noise correction |
| EP4099142A4 (en) | 2021-04-19 | 2023-07-05 | Samsung Electronics Co., Ltd. | ELECTRONIC DEVICE AND METHOD OF OPERATION |
| CA3223999A1 (en) * | 2021-06-24 | 2022-12-29 | Icu Medical, Inc. | Infusion pump touchscreen with false touch rejection |
| US11874995B2 (en) | 2021-09-30 | 2024-01-16 | Samsung Electronics Co., Ltd. | Electronic device identifying force touch and method for operating the same |
| US11537239B1 (en) * | 2022-01-14 | 2022-12-27 | Microsoft Technology Licensing, Llc | Diffusion-based handedness classification for touch-based input |
| NL2031789B1 (en) * | 2022-05-06 | 2023-11-14 | Microsoft Technology Licensing Llc | Aggregated likelihood of unintentional touch input |
| US11989369B1 (en) * | 2023-03-30 | 2024-05-21 | Microsoft Technology Licensing, Llc | Neural network-based touch input classification |
| US20250085813A1 (en) * | 2023-09-08 | 2025-03-13 | Synaptics Incorporated | Adaptive accidental contact mitigation |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012001428A1 (en) * | 2010-07-02 | 2012-01-05 | Vodafone Ip Licensing Limited | Mobile computing device |
| US20120007821A1 (en) * | 2010-07-11 | 2012-01-12 | Lester F. Ludwig | Sequential classification recognition of gesture primitives and window-based parameter smoothing for high dimensional touchpad (hdtp) user interfaces |
| WO2013059488A1 (en) * | 2011-10-18 | 2013-04-25 | Carnegie Mellon University | Method and apparatus for classifying touch events on a touch sensitive surface |
| US20140104225A1 (en) * | 2012-10-17 | 2014-04-17 | Perceptive Pixel, Inc. | Input Classification for Multi-Touch Systems |
Family Cites Families (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8018440B2 (en) | 2005-12-30 | 2011-09-13 | Microsoft Corporation | Unintentional touch rejection |
| US8103109B2 (en) | 2007-06-19 | 2012-01-24 | Microsoft Corporation | Recognizing hand poses and/or object classes |
| US8519965B2 (en) * | 2008-04-23 | 2013-08-27 | Motorola Mobility Llc | Multi-touch detection panel with disambiguation of touch coordinates |
| US8502787B2 (en) | 2008-11-26 | 2013-08-06 | Panasonic Corporation | System and method for differentiating between intended and unintended user input on a touchpad |
| KR101648747B1 (ko) * | 2009-10-07 | 2016-08-17 | 삼성전자 주식회사 | 복수의 터치 센서를 이용한 ui 제공방법 및 이를 이용한 휴대 단말기 |
| US8587532B2 (en) * | 2009-12-18 | 2013-11-19 | Intel Corporation | Multi-feature interactive touch user interface |
| KR20110138095A (ko) | 2010-06-18 | 2011-12-26 | 삼성전자주식회사 | 터치 시스템에서 좌표 보정 방법 및 장치 |
| CN103534670B (zh) | 2010-10-28 | 2017-02-08 | 谱瑞科技股份有限公司 | 用电容性感测数组同步的触控笔 |
| US9244545B2 (en) | 2010-12-17 | 2016-01-26 | Microsoft Technology Licensing, Llc | Touch and stylus discrimination and rejection for contact sensitive computing devices |
| CN103534674A (zh) * | 2011-02-08 | 2014-01-22 | 海沃氏公司 | 多模态触摸屏交互装置、方法和系统 |
| US20130106761A1 (en) | 2011-10-28 | 2013-05-02 | Atmel Corporation | Touch Sensor with Lookup Table |
| US20130176270A1 (en) | 2012-01-09 | 2013-07-11 | Broadcom Corporation | Object classification for touch panels |
| JP5760100B2 (ja) | 2012-02-02 | 2015-08-05 | 株式会社タカラトミー | 放射線測定装置 |
| US8973211B2 (en) * | 2012-02-04 | 2015-03-10 | Hsi Fire & Safety Group, Llc | Detector cleaner and/or tester and method of using same |
| US8902181B2 (en) | 2012-02-07 | 2014-12-02 | Microsoft Corporation | Multi-touch-movement gestures for tablet computing devices |
| EP2817696A4 (en) | 2012-02-21 | 2015-09-30 | Flatfrog Lab Ab | TOUCH DETERMINATION WITH ENHANCED DETECTION OF WEAK INTERACTIONS |
| US9542045B2 (en) | 2012-03-14 | 2017-01-10 | Texas Instruments Incorporated | Detecting and tracking touch on an illuminated surface using a mean-subtracted image |
| WO2013166513A2 (en) | 2012-05-04 | 2013-11-07 | Oblong Industries, Inc. | Cross-user hand tracking and shape recognition user interface |
| EP2662756A1 (en) | 2012-05-11 | 2013-11-13 | BlackBerry Limited | Touch screen palm input rejection |
| WO2013171747A2 (en) | 2012-05-14 | 2013-11-21 | N-Trig Ltd. | Method for identifying palm input to a digitizer |
| US8902170B2 (en) * | 2012-05-31 | 2014-12-02 | Blackberry Limited | Method and system for rendering diacritic characters |
| US10578499B2 (en) * | 2013-02-17 | 2020-03-03 | Microsoft Technology Licensing, Llc | Piezo-actuated virtual buttons for touch surfaces |
| US20140232679A1 (en) * | 2013-02-17 | 2014-08-21 | Microsoft Corporation | Systems and methods to protect against inadvertant actuation of virtual buttons on touch surfaces |
| KR102213486B1 (ko) | 2013-03-15 | 2021-02-08 | 텍추얼 랩스 컴퍼니 | 고속 멀티 터치 노이즈 감소 |
| KR102143574B1 (ko) * | 2013-09-12 | 2020-08-11 | 삼성전자주식회사 | 근접 터치를 이용한 온라인 서명 인증 방법 및 이를 위한 장치 |
| US9329727B2 (en) * | 2013-12-11 | 2016-05-03 | Microsoft Technology Licensing, Llc | Object detection in optical sensor systems |
| US9430095B2 (en) * | 2014-01-23 | 2016-08-30 | Microsoft Technology Licensing, Llc | Global and local light detection in optical sensor systems |
| US9558455B2 (en) * | 2014-07-11 | 2017-01-31 | Microsoft Technology Licensing, Llc | Touch classification |
| US9818043B2 (en) * | 2015-06-24 | 2017-11-14 | Microsoft Technology Licensing, Llc | Real-time, model-based object detection and pose estimation |
-
2014
- 2014-07-11 US US14/329,052 patent/US9558455B2/en active Active
-
2015
- 2015-07-07 AU AU2015288086A patent/AU2015288086B2/en active Active
- 2015-07-07 KR KR1020177003813A patent/KR102424803B1/ko active Active
- 2015-07-07 CA CA2954516A patent/CA2954516C/en active Active
- 2015-07-07 MX MX2017000495A patent/MX2017000495A/es unknown
- 2015-07-07 CN CN201580037941.5A patent/CN106537305B/zh active Active
- 2015-07-07 BR BR112016029932A patent/BR112016029932A2/pt not_active Application Discontinuation
- 2015-07-07 JP JP2016575483A patent/JP6641306B2/ja active Active
- 2015-07-07 RU RU2017100249A patent/RU2711029C2/ru active
- 2015-07-07 WO PCT/US2015/039282 patent/WO2016007450A1/en not_active Ceased
- 2015-07-07 EP EP15742432.6A patent/EP3167352B1/en active Active
-
2017
- 2017-01-03 US US15/397,336 patent/US10679146B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012001428A1 (en) * | 2010-07-02 | 2012-01-05 | Vodafone Ip Licensing Limited | Mobile computing device |
| US20120007821A1 (en) * | 2010-07-11 | 2012-01-12 | Lester F. Ludwig | Sequential classification recognition of gesture primitives and window-based parameter smoothing for high dimensional touchpad (hdtp) user interfaces |
| WO2013059488A1 (en) * | 2011-10-18 | 2013-04-25 | Carnegie Mellon University | Method and apparatus for classifying touch events on a touch sensitive surface |
| US20140104225A1 (en) * | 2012-10-17 | 2014-04-17 | Perceptive Pixel, Inc. | Input Classification for Multi-Touch Systems |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113490556A (zh) * | 2019-02-27 | 2021-10-08 | 锂工科技股份有限公司 | 用于智能电池收集、分类和包装的方法和系统 |
| CN111524157A (zh) * | 2020-04-26 | 2020-08-11 | 南瑞集团有限公司 | 基于摄像头阵列的触屏物体分析方法、系统及存储介质 |
| CN111524157B (zh) * | 2020-04-26 | 2022-07-01 | 南瑞集团有限公司 | 基于摄像头阵列的触屏物体分析方法、系统及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| MX2017000495A (es) | 2017-05-01 |
| KR20170030613A (ko) | 2017-03-17 |
| US9558455B2 (en) | 2017-01-31 |
| US20170116545A1 (en) | 2017-04-27 |
| AU2015288086A1 (en) | 2017-01-05 |
| WO2016007450A1 (en) | 2016-01-14 |
| US10679146B2 (en) | 2020-06-09 |
| EP3167352A1 (en) | 2017-05-17 |
| KR102424803B1 (ko) | 2022-07-22 |
| BR112016029932A2 (pt) | 2017-08-22 |
| CA2954516C (en) | 2022-10-04 |
| RU2711029C2 (ru) | 2020-01-14 |
| JP6641306B2 (ja) | 2020-02-05 |
| US20160012348A1 (en) | 2016-01-14 |
| AU2015288086B2 (en) | 2020-07-16 |
| EP3167352B1 (en) | 2021-09-15 |
| RU2017100249A3 (zh) | 2019-02-12 |
| RU2017100249A (ru) | 2018-07-16 |
| JP2017529582A (ja) | 2017-10-05 |
| CN106537305B (zh) | 2019-12-20 |
| CA2954516A1 (en) | 2016-01-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106537305B (zh) | 对触摸事件进行分类的方法以及触敏设备 | |
| US20220383535A1 (en) | Object Tracking Method and Device, Electronic Device, and Computer-Readable Storage Medium | |
| CN111913609B (zh) | 触摸输入作为非预期的或预期的分类 | |
| CN107710111B (zh) | 确定用于接近敏感相互作用的俯仰角 | |
| US9904847B2 (en) | System for recognizing multiple object input and method and product for same | |
| CN103971102A (zh) | 基于手指轮廓和决策树的静态手势识别方法 | |
| CN111797709A (zh) | 一种基于回归检测的实时动态手势轨迹识别方法 | |
| Joo et al. | Real‐Time Depth‐Based Hand Detection and Tracking | |
| CN103186241B (zh) | 一种交互桌面触点左右手识别方法 | |
| Stahovich et al. | An efficient, classification-based approach for grouping pen strokes into objects | |
| Zaliva | 3D finger posture detection and gesture recognition on touch surfaces | |
| CN117831082B (zh) | 手掌区域检测方法和装置 | |
| Bai et al. | Dynamic hand gesture recognition based on depth information | |
| CN112596603A (zh) | 核电站控制系统的手势操控方法、装置、设备及存储介质 | |
| CN113610904B (zh) | 3d局部点云对抗样本生成方法、系统、计算机及介质 | |
| Biswas | Finger detection for hand gesture recognition using circular hough transform | |
| Dominio et al. | Feature descriptors for depth-based hand gesture recognition | |
| US20120299837A1 (en) | Identifying contacts and contact attributes in touch sensor data using spatial and temporal features | |
| Toni et al. | A robust hand detection and tracking algorithm with application to natural user interface | |
| KR101171239B1 (ko) | 영상처리를 이용한 비접촉 데이터 입력 및 조작 방법 | |
| CN115171158B (zh) | 一种基于视觉特征的指尖检测方法 | |
| Chi | Handwritten digit recognition application based on improved naive bayes method | |
| Wolin et al. | Eliminating False Positives during Corner Finding by Merging Similar Segments. | |
| Borrego-Carazo et al. | Unsupervised Embedded Gesture Recognition Based on Multi-objective NAS and Capacitive Sensing | |
| CN120604201A (zh) | 基于神经网络的触摸输入分类 |
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 |