CN104508680A - 改善之视讯追踪 - Google Patents
改善之视讯追踪 Download PDFInfo
- Publication number
- CN104508680A CN104508680A CN201380040202.2A CN201380040202A CN104508680A CN 104508680 A CN104508680 A CN 104508680A CN 201380040202 A CN201380040202 A CN 201380040202A CN 104508680 A CN104508680 A CN 104508680A
- Authority
- CN
- China
- Prior art keywords
- controller
- point
- image
- calculation element
- movement
- 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/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- 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/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/571—Depth or shape recovery from multiple images from focus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/579—Depth or shape recovery from multiple images from motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/752—Contour matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- 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/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Closed-Circuit Television Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一种用于追踪影像串流中之对象的计算装置,该计算装置包括内存和控制器,其中控制器系配置以:接收影像串流,该影像串流包括至少一第一影像及将被追踪之对象之先前影像;于至少该第一影像决定轮廓线,其中该等轮廓线包括复数个点;决定并指派至少一描述符至每一点;基于描述符而过滤点;以该先前影像中之每一点决定该第一影像中每一点之间的相对距离,这些点没有被过滤掉;及决定该些相对距离之最大出现次数,其中该最大出现次数对应将被追踪之该对象之移动。
Description
技术领域
本申请案是关于用于追踪对象的方法、计算机可读取媒体及计算装置,特别是关于用于减少用于改善之视频流中对象追踪的数据集合的方法、计算机可读取媒体及计算装置。本申请案亦关于用于追踪复数个对象的方法、计算机可读取媒体及计算装置。
本申请案更是关于用于以与视频流中一视线平行之维度追踪对象的方法、计算机可读取媒体及计算装置。
背景技术
开发人员一直试图于诸如游戏机、计算机和智能型手机之现代化装置成功地实现基于视觉的控制。大多数的尝试一直不成功是未能提供充分有效的实际操作于所有现实生活场景的控制系统。在下面提出这种系统的某些例子。
公开号US2011299737的美国专利申请案揭示基于视觉的手部动作识别系统及其方法。在一实施例中,首先根据连续的手部影像,识别手部姿势。如果手部姿势符合起始姿势,系统将连续手部影像划分为多个影像群组,并计算这些影像群组的移动向量。这些移动向量的分布与多个三维移动向量的直方图等化进行比较,决定每个影像群组的对应移动。例如,对应的移动可以是左移的动作、右移的动作、上移的动作或下移的动作。最后,这些对应移动的组合是定义为手势,然后执行映射到这个手势的指令。
公开号WO09128064的国际专利申请案揭示相关联于电子显示之电子装置的人机互动方法,包括撷取定位于一输入装置之至少一手的影像,从影像追踪手的位置或姿势;响应于侦测到以手进行之手势,自基于与输入装置之互动的互动切换至指向装置仿真,及基于追踪而仿真指向装置,手不再有手势进行。
公开号GB2474536的英国专利申请案揭示使用者如何基于计算机视觉来控制电子装置(电视、DVD播放机、个人计算机、手机、相机、STB)。影像传感器撷取一序列的视野影像。处理器接收到影像序列;侦测在影像中至少一对象的移动;将形状识别算法(如轮廓侦测)应用于至少一移动对象上,透过结合来自于对象的至少两个影像的信息,确认该对象是使用者的手;追踪对象以侦测用于控制装置的控制手势。可与移动侦测一起施用形状识别或是在移动侦测之前施用。在第一阶段中,可侦测诸如像挥手之初始化手势。在恶劣的照明条件下,可以主要基于移动侦测来识别使用者的手;使用者手势可控制光标移动和操作,选择和操作对象(如图标),或提供按钮点击仿真,例如鼠标点击指令。影像传感器可以是诸如网络摄影机之2D摄影机或3D摄影机,并可以与装置结合或在装置外部或是IR敏感的。
这种系统所提供的追踪速度太慢而没有效果,或者它们需要特别改装的摄影机。其中一个主要的缺点是它们需要良好的光线条件来操作及高分辨率,这使得它们不适合在弱或不利的光线条件下使用。它们也不适合在距离大于3米的情况下使用。
另一主要缺点是在先前技术系统中所涉及的计算复杂性,其需要大量的计算资源。由于这种资源非常昂贵,先前技术系统不适合实现于诸如智能型手机、因特网平板计算机、笔记型计算机或游戏机之装置。
因此,需要一种追踪视频流中的对象的方式,可在低光线条件下及大于3米的距离操作。还需要追踪对象的方式,不需要特别改装的装置并可以用在任何计算装置。此外,极需要追踪在影像串流中之一对象而并不需要庞大的计算资源的方式。
用于在平行于视线的方向上追踪对象的现代装置,也就是用于追踪远离及移向摄影机的对象的现代装置,都需要诸如立体摄影机或范围摄影机之专门装置。这种专门的装置是昂贵的,因而有必要提供一种这种专门摄影装置的低成本替代方案。
发明内容
本申请案之一教示目的是透过提供一种用于追踪影像串流中之对象的计算装置来克服上述之问题,该计算装置包括内存和控制器,其中控制器系配置以:接收影像串流,该影像串流包括至少一第一影像及将被追踪之对象之先前影像;于至少该第一影像决定轮廓线,其中该轮廓线包括复数个点;决定并指派至少一描述符至每一点;基于描述符而过滤点;以该先前影像中之每一点决定该第一影像中每一点之间的相对距离,这些点没有被过滤掉;及决定该些相对距离之最大出现次数,其中该最大出现次数对应将被追踪之该对象之移动。
这种计算装置不需要大量的计算资源,这是因为巧妙的方式而减少了点的数据集合。透过这样而提供追踪对象的方式,可以用在不具有任何特殊装置和不具有先前技术系统要求的大量计算资源的计算装置中而有效地运行。
在一实施例中,控制器进一步被配置以透过过滤具有非描述性的描述符的点而过滤出点。这允许追踪关注于可能或容易追踪的点,藉此减少了需要执行的工作量和计算数,藉此减少有效实施所需的计算资源。
在一实施例中,控制器进一步配置以透过过滤出表现大移动的点而过滤该些点,其系透过比较该第一影像的描述符与该先前影像之该些点的对应描述符。这允许追踪丢弃可能是导因于噪音之假移动的点,藉此减少需要执行的工作量和计算数,藉此减少有效实施所需的计算资源。
在一实施例中,控制器进一步配置以过滤掉属于静止轮廓线的点。透过移除包括背景和其它非移动对象的所有静止对象,减少要处理的数据集合。
在一实施例中,控制器进一步配置以过滤掉不太可能成为将被追踪之对象的一部分的点。这允许追踪专注于将被追踪之对象的实际或可能一部分的点,藉此减少了要处理的数据集合。
本申请案之教示目的亦包括透过提供一种用于追踪影像串流中的对象以用于计算装置的方法来克服上面列出的问题,所述方法包括以下步骤:接收影像串流,该影像串流包括至少一第一影像和将被追踪之对象之先前影像;于至少该第一影像决定轮廓线,其中该轮廓线包括复数个点;决定并指派至少一描述符至每一点;基于描述符而过滤点;以该先前影像中之每一点决定该第一影像中每一点之间的相对距离,这些点没有被过滤掉;及决定该些相对距离之最大出现次数,其中该最大出现次数对应将被追踪之该对象之移动。
本申请案之更一教示目的是透过提供计算机可读取媒体来克服上面列出的问题,计算机可读取媒体包括指令,当指令被加载并由诸如处理器之控制器执行时,致使如本文所述方法之执行。
本发明之发明人已经理解到,在发明和仔细推理后,透过巧妙的过滤,待处理的数据集合可以减少到下述大小,其中所需的计算资源是小到足以操作,即使在可携式装置和不良的光照条件下。
本文之教示是关于用于具有使用者界面之计算装置的控制系统,例如智能型手机、因特网平板计算机、计算机和游戏机。
根据本文教示之第二态样,本申请案之教示目的亦包括透过提供一种用于追踪影像串流中之对象的计算装置来克服上面列出的问题,该计算装置包括内存和控制器,其中该控制器系配置以:接收数据集合影像串流,该数据集合影像串流包括至少一点对,该点对包括第一影像中之一点及先前影像中之一点;决定每个点对的平均位置;决定每一点对的相对距离,并决定相对该平均位置之该相对距离之对应线性拟合之斜率,及基于该斜率,决定与视线平行之方向之移动。此计算装置能够决定第三维度的移动而无需使用诸如深度摄影机或立体摄影机之特殊摄影机。
本文教示之一目的是透过提供一种用于追踪影像串流中的对象以用于计算装置的方法来克服上面所列出问题,该方法包括以下步骤:接收数据集合影像串流,该数据集合影像串流包括至少一点对,该点对包括第一影像中之一点及先前影像中之一点;决定每个点对的平均位置;决定每一点对的相对距离,并决定相对该平均位置之该相对距离之对应线性拟合之斜率,及基于该斜率,决定与视线平行之方向之移动。
本文教示之另一目的是透过提供一种计算机可读取媒体来克服上面所列出问题,该计算机可读取媒体包括指令,当由诸如处理器之控制器加载并执行时,该些指令致使如本文所述方法之执行。
在创新和深入推理后,本发明的发明人已经理解到,透过利用至焦点的距离改变与至焦点的距离之间的相关性,决定与视线平行的方向上的移动是可能的,而不需要专门的装置,并可与适用于接收视频流的任何计算装置一起使用,例如自内部摄影机。
本文之教示可用于具有使用者界面之计算装置的控制系统,例如智能型手机、因特网平板计算机、计算机和游戏机。
所揭示实施例的其它特征和优点将描述于下面的详细揭示、随附之请求项以及附图中。一般情况下,请求项中使用的所有术语将根据其技术领域中的普通含义来解释,除非本文另有明确定义。
所有提及“组件、装置、组件、方法、步骤等”之处是揭示解释为组件、装置、组件、方法、步骤等的至少一实例,除非另有明确描述。本文所揭示的任何方法的步骤不必以揭示的确切顺序执行,除非有明确描述。
附图说明
参考附图,将进一步详细描述本发明,其中:
图1A和1B是根据本文教示之每一计算装置的示意图;
图2是根据本文教示之计算装置的组件的示意图;
图3是根据本文教示之计算机可读取内存的示意图;
图4A绘示将追踪对象的范例影像,图4B、4C和4D分别绘示根据本文教示之经处理对象版本的代表;
图5绘示根据本文教示实施例的如何可决定描述符的示意图;
图6绘示根据本文教示实施例的将被追踪的对象的描述,其中该对象已指派描述符;
图7绘示根据本文教示实施例的将被追踪的移动对象的描述,其中该对象已指派描述符;
图8绘示根据本文教示实施例决定的相对距离的直方图;
图9绘示根据本文教示之范例实施例于实验中决定的相对距离的直方图;
图10绘示根据本文教示之实施例的绘示一般方法的流程图;
图11绘示根据本文教示实施例的将被追踪的两移动对象的描述,其中对象已指派描述符;
图12绘示根据本文教示实施例决定的两对象相对距离的直方图;
图13绘示根据本文教示实施例的依与视线平行之方向而追踪的移动对象示意图,其中对象已指派描述符;
图14绘示根据本文教示实施例决定的平均位置和相对距离的线性拟合示意图;
图15A和15B分别绘示根据本文教示实施例决定的基于直角坐标的平均位置和相对距离的线性拟合示意图;
图16绘示根据本文教示实施例的用于追踪对象的一般方法的流程图;
图17绘示执行手势的对象的示意图;
图18绘示根据本文教示实施例的用于识别手势的状态图或杜林机的示意图;
图19绘示根据本文教示实施例的用于识别手势的状态图或杜林机的示意图;
图20绘示根据本文教示实施例的用于识别手势的状态图或杜林机的示意图;
图21绘示执行手势之两对象的示意图;
图22绘示根据本文教示实施例的用于识别手势的状态图或杜林机的示意图;
图23绘示根据本文教示实施例的用于识别手势的一般方法的流程图。
具体实施方式
现在将参照随附图式更充分描述本发明揭示的实施例,其中绘示本发明的某些实施例。然而,本发明可以许多不同的形式来实施,并且不应该被解释为限于这里所阐述的实施例,而是透过范例的方式提供这些实施例,以使本揭示将是彻底和完整的,并且将充分地传达本发明范围给本领域技术人员。相同的数字代表相似的组件。
图1概略绘示根据本文实施例的计算装置100。在一实施例中,计算装置100是配置用于网络通讯,无线或有线。计算装置100的例子是:个人计算机、桌上型或笔记型计算机、因特网平板计算机、诸如行动电话、智能电话、个人数字助理、游戏控制台之行动通讯终端。两个实施例将范例和描述为图1A中的智能型手机和图1B中的膝上型计算机100。
参照图1A,形式为智能型手机100的行动通讯终端包括壳体110,其中配置有显示器120。在一实施例中,显示器120是触控显示屏幕。在其它实施例中,显示器120是非触控式显示器。此外,智能型手机100包括两个键130a、130b。在本实施例中,有两个键130,但是任何数量的键是可能且取决于智能型手机100的设计。在一实施例中,智能型手机100是配置以显示和操作触控显示器120上的虚拟键135。应注意到,虚拟键135的数目依赖于智能型手机100的设计和智能型手机100上执行的应用程序。智能型手机100还配备了摄影机160。摄影机160是数字摄影机,配置以透过将影像记录于电子影像传感器来取得(图中未绘示)视频或静止影像。在一实施例中,摄影机160是外部摄影机。在一实施例中,摄影机可替换为提供影像串流的来源。
参照图1B,笔记型计算机100包括显示器120和壳体110。壳体包括控制器或CPU(未绘示)和一或更多个计算机可读取储存媒体(未绘示),如储存单元和内部存储器。储存单元的范例是磁盘驱动器或硬盘驱动器。计算装置100还包括至少一数据端口。数据端口可以是有线及/或无线。数据端口的范例是USB(通用串行总线)端口、以太网络端口或WiFi(根据IEEE 802.11标准)端口。数据端口是配置以赋能计算装置100与其它计算装置或服务器连接。
笔记型计算机100还包括至少一输入单元,如键盘130。输入单元的其它例子是计算机鼠标、触控板、触控屏幕或游戏杆。
笔记型计算机100还配备有摄影机160。摄影机160是数字摄影机,配置以透过将影像记录于电子影像传感器来取得(图中未绘示)视频或静止影像。在一实施例中,摄影机160是外部摄影机。在一实施例中,摄影机可替换为提供影像串流的来源。
图2绘示了根据图1的计算装置的概略结构示意图。计算装置100包括控制器210,负责计算装置200的整体运作且以任何商业上可用的CPU(“中央处理单元”)、DSP(“数字讯号处理器”)或任何其它电子可程序化逻辑装置为较佳的实施。控制器210可使用赋能硬件功能的指令来实施,例如透过使用在通用或专用处理器中的可执行计算机程序指令,其可被储存在计算机可读取储存媒体(磁盘、内存等)240以由此种处理器执行。控制器210系配置以自内存240读取指令并执行这些指令来控制计算装置100的运作。内存240可使用用于计算机可读取内存的任何通常已知技术来实现,如ROM、RAM、SRAM、DRAM、CMOS、FLASH、DDR、SDRAM或一些其它内存技术。内存240是由控制器210用于不同目的,其中之一是用于为计算装置200中的各种软件模块储存应用程序数据和程序指令250。这些软件模块包括实时操作系统、使用者界面220的驱动程序、应用程序处理器以及各种应用程序250。应用程序是一组指令,当由控制器210执行时,控制计算装置200的运作。应用程序250可以包括讯息应用程序,如电子邮件、浏览器应用程序、媒体播放器应用程序,以及其它各种应用程序250,如语音通话、视频通话、文件阅读及/或文件编辑的应用程序、实时讯息应用程序、日历应用程序、控制面板应用程序、一或更多的视频游戏、记事本应用程序、语音通话应用程序、短讯服务应用程序、定位应用程序。
计算装置200还包括使用者界面220,在图1A和图1B中的计算装置包括显示器120和键130、135。
计算装置200还包括射频接口230,其适于使得计算装置透过使用不同的无线电频率技术透过无线电频带而与其它装置通讯。这种技术的例子是IEEE802.11、IEEE 802.11s和可在计算装置100实现的无线电技术的其它实例有W-CDMA、GSM、UTRAN、LTE、和NMT。
计算装置200还配备有摄影机260。摄影机260是数字摄影机,配置以透过将影像记录于电子影像传感器来取得(未绘示)视频或静止影像。
数字摄影机260的分辨率通常会被将光线转换成离散讯号的影像传感器所限制(通常是CCD或CMOS传感器芯片)。传感器是由基本上计数撞击传感器的光子数量的大量受体所组成。在给定点时传感器上的影像越亮,该像素读出的值越大。影像中得到的像素数量决定了它的‘像素数’。例如,640×480的影像具有307200像素或约307kilopixels;3872x2592的影像具有10036224像素或者为约10megapixel。
摄影机260是配置以取得数字影像或图片。有许多不同的方式可做到这点。在称为单拍的方式中,摄影机260的传感器(未绘示)暴露于透过摄影机镜头的光线(图中未明确绘示)。单拍撷取系统使用CCD(电荷耦合装置)或三个独立的影像传感器(分别用于红色、绿色和蓝色三个主要添加色),其系透过分束器暴露于相同影像。
摄影机260最好是能够作为数字视频摄影机。数字视频摄影机通常采用两种不同的影像撷取格式:交错扫描和非交错扫描/连续扫瞄。交错扫描摄影机以交替的行组记录影像:扫描奇数行,然后扫描偶数行,然后再次扫描奇数行等等。一组奇数或偶数行称为“栏”,两栏相反偶性的连续配对称为框。非交错扫描的摄影机将每个框记录为独特的,在同一时刻补捉所有的扫描线。因此,每秒钟对于相同数目的框,交错扫描的视频撷取以连续扫瞄视频的两倍频率取样场景动作。连续扫瞄摄影机通常会产生稍微较清晰的影像。然而,动作可能不如使用每秒50或59.94栏的交错视频顺畅,尤其是如果它们采用每秒24框的影像标准。
数字视频摄影机260提供数字视频流265,也称为作为数位视频。数字视频包括以固定速率快速连续显示的正交位映像数字影像的序列或流。在视频的情境中,这些影像被称为框。我们以每秒几个框(FPS)来测量框的显示速率。由于每个框是正交的位映像数字影像,它包括像素栅格。如果它有宽为W像素高为H像素的,我们说框的大小为WxH。像素只有一属性,即它们的颜色。像素的颜色是由固定的位数表示。位数越多可以产生越多的颜色的微妙变化。这就是所谓的视频的色彩深度(CD)。范例视频可以有1小时(3600秒)的持续时间(T),框大小为640×480(WxH),色彩深度为24位,框速率为25fps。这个范例视频具有以下属性:每框像素=640*480=307,200;每框位=307,200*24=7,372,800=7.37Mbits;位速率(BR)=7.37*25=184.25Mbits/sec;视频大小(VS)=184Mbits/sec*3600秒=662,400Mbits=82,800Mbytes=82.8Gbytes。在一实施例中,摄影机260是配置以在每秒8框的框速率运作,或16、24、32或更高框速率的任何一者。
摄影机260是可操作地连接到控制器210,以提供视频流265(即捕捉的影像序列)给控制器,用于进一步处理,可能用于及/或根据应用程序250中的一或几个。
在一实施例中,摄影机260是外部摄影机或影像串流来源。
提及‘计算机可读取储存媒体’、‘计算机程序产品’、‘有形实施之计算机产品’等或‘控制器’、‘计算机’、‘处理器’等应被理解为不仅包括具有不同体系结构的计算机,如单/多处理器架构和依序(Von Neumann)/并行架构,亦包括专门电路,如场可程序化门阵列(FPGA)、应用程序专门电路(ASIC)、讯号处理装置和其它装置。提及计算机程序、指令、代码等应被理解为包括可程序化处理器的软件或韧体,例如硬件装置的可程序化内容,不论是处理器的指令或是固定功能装置、门阵列或可程序化逻辑装置等的配置设定。
图3绘示如上所述之计算机可读取媒体的示意图。在本实施方式中,计算机可读取媒体30是记忆卡,如通用串行总线(USB)的卡。USB卡30包括具有接口的壳体33,例如连接器34和记忆芯片32。记忆芯片32是闪存,也就是可电性抹除和重新程序化的非挥发性数据储存装置。记忆芯片32是以指令31程序化,当加载到诸如处理器之控制器时(可能透过界面34),执行根据上述揭示的实施例的方法或程序。USB记忆卡是配置以连接至诸如根据图1之终端的用于将指令加载到控制器的读取装置且由该读取装置读取。应当指出的是,计算机可读取媒体也可以是其它的媒体,如光盘、数字视频光盘、硬盘或其它常用的储存技术。指令也可经由无线接口自计算机可读取媒体下载以加载到控制器。
下面将参照附图揭示一种改善的追踪对象的方式。将聚焦于影像数据进行范例说明,但应该清楚的是,该处理是部分或全部执行于包括控制器的计算装置,如参考图1和2于上之揭示,或由计算机可读取媒体上储存之执行指令致使执行,如参考图3之揭示。
图4A绘示被追踪对象的影像,在本例中是手。影像是由摄影机(图4中未绘示,但在图2中标号为260)提供给计算装置(在图4中未绘示,但在图2中标号为200)的控制器(图4中未绘示,但在图2中标号为210)的影像串流(在图4中未绘示,但在图2中标号为265)的一部分。影像串流可由外部摄影机或诸如因特网上之串流视屏的另一影像串流来源提供给控制器(210)。
为了能够进行有效地对象追踪,重要的是该影像包含足够的细节。因此,相机的分辨率是重要的。对于远离相机的对象,分辨率就变得更加重要,对于长距离追踪,具有更高分辨率的摄影机是较佳的。对于短距离追踪,低分辨率的相机就足够了。使用本文所揭示的方式,160X120的影像分辨率已被证明是足够能够成功地追踪对象。
此外,为了准确和精确追踪,高的框速率为较佳,因为这允许详细的对象追踪。这种高框速率对于追踪方法的性能提出很高的要求,因为每个追踪操作必须在收到下一框之前完成。本文所揭示的方式已被证明使用高于30fps和低至8fps的框速率能够成功地追踪对象。
常见的影像尺寸是视频图形阵列(VGA)格式,有480×640像素,即总共为307200像素。这样的数据集合来执行大量的计算是不切实际的,因此控制器系配置以透过决定影像中的轮廓线来减少影像的数据集合,藉此过滤对象内的所有点或像素。这样的轮廓线可能会利用边缘侦测决定。
边缘侦测是影像处理、机器视觉和计算机视觉的知名工具,目标在识别数字影像中影像亮度急剧变化的点,或者更正式的说法是具有不连续性。一种用于边缘侦测的常用方法是Canny边缘侦测器,使用多级算法来侦测影像中的广泛的边缘范围的边缘侦测运算子。
在这个例子中,控制器是配置以使用Canny运算子决定轮廓线,藉此产生影像或第一画面(第一是指当前正被处理)的Canny线。图4B绘示图4A中的影像产生的轮廓线CL的视图。可以看到影像的数据集合已经大大降低了。
为了提高轮廓线决定的速度,控制器可以配置以使用Canny运算子来利用速度的增加。这将导致较低的精确度,但提高了处理速度。降低的精确度已被证明有较小的后果。
应该指出的是,存在有侦测用于产生轮廓线的边缘的其它方式且为本发明范围的一部分。
为了进一步减少数据集合,控制器是配置以过滤掉静止的所有轮廓线。(轮廓)的第一影像的轮廓线CL与影像串流中的前一影像的轮廓线进行比较,以决定是否有轮廓线的覆盖或匹配。此类匹配轮廓线代表静止的对象且将被过滤掉,藉此进一步减少影像的数据集合。图4C绘示所有静止的轮廓线被过滤掉后的手的轮廓线CL。
要进一步减少数据集合,控制器是配置以过滤出不太可能成为被追踪对象的一部分的轮廓线。
将轮廓线的属性与对象的假定或已知属性进行比较,以决定轮廓线不是对象的一部分。
例如,如果是要追踪矩形对象,所有环状或圆形的轮廓线会被过滤,因为它们不太可能是矩形对象的一部分。类似地,如果是要追踪矩形的对象,所有圆形或弯曲的线会被过滤掉。
为了赋能某些轮廓线的过滤,基于轮廓线的曲率,控制器可配置以过滤掉该轮廓线。根据待过滤的对象,曲率可由设计者设定。如果在过滤圆的追踪对象的情况下,所有曲率低于曲率阈值以下的轮廓线会被过滤掉,例如1或5或1至5度。
在过滤矩形的追踪对象的情况下,所有曲率高于一曲率阈值的轮廓线会被过滤掉,例如1或5或1至5度。
曲率可以根据下文揭示的描述符而决定或透过比较轮廓在线的两个或更多个点的曲率。
为了过滤出矩形对象,轮廓线没有角度的所有对象可能会被过滤掉。
要过滤不是手的一部分的对象,透过比较轮廓线的两侧上的颜色,控制器可配置以决定轮廓线不是手的一部分。如果轮廓线两侧的颜色都不是皮肤的颜色,轮廓线不是手的一部分。
待比较的皮肤颜色可自视频流中的第一影像决定,其中对象被识别且其颜色被决定。这使得本文的方式可以用于所有的皮肤颜色且可用于手套或其它硬件或者纹身(指甲花或其它方式)及珠宝。
透过决定追踪的前几个框中的对象颜色,允许过滤轮廓线,也允许追踪其它的对象。
应当注意到,基于如上面列出的准则组合,控制器可配置以过滤出不太可能是要追踪对象的一部分的轮廓线。例如,手不太可能包含圆形的轮廓线和具有尖角的轮廓线。
为了进一步减小数据集合,控制器是配置以决定在影像中/轮廓在线的哪些点是感兴趣要追踪的。为了识别感兴趣的点,控制器是配置以指派描述符至每个点。描述符是点的特征,可用于识别该点。
在一实施例中,控制器是配置以将三个描述符指派到每个点。图4D绘示轮廓线的放大图,可以看出指尖的轮廓线CL。三个描述符D1、D2和D3是以图4D中的白色箭头表示。这三个描述符是:
D1=点的正距的角;
D2=点右侧的曲率;及
D3=点左侧的曲率。
可选地,控制器可配置以附加地或替代地指派描述符,基于点的颜色或该点的轮廓线的强度。在一实施例中,控制器系配置以根据下述而仅指派两个描述符D1和D2:
D1=点的正距的角及
D2=点附近的曲率。
指派较少的(二个)描述符加快处理速度,但降低了精确度,因为这些描述没有如使用更多的描述符时那样清楚。增加的精确度赋能有效的过滤,这减少了要处理的数据集合。
在一实施例中,控制器是配置以使用Sobel演算子决定正距的角。Sobel演算子是用在影像处理中,特别是在边缘侦测算法。从技术上讲,它是离散的微分演算子,计算影像强度函数的梯度的近似值。在影像中的每个点,Sobel演算子的结果是对应的梯度向量或此向量的正距(normal)。Sobel演算子是以小的、可分离、和整数值的过滤器在水平和垂直方向上基于卷积影像,因此在计算上相对便宜。Sobel演算子的操作包括从直角到极坐标的转换。应当指出的是,有决定正距的角度的其它方式存在,并且是本发明范围内的一部分。在一实施例中,正距的角是取自在执行边缘侦测时已经执行的计算。这是有益的,因为它减少需要执行的计算数量。
图5绘示如何可在轮廓线CL上的点之间决定角度α1、α2、α3。角度α1、α2、α3对应点P1和最接近的两个相邻点P12和P3的正距,且在一实施例中是使用Sobel演算子决定。两点之间的距离是以Δstep表示。根据图5中的术语,描述符可以根据以下决定:
D1=α1[=Sobel(P1)];
D2=(α1–α2)/Δstep[=(Sobel(P1)-(Sobel(P2))/Δstep];及
D3=(α1–α3)/Δstep[=(Sobel(P1)-(Sobel(P3))/Δstep]。
这提供了一种计算或决定描述符和曲率的简单方式,该方式不要求复杂的操作,特别是对于决定曲率而言,因为已经决定相邻点的正距的角度。
使用两个描述符,描述符D1、D2可如下决定:
D1=α1[=Sobel(P1)];及
D2=(α2–α3)/2Δstep[=(Sobel(P2)-(Sobel(P3))/2Δstep]。
为了进一步减小数据集合,控制器系配置以过滤掉难以追踪的点。图6绘示手的影像,其中4个点P1、P2、P3和P4已被标记为描述符(以箭头表示)。两个点P3、P4位于食指一侧,两点P1、P2位于食指的尖端上。如果根据上述决定,两个侧点P3、P4的描述符非常相似。这一点在图6中透过具有相同角度的对应描述符的箭头绘示。然而,指尖上两点的描述符P1、P2彼此不同,且不同于侧点的描述符P3、P4。这在图6中是以具有不同的角度的对应描述符箭头绘示。这种不同于影像中的大部分点的点较容易追踪,控制器是配置以过滤掉其描述符不异于其它点的描述符的所有点。
在一实施例中,透过计算与该点相比之前一图片中具有类似或相同描述符的其它点的数目,控制器系配置以过滤掉非描述点。如果比较的点的数量超过一阈值的计数值,被比较的点会被丢弃或过滤。阈值计数可能代表绝对计数,例如100或500,或者相对计数(进行比较的点的数量和点的总数量之间的配额),例如1/5、1/10、1/20或1/40。
为了分出噪音并进一步减小数据集合,控制器是配置以过滤掉移动太多的点。过滤是透过控制器将影像中轮廓在线的所有点与前一影像中轮廓在线的所有点比较,显现太多不同的点对会被丢弃。在一实施例中,如果在描述符ΔD1、ΔD2、ΔD3中的变化根据下述式子是低于或在阈值内,控制器系配置以保留一点对:
ΔD1<=T1,例如T1=11.25度;
T2L<=ΔD2<=T2H,例如描述符值D2的T2L=-50%和T2H=+100%;以及
T3L<=ΔD3<=T3H,例如描述符值D3的T3L=-50%和T3H=+100%,
其中T1是描述符D1中所允许变化的阈值,T2L是描述符D2中所允许变化的较低阈值,T2H是描述符D2中所允许变化的较高阈值,T3L是描述符D3中所允许变化的较低阈值,T3H是描述符D3中所允许变化的较高阈值。
应当注意的是,阈值T1、T2H、T2L、T3H和T3L愈小或愈窄,如上面所讨论的,用于比较非描述点的阈值计数愈高。
在本实施例中,允许两个曲率描述符D2、D3的变化因子为2。应该指出的是,其它因素也是可能的,例如3或1.5。
保留的数据集合现在已经减少至包括感兴趣的点。
要决定被追踪对象的水平和垂直移动,控制器系配置以将数据集合中的所有点与数据集合中的所有点比较,以决定移动。在一实施例中,控制器是经比较以根据描述符中的变化与保留的像素对比较。
图7绘示如何执行移动比较。该图显示了两只手,每只手具有两个点,左手H是P1、P2,右手H'是P1'、P2'。在图7的例子中,右手H'是当前影像的手,左手H是先前影像的手。在图7中,手H向右(手H')移动一定的距离,这是以手H绘示,H'系绘制为彼此间有一距离。应该指出的是,虽然图7中每一手只显示了两个点P1、P2,在真实的例子中是处理更多的一些点。
透过计算每个点对之间的距离,控制器将前一影像的数据集合P1、P2中的所有点与当前影像中的数据集合P1'、P2'中的所有点进行比较。这样的距离是绘示为一点自前一位置P1至当前位置P1',且该距离表示为P1-P1'。
距离P1-P1'是储存在每个距离的矩阵中。该距离是一两维实体,具有X(水平)和Y(垂直)分量,且该矩阵系产生以使每个单元格对应于由对应的X和Y坐标或组件所给定的距离。对于每一发生的对应距离之经计算距离,矩阵中的每个单元格增加一。图8绘示在图7中绘示之情况的一维范例,其中对于每一距离,绘制每个距离的发生情形。
可以看出,有四个距离,其中两者相同,代表真正的移动。这两者是P1和P1'及P2和P2'之间的距离。另外两个是P1和P2'及P2和P1'之间的距离。真正的移动是由找出距离矩阵中的最大发生值而决定。在图8中,最大值是在最高栏,在本例中为两个距离P1-P1'和P2-P2'的栏。
图9绘示实验的二维表示,其中一对象已被追踪。可以看到在X=-12,Y=0附近是峰顶中心。最大值表示该对象在负X轴方向已移动了12点或像素。
在一实施例中,控制器是配置以决定或计算在同一时间的相对距离,因为如果点对表现出过多的移动,该相对距离是决定的,但在此之后,决定点对不表现过多的移动。这减少了控制器需要遍历数据集合的次数,藉此提高计算效率。
使用上述揭示的方式减少数据集合,然后决定最大可能的移动,对象的真实的水平和垂直移动可以只需要极少的计算资源的方式决定。
实验显示适合于实现上述揭示方式的智能型手机是能够使用低分辨率的摄影机及在光线不好的条件下(低到20勒克司)满意地追踪对象,藉此使这里的教导适合用于行动装置,如智能型手机、笔记型计算机、因特网平板等,以及在低于最佳环境中使用的固定式装置,如游戏机(可携式和固定式)。
本文所教示的方法适合追踪用于赋能装置之手势控制的对象,例如手。本发明的一范例实施方式是浏览应用程序,其中一只手从一侧移动到另一侧的手势指示与追踪的移动方向相同的‘翻页’操作。在图9的例子中,对应的操作是翻至下一页面(假设X方向是往右,由此所决定的移动是向左移动)。
本文所教示的方法亦适合追踪用于赋能视线追踪的对象,例如眼睛。视线追踪技术可以用来收集有关阅读行为的数据,决定显示内容上的当前感兴趣的点,也用于以特定的眼球移动来控制装置(提供残障支持特别有用)。本发明的一范例实施方式是广告应用程序,其中兴趣点(即是使用者聚焦超过阈值之时点的一点或使用者重复聚焦的点)与特定主题相关联,且应用程序是配置以提出并显示有关特定主题的广告。在图9的例子中,应用程序将向左追踪眼睛移动(假设X方向是向右,由此所决定的移动是向左移动)。如果有一阵子没有侦测到进一步的动作,且所检视内容包含左栏上的潜水文章,该应用程序可以下载和显示潜水装置的广告。
图10绘示根据本文教示的一种概略方法。在1010,于一计算装置接收影像串流。为了减少要处理的数据,计算装置在1020决定轮廓线并在1030过滤掉静止线。可选择地(如虚线表示),在1035,计算装置过滤掉不可能属于被追踪对象的点。
在1040,计算装置决定并指派描述符到每个点。该描述符可以用于识别点。在1044,为了减少要处理的数据集合,计算装置过滤掉其描述符指示该点是非描述的点(很难与其它点区分)。在1048,为了移除假动作和减少要处理的数据集合,计算装置过滤出描述符指示已经有过大移动的点对。在1050,计算装置决定数据集合中各点对之间的相对距离,在1060,找到相对距离的最大发生值。最大相对距离对应于要被追踪的对象的移动。
图11绘示了如何使用本文所揭示的方式追踪复数个对象。在图11的范例绘示中,对象O1和O2每者是以三点识别,第一对象O1是以P1、P2和P3识别,第二对象O2是以P4、P5和P6识别。如上所揭示,参照图4至图7,对应于影像的数据集合已经减小。
在图11中,当控制器决定第一和第二对象O1和O2的所有点对的相对距离时,它产生如图12所示的直方图(一维),显示图11中6个点P1-P6的相对距离的范例直方图。为了清楚起见,假移动的相对距离尚未于图12的描点中识别。此外,图11和图12的相对距离是仅供说明之用,图11的距离和图12中的描点之间的相关性可能不准确。
在图12中可以识别两个极大值,一用于第一物件O1,一用于第二物件O2。由此可以决定,O1已经移动一定的距离,O2已经移动另一距离,其中第一对象O1较第二对象O2移动得更远。
因此,使用此处的教示,可能追踪多于一个的对象,而且除了找第二最大值的简单运算之外,不需要大量的额外计算。追踪多个对象可利于用来实现用于装置的多手势控制系统。它也可以被用来提供视频游戏多个播放器的功能或提供控制系统多个运算输入。
例如,要在手势控制的操作系统中赋能点击或选择动作或变焦操作,知道对象在影像深度上的移动或对象在影像串流中与视线平行的维度上的移动是有利的。在习知技术系统中,已经透过使用例如立体声或双摄影机或使用也称为测距摄影机的深度摄影机来决定深度。这对所使用的摄影机提出了特殊的要求,造成计算装置的成本增加,也限制配备有此种摄影机之装置或适合于处理此种摄影机所提供之延伸数据之装置的可用性。
本文之教示揭示了适用于使用任何摄影机的方式,并可能因此利于使用于智能型手机、笔记型计算机、因特网平板、游戏机和其它计算装置。
图13示意性地绘示对应对象(未具体绘示)的点P1、P2的范例移动。可以看出,这些点已经从第一位置P1、P2移到之后的第二位置P1'、P2'。每个点P1、P2的移动长度Δr1,Δr2是与自焦点F的对象距离R1、R2成正比。如果距离R1、R2增加,它指示靠近摄影机的移动,如果距离R1、R2减小,它指示远离摄影机的移动。由于距离R也可以透过R2=X2+Y2表示,其中X和Y是直角坐标或每个点的元素,本文教示之作者在深度推理后已经理解到,即使坐标系统的原点不与焦点F配合,可以使用X和Y元素而非半径R。这简化了将要执行的大量计算。
在一实施例中,控制器是配置以决定属于已根据上述而减少之数据集合的点对P1、P1'和P2、P2'的平均位置。这将产生用于点对的平均位置阵列。
可选地,控制器可以配置以过滤掉与根据上述所揭示方式决定的侦测总移动相差太大的那些点。图9所示的例子中,总移动为X=-12,Y=0。
P1M的平均位置是透过P1M=(P1+P1')/2决定。
控制器是进一步配置以产生用于点对P1、P1'和P2、P2'的相对距离Δr1、Δr2的对应阵列,并将相对距离Δr1、Δr2与平均位置P1m、P2m比较。图14绘示相对距离Δr与距离R至焦点F的绘图,图15A和图15B显示X和Y分量或坐标的对应图。
控制器是配置以透过执行阵列中数据的线拟合,决定对应线LR、LX和LY的斜率。对于图14中的描点,产生的线LR可表示为:Δr=a+bR,其中a是截距,b是线LR的斜率。
斜率b是与影像的深度方向的移动成比例,并可以用来追踪在深度方向移动的对象,深度方向也称为Z方向。正斜率(b>0)表示向摄影机移近,负斜率(b<=)表示自摄影机移远。
在一实施例中,控制器系配置以执行这种线拟合,以基于点对P1;P1',P2;P2'的X和Y分量决定斜率。图15A和15B绘示得到的X和Y分量或坐标的线LX和LY,经决定用于线LX和LY的斜率可以由控制器使用以决定在Z方向的移动。对于仅在Z方向上的移动,在X和Y分量的线性拟合LX和LY的斜率是相同的。
可以由X和Y分量的线拟合决定焦点F。在图15A和15B中,焦点F的坐标在相对距离为零时可以被决定,即当ΔX=0得到PX,ΔY=0得到PY,其中F=(PX;PY)。
焦点F可用于识别对象并与其它的对象区别,因为F表示对象的中心点。因此,追踪多个对象时,焦点F可以用于识别对象,如参照图11和图12于上之揭示。
应当注意到,透过从直角坐标到极坐标的有效转换,距离R和距离变化Δr可以用来计算斜率及在Z方向的移动。
在追踪多个对象时,R、X和Y分量的点会显示几个趋势,一趋势将与每个对象关联,并将由控制器执行多个线拟合。每个线拟合的斜率对应相关联对象的移动。
图16绘示根据本文教示之追踪对象的概略方法。在1610,接收包括点对的数据集合。数据集合较佳为根据上揭教示而已经减小,但本文揭示之用来决定z方向移动的方法和方式也可用于以其它方式产生和减小的数据集合。
在1620决定点对的平均位置,在1630决定点对的相对距离,在1640决定斜率,例如透过执行相对距离与平均位置的线拟合。
在1650,基于斜率来决定Z方向上的移动。
根据本文而追踪对象在z方向的移动方式是有益的,因为它需要很少的计算资源。再一主要的好处是它不要求特殊的摄影机或多个摄影机,并可用于配置以接收影像的数据集合或例如来自摄影机、内部或外部的影像串流的任何计算装置。
透过结合上述揭示用于在垂直和水平方向上追踪对象的方法和方式及如何在与视线平行之方向追踪对象之教示,实现在三维空间中追踪对象的方式。这种结合可透过结合图10和图16的方法而达成,所以在1610收到的点对是过滤后所余,例如在1048过滤表现出过大移动的点对。
为了决定和识别由诸如手之追踪对象所执行之手势,控制器是配置以决定追踪对象的移动向量并将移动向量与向量库进行比较。
图17绘示手H的示意图,手H在三个方向上、右、下移动而执行手势。在图17中,手势由三个部分动作代表,1710上、1720右、1730下。对于每个移动,部分移动的方向1710-1730在图17中是透过在括号内的方向(度)所示。移动向量因此包括每者具有一方向的至少一部分移动。在图17中,手势的移动向量有三个分量,可以部分移动方向来表示,例如{90,0,270},该方向是以该方向的角度识别。将手势描述为方向序列是有内存空间效率的,同时还允许执行简单而快速的比较以识别手势。
图17的范例是两维,但应指出的是,参照图17-23,本文所教示的概念可以很容易地扩展到三或更多维度,将讨论如下。
为了允许使用者移动不准确,控制器是配置以决定,如果比较的角度是在被比较角度的范围或容许误差内,则有匹配。被比较的角度在下文中将称为参考角或参照角。换句话说,控制器是配置以决定部分移动的匹配,如果
其中β是参照角,α是比较角,是容许误差。
移动的角度之外,为了过滤出控制器可能被配置的非自主移动及决定移动的距离,只有当距离(dist)高于阈值(V1)时,将移动角度与参考角比较。换言之,如果dist>=V1,则部分移动会被侦测和进行比较。
透过结合角度容许误差的距离测量,控制器是配置以透过区分手势(或手势的一部分)与被追踪对象的随机移动而侦测到手势(或手势的一部分)。距离和角度容许误差之组合定义一锥形(其顶部被截掉),在此锥形内,任何产生的移动将被侦测为该角度方向的移动。
对于图17的范例移动,三个部分移动构成追踪对象H的手势。第一移动代表从位置H到H’的移动,角度为90度且距离为dist1,第二移动代表从位置H’到H”的移动,角度为0度且距离为dist2,第三移动代表从位置H”到H”’的移动,角度为270度且距离为dist3。仅当所有的距离dist1、dist2、dist3大于阈值V1且各个角度在容许误差内时,将识别出手势。另外,如果距离之和大于阈值,也就是说,如果dist1+dist2+dist3>=V1,将识别或辨认出手势。
本文所揭示的对象追踪提供了用于对象追踪的实时坐标,特别是参照图4至图16。这允许适合用于实时系统的快速手势识别,因为坐标是实时提供且手势识别之执行是在没有广泛或高资源要求的计算下。
在一实施例中,控制器是配置以透过使用诸如杜林机的状态图来识别手势。图18显示杜林机之一例,用于识别列于表1的范例手势。杜林机1800(如图19、图20和22的杜林机1900、2000、2200)是由计算装置实现和执行的,如参考图1和2之揭示。
控制器(未绘示在图18中,但在图2中为210)是决定以图18中粗线和O所示的初始或启动状态开始。如上所揭示,当侦测到移动时,可能是透过决定移动的距离是高于阈值V1,移动的角度启动状态的转变。在图18中的范例中,只有4个角度是用于移动,四个角度为0度(向右移动)、90度(向上移动)、180度(向左移动)和270度(向下移动)。应该很清楚,根据本申请的教示,可应用和使用进一步的指示来定义和识别手势。
如果侦测到的移动具有不同于识别一转变的小于容许误差的角度,则执行该转变。例如,如果向左移动被侦测到(在170度的角度),假设容许误差为10度,控制器将启动转换,从初始状态O到图18中以{180}指示的另一种状态。状态{180}对应一动作,其系以实线绘示的状态表示。从表1中可以识别该动作是一还原动作。
在这个例子中,手势及其对应的动作可以储存在数据库中或记录在计算装置的内存中(参考图2中240)。
透过图18的杜林机1800中的状态转换,可以侦测和识别一系列的移动。例如图17中所示的一系列的移动会导致状态指示为{90;0;270},根据表1是对应于放大的动作。
如果控制器追踪一角度的移动,例如120度,该角度超出任何角度的容许误差锥(假设是10度的容许误差),控制器将返回到初始状态O。在另一实施例中(将讨论于上),控制器将返回到先前的稳定状态,稳定状态是对应一动作或初始状态的状态。在图17的例子中,先前的稳定状态是所有其它(不稳定)状态的初始状态。
如果控制器无法追踪距离大于阈值的移动,可能是在超时数值T1内,及没有达到对应动作的(稳定)状态,控制器将返回到初始状态O。在图18中,对应动作的状态是以连续线标示,非对应动作的状态是以虚线标示。超时阈值T1的范例数值是0.5秒。另一范例是0.3至1秒。
在一实施例中,参照图4至16揭示之对象追踪可配置以使得追踪对象的位置只有在对象已经移动大于阈值距离的距离时才提供。这允许诸如中央处理单元(CPU)之计算装置的控制器处理应用数据,而诸如图形处理单元(GPU)之另一处理器处理追踪数据。
配置控制器以透过使用杜林机1800来侦测及识别手势赋能快速、可靠及实时地进行手势识别,而不需要大量的计算资源。进一步而言,本文揭示之方式是有弹性的,因为手势不需有特定的形式且可透过将状态加入杜林机1800中而轻易适应。
此方式易于延伸为亦包括其它维度,例如深度、旋转、转动角度、移动距离和移动速度。
图19绘示以四个维度识别手势的范例杜林机1900,四个维度为两个空间维度、移动速度和移动长度。图19的杜林机1900是图18的杜林机1800的部分延伸。应当指出的是,即使图19的杜林机1900是四个维度,本文之教示适用于任何维度的组合。
在图19的范例实施例中,杜林机1900和实现杜林机的控制器是赋能以区分快速和缓慢的移动,即决定移动的速度。如果移动的速度是决定为速度阈值S1以上,移动是分类为快速移动,如果不是,移动是分类为缓慢的移动。移动的速度可透过将移动距离与达到该距离所用的时间进行比较而决定。这可以在对象追踪期间或移动与对应手势之识别期间决定。在图19中,快速移动是以划线表示,如转换(270)转换到对应动作打印之状态{270}。速度阈值的范例是根据距离阈值V1,使得S1=V1/1秒。速度阈值的另一例子是根据距离阈值V1和超时阈值T1,使得S1=V1/T1。
控制器也可配置及/或可附加地配置以区分长与短的移动。这可以透过比较移动距离(例如在图17的dist1)与第二阈值V2,第二阈值大于第一阈值V1。如果距离大于第二阈值,移动被分类为长移动,如果不是,移动被分类为短移动。在图18中,长移动是以粗体字表示,如转换(270),转换到对应动作删除的状态{270}。
因此,透过考虑如移动速度及/或移动长度等因素,指派不同的动作至相同的方向是可能的。图19和表1的例子中,杜林机1900提供{270}、{270}、{270}、{270}的状态和对应动作。{270}是对应传送动作的向下短、慢移动,{270}是对应删除动作的向下长、慢移动,{270}是对应打印动作的向下短、快移动,及{270}是对应删除而没有确认动作的向下长、快移动。这赋能将具有严重后果的动作指派给较为鲜明的、本质是决定性或确定性的手势。例如,错误执行长移动较错误执行短移动的可能性低。
要根据不同的使用者、不同的计算装置、不同的摄影机及/或不同的应用程序和情况来赋能灵活性,控制器系配置以根据将要追踪的对象大小、与将要追踪对象的距离、显示器大小和摄影机的视野来决定距离阈值V1及/或V2。
与追踪对象的距离可透过摄影机的聚焦功能或深度方向的追踪来决定,如参照图13至图15所揭示。使用深度方向的追踪,可根据对象在深度方向(大致平行于摄影机的视线)的移动而增加或减少阈值。
例如,如果阈值V1和V2是将被追踪对象的相对大小,V1和V2的一些范例值是V1=3×对象大小;V2=6×物件大小。
例如,如果阈值V1和V2是摄影机视野的相对大小,V1和V2的一些范例值是V1=视野的20%;V2=视野的50%。如果视野是120度,V1是24度,V2是60度。
如上所讨论,本文揭示之手势侦测适用于实时执行。要赋能更快的整体执行和操作,在侦测到手势时,计算装置的控制器(在图2中分别为210和200)系配置以预先执行对应于假定手势的动作。返回到图18,配置以预先执行对应动作的控制器之运作将予以揭示。
在已经侦测到向上移动的情况下(参考图18中的转换(90)),只有两种运作是可能的,即放大(对应于{90;0;270})及缩小(对应于{90;180;270})。在此范例中,动作与显示影像相关。要准备时,控制器可以检索执行变焦操作所需的影像数据,并且还可能决定显示影像的放大和缩小表示。透过准备要采取的行动,动作可以在更短的时间内被执行,藉此导致更快的响应时间。例如,如果需要从外部驱动器加载影像数据,透过在完成及识别手势之前即开始加载影像数据,可省下许多0.1秒。已知大于0.1秒的响应时间对许多计算装置的使用者而言是感觉到压力和累人的。因此,预先执行动作的计算装置配置是大有裨益的,它减少了响应时间和使用压力较小。
由于诸如中央处理单元(CPU)之现代控制器的计算效率,在执行和侦测手势时,控制器将闲置许多个时钟周期,而且相比于处理器,人体移动相对较慢,本申请之作者已经理解到,透过利用这些闲置的时钟周期来预先执行动作(至少部分地),可达成更短的动作响应时间。
在这个例子中,控制器能够决定对应的手势,即使手势尚未完成。因为自每个(不稳定)的状态只有一转换移出,控制器知道那个手势已经输入于状态{90;180}和{90;0}。因此,控制器可以预先执行对应的动作,当达到对应动作的状态时,可以呈现或产生预先执行动作的结果。在这个例子中,显示放大(或缩小)的影像。透过暂缓产生预先执行动作的结果,可让使用者有时间透过中断手势来反悔动作。
如果一控制器执行对象追踪,一处理器执行动作相关的操作,预先执行动作的方式是特别有益的。
要赋能更多不同的手势,本申请的作者已经理解到,一手势可以形成另一手势的子序列。
图20绘示用于控制器的杜林机2000,赋能以区分第一手势和第二手势,其中第一手势包括第二手势的子序列。杜林机2000是图18或19的杜林机1800或1900的一部分的延伸。
标示为{0;90}的状态对应往前翻页的动作(见表1),标示为{0;270}的状态对应往后翻页的动作(见表1),如图18的杜林机1800。杜林机2000还包括两个状态,一状态标示为{0;90;180},对应向前滚动的动作,一状态标示为{0;270;0}对应向后滚动的动作。
可以看到,所有四个状态都是稳定的状态,标示为{0;90}的状态是在往状态{0;90;180}的路径上,即{0;90}的手势是{0;90;180}手势的次手势,标示为{0;270}的状态是在往状态{0;270;0}的路径上,即{0;270}的手势是{0;270;0}手势的次手势。
为了区分次手势和全手势,如果进一步的移动是侦测为具有不对应于任何其它手势的角度,控制器是配置成返回到先前的稳定状态。这允许透过移往未定义方向来完成手势。这也具能定格手势。
或者及/或另外地,如果在时间阈值T1内没有侦测到进一步的移动,控制器返回到先前的稳定状态。先前的稳定状态可能是目前拜访的状态,如果这样的状态是一稳定的状态。
图20的范例中,如果使用者执行手势右-上-(下/远离/右/停止),则执行往前翻页的动作,如果使用者执行手势右-上-左-(下/远离/右/停止),则执行往前滚动的动作。类似地,如果使用者执行手势右-下-(下/远离/左/停止),则执行往后翻页的动作,如果使用者执行手势右-下-右-(下/远离/左/停止),则执行往后滚动的动作。滚动操作可以定义为定格手势,使得当控制器是在滚动状态时,继续保持滚动(即没有侦测到进一步的移动时)。
为了允许多个对象手势,控制器可以配置以追踪多个对象,如参照图11至12和13至15所揭示。可以透过状态图或杜林机识别每个对象的移动(图11和图12中的O1和O2)如参照附图18至20所揭示,其中图18、19和20的杜林机1800、1900、2000之每者(或其组合)的杜林机实例系产生并执行用于每个对象。这允许多个对象进行同时或并行的手势。识别用于每个对象的手势可以组合为对应的动作,或者每个手势可有每者为一动作的结果。这允许使用多个并行手势进行同步操作或处理。这种多对象手势的范例使用是一手控制第一应用程序或在游戏应用程序中的第一游戏者,另一手控制第二应用程序或游戏应用程序中的第二游戏者,藉此赋能多执行绪之执行,亦赋能多人游戏。
图22绘示用于识别多个对象执行之复杂手势的杜林机2200。这样的手势可以用于控制一与相同应用程序,藉此提供或赋能更丰富的手势库给应用程序的开发人员。图21绘示两个对象的示意图,在这个例子中,两只手H1和H2执行复杂的、多个对象的手势。第一手(左手)H1向右移动(以(0/-)来表示第一对象移动的方向为0度)到第二位置H1',第二手(右手)H2向下移动(以(-/270)来表示第二对象移动的方向为270度)到第二位置H2'。
对于复杂的手势,杜林机2200具有三种状态,这取决于哪只手先移动,第一(左)手H1或第二(右)手H2。手势与对应的动作绘示于表2。范例手势和对应的多个动作只是为了说明,应该清楚的是,范例本身不应被解释为限制本文之教示。杜林机2200中的每个转变对应于至少一对象的移动。
如果第一(左)手H1先移动,控制器将结束于状态{0/-;-/270},对应于带出下一页面及删除该页面(或前者)的动作。如果第二(右)手H2先移动,控制器将结束于状态{0/270;0/-},对应于删除现有页面及带出下一页面的动作。根据所删除页面(现有或下一页面),这两个动作可能提供不同的最终结果。另外,此顺序提供使用者在删除前页之前预览下一页面的可能性(状态{0/-;-/270})。
如果第一手H1和第二手H2基本上同时移动,第三动作会被执行。在这个例子中,同时动作对应缩放操作。
在一实施例中,对象被侦测以移近的顺序是没有结果的。这减少了一些可用的手势,但简化了正确手势的输入,因为使用者不需要执行移动的确切时间。
具有多个对象手势使得手势库更为丰富,也使得手势库对于应用程序设计者及应用程序的需求而言更加灵活。
为了进一步简化使用者的手势输入,控制器可以配置以在手势识别阶段提供使用者回馈,其系透过显示所侦测移动的指针或状态(例如透过小图标、箭头、文字或角落里的进度指示,例如显示器的右上角)。每次已成功侦测到一移动方向时即更新指示。这使得使用者能够理解手势进展。这特别有利于复杂的手势(含有许多移动方向或移动组合)。
图23绘示根据本文教示之识别手势的概略方法。在2310,计算装置接收数据,识别被追踪对象之移动,例如透过对象移动方向的角度。在2330,该角度与参照手势的参考角或参照角比较,以决定是否识别出手势。如果是这样,在2340,计算装置执行对应的动作。
透过遍历状态图,将角度与参照角进行比较,其中该角度是角度序列的一部分,在2320,序列中的每个角度与状态图中两个状态之间的转换进行匹配。如果到达对应一动作的状态,在2340执行动作。
本文之教示提供的优点是不需要任何庞大的计算资源来有效率地实施简单的计算。例如,所教示方式并不需要作出任何比例缩放、旋转或变形操作,曲率的决定确实是简单和优雅的。因此,本文所教示的方式适合于使用在低或不利的光照条件下,这也使得它非常适合于可携式装置和娱乐系统。
识别本文所揭示手势的方式是有利的,因为它是基于方向而不是绝对位置,对于对象和摄影机之间的距离较不敏感。也不需要缩放所追踪对象以适于参照或参考对象。这是特别有用的,因为相同的手势设定可用于不同的装置(例如但不限于电视机、行动电话和固定的计算机)。
此外,手势库只需要最少的数据,因而易于储存和快速地操作,因此只需要最少的计算资源。
本文所揭示的方式也能够处理缩放变化,因为当一方向的手势与视线平行时,可解释缩放变化或者忽略这种移动。这提供识别手势的强大方式。
本文之教示提供的优点是比较角度及可能如距离的简单操作不需要任何巨大的计算资源以有效地实施。例如,教导的方式并不需要作出任何缩放、旋转或变形操作,曲率的决定确实是简单和优雅的。因此,本文所教示的方式适合于使用在低或不利的光照条件下,这也使得它非常适合于可携式装置和娱乐系统。
另一好处在于,不需要训练追踪系统或手势识别。
另外一优点在于,本文所教示的方式很容易整合于现有的装置中,因为需要的输入是影像串流,其可为来自摄影机的视频流(内部或外部),或透过另一视频来源提供,例如影片或串流式视频流。所提供的输出是相对移动的坐标,其与输入结合时,建立与本文所教示方式的简单界面,很容易整合到现有的装置以及到要生产装置的设计中。
本发明主要已经参照一些实施例描述于上。然而,如熟习本技术领域者所容易理解,除上述所揭示的其它实施例在本发明范围内的可能性相等,如所附请求项所界定。
手势 | 动作 |
{0,270} | 动作1:往前翻页 |
{0,90} | 动作2:往后翻页 |
{90,0,270} | 动作3:放大 |
{90,180,270} | 动作4:缩小 |
{180} | 动作5:复原键入 |
{270} | 动作6:打印 |
{270} | 动作7:传送 |
{270} | 动作8:删除 |
{270} | 动作9:删除而没作确认 |
{0;90;180} | 动作10:往后卷动 |
{0;270;0} | 动作11:往前卷动 |
表1:手势和对应动作
手势 | 动作 |
{0/-;-/270} | 多个动作1:下一页面+删除 |
{-/270;0/-} | 多个动作2:删除+下一页面 |
{0/270} | 多个动作3:放大 |
表2:多对象手势和对应动作
Claims (22)
1.一种用于追踪影像串流中的对象(H,H',O1,O2)的计算装置(100,200),该计算装置(100,200)包括内存(240)和控制器(210),其中该控制器(210)被设置成:
接收影像串流(265),该影像串流(265)包括至少第一影像及将被追踪的对象(H,H',O1,O2)的先前影像;
在至少该第一影像确定至少一轮廓线(contour line,CL),其中该轮廓线(CL)包括复数个点;
确定并指派至少一描述符(D1,D2,D3)至每一点(P1,P2);
基于描述符(D1,D2,D3)而过滤点;
以该先前影像中的每一点(P1,P2)确定该第一影像中每一点(P1',P2')之间的相对距离(P1'-P2',P1'-P2'),这些点没有被过滤掉;和
确定相对距离(P1'-P2',P1'-P2')的最大出现次数,
其中该最大出现次数对应将被追踪的该对象(H,H',O1,O2)的移动。
2.根据权利要求1所述的计算装置(100,200),其中该控制器(210)还被设置成通过过滤出具有非描述的描述符的点而过滤点。
3.根据权利要求1或2所述的计算装置(100,200),其中该控制器(210)还被设置成通过过滤出表现大移动的点而过滤点,其系通过比较该第一影像的描述符与该先前影像的点(P1,P2)的对应描述符。
4.根据权利要求3所述的计算装置(100,200),其中该控制器(210)还被设置成过滤出表现大移动的点并基本上同时确定相对距离(P1'-P2',P1'-P2')。
5.根据权利要求1-4中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成过滤掉属于静止轮廓线的点。
6.根据权利要求1-5中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成过滤掉不太可能成为将被追踪的对象(H,H',O1,O2)的一部分的点。
7.根据权利要求1-6中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成基于与该对应点的一正距的一角度(α1)而确定并指派一描述符(D1)至一点。
8.根据权利要求1-4中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成基于该对应点的曲率而确定并指派一描述符(D2,D3)至一点,其中该曲率是在该对应点之前及/或之后。
9.根据权利要求8所述的计算装置(100,200),其中该控制器(210)还被设置成基于该对应点(P1)的正距的一角度(α1)、一随后相邻点(P2)的正距的一角度(α2)和/或一前面相邻点(P3)的正距的一角度(α3)和点(P1,P2,P3)之间的距离而确定该曲率。
10.根据权利要求1-9中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成确定用于追踪第二对象(O2)的第二最大出现次数。
11.根据权利要求1-10中任一权利要求所述的计算装置(100,200),其中该控制器(210)还被设置成:
确定每一点对(P1;P1',P2;P2')的平均位置(P1m,P2m);
确定每一点对(P1;P1',P2;P2')的相对距离(Δr1,Δr2),并确定相对该平均位置(P1m,P2m)的该相对距离(Δr1,Δr2)的对应线性拟合(LX,LY,LR)的斜率,和
基于该斜率,确定与视线平行的一方向的移动。
12.一种用于追踪影像串流中的对象(H,H',O1,O2)的计算装置(100,200),该计算装置(100,200)包括内存和控制器(210),其中该控制器(210)被设置成:
接收数据集合影像串流,该数据集合影像串流包括至少一点对(P1;P1',P2;P2'),该点对包括第一影像中的点(P1',P2')和先前影像中的点(P1,P2);
确定每个点对(P1;P1',P2;P2')的平均位置(P1m,P2m);
确定每一点对(P1;P1',P2;P2')的相对距离(Δr1,Δr2),并确定相对该平均位置(P1m,P2m)的该相对距离(Δr1,Δr2)的对应线性拟合(LX,LY,LR)的斜率(b),和
基于该斜率(b),确定与视线平行的一方向的移动。
13.根据权利要求12所述的计算装置(100,200),其中该控制器(210)还被设置成基于直角坐标而确定该平均位置(P1m,P2m)、该相对距离(Δr1,Δr2)和该斜率(b)。
14.根据权利要求12或13所述的计算装置(100,200),其中该控制器(210)还被设置成基于该线性拟合(LX,LY,LR)确定焦点(F),该焦点识别对象(H,H',O1,O2)的中心位置。
15.根据权利要求14所述的计算装置(100,200),其中该控制器(210)还被设置成确定用于追踪第一对象(O1)的焦点(F)并确定用于追踪第二对象(O2)的第二焦点(F)。
16.一种用于追踪影像串流中的对象(H,H',O1,O2)以用于计算装置(100,200)的方法,该方法包括以下步骤:
接收影像串流(265),该影像串流(265)包括至少第一影像和将被追踪的对象(H,H',O1,O2)的先前影像;
在至少该第一影像确定至少一轮廓线(CL),其中该轮廓线包括复数个点;
确定并指派至少一描述符(D1,D2,D3)至每一点(P1,P2);
基于描述符(D1,D2,D3)而过滤点;
以该先前影像中的每一点(P1,P2)确定该第一影像中每一点(P1',P2')之间的相对距离(P1'-P2',P1'-P2'),这些点没有被过滤掉;和
确定相对距离(P1'-P2',P1'-P2')的最大出现次数,
其中最大出现次数对应将被追踪的对象(H,H',O1,O2)的移动。
17.一种用于追踪影像串流中的对象(H,H',O1,O2)以用于计算装置(100,200)的方法,该方法包括以下步骤:
接收数据集合影像串流,该数据集合影像串流包括至少一点对(P1;P1',P2;P2'),该点对包括第一影像中的点(P1',P2')和先前影像中的点(P1,P2);
确定每个点对(P1;P1',P2;P2')的平均位置(P1m,P2m);
确定每一点对(P1;P1',P2;P2')的相对距离(Δr1,Δr2),并确定相对该平均位置(P1m,P2m)的该相对距离(Δr1,Δr2)的对应线性拟合(LX,LY,LR)的斜率,和
基于该斜率,确定与视线平行的一方向的移动。
18.一种计算机可读取储存媒体(30),具有指令(31)编码于其上,当加载并执行于处理器上时,所述指令致使根据权利要求16所述的方法被执行。
19.一种计算机可读取储存媒体(30),具有指令(31)编码于其上,当加载并执行于处理器上时,所述指令致使根据权利要求17所述的方法被执行。
20.根据权利要求1-15中任一权利要求所述的计算装置,其中该计算装置是移动通讯终端。
21.根据权利要求1-15中任一权利要求所述的计算装置,其中该计算装置是因特网平板电脑或便携式电脑。
22.根据权利要求1-15中任一权利要求所述的计算装置,其中该计算装置是游戏机。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261679510P | 2012-08-03 | 2012-08-03 | |
SE1250910-5 | 2012-08-03 | ||
US61/679,510 | 2012-08-03 | ||
SE1250910A SE537754C2 (sv) | 2012-08-03 | 2012-08-03 | Datoranordning för spårning av objekt i bildström |
PCT/SE2013/050240 WO2014021755A2 (en) | 2012-08-03 | 2013-03-14 | Improved video tracking |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104508680A true CN104508680A (zh) | 2015-04-08 |
CN104508680B CN104508680B (zh) | 2018-08-17 |
Family
ID=50028625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380040202.2A Active CN104508680B (zh) | 2012-08-03 | 2013-03-14 | 改善之视讯追踪 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9275275B2 (zh) |
EP (1) | EP2880510B1 (zh) |
CN (1) | CN104508680B (zh) |
SE (1) | SE537754C2 (zh) |
TW (1) | TW201407420A (zh) |
WO (1) | WO2014021755A2 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE537580C2 (sv) | 2012-08-03 | 2015-06-30 | Crunchfish Ab | Förbättrad inmatning |
US9948852B2 (en) * | 2013-03-15 | 2018-04-17 | Intuitive Surgical Operations, Inc. | Intelligent manual adjustment of an image control element |
KR102234400B1 (ko) * | 2013-07-08 | 2021-03-31 | 삼성전자주식회사 | 컨텐츠의 순서 또는 위치를 변경하는 전자 장치 및 방법 |
US10824888B1 (en) * | 2017-01-19 | 2020-11-03 | State Farm Mutual Automobile Insurance Company | Imaging analysis technology to assess movements of vehicle occupants |
TWM560035U (zh) * | 2017-11-13 | 2018-05-11 | 鄭宇傑 | 影像追蹤裝置 |
US11029741B2 (en) * | 2018-12-28 | 2021-06-08 | Baidu Usa Llc | Deactivating a display of a smart display device based on a vision-based mechanism |
SE542978C2 (en) * | 2019-03-20 | 2020-09-22 | Manomotion Ab | A method and device for recognizing a gesture in real-time |
CN111247526B (zh) * | 2020-01-02 | 2023-05-02 | 香港应用科技研究院有限公司 | 跟踪二维平面上移动的目标物体位置和方向的方法和系统 |
US11004212B1 (en) * | 2020-01-02 | 2021-05-11 | Hong Kong Applied Science and Technology Research Institute Company Limited | Object tracking method and system using iterative template matching |
TWI755849B (zh) * | 2020-09-08 | 2022-02-21 | 國立臺灣師範大學 | Fpga多主從硬體架構之即時物件追蹤系統 |
IT202000026882A1 (it) | 2020-11-10 | 2022-05-10 | Tech4sport Srl | Sistema di video tracking per la pratica sportiva |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100027845A1 (en) * | 2008-07-31 | 2010-02-04 | Samsung Electronics Co., Ltd. | System and method for motion detection based on object trajectory |
CN101739122A (zh) * | 2008-11-24 | 2010-06-16 | 玴荣科技股份有限公司 | 手势辨识及追踪的方法 |
US20110074675A1 (en) * | 2009-09-29 | 2011-03-31 | Nokia Corporation | Method and apparatus for initiating a feature based at least in part on the tracked movement |
CN102272773A (zh) * | 2008-12-30 | 2011-12-07 | 诺基亚公司 | 提供手分割用于手势分析的方法、装置和计算机程序产品 |
GB2483168A (en) * | 2009-10-13 | 2012-02-29 | Pointgrab Ltd | Controlling movement of displayed object based on hand movement and size |
EP2428870A1 (en) * | 2010-09-13 | 2012-03-14 | Samsung Electronics Co., Ltd. | Device and method for controlling gesture for mobile device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100595925B1 (ko) * | 1998-01-26 | 2006-07-05 | 웨인 웨스터만 | 수동 입력 통합 방법 및 장치 |
US20110102570A1 (en) | 2008-04-14 | 2011-05-05 | Saar Wilf | Vision based pointing device emulation |
US8396268B2 (en) * | 2010-03-31 | 2013-03-12 | Isis Innovation Limited | System and method for image sequence processing |
US20110299737A1 (en) * | 2010-06-04 | 2011-12-08 | Acer Incorporated | Vision-based hand movement recognition system and method thereof |
US9952671B2 (en) | 2010-10-12 | 2018-04-24 | Nokia Technologies Oy | Method and apparatus for determining motion |
-
2012
- 2012-08-03 SE SE1250910A patent/SE537754C2/sv unknown
-
2013
- 2013-03-14 CN CN201380040202.2A patent/CN104508680B/zh active Active
- 2013-03-14 WO PCT/SE2013/050240 patent/WO2014021755A2/en active Application Filing
- 2013-03-14 US US14/419,169 patent/US9275275B2/en not_active Expired - Fee Related
- 2013-03-14 EP EP13825494.1A patent/EP2880510B1/en active Active
- 2013-07-18 TW TW102125761A patent/TW201407420A/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100027845A1 (en) * | 2008-07-31 | 2010-02-04 | Samsung Electronics Co., Ltd. | System and method for motion detection based on object trajectory |
CN101739122A (zh) * | 2008-11-24 | 2010-06-16 | 玴荣科技股份有限公司 | 手势辨识及追踪的方法 |
CN102272773A (zh) * | 2008-12-30 | 2011-12-07 | 诺基亚公司 | 提供手分割用于手势分析的方法、装置和计算机程序产品 |
US20110074675A1 (en) * | 2009-09-29 | 2011-03-31 | Nokia Corporation | Method and apparatus for initiating a feature based at least in part on the tracked movement |
GB2483168A (en) * | 2009-10-13 | 2012-02-29 | Pointgrab Ltd | Controlling movement of displayed object based on hand movement and size |
EP2428870A1 (en) * | 2010-09-13 | 2012-03-14 | Samsung Electronics Co., Ltd. | Device and method for controlling gesture for mobile device |
Also Published As
Publication number | Publication date |
---|---|
SE537754C2 (sv) | 2015-10-13 |
US20150206002A1 (en) | 2015-07-23 |
SE1250910A1 (sv) | 2014-02-04 |
US9275275B2 (en) | 2016-03-01 |
WO2014021755A2 (en) | 2014-02-06 |
TW201407420A (zh) | 2014-02-16 |
WO2014021755A3 (en) | 2014-05-08 |
EP2880510A4 (en) | 2016-09-14 |
EP2880510B1 (en) | 2019-06-12 |
CN104508680B (zh) | 2018-08-17 |
EP2880510A2 (en) | 2015-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104583902A (zh) | 改进的手势的识别 | |
CN104508680A (zh) | 改善之视讯追踪 | |
Lai et al. | Semantic-driven generation of hyperlapse from 360 degree video | |
US10134165B2 (en) | Image distractor detection and processing | |
CN109325933B (zh) | 一种翻拍图像识别方法及装置 | |
CN106663196B (zh) | 用于识别主体的方法、系统和计算机可读存储介质 | |
US9959681B2 (en) | Augmented reality contents generation and play system and method using the same | |
JP4855556B1 (ja) | 動体検出装置、動体検出方法、動体検出プログラム、動体追跡装置、動体追跡方法及び動体追跡プログラム | |
KR20130094862A (ko) | 대상물 추적 장치, 대상물 추적 방법 및 제어 프로그램 | |
US11113998B2 (en) | Generating three-dimensional user experience based on two-dimensional media content | |
CN110572636A (zh) | 摄像头脏污检测方法、装置、存储介质及电子设备 | |
Xiong et al. | Snap angle prediction for 360 panoramas | |
CN114390201A (zh) | 对焦方法及其装置 | |
CN107357424B (zh) | 一种手势操作的识别方法、设备及计算机可读存储介质 | |
CN110858409A (zh) | 动画生成方法和装置 | |
CN114025100B (zh) | 拍摄方法、装置、电子设备和可读存储介质 | |
KR20180069312A (ko) | 라이트 필드 동영상을 이용한 물체 추적 방법 및 장치 | |
US20230065506A1 (en) | Image processing apparatus, control method thereof, and image capturing apparatus | |
CN117119292A (zh) | 图像处理方法及装置 | |
CN116320740A (zh) | 拍摄对焦方法、装置、电子设备和存储介质 | |
JP6000809B2 (ja) | 追尾装置、追尾方法及びプログラム | |
CN117528179A (zh) | 视频生成方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200623 Address after: Malmo, Sweden Patentee after: Science and technology think tank gesture interaction company Address before: Malmo, Sweden Patentee before: CRUNCHFISH AB |