CN107257980A - 视频中的局部改变检测 - Google Patents

视频中的局部改变检测 Download PDF

Info

Publication number
CN107257980A
CN107257980A CN201680011018.9A CN201680011018A CN107257980A CN 107257980 A CN107257980 A CN 107257980A CN 201680011018 A CN201680011018 A CN 201680011018A CN 107257980 A CN107257980 A CN 107257980A
Authority
CN
China
Prior art keywords
point
key
key point
exterior
interior
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
Application number
CN201680011018.9A
Other languages
English (en)
Other versions
CN107257980B (zh
Inventor
D.比图克
A.齐内维奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN107257980A publication Critical patent/CN107257980A/zh
Application granted granted Critical
Publication of CN107257980B publication Critical patent/CN107257980B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation 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/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/147Scene change detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)

Abstract

讨论了与检测视频中的局部改变相关的技术。这样的技术可以包括基于来自之前帧的内点关键点而确定视频序列的当前帧的内点和外点关键点,基于当前和之前帧的外点关键点而检测局部改变区域,以及基于检测到的局部改变区域而提供局部改变的指示符。

Description

视频中的局部改变检测
优先权要求
本申请要求对2015年3月18日提交的题为“LOCAL CHANGE DETECTION IN VIDEO”的美国专利申请序列号14/661,406的优先权,其被整体地通过引用并入本文中用于所有目的。
背景技术
设备,诸如可穿戴设备,可以实现有一直开着的计算机视觉接口。这样的一直开着的计算机视觉接口可以为设备提供诸如通过完全上电、点亮显示器、与刺激交互等以有意义的方式对为设备可见的刺激进行响应的能力,即使设备否则是空闲的。例如,一直开着的计算机视觉接口可以检测场景中的改变,诸如用户的手出现,并且诸如通过基于由用户做出的姿势而实现设备功能等以有意义的方式对检测到的改变进行响应。
然而,可穿戴设备等由于其受限的功率预算(例如通常期望这样的设备靠电池电量在延长的时间段内进行操作)及其使用情境而可能产生针对计算机视觉技术的多个困难。例如,这样的计算机视觉接口可能需要在极少或没有等待时间的情况下检测、跟踪和识别出现在设备的相机前面的对象以提供引人注目的用户体验。此外,计算机视觉任务可能在经由设备获得的全部图像帧上的完整执行在功率效率方面是欠佳的并且在一些情况下可能是冗余的。例如,当设备的相机正在观察静态场景时,在初始场景分析完成之后可能不需要执行计算机视觉任务。任何随后的计算机视觉任务应当由例如场景中的改变来触发。此外,可穿戴设备和其他小型设备可能在穿戴者的身体移动时移动,从而导致运动的范围和随机抖动的幅度等比起在其他计算机视觉情境中显著较大。
用于检测场景中的改变的当前技术可能并未解决这样的困难,特别是对于可穿戴设备而言。例如,当前的技术可以包括视频监控技术、基于光流的技术、相位检测技术和块匹配技术,所述视频监控技术假定静态的相机位置并且使用背景建模来检测所捕获的视频中的改变。如所讨论的,可穿戴设备实现方式可能不提供静态的相机位置,并且基于光流的技术、相位检测技术和块匹配技术仅可以处置受限范围的全局和局部运动。此外,这样的技术可能要求若干之前帧在存储器中的存储,这在所讨论的功率受限的场景中可能是不可行的。
提供一种功率高效并且在设备的相对大的全局运动的情况下适用的一直开着的计算机视觉接口可以是有利的。正是关于这些和其他考虑,因此需要目前的改进。这样的改进可能在提供高质量图像的期望变得更加普遍时变得关键。
附图说明
在本文中描述的材料被作为示例而不是作为限制图示在随附各图中。为了图示的简单和清楚,在各图中图示的元件不一定按照比例绘制。例如,为了清楚,可能相对于其他元件夸大一些元件的尺寸。进一步地,在被认为适当的情况下,在各图之中重复参考标记以指示对应或类似的元件。在各图中:
图1图示了用于提供局部改变检测的示例设备;
图2图示了包括当前帧和多个之前帧的示例视频序列;
图3图示了示例当前帧的示例关键点;
图4图示了当前帧的关键点的空间邻域内的示例之前帧内点关键点;
图5图示了当前帧与之前帧之间的示例内点关键点匹配;
图6图示了指示局部改变的区域的外点关键点的示例集群;
图7是图示了用于提供视频中的局部改变检测的示例过程的流程图;
图8是图示了用于确定当前帧的内点和外点关键点的示例过程的流程图;
图9是图示了用于提供视频中的局部改变检测的示例过程的流程图;
图10是用于提供视频中的局部改变检测的示例系统的说明图;
图11是示例系统的说明图;以及
图12图示了全部依照本公开的至少一些实现方式布置的示例小形状因子设备。
具体实施方式
现在参照随附各图来描述一个或多个实施例或实现方式。虽然讨论了具体的配置和布置,但是应当理解到,这仅仅是出于说明目的而做出的。相关领域技术人员将认识到,可以在不脱离描述的精神和范围的情况下采用其他配置和布置。对相关领域技术人员将显然的是,在本文中描述的技术和/或布置还可以在除了在本文中描述的事物之外的各种其他系统和应用中采用。
虽然以下描述阐述了可以在诸如例如片上系统(SoC)架构之类的架构中显示的各种实现方式,但是在本文中描述的技术和/或布置的实现方式不限于特定架构和/或计算系统,并且可以由用于类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(IC)芯片和/或封装的各种架构,和/或各种计算设备和/或消费者电子(CE)设备,诸如多功能设备、平板计算机、智能电话等,可以实现在本文中描述的技术和/或布置。进一步地,虽然以下描述可能阐述了众多具体细节,诸如系统组件的逻辑实现方式、类型和相互关系、逻辑划分/整合选择等,但是所要求保护的主题可以在没有这样的具体细节的情况下实践。在其他实例中,可能并未详细示出某种材料,诸如例如控制结构和完整的软件指令序列,以便不使在本文中公开的材料模糊。
在本文中公开的材料可以以硬件、固件、软件或其任何组合来实现。在本文中公开的材料还可以实现为存储在机器可读介质上的指令,所述机器可读介质可以由一个或多个处理器读取和执行。机器可读介质可以包括用于以由机器(例如计算设备)可读的形式存储或传输信息的任何介质和/或机构。例如,机器可读介质可以包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光学存储介质;闪存设备;电气、光学、声学或其他形式的传播信号(例如载波、红外信号、数字信号等)和其他。
在说明书中对“一个实现方式”、“实现方式”、“示例实现方式”等的引用指示所描述的实现方式可以包括特定特征、结构或特性,但是每一个实施例可能不一定包括所述特定特征、结构或特性。而且,这样的短语不一定是指相同的实现方式。进一步地,当结合实施例来描述特定特征、结构或特性时,主张结合其他实现方式来实现这样的特征、结构或特性在本领域技术人员的知识内,无论本文中是否明确地描述了所述其他实现方式。
本文中描述了与视频序列中的局部改变检测相关、并且特别地与基于与视频序列的帧相关联的关键点来检测局部改变相关的方法、设备、装置、计算平台和物品。
如以上所描述的,在一直开着的计算机视觉接口中,特别是在可穿戴设备中实现的那些中,用于视频序列的场景的当前改变检测技术可能并未解决与受限功率预算、检测中的非常低的等待时间的期望、设备存储器的受限或最小部分的使用、处置大范围的全局运动的能力等相关联的困难。在本文中讨论的技术可以提供检测改变,诸如视频序列的帧之间的大的全局运动的情境中的局部改变。例如,这样的技术可以适用于低帧速率图像捕获并且可以提供存储器的受限使用和低等待时间。
例如,在本文中讨论的技术可以基于图像关键点和相关联的局部图像描述符的检测和时域跟踪。通过使用对应的描述符跨相邻的图像帧匹配描述符,可以估计全局仿射运动并且可以确定外点关键点。例如,外点关键点可以对应于与所估计的全局运动不一致的位置,并且这样的外点关键点的集群可以用于找到与通过视频序列捕获的场景中的局部改变相关联的图像区域。可以使用计算机视觉技术来分析检测到的图像区域,以例如检测场景中的新面孔或者基于手部姿势而唤醒设备等。这样的技术因此可能有利于在一直开着的计算机视觉接口(诸如经由可穿戴设备实现的那些)中使用。
在一些实施例中,局部改变检测可以通过确定或检测视频序列的当前帧中的内点和外点关键点来提供。例如,这样的内点和外点关键点可以从检测到的关键点和相关联的描述符基于应用于当前帧的这样的检测到的关键点和之前帧的内点关键点的匹配技术而确定,如本文中进一步讨论的。例如,来自之前帧的内点关键点可以封装(wrap)到当前帧的坐标,并且可以执行基于空间域和描述符域中的接近度的匹配。在一些示例中,当前和之前帧的外点关键点可以被修剪(例如重新指派为内点关键点),如本文中进一步讨论的,以生成针对当前和之前帧的最终外点关键点。
基于再次封装到当前帧的坐标的当前帧的外点关键点和之前帧的外点关键点,可以应用群集技术来检测视频序列中的局部改变的任何区域。例如,当发生局部改变时,来自当前和之前帧的这样的外点关键点可以在区域内群集。可以检测这样的集群,并且可以提供局部改变的相关联的指示符(例如检测到局部运动的指示符或与集群相关联的定界框位置和大小等)。局部改变的这样的指示符可以被设备用于将设备从低功率状态唤醒,为设备提供改变(例如点亮显示屏、增加图像捕获速率等),执行对象识别等。这样的技术可以使用低功率存储器和计算资源来提供低等待时间和高质量(例如低误报率)结果。
图1图示了依照本公开的至少一些实现方式布置的用于提供局部改变检测的示例设备100。如图1中所示,设备100可以包括图像信号处理器101、关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域(ROI)估计模块107。此外,设备100可以包括存储器(未标记),其可以提供对与局部改变检测相关联的数据的存储和访问。例如,设备100的存储器可以存储全局运动历史108、内点轨迹历史109、外点轨迹历史110等并且提供对它们的访问。此外,设备100可以包括加速度计/陀螺仪模块111,其可以提供运动数据126以供由全局运动估计模块104在估计帧之间的全局运动中使用,如本文中进一步讨论的。设备100可以是任何合适的形状因子设备,诸如可穿戴设备。例如,设备100可以是智能手表、智能眼镜、可穿戴配饰、衣物等。然而,尽管在本文中关于可穿戴设备而讨论,但是设备100可以包括任何形状因子设备,包括计算机、膝上型计算机、平板计算机、智能电话、数码相机、显示设备等。例如,设备100可以提供局部改变检测,如在本文中讨论的。
如所示,关键点检测模块102可以从图像信号处理器101接收视频序列(VS)121。例如,图像信号处理器101可以从设备100的图像传感器(未示出)接收图像传感器数据。这样的图像传感器和图像信号处理器101可以在被动模式、低功率模式、超低功率模式等中操作以节约设备100的功率使用。例如,图像传感器和图像信号处理器101可以提供具有低分辨率和低帧速率的视频序列121以在针对设备100的被动一直开着的计算机视觉接口模式中节约功率。视频序列121可以包括以任何合适的分辨率和帧速率的任何合适的图像帧数据。
图2图示了依照本公开的至少一些实现方式布置的示例视频序列121,其包括当前帧201和多个之前帧202-204。如所示,视频序列121可以包括当前帧201和任何数目的之前帧202-204。例如,关于视频序列121来说明并且与局部改变检测相关联地讨论三个之前帧202-204,然而,视频序列121和这样的局部改变检测技术可能牵涉任何数目的之前帧。如所讨论的,在一些示例中,视频序列121可以包括以相对低的帧速率的低分辨率帧201-204。例如,帧201-204可以以小于图像传感器的完整分辨率的任何分辨率并且以小于图像传感器的完整帧速率能力的任何帧速率以便为设备100提供低功率处理。在一些示例中,帧201-204可以具有大约5帧每秒(fps)或至多5fps等的帧速率。在一些示例中,帧201-204可以具有大约1fps和5fps之间的帧速率。在一些示例中,小于1fps的帧速率可能提供不准确的局部改变检测,然而可以使用任何合适的帧速率。此外,视频序列121的帧速率在一些示例中可以是恒定的并且在其他示例中可以变化。例如,设备100可以基于全局运动估计(以下进一步讨论;例如使得较大的检测到的运动可以与较高的帧速率相关联,并且较低的检测到的运动可以与较低的帧速率相关联)、用户设置、诸如功率管理设置之类的其他设备设置等而使视频序列121的帧速率变化。如所讨论的,帧201-204可以包括任何合适的图像数据。
并且如图2中所示,全局运动估计可以在帧201-204之间或者跨帧201-204执行以提供帧204与帧203之间的全局运动估计211、帧203与帧202之间的全局运动估计212以及帧202与帧201之间的全局运动估计213,等。这样的全局运动估计可以在逐帧的基础上执行,如图2中所示,或者跨多个帧执行(例如可以跳过一些帧之间的全局估计)。这样的全局运动估计211-213可以包括指示帧之间或跨帧的全局改变的任何合适的数据。例如,全局运动估计211-213可以包括运动参数,诸如平移、缩放、旋转、偏斜等。例如,这样的全局运动估计211-213可以包括定义全部帧(例如帧201-204)之间的全局运动的参数。在一些示例中,这样的全局运动估计数据可以由全局估计模块104提供,如本文中进一步讨论的。
返回到图1,关键点检测模块102可以在持续进行的基础上从图像信号处理器101接收视频序列121,并且关键点检测模块102可以基于视频序列121而生成关键点(KP)122。例如,关键点122可以针对视频序列121的当前帧而生成。关键点检测模块102可以使用任何一种或多种合适的技术来生成关键点122。例如,关键点检测模块102可以检测视频序列121的帧201-204内的感兴趣的点。例如,关键点检测模块102可以实现边缘检测、角落检测、斑点检测等以生成关键点122。在一些示例中,关键点检测模块102可以实现加速段测试(AST)以生成关键点122。这样的加速段测试可以包括例如经由实现主体(subject)像素的邻域内的像素明亮度比较的角落检测以确定主体像素是否是关键点。这样的加速段测试可以提供鲁棒的关键点检测。关键点122可以包括与这样的关键点和关键点检测相关联的任何合适的数据,诸如这样的关键点在图像帧内的位置。
图3图示了依照本公开的至少一些实现方式布置的示例当前帧201的示例关键点301。如图3中所示,可以遍及帧201确定关键点301。此外,关键点301可以经由帧201内的位置而标识。尽管为了呈现的清楚起见,在图3和本文中的其他地方被图示有大约12个关键点301,但是帧201可以包括任何数目的关键点301,诸如数百(例如几百)或数千个关键点301。
返回到图1,如所示,关键点检测模块102可以向设备100的描述符估计模块103和/或存储器(未示出)提供关键点122。描述符估计模块103可以从关键点检测模块102或存储器接收关键点122,并且描述符估计模块103可以生成与关键点122相关联的描述符(D)123。例如,描述符123可以包括用于每一个关键点122的描述符。描述符估计模块103可以使用任何一种或多种合适的技术来生成描述符123。此外,这样的描述符123可以包括任何合适的描述符或描述符家族,诸如图像描述符等。例如,针对关键点122,描述符123可以与像素颜色、明亮度、梯度、扩张性、亮度、强度、像素块的评估等相关联。例如,描述符估计模块103可以实现较低功率成本描述符估计技术以为设备100节约功率。在一些示例中,单个描述符可以针对每一个关键点122而实现。在其他示例中,两个、三个或更多描述符可以针对每一个关键点122而实现。如本文中进一步讨论的,这样的描述符可以用于找到相邻帧的关键点之间的局部对应性。如所示,描述符估计模块103可以向设备100的全局估计模块104和/或存储器提供描述符123。
全局运动估计模块104可以从加速度计/陀螺仪模块111接收描述符123、关键点122、内点轨迹历史125以及可选的运动数据126,并且全局运动估计模块104可以生成全局运动估计124。全局运动估计模块104可以使用任何一种或多种合适的技术来生成全局运动估计124。例如,如所讨论的,关键点122和描述符123可以用于找到或确定当前帧和任何数目的之前帧的关键点122之间的对应性。全局运动估计模块104可以使用关键点之间的这样的对应性来估计当前帧与任何数目的之前帧之间的仿射变换。例如,全局估计模块104可以使用内点轨迹历史125以基于内点关键点之间的过去对应性或映射而估计或推断当前帧的全局运动。例如,全局运动估计模块104可以基于鲁棒回归技术等而确定这样的仿射变换。这样的仿射变换估计可以包括或者可以用于确定帧之间的全局运动,如在本文中讨论的(请参照图2)。例如,帧之间或跨帧的全局运动可以包括运动参数,诸如平移、缩放、旋转、偏斜等。并且,如所示,全局运动估计模块104可以包括来自加速度计/陀螺仪模块111的运动数据126或者整合所述运动数据126以生成这样的全局运动参数。这样的运动数据126可以包括指示设备100随时间的运动的任何合适的数据。在一些示例中,全局运动估计模块104可以整合运动数据126以改进全局运动估计124的准确性和/或鲁棒性。
如所讨论的,全局运动估计模块104可以生成全局运动估计124(例如指示帧之间或跨帧的全局运动的参数)。并且,如本文中进一步讨论的,可以生成内点关键点轨迹和外点关键点轨迹(例如经由内点和外点检测模块105和/或外点修剪模块106,并且如经由内点轨迹历史109和外点轨迹历史110被存储)。这样的全局运动估计和内点轨迹(以及,在一些情况下,外点轨迹)可以经由设备100而用于执行其他任务,诸如基于来自若干相邻帧的内点轨迹的3维(3D)场景的估计、使用经平滑的全局运动估计的数字视频稳定化等。例如,这样的数字视频稳定化可以特别良好地适合于稳定设备100的可穿戴设备实现方式中的低帧速率视频,因为其可以处置设备100的宽范围的运动。如所示,全局运动估计模块104可以向内点和外点检测模块105和全局运动历史108提供全局运动估计124。例如,全局运动历史108可以维持视频序列121的任何数目N的最新帧之间的全局运动估计的历史。例如,用于如在本文中讨论的处理的最新帧的数目N可以是两个、三个、四个或更多个之前帧。
内点和外点检测模块105可以接收全局运动估计124、全局运动历史127(例如针对之前帧的一个或多个全局运动估计)、关键点122和描述符123,并且内点和外点检测模块105可以从关键点122之中确定内点和/或外点,并且可以生成内点/外点数据(I/O D)128。内点和外点检测模块105可以使用任何一种或多种合适的技术来生成内点/外点数据128。例如,内点和外点检测模块105可以基于一个或多个之前帧(例如帧202-204等)中的内点关键点而确定当前帧(例如帧201)的内点关键点和外点关键点。例如,内点和外点检测模块105可以(例如经由设备100的存储器)访问视频序列121的任何数目N的最新帧的内点和外点关键点以生成指示关键点122中的哪些是内点关键点并且哪些是外点关键点的内点/外点数据128。
例如,关键点122中的内点关键点可以是与若干最新图像帧之间的全局运动一致的那些关键点。与若干最新图像帧之间的全局运动不一致的那些关键点可以是外点关键点并且可以与例如与视频序列121相关联的场景中的局部运动或局部改变相关联。可以在外点修剪模块106处进一步测试这样的外点关键点,如本文中进一步讨论的。
如所讨论的,内点和外点检测模块105可以使用任何一种或多种合适的技术从关键点122之中确定内点关键点和/或外点关键点。在一些示例中,内点和外点检测模块105可以使用来自全局运动历史108的全局运动估计数据(例如全局运动历史127)将来自任何数目(例如N)的最新帧的内点关键点封装到当前帧的坐标系。例如,参照图2,可以基于全局运动估计213将与帧202相关联的内点关键点封装到帧201的坐标系,可以基于全局运动估计212和全局运动估计213将与帧203相关联的内点关键点封装到帧201的坐标系,等。
例如,首先,对于当前帧(例如帧201)的每一个关键点,确定当前或主体关键点(例如在当前帧的坐标中)的空间邻域内的诸如之前帧202-204等的任何之前帧(例如之前帧k,使得kN)中的内点关键点。例如,可以确定来自离开至多R个像素等的之前帧的所有经封装的内点关键点。
图4图示了依照本公开的至少一些实现方式布置的当前帧201的关键点401的空间邻域410内的示例之前帧内点关键点402-404。如图4中所示,对于当前帧201的主体关键点401,可以提供空间邻域410。空间邻域410可以是任何合适的大小或形状。在所图示的示例中,空间邻域410是基本上方形的,然而,可以使用任何邻域形状,诸如圆形、矩形等。此外,空间邻域410可以定义邻域,使得为描述符距离评估提供像素距离R内的之前帧内点关键点402-404,如在本文中讨论的。像素距离可以是任何合适的像素距离,诸如10个像素、20个像素、50个像素等。
并且如所示,之前帧内点关键点402-404可以在空间邻域410内(例如在封装到当前帧201的坐标之后)。在所图示的示例中,例如,之前帧内点关键点402可以与之前帧202相关联,之前帧内点关键点403可以与之前帧203相关联,并且之前帧内点关键点404可以与之前帧204相关联。尽管之前帧内点关键点402、403、404中的每一个图示有两个,但是任何数目的之前帧关键点可以在空间邻域410内。如本文中进一步讨论的,内点和外点检测模块105可以基于空间邻域410而确定这样的之前帧内点关键点402-404,并且这样的之前帧内点关键点402-404可以基于其相关联的描述符和与当前帧201的关键点401相关联的描述符的比较而进一步评估。
例如,返回到图1,基于这样的描述的之前帧内点关键点,可以针对每一个之前帧确定针对之前帧内点关键点的最小描述符距离。例如,最小描述符距离可以与具有一个或多个描述符的之前帧关键点相关联,所述一个或多个描述符具有关于当前帧的当前或主体关键点(例如关键点401)的一个或多个描述符的最小差异。最小描述符距离可以与阈值进行比较,并且如果最小描述符距离小于该阈值,则可以确定或声明来自当前帧的当前关键点与来自之前帧的最小描述符距离关键点之间的匹配。这样的过程可以针对所有参与的之前帧(例如针对N个帧)重复以生成针对当前帧的当前或主体关键点的一个或多个匹配(例如每一个之前帧一个潜在匹配)。例如,对于当前帧关键点,在最新之前帧中、在下一最新之前帧中等可能存在或可能不存在匹配。
基于跨之前帧的一个或多个匹配,可以针对当前帧的当前或主体关键点而生成匹配得分。匹配得分可以使用任何一种或多种合适的技术生成。例如,匹配得分可以是跨参与的之前帧的匹配为1或不匹配为0与重要性权重之积的总和。例如,相比于与较多距离过去帧的匹配,重要性权重可以对较新的过去帧中的匹配更高地加权。例如,如所示,可以关于等式(1)来生成匹配得分:
其中S可以是内点匹配得分(例如(in)指示内点),i可以是针对当前帧中的每一个关键点的计数器变量,t可以是当前帧的指示符,k可以是针对之前帧的计数器变量,N可以是在确定中使用的之前帧的数目(例如使得内点匹配得分S可以基于N个之前帧中的每一个之前帧k针对当前帧t的每一个关键点i而生成),如果在关键点i与帧t-k中的关键点之间存在匹配则M可以为1,并且w可以是重要性权重。如所讨论的,对于较新的过去帧,重要性权重可以较大,使得w 1 >w 2 >w 3 >……>w N
如所讨论的,如果针对关键点i的内点匹配得分大于阈值,则关键点i可以被标记为内点,并且否则,关键点i可以被标记为外点。例如,阈值可以表征为匹配阈值,并且匹配阈值可以是任何合适的值,其中较低值提供较多内点关键点(和潜在的误报),并且较高值提供较少内点关键点(和潜在的漏报)。如图1中所示,如果关键点i被标记为内点,则可以(例如基于由所匹配的关键点遍历的轨迹)生成与关键点相关联的内点轨迹并且将其提供给内点轨迹历史109作为内点轨迹(IT)129的部分。此外,这样的内点/外点关键点确定可以对当前帧的所有关键点做出,并且可以将合成的轨迹作为内点轨迹129提供给针对被分类为内点关键点的那些关键点的内点轨迹历史109。此外,这样的内点/外点关键点确定可以用于生成内点/外点数据128,其可以将相关内点或外点标记与关键点122中的每一个关键点相关联。可以将这样的内点/外点数据128提供给设备100的存储器和/或外点修剪模块106。内点/外点数据128可以包括任何合适的数据,诸如与关键点122中的每一个关键点相关联的二进制指示符等。
如所讨论的,可以基于确定当前帧的关键点与之前帧的内点关键点的匹配(如果有的话)而生成内点/外点数据128。这样的匹配可以基于空间距离(例如之前帧内点关键点匹配必须在关键点的空间邻域(诸如空间邻域410)内)和描述符距离(例如之前帧内点关键点匹配必须具有小于阈值的描述符差异)而确定。此外,内点/外点数据128可以基于每一个关键点的匹配得分与匹配得分阈值的比较而生成。这样的内点/外点数据128可以指示关键点122之中的内点关键点和外点关键点。在一些示例中,可以进一步评估使用这样的技术确定的外点关键点以确定是否一个或多个这样的外点连同来自过去帧的外点一起生成匹配链。如果是这样,则这样的之前确定的外点关键点可以改变成内点关键点。此外,来自之前帧的匹配外点关键点还可以改变成内点关键点(例如整个匹配链可以被重新指派到内点关键点)。
例如,外点修剪模块106可以确定是否内点/外点数据128之中的任何外点关键点要被重新标记为内点关键点。外点修剪模块106可以使用任何一种或多种合适的技术来做出这样的确定。在一些示例中,外点修剪模块106可以通过检测外点关键点与来自之前帧的外点关键点的匹配来检测来自之前标记的外点关键点的内点关键点。在一些示例中,如果外点在这样的之前帧的多数中具有匹配,则可以将外点和匹配(例如来自之前帧的之前标记的外点)标记为内点。例如,如果(例如基于空间和/或描述符距离,如在本文中讨论的)发现来自当前帧的外点关键点匹配来自之前帧的多数的外点关键点,则可以将外点关键点和外点关键点匹配声明为内点关键点。此外,外点修剪模块106可以确定这样的新标记的内点的内点轨迹(IT)131和依然是外点的那些外点的外点轨迹(OT)132,并且将这样的轨迹分别提供给内点轨迹历史109和外点轨迹历史110。
如所讨论的,外点修剪模块106可以使用任何一种或多种技术来确定是否内点/外点数据128之中的任何外点关键点要被重新标记为内点关键点。在一些示例中,当前帧中的外点关键点可以相对于最新的N个帧中的外点关键点来匹配。如果当前帧中的外点关键点之一在最近帧的多数中的外点关键点之中具有匹配,则可以从外点轨迹历史110移除当前帧中的外点关键点和匹配(例如来自之前帧的匹配外点关键点)并且将其移动或附加到内点轨迹历史109(例如经由内点轨迹131)。在其他示例中,可以生成外点匹配得分并且将其与阈值进行比较以确定是否要重新标记外点关键点。例如,对于当前帧中的(例如在内点/外点数据128之中的)每一个外点关键点i t ,可以在之前帧中确定匹配链(例如来自之前帧的匹配外点关键点)i t 、i t–1 ……i t–N ,使得如果在帧t-k中没有发现匹配则i t–k =0。这样的匹配或匹配链可以基于空间接近度和描述符值接近度,如在本文中讨论的。在一些示例中,可以应用多数测试,使得如果在之前帧的多数中发现匹配,则将所匹配的外点关键点重新标记为内点关键点。
在其他示例中,可以基于这样的匹配(如果有的话)针对当前帧中的每一个外点关键点而确定外点匹配得分。外点匹配得分可以使用任何一种或多种合适的技术来生成。例如,外点匹配得分可以是跨参与的之前帧的匹配为1或不匹配为0与重要性权重之积的总和。例如,相比于与较多距离过去帧的匹配,重要性权重可以对较新的过去帧中的匹配更高地加权。在一些示例中,如所示,可以关于等式(2)来生成外点匹配得分:
其中S可以是外点匹配得分(例如(out)指示外点,i可以是针对每一个外点关键点的计数器变量,t可以是当前帧的指示符,k可以是针对之前帧的计数器变量,N可以是在确定中使用的之前帧的数目(例如使得外点匹配得分S)可以基于N个之前帧中的每一个之前帧k针对当前帧t的每一个外点关键点i而生成,如果在外点关键点i与帧t–k中的外点关键点之间存在匹配则M可以是1,并且w可以是重要性权重。如所讨论的,重要性权重对于较新的过去帧可以较大,使得w 1 >w 2 >w 3 >……>w N
如所讨论的,如果外点关键点i的外点匹配得分大于阈值,则可以将外点关键点i连同来自之前帧的匹配关键点一起标记为内点关键点(例如可以将整个链的匹配关键点重新标记为内点关键点),并且否则,外点关键点i可以依然是外点。如图1中所示,如果外点关键点i被标记(例如重新标记)为内点关键点,则可以(例如基于由所匹配的关键点遍历的轨迹)生成与关键点i相关联的内点轨迹并且将其提供给内点轨迹历史109作为内点轨迹(IT)131的部分。如果外点关键点未被标记为内点关键点(例如其依然是外点关键点),则可以生成与关键点i相关联的外点轨迹并且将其提供给外点轨迹历史110作为外点轨迹(IT)132的部分。此外,可以针对当前帧的所有之前外点标记的关键点做出这样的外点修剪确定并且可以将合成的轨迹分别作为内点轨迹131提供给内点轨迹历史109,或者作为外点轨迹132提供给外点轨迹历史110。此外,可以基于这样的外点关键点修剪而生成最终内点/外点数据130。可以将这样的最终内点/外点数据(F I/O D)130提供给设备100的存储器和/或改变感兴趣区域估计模块107。这样的最终内点/外点数据130可以包括任何合适的数据,诸如与关键点122中的每一个关键点相关联的二进制指示符等。
如所讨论的,可以关于一个或多个之前帧来确定当前帧的内点关键点和外点关键点。这样的当前帧内点关键点可以通过内点和外点检测模块105而映射到之前帧的内点关键点和/或经由外点修剪模块106而映射到外点关键点。这样的模块可以单独实现,如图1中所示,或者一起实现为内点检测模块或内点和外点检测模块等。
图5图示了依照本公开的至少一些实现方式布置的当前帧201与之前帧202之间的示例内点关键点匹配。如图5中所示,当前帧201可以包括使用任何技术(诸如在本文中讨论的那些)确定的内点关键点501和外点关键点502。此外,之前帧202可以包括使用任何技术(诸如在本文中讨论的那些)确定的内点关键点503和外点关键点504。如所示,当前帧201的内点关键点501和之前帧202的内点关键点503可以具有其间的映射505,使得(如箭头所指示的)相关联的内点关键点501和内点关键点503匹配。如所讨论的,可以评估任何数目N的之前帧,如在本文中讨论的,并且可以在当前帧与任何数目的之前帧之间和/或在这样的之前帧之间做出类似于映射505的映射。并且如所讨论的,这样的映射可以提供或可以用于提供针对内点关键点501的内点轨迹。
返回到图1,改变感兴趣区域估计模块107可以接收最终内点/外点数据130或者最终内点/外点数据130的至少最终外点数据和外点轨迹历史133,并且改变感兴趣区域估计模块107可以监视这样的数据,并且如果适用的话,在发生局部改变检测时生成局部改变指示符134。改变感兴趣区域估计模块107可以使用任何一种或多种合适的技术来检测这样的局部改变。例如,检测局部改变的区域可以包括将来自之前帧的外点关键点封装到当前帧的坐标系以及向当前和之前帧的外点关键点应用群集技术。例如,当这样的外点关键点中的至少一些指示集群时可以检测到局部改变的区域。这样的集群可以指示其中发生局部运动或者发生与全局运动不相容的局部改变的图像区域。
例如,改变感兴趣区域估计模块107可以基于全局运动估计(诸如全局运动估计124)而将来(例如如经由外点轨迹历史133所确定的)自任何数目N的之前帧的外点关键点封装到当前帧的坐标系。每一个这样的经封装的外点关键点可以被指派重要性权重值,使得例如向来自较新的帧的外点关键点给出较高的权重并且向来自当前帧的外点关键点给出最高权重。基于封装到当前帧的坐标的这样的外点关键点及其相关联的重要性权重,改变感兴趣区域估计模块107可以应用群集技术,诸如加权k平均群集技术等。这样的集群,如果被检测到,则可以用于生成局部改变指示符134。局部改变指示符134可以是任何合适的局部改变指示符,诸如局部运动检测信号或指示符(例如二进制信号)、集群中心指示符、指示检测到的集群周围的定界框的定界框位置和大小数据的指示符。
图6图示了依照本公开的至少一些实现方式布置的指示局部改变区域的外点关键点601的示例集群。例如,如图6中所示,当前帧201可以包括(例如经由实心圆指示的)内点关键点604和(例如经由开放圆指示的)外点关键点601的集群。如所讨论的,外点关键点601的集群可以经由改变感兴趣区域估计模块107来检测,并且局部改变指示符134可以基于外点关键点601的集群而生成。此外,在一些示例中,局部改变指示符134可以包括定界框位置和大小数据或者与其相关联以指示与外点关键点601的集群相关联的定界框。例如,局部改变指示符134可以指示与外点关键点601的集群相关联的定界框602。例如,局部改变指示符134可以指示定界框602的位置(例如左上角)和定界框602的大小(例如高度和宽度)。
返回到图1,设备100可以将局部改变指示符134用于任何合适的目的。例如,设备100可以响应于局部改变指示符134而从睡眠或空闲状态醒来(例如经由未示出的功率管理单元基于局部改变的指示符而执行从低功率状态的唤醒),点亮显示设备(未示出),增加帧捕获速率,增加帧捕获分辨率,执行对象识别或跟踪(例如基于经由局部改变指示符134指示的定界框)等。在一些示例中,这样的对象识别或跟踪可以包括识别由用户做出的姿势以提示设备100的动作。
如所讨论的,设备100可以提供或执行视频中的鲁棒局部改变检测。如与之前的光感测模式(LSM)技术相比,在本文中讨论的技术可以降低误报率,改进响应时间(特别是对于姿势控制接口而言),提供针对具有对计算机视觉模块的局部改变的图像区域的定界框,和/或估计帧之间或跨帧的全局运动以用于在视频稳定化等中使用。此外,这样的技术在设备100经历宽范围的运动时可以适用,并且可以节约存储器空间、计算资源和功率,因为不需要存储完整的之前帧(例如可以仅存储局部关键点、描述符和轨迹)或执行完整帧处理。这样的特性可以使得所讨论的技术的实现方式在实现一直开着的计算机视觉接口的小形状因子设备(诸如可穿戴设备)中是有利的。
图7图示了依照本公开的至少一些实现方式布置的用于提供视频中的局部改变检测的示例过程700。过程700可以包括如图7中图示的一个或多个操作701-710。过程700可以由设备(例如设备100或在本文中讨论的任何其他设备或系统)执行,或者过程700的部分可以由设备执行以提供视频中的局部改变检测。过程700或其部分可以针对任何数目的图像帧、视频序列、其部分等而重复。
如所示,过程700可以从起始操作701在操作702“获得视频序列的帧”处开始,其中可以获得视频序列的帧。例如可以从图像信号处理器、图像传感器、图像处理管线等获得视频序列的当前帧。例如,可以获得视频序列121的当前帧201。在一些示例中,可能之前已经经由过程700处理了之前帧(例如之前帧202-204),使得之前已经确定了之前帧的内点关键点和外点关键点及其相应轨迹。如所讨论的,当前帧可以是任何合适的当前帧,诸如视频序列的低分辨率和低帧速率帧。
处理可以在操作703“检测关键点”处继续,其中可以针对当前帧检测关键点。如所讨论的,可以使用任何一种或多种合适的技术来针对当前帧检测关键点,所述技术诸如加速段测试(AST)技术等。例如,当前帧可以具有经由操作703确定的数百个关键点。
处理可以在操作704“生成描述符”处继续,其中可以针对在操作703处确定的关键点生成描述符。这样的描述符可以使用任何一种或多种合适的技术来确定,并且可以使用任何数目的描述符,诸如一个、两个、三个或更多个描述符。例如,可以针对当前帧的每一个关键点生成一个或多个描述符。如所讨论的,这样的描述符可以包括任何合适的描述符、描述符家族或其组合,诸如像素颜色、明亮度、梯度、扩张性、亮度、强度、像素块的评估等。
处理可以在操作705“估计全局运动”处继续,其中可以针对当前帧估计全局运动。这样的全局运动可以使用任何一种或多种合适的技术来确定,所述技术诸如确定当前帧中的关键点与(多个)之前帧中的关键点之间的对应性和/或之前帧中的关键点之间的对应性,以及基于鲁棒回归技术等而估计当前帧与任何数目的之前帧之间的仿射变换。这样的全局运动估计可以包括任何全局运动参数,诸如平移、缩放、旋转、偏斜等。此外,如关于加速度计/陀螺仪模块111所讨论的,这样的全局运动估计可以包括对由加速度计/陀螺仪模块111生成的运动数据的评估。在一些示例中,在操作705处做出的全局运动估计可以由其他设备组件用于视频稳定化技术等。
处理可以在操作706“检测内点和外点”处继续,其中可以针对当前帧确定内点关键点和外点关键点。这样的内点关键点和外点关键点可以使用任何一种或多种合适的技术来确定,所述技术诸如在本文中关于图8或本文其他地方所讨论的那些。例如,当前帧的这样的内点关键点和外点关键点可以基于视频序列的一个或多个之前帧的内点关键点而确定。例如,可以评估当前帧的每一个关键点以确定与之前帧中的内点关键点的匹配,如果有的话。这样的匹配可以基于之前帧的关键点的(例如封装到当前帧的)空间接近度和之前帧的关键点的描述符值接近度。然后可以基于之前帧是否具有匹配和针对之前帧的重要性权重而针对当前帧的每一个关键点确定匹配得分。基于匹配得分(例如基于匹配得分与阈值的比较),可以将每一个关键点分类为内点或外点关键点。在一些实施例中,这样的外点关键点可以被修剪,如本文中进一步讨论的。此外,可以确定与这样的内点和外点关键点相关联的轨迹以用于进一步处理。
处理可以在操作707“向外点应用群集技术”处继续,其中可以向当前帧的外点和来自之前帧的经封装的外点应用群集技术等。这样的群集技术可以包括任何一种或多种合适的群集技术,诸如加权k平均群集技术、基于连通性的群集、基于质心的群集、基于分布的群集、基于密度的群集等。例如,这样的群集技术可以尝试检测指示当前帧内的局部感兴趣区域的外点关键点的集群。
处理可以在判定操作708“检测到局部感兴趣区域”处继续,其中可以做出关于是否经由在操作707处应用的群集技术检测到局部感兴趣区域的确定。例如,如果在操作707处标识或检测到集群,则可以检测到局部感兴趣区域。如果在判定操作708处没有检测到感兴趣区域,则过程700可以在如在本文中讨论的操作702处继续,其中可以加载并且如所描述的那样处理视频序列的下一帧。替代地,如果视频序列结束,则过程700可以结束。
如果在判定操作708处检测到局部感兴趣区域,则过程700可以在操作709“提供局部改变的指示符”处继续,其中可以向设备的其他模块等提供局部改变的指示符,并且过程700可以在结束操作710处结束。如所讨论的,这样的局部改变的指示符或局部改变指示符等可以包括任何合适的数据或信号,并且可以用于任何合适的目的,诸如从睡眠或空闲状态醒来、点亮显示设备、增加帧捕获速率、增加帧捕获分辨率、执行对象识别或跟踪等。
如所讨论的,过程700可以用于提供视频中的局部改变检测。过程700可以针对不同的图像帧、视频序列、其部分等而重复任何次数。此外,可以并行或部分并行地针对当前帧的关键点串行地执行过程700。在一些示例中,可以在设备进入低功率状态模式或一直开着计算机视觉模式等时发起过程700。
图8是图示了依照本公开的至少一些实现方式布置的用于确定当前帧的内点和外点关键点的示例过程800的流程图。过程800可以包括如图8中图示的一个或多个操作801-811。过程800可以由设备(例如设备100或在本文中讨论的任何其他设备或系统)执行,或者过程800的部分可以由设备执行以确定当前帧的内点和外点关键点。过程800或其部分可以针对任何数目的关键点、图像帧、视频序列、其部分等而重复。在一些示例中,过程800或其部分可以在过程700的操作706处执行。
如所示,过程800可以从起始操作801在操作802“选择关键点”处开始,其中可以选择关键点,诸如当前帧的关键点。例如,可以针对当前帧的每一个关键点执行过程800以对这样的关键点和内点关键点或外点关键点进行归类。
处理可以在操作803“生成匹配得分”处继续,其中可以针对所选关键点生成匹配得分。匹配得分可以使用任何一种或多种合适的技术来生成。例如,可以评估所选关键点和来自之前帧的内点关键点以确定这样的之前帧内的匹配内点关键点,如果有的话。例如,来自之前帧的匹配内点关键点可以包括在所选关键点的空间接近度(例如空间邻域)内(例如在封装到当前帧的坐标系之后)并且具有在所选关键点的描述符值的阈值内的描述符值的那些。例如,可以从所选当前帧关键点的空间邻域内的之前帧内点关键点之中确定具有最小描述符值距离的之前帧内点关键点。如果最小描述符值距离(例如在所选当前帧关键点和具有最小描述符值距离的之前帧内点关键点的描述符值之间的差异)小于阈值,则可能声明匹配,并且如果不然,则可能不声明匹配。这样的过程可以针对用于处理的每一个之前帧而重复以确定针对来自之前帧的内点关键点的所选关键点的匹配,如果有的话。
基于这样的匹配(例如跨之前帧,没有、一个或多个这样的匹配),可以生成匹配得分。例如,匹配得分可以是跨参与的之前帧的匹配为1或者不匹配为0和重要性权重之积的总和。如所讨论的,相比于与较多距离过去帧的匹配,重要性权重可以对较新的过去帧中的匹配更高地加权。在一些示例中,如所示,可以关于等式(1)来确定匹配得分。
处理可以在判定操作804“匹配得分>阈值”处继续,其中可以基于匹配得分而做出关于将所选关键点指定为内点关键点还是外点关键点的确定。例如,可以将匹配得分与阈值进行比较以确定将所选关键点指定为内点关键点还是外点关键点。如所示,在一些示例中,可以做出关于匹配得分是否大于阈值的确定。这样的阈值可以被表征为匹配得分阈值,并且可以具有任何合适的值。
如所示,在一些示例中,如果匹配得分大于阈值,则处理可以在操作805“将关键点指定为内点”处继续,其中可以将所选关键点指定为内点关键点。例如,可以经由内点/外点数据128而将所选关键点指定为内点关键点,并且可以生成和(例如经由内点轨迹历史110)存储内点轨迹。如所示,处理可以针对标记为内点关键点的所选关键点在判定操作810处继续,如本文中进一步讨论的。
如果匹配得分至多阈值,则处理可以在操作806“将关键点指定为外点”处继续,其中可以将所选关键点指定为外点关键点。例如,可以经由内点/外点数据128将所选关键点指定为外点关键点。如所讨论的,这样的外点关键点可以经受连续的处理,诸如外点修剪,以确定它们是否应当被重新标记为内点关键点。这样的外点关键点可以被表征为初始外点关键点、中间外点关键点等。例如,可以执行这样的外点修剪以从随后的群集操作移除不稳定的外点。例如,在操作806处标记的一些外点可能是不稳定的或者出于与局部运动等不相关的原因而被标记为外点。这样的外点修剪可以重新标记这样的不稳定的外点,以及在之前帧处回看以重新标记来自之前帧的不稳定的外点(例如如关于操作809所讨论的,可以重新标记来自当前帧和之前帧的所有外点关键点匹配或者将其重新归类为内点关键点)。
处理可以在操作807“生成外点匹配得分”处继续,其中可以针对在操作806处被标记为外点关键点的所选关键点生成外点匹配得分。外点匹配得分可以使用任何一种或多种合适的技术来生成。例如,可以评估当前外点关键点和来自之前帧的外点关键点以确定与这样的之前帧内的外点关键点的匹配,如果有的话。如在本文中讨论的,这样的匹配或匹配链可以基于空间接近度和/或描述符值接近度。基于这样的匹配或这样的匹配链(例如跨之前帧),可以生成外点匹配得分。例如,外点匹配得分可以是跨参与的之前帧的匹配为1或者不匹配为0和重要性权重之积的总和。如所讨论的,相比于与较多距离过去帧的匹配,重要性权重可以对较新的过去帧中的匹配更高地加权。例如,如所示,可以关于等式(2)来确定外点匹配得分。
处理可以在判定操作808“外点匹配得分>阈值”处继续,其中可以基于外点匹配得分而做出关于是否将之前标记为外点关键点的所选关键点和来自之前帧的外点关键点匹配链指定为内点关键点的确定。例如,可以将外点匹配得分与阈值进行比较以确定是将匹配外点关键点指定为内点关键点还是使它们作为外点关键点。如所示,在一些示例中,可以做出关于外点匹配得分是否大于阈值的确定。这样的阈值可以被表征为外点匹配得分阈值并且可以具有任何合适的值。
如所示,在一些示例中,如果外点匹配得分大于阈值,则处理可以在操作805、809“将关键点和相关联的关键点指定为内点”处继续,其中可以将之前标记为外点关键点的所选关键点和来自之前帧的匹配外点关键点链指定(例如重新指定)为内点关键点。例如,这样的之前指定的外点关键点可以经由从内点/外点数据128移除而指定为内点关键点以生成最终内点/外点数据130,并且可以生成和(例如经由内点轨迹历史110)存储针对关键点链的内点轨迹。
如果外点匹配得分至多阈值,则处理可以在判定操作810“最后的关键点”处继续。替代地,处理可以从操作809在判定操作810处继续,如所讨论的。在判定操作810处,可以做出关于所选或当前关键点(例如在操作802处选择的关键点)是否是当前帧的最后的关键点的确定。如果不是,则处理可以在操作802处继续,其中可以选择下一或随后的关键点以用于如所讨论的处理。如果是这样,则处理可以在结束操作811处继续。如所讨论的,在一些示例中,可以执行过程800以实现过程700的操作706(请参照图7)。在这样的实现方式中,当已经处理了当前帧的最后的关键点时,处理可以从判定操作810继续到过程700的操作707。
如所讨论的,过程800可以用于确定当前帧的内点和外点关键点。过程800可以针对不同的关键点、图像帧、视频序列、其部分等而重复任何次数。此外,可以并行或部分并行地针对当前帧的关键点串行地执行过程800。此外,在一些示例中,可以仅执行过程800的部分。例如,在一些实现方式中,过程800可以仅包括操作802-806,并且可以不执行随后的外点修剪。
图9是图示了依照本公开的至少一些实现方式布置的用于提供视频中的局部改变检测的示例过程的流程图。过程900可以包括如图9中图示的一个或多个操作901-903。过程900可以形成局部改变检测过程的至少部分。作为非限制性示例,过程900可以形成如在本文中讨论的由设备100执行的局部改变检测过程的至少部分。此外,本文将参照图10的系统1000来描述过程900。
图10是依照本公开的至少一些实现方式布置的用于提供视频中的局部改变检测的示例系统1000的说明图。如图10中所示,系统1000可以包括一个或多个中央处理单元(CPU)1001、图形处理单元1002和存储器仓库1003。并且如所示,图形处理单元1002可以包括关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107。可以实现这样的模块以执行如在本文中讨论的操作。并且如所示,存储器仓库1003可以包括全局运动历史108、内点轨迹历史109和外点轨迹历史110。在系统1000的示例中,存储器仓库1003可以存储视频序列数据、视频帧、视频帧数据、关键点数据、关键点位置、描述符数据、全局运动估计或全局运动估计数据、运动数据、内点/外点关键点数据、最后内点/外点关键点数据、局部改变指示符、内点轨迹、外点轨迹、映射数据、空间邻域数据、重要性权重、匹配得分、外点匹配得分、定界框数据、集群数据等。
如所示,在一些示例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107可以经由图形处理单元1002来实现。在其他示例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107中的一个或多个或部分可以经由系统1000的中央处理单元1001或图像处理单元(未示出)来实现。在其他示例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107中的一个或多个或部分可以经由成像处理管线、图形管线等来实现。
图形处理单元1002可以包括任何数目和类型的图形处理单元,其可以提供如在本文中讨论的操作。这样的操作可以经由软件或硬件或其组合来实现。例如,图形处理单元1002可以包括专用于操纵从存储器仓库1003获得的图像数据、CNN数据、强分类器等的电路。中央处理单元1001可以包括任何数目和类型的处理单元或模块,其可以提供用于系统1000的控制和其他高级功能和/或提供如在本文中讨论的任何操作。存储器仓库1003可以是任何类型的存储器,诸如易失性存储器(例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或非易失性存储器(例如闪存等)等。在非限制性示例中,存储器仓库1003可以由高速缓存存储器来实现。
在实施例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107中的一个或多个或部分可以经由图形处理单元1002的执行单元(EU)来实现。EU可以包括例如可编程逻辑或电路,诸如可以提供各种各样的可编程逻辑功能的一个或多个逻辑核。在实施例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107中的一个或多个或部分可以经由专用硬件来实现,所述专用硬件诸如固定功能电路等。固定功能电路可以包括专用逻辑或电路,并且可以提供一组固定功能进入点,其可以映射到用于固定目的或功能的专用逻辑。在一些实施例中,关键点检测模块102、描述符估计模块103、全局运动估计模块104、内点和外点检测模块105、外点修剪模块106和改变感兴趣区域估计模块107中的一个或多个或部分可以经由专用集成电路(ASIC)实现。ASIC可以包括定制成执行在本文中讨论的操作的集成电路。
返回到图9的讨论,过程900可以在操作901“确定视频序列的当前帧中的内点和外点关键点”处开始,其中可以基于视频序列的之前帧中的内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点。例如,可以将针对当前帧的检测到的关键点的匹配得分与匹配阈值进行比较以确定关键点是内点关键点还是外点关键点。在一些示例中,确定内点关键点可以包括检测之前帧中的内点关键点之中的匹配关键点或若干匹配关键点。例如,匹配关键点可能在当前帧的关键点的空间邻域内,并且可能具有关于来自空间邻域内的之前帧的任何其他内点关键点中的关键点的最小描述符距离(例如,并且最小描述符距离可以小于阈值)。在一些示例中,确定当前帧的内点关键点和外点关键点可以包括针对当前帧确定多个关键点和相关联的局部图像描述符,将来自之前帧的内点关键点封装到与当前帧相关联的坐标,针对关键点基于一个或多个匹配而确定匹配得分,并且比较匹配得分与阈值以将第一关键点归类为内点关键点或外点关键点。此外,在将关键点归类为外点关键点时,可以基于关键点与来自之前帧的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定关键点的外点匹配得分,并且可以基于外点匹配得分与第二阈值的比较而将所述关键点和匹配关键点归类(例如重新归类)为内点关键点。
例如,如经由图形处理单元1002实现的关键点检测模块102可以生成视频序列的当前帧的关键点,如经由图形处理单元1102实现的描述符估计模块103可以生成每一个关键点的(多个)描述符,如经由图形处理单元1002实现的全局运动估计模块104可以生成针对当前帧的全局运动估计,如经由图形处理单元1002实现的内点和外点检测模块105可以确定关键点之中的内点关键点和外点关键点,并且在一些实例中,外点修剪模块106可以将所匹配的外点关键点重新标记为内点关键点。
处理可以在操作902“基于当前帧中的外点关键点和(多个)之前帧中的外点关键点而检测局部改变区域”,其中可以在视频序列中基于当前帧的外点关键点和视频序列的一个或多个之前帧中的外点关键点来检测局部改变区域。例如,局部改变区域可以通过将所述一个或多个之前帧中的外点关键点封装到当前帧的坐标系并且向当前帧的外点关键点和所述一个或多个之前帧中的外点关键点应用群集技术来检测,使得局部改变区域与外点关键点中的至少一些的集群相关联。在一些示例中,之前帧的外点关键点可以基于与外点关键点相关联的之前帧而与加权值相关联,使得较远之前帧具有较小的加权值。例如,如经由图形处理单元1002实现的改变感兴趣区域估计模块107可以基于应用群集技术等而确定局部改变区域。
处理可以在操作903“基于检测到的局部改变区域而提供局部改变的指示符”处继续,其中局部改变的指示符可以基于视频序列中的检测到的局部改变区域来提供。例如,局部改变的指示符可以包括局部运动检测指示符或信号、(例如与对检测到的局部改变区域定界的定界框相关联的)定界框位置和大小数据等。例如,如经由图形处理单元1002实现的改变感兴趣区域估计模块107可以提供局部改变的指示符。
过程900可以基于输入视频帧而提供局部改变检测。过程900可以针对任何数目的输入视频帧、视频序列等而串行或并行地重复任何次数。如所讨论的,过程900可以提供具有高质量和低实现占用空间(例如存储器、计算资源和功率消耗)的局部改变检测。
在本文中描述的系统的各种组件可以以软件、固件和/或硬件和/或其任何组合来实现。例如,设备100、系统1000、系统1100或设备1200的各种组件可以至少部分地由诸如可以在计算系统中发现的计算片上系统(SoC)的硬件提供,所述计算系统诸如例如计算机、膝上型计算机、平板计算机或智能电话。例如,这样的组件或模块可以经由多核SoC处理器来实现。本领域技术人员可以认识到,在本文中描述的系统可以包括没有在对应图中描绘的附加组件。
虽然在本文中讨论的示例过程的实现方式可以包括以所图示的次序示出的所有操作着手进行,但是本公开在这方面不受限,并且在各种示例中,本文中的示例过程的实现方式可以仅包括所示出的操作的子集、以与所图示次序的不同的次序执行的操作或附加的操作。
此外,可以响应于由一个或多个计算机程序产品提供的指令而着手进行在本文中讨论的操作中的任一个或多个。这样的程序产品可以包括提供指令的信号承载介质,所述指令在由例如处理器执行时可以提供在本文中描述的功能。计算机程序产品可以以任何形式的一个或多个机器可读介质来提供。因此,例如,包括一个或多个图形处理单元或处理器核的处理器可以响应于由一个或多个机器可读介质传达至处理器的程序代码和/或指令或指令集而着手进行本文中的示例过程的一个或多个块。一般地,机器可读介质可以以程序代码和/或指令或指令集的形式来传达软件,所述程序代码和/或指令或指令集可以使得在本文中描述的设备和/或系统中的任一个实现如在本文中讨论的设备100、系统1000、系统1100或设备1200或任何其他模块或组件的至少部分。
如在本文中描述的任何实现方式中所使用的,术语“模块”是指配置成提供在本文中描述的功能的软件逻辑、固件逻辑、硬件逻辑和/或电路的任何组合。软件可以体现为软件包、代码和/或指令集或指令,并且“硬件”,如在在本文中描述的任何实现方式中所使用的,可以例如单独地或以任何组合地包括硬接线电路、可编程电路、状态机电路、固定功能电路、执行单元电路和/或存储由可编程电路执行的指令的固件。模块可以共同地或单独地体现为形成例如集成电路(IC)、片上系统(SoC)等的较大系统的部分的电路。
图11是依照本公开的至少一些实现方式布置的示例系统1100的说明图。在各种实现方式中,系统1100可以是计算系统,尽管系统1100不限于该情境。例如,系统1100可以被整合到个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、平板手机、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如智能电话、智能平板计算机或智能电视)、移动互联网设备(MID)、消息传递设备、数据通信设备、外围设备、游戏控制台、可穿戴设备、显示设备、多合一设备、二合一设备等。
在各种实现方式中,系统1100包括耦合到显示器1120的平台1102。平台1102可以从诸如(多个)内容服务设备1130或(多个)内容递送设备1140之类的内容设备或者其他类似内容源(诸如相机或相机模块等)接收内容。包括一个或多个导航特征的导航控制器1150可以用于与例如平台1102和/或显示器1120交互。以下更加详细地描述这些组件中的每一个。
在各种实现方式中,平台1102可以包括芯片组1105、处理器1110、存储器1112、天线1113、记忆装置1114、图形子系统1115、应用1116和/或无线电设备1118的任何组合。芯片组1105可以提供处理器1110、存储器1112、记忆装置1114、图形子系统1115、应用1116和/或无线电设备1118之间的互相通信。例如,芯片组1105可以包括能够提供与记忆装置1114的互相通信的记忆装置适配器(未描绘)。
处理器1110可以被实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核或任何其他微处理器或中央处理单元(CPU)。在各种实现方式中,处理器1110可以是(多个)双核处理器、(多个)双核移动处理器等。
存储器1112可以被实现为易失性存储器设备,诸如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
记忆装置1114可以被实现为非易失性存储设备,诸如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附接存储设备、闪存、备有电池的SDRAM(同步DRAM)和/或网络可访问存储设备。在各种实现方式中,记忆装置1114可以包括用于当例如包括多个硬盘驱动器时增加针对有价值数字媒体的存储性能增强保护的技术。
图形子系统1115可以执行诸如静止图像之类的图像、图形或视频的处理以用于显示。图形子系统1115可以是例如图形处理单元(GPU)、视觉处理单元(VPU)或图像处理单元。在一些示例中,图形子系统1115可以执行如在本文中讨论的扫描图像渲染。模拟或数字接口可以用于通信耦合图形子系统1115和显示器1120。例如,接口可以是高清晰度多媒体接口、显示端口、无线HDMI和/或无线HD顺从技术中的任一个。图形子系统1115可以被整合到处理器1110或芯片组1105中。在一些实现方式中,图形子系统1115可以是通信耦合到芯片组1105的独立设备。
在本文中描述的图像处理技术可以被实现在各种硬件架构中。例如,图像处理功能可以被整合在芯片组内。替代地,可以使用分立的图形和/或图像处理器和/或专用集成电路。作为又一实现方式,图像处理可以由包括多核处理器的通用处理器来提供。在其他实施例中,功能可以被实现在消费者电子设备中。
无线电设备1118可以包括能够使用各种适合的无线通信技术发射和接收信号的一个或多个无线电设备。这样的技术可以涉及跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨这样的网络进行通信时,无线电设备1118可以依照以任何版本的一个或多个适用标准进行操作。
在各种实现方式中,显示器1120可以包括任何平板监视器或显示器。显示器1120可以包括例如计算机显示屏、触摸屏显示器、视频监视器、类电视的设备和/或电视。显示器1120可以是数字和/或模拟的。在各种实现方式中,显示器1120可以是全息显示器。显示器1120还可以是可接收视觉投影的透明表面。这样的投影可以传达各种形式的信息、图像和/或对象。例如,这样的投影可以是用于移动增强现实(MAR)应用的视觉叠加。在一个或多个软件应用1116的控制之下,平台1102可以在显示器1120上显示用户接口1122。
在各种实现方式中,(多个)内容服务设备1130可以由任何国家的、国际和/或独立的服务来托管且因此经由例如因特网而对平台1102来说可访问。(多个)内容服务设备1130可以耦合到平台1102和/或显示器1120。平台1102和/或(多个)内容服务设备1130可以耦合到网络1160以向网络1160和从网络1160传送(例如发送和/或接收)媒体信息。(多个)内容递送设备1140也可以耦合到平台1102和/或显示器1120。
在各种实现方式中,(多个)内容服务设备1130可以包括有线电视盒、个人计算机、网络、电话、能够递送数字信息和/或内容的支持因特网的设备或器具、以及能够在内容提供者与平台1102和/或显示器1120之间经由网络1160或直接地单向或双向传送内容的任何其他类似设备。将领会到,可以经由网络1160传送向和从系统1100中的组件和内容提供者中的任一个单向和/或双向地传送内容。内容的示例可以包括任何媒体信息,包括例如视频、音乐、医疗和游戏信息等。
(多个)内容服务设备1130接收包括媒体信息、数字信息和/或其他内容的诸如有线电视节目之类的内容。内容提供者的示例可以包括任何有线或卫星电视或者无线电或因特网内容提供者。所提供的示例并不意在以任何方式限制依照本公开的实现方式。
在各种实现方式中,平台1102可以从具有一个或多个导航特征的导航控制器1150接收控制信号。导航控制器1150的导航特征可以用于例如与用户接口1122交互。在各种实施例中,导航控制器1150可以是定点设备,其可以是允许用户将空间(例如连续且多维的)数据输入到计算机中的计算机硬件组件(特别地,人类接口设备)。诸如图形用户接口(GUI)之类的许多系统以及电视和监视器允许用户使用身体姿势控制数据并向计算机或电视提供数据。
导航控制器1150的导航特征的移动可以通过在显示器上显示的指针、光标、聚焦环或其他视觉指示器的移动而被重复在显示器(例如显示器1120)上。例如,在软件应用1116的控制之下,位于导航控制器1150上的导航特征可以被映射到在例如用户接口1122上显示的虚拟导航特征。在各种实施例中,导航控制器1150可能不是分离的组件,而是被整合到平台1102和/或显示器1120中。然而,本公开不限于在本文中示出或描述的元素或者不被限制在在本文中示出或描述的情境中。
在各种实现方式中,驱动器(未示出)可以包括使用户能够例如在初始启动之后、在被启用时利用按钮触摸来立即开启和关闭像电视之类的平台1102的技术。甚至当平台被“关闭”时,程序逻辑可以允许平台1102将内容流式传输到媒体适配器或其他(多个)内容服务设备1130或(多个)内容递送设备1140。此外,芯片组1105可以包括针对例如5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件支持。驱动器可以包括用于集成图形平台的图形驱动器。在各种实施例中,图形驱动器可以包括高速外围组件互连(PCI)图形卡。
在各种实现方式中,可以整合系统1100中示出的任一个或多个组件。例如,可以整合平台1102和(多个)内容服务设备1130,或者可以整合平台1102和(多个)内容递送设备1140,或者例如可以整合平台1102、(多个)内容服务设备1130和(多个)内容递送设备1140。在各种实施例中,平台1102和显示器1120可以是集成单元。例如,可以整合显示器1120和(多个)内容服务设备1130,或者可以整合显示器1120和(多个)内容递送设备1140。这些示例不意在限制本公开。
在各种实施例中,系统1100可以被实现为无线系统、有线系统或这二者的组合。当被实现为无线系统时,系统1100可以包括适于通过无线共享介质进行通信的组件和接口,诸如一个或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等。无线共享介质的示例可以包括无线频谱的部分,诸如RF频谱等。当被实现为有线系统时,系统1100可以包括适于通过有线通信介质进行通信的组件和接口,诸如输入/输出(I/O)适配器、将I/O适配器与对应的有线通信介质连接的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可以包括电线、线缆、金属引线、印刷电路板(PCB)、背板、开关结构、半导体材料、双绞线、同轴线缆、光纤等。
平台1102可以建立一个或多个逻辑或物理通道来传送信息。信息可以包括媒体信息和控制信息。媒体信息可以指代表示意在用于用户的内容的任何数据。内容的示例可以包括例如来自语音对话的数据、视频会议、流式传输的视频、电子邮件(“电邮”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等。来自语音对话的数据可以是例如话音信息、静默时段、背景噪声、舒适噪声、音调等。控制信息可以指代表示意在用于自动化系统的命令、指令或控制字的任何数据。例如,控制信息可以用于将媒体信息路由通过系统或者指示节点以预定的方式处理媒体信息。然而,实施例不限于图11中示出或描述的元素或者不被限制在图11中示出或描述的情境中。
如以上所描述的,系统1100可以以变化的物理样式或形状因子体现。图12图示了依照本公开的至少一些实现方式布置的示例小形状因子设备1200。在一些示例中,系统1100可以经由设备1200实现。在其他示例中,设备100、系统1000、系统1100或设备1200或其部分可以经由设备1200实现。在各种实施例中,例如,设备1200可以被实现为具有无线能力的移动计算设备。例如,移动计算设备可以指代具有处理系统和诸如一个或多个电池之类的移动电源或电力供应的任何设备。
移动计算设备的示例可以包括个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如智能电话、智能平板计算机或智能移动电视)、移动互联网设备(MID)、消息传递设备、数据通信设备、相机等。
移动计算设备的示例还可以包括布置成由人穿戴的计算机,诸如手腕计算机、手指计算机、戒指计算机、眼镜计算机、腰带夹计算机、臂带计算机、鞋计算机、衣物计算机以及其他可穿戴计算机。在各种实施例中,例如,移动计算设备可以被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管可能利用被实现为智能电话的移动计算设备作为示例描述了一些实施例,但是可以领会到,也可以使用其他无线移动计算设备来实现其他实施例。实施例不限于该情境中。
如图12中所示,设备1200可以包括具有正面1201和背面1202的外壳。设备1200包括显示器1204、输入/输出(I/O)设备1206以及集成天线1208。设备1200还可以包括导航特征1212。I/O设备1206可以包括用于将信息输入到移动计算设备中的任何适合的I/O设备。I/O设备1206的示例可以包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、麦克风、扬声器、语音识别设备和软件等。还可以通过麦克风(未示出)将信息输入到设备1200中,或者信息可以通过语音识别设备来数字化。如所示,设备1200可以包括整合到设备1200的背面1202(或其他地方)中的相机1205(例如包括镜头、孔和成像传感器)和闪存1210。在其他示例中,相机1205和闪存1210可以整合到设备1200的正面1201中或者可以提供正面和背面相机二者。相机1205和闪存1210可以是相机模块的组件以将引起处理成流式传输的视频的图像数据,所述流式传输的视频被输出到显示器1204和/或例如从设备1200经由天线1208远程传送。
可以使用硬件元件、软件元件或这二者的组合来实现各种实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。确定是否使用硬件元件和/或软件元件来实现实施例可以依照任何数目的因素而变化,诸如期望的计算速率、功率水平、耐热性、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其他设计或性能约束。
至少一个实施例的一个或多个方面可以通过存储在机器可读介质上的有代表性的指令来实现,所述机器可读介质表示处理器内的各种逻辑,该逻辑当被机器读取时使该机器构造用于执行在本文中描述的技术的逻辑。称作“IP核”的这样的表示可以存储在有形、机器可读介质上且供应到各种消费者或制造设施以加载到实际上制作逻辑或处理器的构造机器中。
虽然已经参照各种实现方式描述了本文中阐述的某些特征,但是该描述不意图以限制性含义来解释。因此,在本文中描述的实现方式的各种修改,以及对本公开属于的领域中的技术人员显然的其他实现方式被视为处于本公开的精神和范围内。
在一个或多个第一实施例中,一种用于提供视频中的局部改变检测的方法包括基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点,基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域,以及基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
关于(further to)第一实施例,确定所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
关于第一实施例,确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
关于第一实施例,确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点,其中匹配关键点在第一内点关键点的空间邻域内并且具有空间邻域内的所述一个或多个第二内点关键点中的任一个相对于第一内点关键点的最小描述符距离。
关于第一实施例,检测局部改变区域包括将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
关于第一实施例,检测局部改变区域包括将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联,其中所述一个或多个之前帧包括多个之前帧,并且其中所述一个或多个第二外点关键点中的单个外点关键点基于多个之前帧中的与所述单个外点关键点相关联的之前帧而与加权值相关联。
关于第一实施例,视频序列包括以至多五帧每秒的帧速率的低分辨率视频帧。
关于第一实施例,局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
关于第一实施例,所述方法进一步包括基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动。
关于第一实施例,确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧确定多个关键点和相关联的局部图像描述符,将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标,针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,并且将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点。
关于第一实施例,确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧确定多个关键点和相关联的局部图像描述符,将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标,针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,并且将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点,其中第一关键点被归类为外点关键点并且方法进一步包括:针对第一关键点基于第一关键点与所述多个第二外点关键点中的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定外点匹配得分,以及基于外点匹配得分与第二阈值的比较而将第一关键点和所述一个或多个外点匹配关键点归类为内点关键点。
关于第一实施例,所述方法进一步包括基于局部改变的指示符而执行从低功率状态的唤醒。
在一个或多个第二实施例中,一种用于提供视频中的局部改变检测的系统包括配置成接收视频序列的存储器和耦合到存储器的图形处理单元,图形处理单元基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点、基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域,以及基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
关于第二实施例,图形处理单元确定所述一个或多个内点关键点和所述一个或多个外点关键点包括图形处理单元针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
关于第二实施例,图形处理单元确定所述一个或多个内点关键点包括图形处理单元针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
关于第二实施例,图形处理单元确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点,图形处理单元从所述一个或多个第二内点关键点检测匹配关键点,其中匹配关键点在第一内点关键点的空间邻域内并且具有空间邻域内的所述一个或多个第二内点关键点中的任一个相对于第一内点关键点的最小描述符距离。
关于第二实施例,图形处理单元检测局部改变区域包括图形处理单元将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
关于第二实施例,视频序列包括以至多五帧每秒的帧速率的低分辨率视频帧。
关于第二实施例,局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
关于第二实施例,图形处理单元基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而进一步估计与当前帧相关联的全局运动。
关于第二实施例,图形处理单元确定当前帧中的一个或多个内点关键点和一个或多个外点关键点包括图形处理单元针对当前帧确定多个关键点和相关联的局部图像描述符,将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标,针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,以及将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点。
关于第二实施例,图形处理单元确定当前帧中的一个或多个内点关键点和一个或多个外点关键点包括图形处理单元针对当前帧确定多个关键点和相关联的局部图像描述符,将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标,针对所述多个关键点中的第一关键点,基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,以及将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点,其中第一关键点被归类为外点关键点,并且其中图形处理单元进一步针对第一关键点基于第一关键点与所述多个第二外点关键点中的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定外点匹配得分,并且基于外点匹配得分与第二阈值的比较而将第一关键点和所述一个或多个外点匹配关键点归类为内点关键点。
关于第二实施例,系统进一步包括功率管理单元,用以基于局部改变的指示符而执行从低功率状态的唤醒。
关于第二实施例,系统进一步包括用以获得与场景相关联的原始图像数据的图像传感器,以及耦合到图像传感器并且基于原始图像数据而向存储器提供视频序列的帧的图像处理单元。
在一个或多个第三实施例中,一种用于提供视频中的局部改变检测的系统包括用于基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点的部件,用于基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域的部件,以及用于基于视频序列中的检测到的局部改变区域而提供局部改变的指示符的部件。
关于第三实施例,用于确定所述一个或多个内点关键点和所述一个或多个外点关键点的部件包括用于针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较的部件。
关于第三实施例,用于确定所述一个或多个内点关键点的部件包括用于针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点的部件。
关于第三实施例,用于确定所述一个或多个内点关键点的部件包括用于针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点的部件,其中匹配关键点在第一内点关键点的空间邻域内并且具有空间邻域内的所述一个或多个第二内点关键点中的任一个相对于第一内点关键点的最小描述符距离。
关于第三实施例,用于检测局部改变区域的部件包括用于将所述一个或多个第二外点关键点封装到当前帧的坐标系的部件和用于向外点关键点和所述一个或多个第二外点关键点应用群集技术的部件,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
关于第三实施例,用于检测局部改变区域的部件包括用于将所述一个或多个第二外点关键点封装到当前帧的坐标系的部件以及用于向外点关键点和所述一个或多个第二外点关键点应用群集技术的部件,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联,其中所述一个或多个之前帧包括多个之前帧,并且其中所述一个或多个第二外点关键点中的单个外点关键点基于多个之前帧中的与所述单个外点关键点相关联的之前帧而与加权值相关联。
关于第三实施例,视频序列包括以至多五帧每秒的帧速率的低分辨率视频帧。
关于第三实施例,局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
关于第三实施例,所述系统进一步包括用于基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动的部件。
关于第三实施例,用于确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点的部件包括用于针对当前帧确定多个关键点和相关联的局部图像描述符的部件,用于将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标的部件,用于针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分的部件,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,以及用于将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点的部件。
关于第三实施例,用于确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点的部件包括用于针对当前帧确定多个关键点和相关联的局部图像描述符的部件,用于将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标的部件,用于针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分的部件,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧,以及用于将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点的部件,其中第一关键点被归类为外点关键点并且系统进一步包括用于针对第一关键点基于第一关键点与所述多个第二外点关键点中的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定外点匹配得分的部件,以及用于基于外点匹配得分与第二阈值的比较而将第一关键点和所述一个或多个外点匹配关键点归类为内点关键点的部件。
关于第三实施例,所述系统进一步包括用于基于局部改变的指示符而执行从低功率状态的唤醒的部件。
在一个或多个第四实施例中,至少一种机器可读介质包括多个指令,所述指令响应于被在设备上执行而使得设备通过以下来提供局部改变检测:基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点,基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域,并且基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
关于第四实施例,确定所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
关于第四实施例,确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
关于第四实施例,检测局部改变区域包括将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
关于第四实施例,局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
关于第四实施例,机器可读介质进一步包括其他指令,所述其他指令响应于被在设备上执行而使得设备通过以下来提供局部改变检测:基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动。
在一个或多个第五实施例中,至少一种机器可读介质可以包括多个指令,所述指令响应于被在计算设备上执行而使得计算设备执行根据以上实施例中的任一个的方法。
在一个或多个第六实施例中,一种装置可以包括用于执行根据以上实施例中的任一个的方法的部件。
将认识到,实施例不限于如此描述的实施例,而是可以利用修改和更改来实践而不脱离随附权利要求的范围。例如,以上实施例可以包括特征的特定组合。然而,以上实施例在这方面不受限,并且在各种实现方式中,以上实施例可以包括仅着手进行这样的特征的子集、着手进行不同次序的这样的特征、着手进行这样的特征的不同组合,和/或着手进行除了明确列出的那些特征之外的附加特征。因此,应当参照随附权利要求连同这样的权利要求有权享有的等同物的完整范围一起来确定实施例的范围。

Claims (37)

1.一种用于提供视频中的局部改变检测的方法,包括:
基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点;
基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域;以及
基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
2.权利要求1的方法,其中确定所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
3.权利要求1的方法,其中确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
4.权利要求3的方法,其中匹配关键点在第一内点关键点的空间邻域内并且具有空间邻域内的所述一个或多个第二内点关键点中的任一个相对于第一内点关键点的最小描述符距离。
5.权利要求1的方法,其中检测局部改变区域包括将所述一个或多个第二外点关键点封装到当前帧的坐标系并且向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
6.权利要求5的方法,其中所述一个或多个之前帧包括多个之前帧,并且其中所述一个或多个第二外点关键点中的单个外点关键点基于多个之前帧中的与所述单个外点关键点相关联的之前帧而与加权值相关联。
7.权利要求1的方法,其中视频序列包括以至多五帧每秒的帧速率的低分辨率视频帧。
8.权利要求1的方法,其中局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
9.权利要求1的方法,进一步包括:
基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动。
10.权利要求1的方法,其中确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点包括:
针对当前帧,确定多个关键点和相关联的局部图像描述符;
将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标;
针对所述多个关键点中的第一关键点,基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧;以及
将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点。
11.权利要求10的方法,其中第一关键点被归类为外点关键点,方法进一步包括:
针对第一关键点,基于第一关键点与所述多个第二外点关键点中的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定外点匹配得分;以及
基于外点匹配得分与第二阈值的比较而将第一关键点和所述一个或多个外点匹配关键点归类为内点关键点。
12.权利要求1的方法,进一步包括:
基于局部改变的指示符而执行从低功率状态的唤醒。
13.一种用于提供视频中的局部改变检测的系统,包括:
配置成接收视频序列的存储器;以及
耦合到存储器的图形处理单元,图形处理单元基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点,基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域,并且基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
14.权利要求13的系统,其中图形处理单元确定所述一个或多个内点关键点和所述一个或多个外点关键点包括图形处理单元针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
15.权利要求13的系统,其中图形处理单元确定所述一个或多个内点关键点包括图形处理单元针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
16.权利要求13的系统,其中图形处理单元检测局部改变区域包括图形处理单元将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
17.权利要求13的系统,其中局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
18.权利要求13的系统,图形处理单元进一步基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动。
19.权利要求13的系统,进一步包括:
图像传感器,其用以获得与场景相关联的原始图像数据;以及
图像处理单元,其耦合到图像传感器并且基于原始图像数据向存储器提供视频序列的帧。
20.一种用于提供视频中的局部改变检测的系统,包括:
用于基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点的部件;
用于基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域的部件;以及
用于基于视频序列中的检测到的局部改变区域而提供局部改变的指示符的部件。
21.权利要求20的系统,其中用于确定所述一个或多个内点关键点和所述一个或多个外点关键点的部件包括用于针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较的部件。
22.权利要求20的系统,其中用于确定所述一个或多个内点关键点的部件包括用于针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点的部件。
23.权利要求22的系统,其中匹配关键点在第一内点关键点的空间邻域内并且具有空间邻域内的所述一个或多个第二内点关键点中的任一个相对于第一内点关键点的最小描述符距离。
24.权利要求20的系统,其中用于检测局部改变区域的部件包括用于将所述一个或多个第二外点关键点封装到当前帧的坐标系的部件和用于向外点关键点和所述一个或多个第二外点关键点应用群集技术的部件,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
25.权利要求24的系统,其中所述一个或多个之前帧包括多个之前帧,并且其中所述一个或多个第二外点关键点中的单个外点关键点基于多个之前帧中的与所述单个外点关键点相关联的之前帧而与加权值相关联。
26.权利要求20的系统,其中视频序列包括以至多五帧每秒的帧速率的低分辨率视频帧。
27.权利要求20的系统,其中局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
28.权利要求20的系统,进一步包括:
用于基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动的部件。
29.权利要求20的系统,其中用于确定当前帧中的所述一个或多个内点关键点和所述一个或多个外点关键点的部件包括:
用于针对当前帧确定多个关键点和相关联的局部图像描述符的部件;
用于将所述一个或多个第二内点关键点封装到与当前帧相关联的坐标的部件;
用于针对所述多个关键点中的第一关键点基于第一关键点与所述多个第二内点关键点中的一个或多个匹配关键点之间的一个或多个匹配而确定匹配得分的部件,其中所述一个或多个匹配关键点来自所述一个或多个之前帧中的不同帧;以及
用于将匹配得分与阈值进行比较以将第一关键点归类为内点关键点或外点关键点的部件。
30.权利要求29的系统,其中第一关键点被归类为外点关键点,系统进一步包括:
用于针对第一关键点基于第一关键点与所述多个第二外点关键点中的一个或多个外点匹配关键点之间的一个或多个外点匹配而确定外点匹配得分的部件;以及
用于基于外点匹配得分与第二阈值的比较而将第一关键点和所述一个或多个外点匹配关键点归类为内点关键点的部件。
31.权利要求20的系统,进一步包括:
用于基于局部改变的指示符而执行从低功率状态的唤醒的部件。
32.至少一种包括多个指令的机器可读介质,所述指令响应于被在设备上执行而使得设备通过以下来提供局部改变检测:
基于视频序列的一个或多个之前帧中的一个或多个第二内点关键点而确定视频序列的当前帧中的一个或多个内点关键点和一个或多个外点关键点;
基于视频序列的当前帧中的外点关键点和所述一个或多个之前帧中的一个或多个第二外点关键点而检测视频序列中的局部改变区域;并且
基于视频序列中的检测到的局部改变区域而提供局部改变的指示符。
33.权利要求32的机器可读介质,其中确定所述一个或多个内点关键点和所述一个或多个外点关键点包括针对当前帧的关键点将关键点的匹配得分与匹配阈值进行比较。
34.权利要求32的机器可读介质,其中确定所述一个或多个内点关键点包括针对所述一个或多个内点关键点中的第一内点关键点从所述一个或多个第二内点关键点检测匹配关键点。
35.权利要求32的机器可读介质,其中检测局部改变区域包括将所述一个或多个第二外点关键点封装到当前帧的坐标系以及向外点关键点和所述一个或多个第二外点关键点应用群集技术,其中局部改变区域与外点关键点和所述一个或多个第二外点关键点中的至少一些的集群相关联。
36.权利要求32的机器可读介质,其中局部改变的指示符包括局部运动检测指示符或定界框位置和大小数据中的至少一个。
37.权利要求32的机器可读介质,机器可读介质进一步包括其他指令,所述其他指令响应于被在设备上执行而使得设备通过以下来提供局部改变检测:
基于所述一个或多个内点关键点与所述一个或多个第二内点关键点之间的对应性而估计与当前帧相关联的全局运动。
CN201680011018.9A 2015-03-18 2016-02-04 视频中的局部改变检测 Active CN107257980B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/661406 2015-03-18
US14/661,406 US9860553B2 (en) 2015-03-18 2015-03-18 Local change detection in video
PCT/US2016/016543 WO2016148791A1 (en) 2015-03-18 2016-02-04 Local change detection in video

Publications (2)

Publication Number Publication Date
CN107257980A true CN107257980A (zh) 2017-10-17
CN107257980B CN107257980B (zh) 2021-10-29

Family

ID=56920429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680011018.9A Active CN107257980B (zh) 2015-03-18 2016-02-04 视频中的局部改变检测

Country Status (5)

Country Link
US (1) US9860553B2 (zh)
EP (1) EP3271867B1 (zh)
CN (1) CN107257980B (zh)
TW (1) TWI618409B (zh)
WO (1) WO2016148791A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274852A (zh) * 2018-12-05 2020-06-12 北京猎户星空科技有限公司 目标对象关键点检测方法和装置
CN111523408A (zh) * 2020-04-09 2020-08-11 北京百度网讯科技有限公司 动作捕捉方法和装置
CN115166790A (zh) * 2022-05-23 2022-10-11 集度科技有限公司 道路数据的处理方法、装置、设备和存储介质
WO2024066123A1 (en) * 2022-09-28 2024-04-04 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Lossless hierarchical coding of image feature attributes

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170094171A1 (en) * 2015-09-28 2017-03-30 Google Inc. Integrated Solutions For Smart Imaging
US9578207B1 (en) * 2015-09-30 2017-02-21 Csr Imaging Us, Lp Systems and methods for selectively screening image data
US9961261B2 (en) * 2016-06-20 2018-05-01 Gopro, Inc. Image alignment using a virtual gyroscope model
US10534964B2 (en) * 2017-01-30 2020-01-14 Blackberry Limited Persistent feature descriptors for video
AU2018231233B2 (en) * 2017-03-07 2021-07-08 Fiber Mountain, Inc. Connectivity appliance
TWI637341B (zh) 2017-05-18 2018-10-01 緯創資通股份有限公司 穿戴式裝置、動態事件記錄系統及其動態事件記錄方法
WO2019140621A1 (zh) * 2018-01-19 2019-07-25 深圳市大疆创新科技有限公司 视频处理方法及终端设备
WO2020041999A1 (en) * 2018-08-29 2020-03-05 Intel Corporation Apparatus and method for feature point tracking using inter-frame prediction
IT201900001833A1 (it) 2019-02-08 2020-08-08 St Microelectronics Srl Un procedimento per rilevare oggetti in movimento mediante una telecamera in movimento, e relativo sistema di elaborazione, dispositivo e prodotto informatico
CN109949412B (zh) * 2019-03-26 2021-03-02 腾讯科技(深圳)有限公司 一种三维对象重建方法和装置
US11889227B2 (en) 2020-10-05 2024-01-30 Samsung Electronics Co., Ltd. Occlusion processing for frame rate conversion using deep learning
RU2747965C1 (ru) * 2020-10-05 2021-05-18 Самсунг Электроникс Ко., Лтд. Обработка окклюзий для frc c помощью глубокого обучения
US11361545B1 (en) * 2020-11-20 2022-06-14 Himax Technologies Limited Monitoring device for detecting object of interest and operation method thereof
KR102246303B1 (ko) * 2021-03-04 2021-04-29 한국과학기술원 다차원 데이터 스트림에서의 실시간 이상치 탐지 방법 및 장치

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020011880A1 (en) * 2000-05-25 2002-01-31 Marco Berkhout Demodulation filter
CN101493889A (zh) * 2008-01-23 2009-07-29 华为技术有限公司 对视频对象进行跟踪的方法及装置
CN101501776A (zh) * 2005-07-01 2009-08-05 微软公司 视频对象剪切和粘贴
CN103106667A (zh) * 2013-02-01 2013-05-15 山东科技大学 一种面向遮挡和场景变换的运动对象追踪方法
DE102013218359A1 (de) * 2012-09-20 2014-03-20 Suzuki Motor Corporation Ölschmierungsstruktur für einen motor
EP2733578A2 (en) * 2012-11-20 2014-05-21 Samsung Electronics Co., Ltd User gesture input to wearable electronic device involving movement of device
WO2014092550A2 (en) * 2012-12-10 2014-06-19 Mimos Berhad Method for camera motion estimation with presence of moving object
US20140362240A1 (en) * 2013-06-07 2014-12-11 Apple Inc. Robust Image Feature Based Video Stabilization and Smoothing
CN104408741A (zh) * 2014-10-27 2015-03-11 大连理工大学 一种时序一致性约束的视频全局运动估计方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7095401B2 (en) 2000-11-02 2006-08-22 Siemens Corporate Research, Inc. System and method for gesture interface
JP4507129B2 (ja) 2008-06-06 2010-07-21 ソニー株式会社 追尾点検出装置および方法、プログラム、並びに記録媒体
US8933925B2 (en) * 2009-06-15 2015-01-13 Microsoft Corporation Piecewise planar reconstruction of three-dimensional scenes
US8686943B1 (en) 2011-05-13 2014-04-01 Imimtek, Inc. Two-dimensional method and system enabling three-dimensional user interaction with a device
US8891868B1 (en) 2011-08-04 2014-11-18 Amazon Technologies, Inc. Recognizing gestures captured by video
US9063574B1 (en) * 2012-03-14 2015-06-23 Amazon Technologies, Inc. Motion detection systems for electronic devices
US8867865B2 (en) * 2012-11-14 2014-10-21 Seiko Epson Corporation Point set matching with outlier detection

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020011880A1 (en) * 2000-05-25 2002-01-31 Marco Berkhout Demodulation filter
CN101501776A (zh) * 2005-07-01 2009-08-05 微软公司 视频对象剪切和粘贴
CN101493889A (zh) * 2008-01-23 2009-07-29 华为技术有限公司 对视频对象进行跟踪的方法及装置
DE102013218359A1 (de) * 2012-09-20 2014-03-20 Suzuki Motor Corporation Ölschmierungsstruktur für einen motor
EP2733578A2 (en) * 2012-11-20 2014-05-21 Samsung Electronics Co., Ltd User gesture input to wearable electronic device involving movement of device
WO2014092550A2 (en) * 2012-12-10 2014-06-19 Mimos Berhad Method for camera motion estimation with presence of moving object
CN103106667A (zh) * 2013-02-01 2013-05-15 山东科技大学 一种面向遮挡和场景变换的运动对象追踪方法
US20140362240A1 (en) * 2013-06-07 2014-12-11 Apple Inc. Robust Image Feature Based Video Stabilization and Smoothing
CN104408741A (zh) * 2014-10-27 2015-03-11 大连理工大学 一种时序一致性约束的视频全局运动估计方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
D.V.PAPADIMITRIOU 等: "Three-dimensional parameter estimation from stereo image sequences for model-based image coding", 《SIGNAL PROCESSING: IMAGE COMMUNICATION》 *
FENGHUI YAO 等: "A Novel Method for Real-time Multiple Moving Targets Detection from Moving IR Camera", 《19TH INTERNATIONAL CONFERENCE ON PATTERN RECOGNITION》 *
陈芬 等: "自适应关键帧提取技术研究", 《情报科学》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274852A (zh) * 2018-12-05 2020-06-12 北京猎户星空科技有限公司 目标对象关键点检测方法和装置
CN111274852B (zh) * 2018-12-05 2023-10-31 北京猎户星空科技有限公司 目标对象关键点检测方法和装置
CN111523408A (zh) * 2020-04-09 2020-08-11 北京百度网讯科技有限公司 动作捕捉方法和装置
CN111523408B (zh) * 2020-04-09 2023-09-15 北京百度网讯科技有限公司 动作捕捉方法和装置
CN115166790A (zh) * 2022-05-23 2022-10-11 集度科技有限公司 道路数据的处理方法、装置、设备和存储介质
CN115166790B (zh) * 2022-05-23 2023-04-18 集度科技有限公司 道路数据的处理方法、装置、设备和存储介质
WO2024066123A1 (en) * 2022-09-28 2024-04-04 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Lossless hierarchical coding of image feature attributes

Also Published As

Publication number Publication date
TW201703500A (zh) 2017-01-16
TWI618409B (zh) 2018-03-11
US9860553B2 (en) 2018-01-02
EP3271867A1 (en) 2018-01-24
EP3271867B1 (en) 2022-05-11
WO2016148791A1 (en) 2016-09-22
CN107257980B (zh) 2021-10-29
EP3271867A4 (en) 2018-08-15
US20160277645A1 (en) 2016-09-22

Similar Documents

Publication Publication Date Title
CN107257980A (zh) 视频中的局部改变检测
CN111476306B (zh) 基于人工智能的物体检测方法、装置、设备及存储介质
CN108549863B (zh) 人体姿态预测方法、装置、设备及存储介质
CN108615248B (zh) 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN111738220B (zh) 三维人体姿态估计方法、装置、设备及介质
US10685262B2 (en) Object recognition based on boosting binary convolutional neural network features
EP3559804B1 (en) Vision intelligence management for electronic devices
CN105051792B (zh) 用于使用深度映射和光源合成增强3d图像的设备
CN103988503B (zh) 使用预捕获图像运动的场景分割
CN104050443B (zh) 使用肤色检测的视频流的姿势预处理
CN106796657A (zh) 用于多目标对象跟踪的自动目标选择
CN111368116B (zh) 图像分类方法、装置、计算机设备及存储介质
US11354903B2 (en) Bidirectional pairing architecture for object detection in video
CN106575364A (zh) 使用定向滤波的目标检测
CN110070129A (zh) 一种图像检测方法、装置及存储介质
Shi et al. Smart cameras: Fundamentals and classification
CN111654694B (zh) 图像处理算法的质量评测方法、装置及电子设备
CN111589138B (zh) 动作预测方法、装置、设备及存储介质
CN113168502A (zh) 用于可变计算资源的动态自适应卷积神经网络
WO2022032652A1 (en) Method and system of image processing for action classification
CN109005314A (zh) 一种图像处理方法及终端
CN110728167A (zh) 文本检测方法、装置及计算机可读存储介质
CN113538321A (zh) 基于视觉的体积测量方法及终端设备
CN105989602A (zh) 有噪图像中的斑点检测
CN111797867A (zh) 系统资源优化方法、装置、存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant