CN110059223B - 用于机内循环、图像到视频计算机视觉引导的方法与装置 - Google Patents

用于机内循环、图像到视频计算机视觉引导的方法与装置 Download PDF

Info

Publication number
CN110059223B
CN110059223B CN201910043715.8A CN201910043715A CN110059223B CN 110059223 B CN110059223 B CN 110059223B CN 201910043715 A CN201910043715 A CN 201910043715A CN 110059223 B CN110059223 B CN 110059223B
Authority
CN
China
Prior art keywords
video
frames
videos
annotated
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910043715.8A
Other languages
English (en)
Other versions
CN110059223A (zh
Inventor
宋雅乐
盖·达萨
民豪·李
杰弗里·斯科兹
若昂·维托·巴尔迪尼·苏亚雷斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Verizon Patent and Licensing Inc
Original Assignee
Verizon Patent and Licensing Inc
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 Verizon Patent and Licensing Inc filed Critical Verizon Patent and Licensing Inc
Publication of CN110059223A publication Critical patent/CN110059223A/zh
Application granted granted Critical
Publication of CN110059223B publication Critical patent/CN110059223B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/738Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7837Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • 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/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • 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/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/10Recognition assisted with metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Library & Information Science (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

公开了用于在由设备、服务器和/或平台支持或配置有设备、服务器和/或平台的内容搜索、托管和/或提供系统中改进与计算机的交互和计算机之间的交互的系统和方法。所公开的系统和方法提供了一种新颖的机内循环、图像到视频引导框架,该框架利用建立在图像数据集和视频数据集上的训练集,以便高效地产生精确的训练集,以应用于视频帧。所公开的系统和方法减少了构建训练数据集所需的时间,并提供了将训练数据集应用于任何类型的内容和任何类型的识别任务的机制。

Description

用于机内循环、图像到视频计算机视觉引导的方法与装置
本申请包含受版权保护的材料。版权所有者不反对任何人对专利公开按照其在专利和商标局的文件或记录中那样进行传真复制,但在其他方面保留所有版权。
相关申请的交叉引用
本即时申请要求于2018年1月18日提交的第62/619,045号美国临时申请的优先权权益,其全文以引用方式并入本文中。
技术领域
本公开通常涉及通过修改能力来改进内容托管(hosting)及提供设备、系统和/或平台的性能以及通过用于训练和向视频应用计算机视觉引导(bootstrapping)模型的新颖且改进的框架来向这样的设备、系统和/或平台提供非本机功能。
背景技术
现代计算机视觉系统可应用于数字内容,以执行视觉识别任务,例如,包括面部识别、医学成像、自动驾驶的场景理解等。应用这种系统的主要瓶颈是需要大规模的注释数据集。这样的系统必须经过数百万个带注释的示例的训练,才能为给定的任务正常工作。如今,将计算机视觉训练和部署到产品中需要大量的工作来注释数据集(例如,无论是由人工还是机器进行),从而降低此类系统的训练和实施准备的速度,并大大延迟上市时间。
在当今世界,视频理解是整个媒体行业最重要的研究和发展领域之一。不幸的是,与图像数据集相比,视频数据集非常难以注释,因为需要由贴标机检查的帧的数量太多。例如,为视频的每一帧绘制特定对象周围的边界框的任务需要大量的时间和精力以及计算机和网络资源的高利用率,并且不一定总是准确的。
因此,这促使之前的几项工作使用应急解决方案,即在图像数据集上训练视觉识别器,然后将其应用到视频域。然而,这在实践中并没有很好的表现,因为视频帧并没有表现出与图像相同的视觉特性。这是因为它们被捕获和编码的方式。当图像捕获静态对象时,视频捕获动态移动对象,并且当图像内的位置保持不变时,视频帧内/帧间对象的位置可以改变。此外,大多数视频编解码器应用压缩算法以使文件更小,这可能导致帧模糊,然而图像文件通常不受压缩。因此,为了应用这样的常规技术,必须为每个视频帧重新调整图像数据集上训练的视觉识别器,这进一步限制了构建和应用系统的速度和精度。
发明内容
所公开的系统和方法通过提供改进的处理框架来为现有的技术问题(特别是上述重点描述的技术问题)提供技术解决方案,所述处理框架减少了注释大规模视频数据集和从中训练视觉识别系统所需的时间和计算资源。通过本文所公开的高级训练和应用,实施这种视觉识别框架的系统可以提高在检测视频内容的方式方面的准确性,减少在这种训练期间对人力编辑的依赖,以及减少在训练和随后的(在应用经训练的系统时)检测/重新编码期间对计算资源的使用。例如,在训练系统的方式方面的效率可以有效地减少应用经训练的系统标识视频帧中哪些对象正在被识别所需的搜索迭代次数和CPU周期,也就是说,一个更准确和高效的经训练的系统可以产生更准确和有效的结果,从而提高产生令人满意的结果所需的计算和网络资源的效率。
根据本公开的实施例,所公开的框架被体现为一种新颖的机内循环(machine-in-loop)、图像到视频引导技术。该技术/框架的基础是,与视频相比,获取图像数据集相对容易:通过使用图像搜索引擎,可以轻松获取包含特定概念(例如,猫)的数百幅图像。所公开的系统和方法从这些图像(具有潜在的噪声标签)引导数据,并通过多个注释步骤将其“转换”为视频数据集,从而产生所公开的图像到视频引导技术。在这个迭代过程中,关键是公开系统的机内循环方面。在每次迭代中,公开的框架在从“到该迭代的”结果中产生的带注释的示例上训练视觉识别模型,然后从未标记的视频数据集中检测和识别相关的视觉概念。
在一些实施例中,在每次迭代之后,可以向贴标机提供一些示例,说明视觉识别器何时/如何产生不准确的结果,借此贴标机可以提供所需的校正。为这些示例提供标签(例如,标记)可以提高下一次迭代中视觉识别器的准确性,从而提高标签的整体质量。与任何训练模型一样,视觉识别器在早期迭代中可能会出错,但随着迭代次数的增加,识别器变得越来越精确,因此标记的质量和速度也会提高。
作为所公开的系统的副产品,所公开的视觉识别框架/模型通过其迭代设计和引导,相对于现有的识别模型具有关键的技术优势。公开的框架及其应用(如下文更详细地讨论的)提供了降低执行视频识别训练和处理所需的处理能力的先进机制,从而使即使是最适度配置的设备也能够执行公开的识别处理。此外,显著减少了对注释、人类参与和干预的需要,从而提高在所公开的系统(为了标识其中所描述的对象/元素)如何处理视频方面的效率以及处理速度。
如下面详细讨论的,这种迭代的训练过程和对呈现的视频的自动应用导致了一个更易于使用/实现和更有效的比较训练集,其显著减少了训练分类器(被称为视觉识别器)所需的时间。因此,由于对检测到的对象的分类是基于更精确的训练集(该更精确的训练集减少了执行分类所需的计算循环数),因此具有更精确、更有效的训练模型,这样的训练模型的实施会产生一个有效的结果(例如,精确的训练集在应用训练集时会得到有效的结果)。
根据一个或多个实施例,本公开提供了用于执行本文讨论的视频训练和处理框架的计算机化方法,以及用于执行视频训练和处理框架的上述技术步骤的非暂时性计算机可读存储介质。非暂时性计算机可读存储介质具有有形地存储在其上或有形地编码在其上的计算机可读指令,当由设备(例如,内容服务器、客户端设备等)执行时,该计算机可读指令使至少一个处理器执行用于训练和向视频应用计算机视觉模型的新颖且改进的框架的方法。
根据一个或多个实施例,提供一个系统,该系统包含一个或多个计算设备,所述计算设备被配置为提供根据这样的实施例的功能。根据一个或多个实施例,功能体现在由至少一个计算设备执行的方法的步骤中。根据一个或多个实施例,由计算设备的(一个或多个)处理器执行以实现根据一个或多个实施例的功能的程序代码(或程序逻辑)体现在非暂时性计算机可读介质中、通过非暂时性计算机可读介质体现和/或体现在非暂时性计算机可读介质上。
附图说明
从附图中所示的实施例的以下描述中可以明显地看出上述内容以及本公开的其他目的、特征和优点,其中附图标记在各个视图中指的是相同的部分。附图不一定按比例绘制,而是强调说明本公开的原理:
图1是示出网络的示例的示意图,在该网络中,可以根据本公开的一些实施例实施本文所公开的系统和方法;
图2是根据本公开的一些实施例的示出客户端设备的示例的示意图;
图3是根据本公开的实施例的示出示例性系统的组件的框图;
图4是根据本公开的一些实施例的示出训练机内循环、图像到引导(“视觉识别器”)引擎的示例性数据流的框图;
图5是根据本公开的一些实施例的用于训练视觉识别器引擎的对象模型检测的非限制性示例的框图;
图6A-6B是根据本公开的一些实施例的示出针对对视觉识别器引擎进行训练而执行的步骤的流程图;
图7是根据本公开的一些实施例的示出针对对经训练的视觉识别器引擎进行应用而执行的步骤的流程图;并且
图8是示出根据本发明的一些实施例执行的步骤的流程图。
具体实施方式
下面将参考构成本文一部分的附图更全面地描述本公开,并通过说明的方式示出某些示例实施例。然而,主题可以以各种不同的形式体现,并且因此,被涵盖或要求保护的主题旨在被解释为不限于本文所述的任何示例实施例;提供示例实施例仅仅是为了说明。同样,对要求保护或涵盖的主题的适用范围也相当广泛。例如,除此之外,主题可以体现为方法、设备、组件或系统。因此,实施例可以采用例如硬件、软件、固件或其任何组合的形式(软件本身除外)。因此,以下详细描述并不旨在以限制性的意义来理解。
在整个说明书和权利要求书中,术语可能具有在上下文中建议或暗示的细微含义,而不是明确规定的含义。同样,本文所用短语“在一个实施例中”不一定指代同一实施例,而本文所用短语“在另一实施例中”不一定指代不同的实施例。例如,其旨在要求保护的主题包括全部或部分示例性实施例的组合。
一般来说,术语至少可以部分从上下文中的使用中理解。例如,本文中使用的术语,例如“和”、“或”、“和/或”,可以包括多种含义,这些含义至少部分取决于使用这些术语的上下文。通常,“或”如果用于关联列表,例如A、B或C,则旨在表示A、B和C(此处用于包容性意义)以及A、B或C(此处用于排他性意义)。此外,本文所用术语“一个或多个”至少部分取决于上下文,可用于以单数意义描述任何特征、结构或特性,或可用于以复数意义描述特征、结构或特性的组合。类似地,诸如“一”、“一个”或“所述”之类的术语也可以被理解为表达单数用法或复数用法,这至少部分取决于上下文。此外,术语“基于”可以被理解为不一定是旨在表达一组排他性因素,替代地,可以允许存在不一定明确描述的其他因素,这也至少部分取决于上下文。
本公开是参考方法和设备的框图和操作图而如下描述的。要理解的是,框图或操作图的每个方框以及框图或操作图中方框的组合可以借助于模拟或数字硬件和计算机程序指令来实现。这些计算机程序指令可提供给用于改变其如本文所述的功能的通用计算机的处理器、专用计算机、ASIC或其他可编程数据处理装置,以便通过计算机的处理器或其他可编程数据处理装置执行的指令实现框图或一个或多个操作方框中规定的功能/动作。在一些替代的实施方式中,方框中记录的功能/动作可能不以操作图中记录的顺序发生。例如,根据所涉及的功能/动作,连续示出的两个方框实际上可以基本同时执行,或者有时可以逆序执行。
出于本公开的目的,非暂时性计算机可读介质(或计算机可读存储介质)存储有计算机数据,其中数据可以包括可由计算机执行的计算机程序代码(或计算机可执行指令)。通过示例而非限制的方式,计算机可读介质可以包括用于数据的有形或固定存储的计算机可读存储介质,或用于瞬时解释包含代码的信号的通信介质。本文所用的计算机可读存储介质指的是物理或有形存储(与信号相反),包括但不限于以任何方法或技术实现的用于有形存储信息(例如计算机可读指令、数据结构、程序模块或其他数据)的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EPROM、EEPROM、闪存或其他固态存储技术、CD-ROM、DVD或其他光存储、云存储、磁带盒、磁带、磁盘存储或其他磁存储设备,或可用于有形地存储所需的信息或数据或指令并可由计算机或处理器访问的任何其他物理或材料介质。
出于本公开的目的,术语“服务器”应被理解为指代提供处理、数据库和通信设施的服务点。通过示例而非限制的方式,术语“服务器”可以指代具有相关联的通信、数据存储和数据库设施的单个物理处理器,或者可以指代处理器的联网或群集的复合物和相关联的网络和存储设备,以及支持由服务器提供的服务的操作软件和一个或多个数据库系统以及应用软件。云服务器就是示例。服务器在配置或能力上可能有很大的差异,但一般来说,服务器可以包括一个或多个中央处理单元和存储器。服务器还可以包括一个或多个大容量存储设备、一个或多个电源、一个或多个有线或无线网络接口、一个或多个输入/输出接口或一个或多个操作系统。
出于本公开的目的,“网络”应被理解为指代可以耦合设备使得可以在例如服务器和客户端设备或其他类型的设备之间(包括例如通过无线网络耦合的无线设备之间)交换通信的网络。网络还可以包括大容量存储,例如网络附接存储(NAS)、存储区域网络(SAN)或其他形式的计算机或机器可读介质。网络可以包括因特网、一个或多个局域网(LAN)、一个或多个广域网(WAN)、线型连接、无线型连接、蜂窝或其任何组合。同样,可以采用不同架构或者可以适用不同协议或与不同协议兼容的子网络,可以在更大的网络内进行互操作。例如,各种类型的设备可用于为不同的架构或协议提供互操作能力。作为一个说明性示例,路由器可以另外在单独且独立的LAN之间提供链路。
出于本公开的目的,应将“无线网络”理解为将客户端设备与网络耦合。无线网络可以采用独立的自组网络、网状网络、无线LAN(WLAN)网络、蜂窝网络等。无线网络还可以包括通过无线无线电链路等耦合的终端、网关、路由器等的系统,其可以自由、随机移动或任意组织它们,从而使网络拓扑结构有时甚至可以快速变化。
无线网络还可以采用多种网络访问技术,包括Wi-Fi、长期演进(LTE)、WLAN、无线路由器(WR)网格或第2、3、4或5代(2G、3G、4G或5G)蜂窝技术等。例如,网络访问技术可以为移动程度不同的诸如客户端设备之类的设备提供广域覆盖。
例如,网络可以通过一种或多种网络访问技术来实现RF或无线类型通信,该一种或多种网络访问技术例如是全球移动通信系统(GSM)、通用移动通信系统(UMTS)、通用分组无线电服务(GPRS)、增强型数据GSM环境(EDGE)、3GPP长期演进(LTE)、LTE高级、宽带码分多址(WCDMA)、蓝牙、802.11b/g/n等。无线网络实际上可以包括任何类型的无线通信机制,通过该机制,信号可以在设备(例如客户端设备或计算设备)之间、网络之间或网络内等被传送。
计算设备可以能够例如通过有线或无线网络发送或接收信号发送或接收信号,或者可以能够(例如作为物理存储器状态在存储器中)处理或存储信号,并且因此可以作为服务器操作。因此,能够作为服务器操作的设备可以包括(例如)专用机架式服务器、台式计算机、膝上型计算机、机顶盒、结合各种功能(例如上述设备的两个或更多个功能)的集成设备等。服务器在配置或能力上可能有很大的差异,但一般来说,服务器可以包括一个或多个中央处理单元和存储器。服务器还可以包括一个或多个大容量存储设备、一个或多个电源、一个或多个有线或无线网络接口、一个或多个输入/输出接口或一个或多个操作系统。
出于本公开的目的,客户端(或消费者或用户)设备可以包括能够(例如通过有线或无线网络)发送或接收信号的计算设备。例如,客户端设备可以包括台式计算机或便携式设备,例如蜂窝电话、智能电话、显示寻呼机、射频(RF)设备、红外(IR)设备、近场通信(NFC)设备、个人数字助理(PDA)、手持计算机、平板计算机、平板设备、膝上型计算机、机顶盒、可穿戴计算机、智能手表、结合各种功能(如上述设备的功能)的集成或分布式设备等。
客户端设备可以在能力或功能方面有所不同。所要求保护的主题旨在涵盖广泛的潜在变化。例如,一个简单的智能手机、平板设备或平板电脑可以是客户端设备。在另一个示例中,支持web的客户端设备或前面提到的设备可以包括高分辨率屏幕(例如HD或4K)、一个或多个物理或虚拟键盘、大容量存储、一个或多个加速度计、一个或多个陀螺仪、全球定位系统(GPS)或其他位置识别类型能力,或具有高度功能性的显示器(例如触摸式彩色2D或3D显示器)。
客户端设备可以包括或可以执行各种可能的应用程序,例如使得能够与其他设备通信的客户端软件应用程序。客户端设备还可以包括或执行用于传送内容(例如文本内容、多媒体内容等)的应用程序。客户端设备还可以包括或执行用于执行各种可能的任务的应用程序,这些任务例如是浏览、搜索、播放、流式传输、或显示各种形式的内容,包括本地存储或上载的图像和/或视频或游戏(例如专业体育赛事的现场直播)。上述内容被提供以示出所要求保护的主题旨在包括各种可能的功能或能力。
如本文所讨论的,对“广告”的引用应理解为包括但不限于被体现为媒体项的数字媒体内容,该媒体项提供由其他用户、服务、第三方、实体等提供的信息。这样的数字广告内容可以包括计算机设备可呈现的任何类型的已知或将要已知的媒体,包括但不限于视频、文本、音频、图像和/或任何其他类型的已知或将要已知的多媒体项或对象。在一些实施例中,数字广告内容可以被格式化为提供深度链接功能和/或能力的超链接多媒体内容。因此,虽然有些内容被称为广告,但它仍然是计算机设备可呈现的数字媒体项,并且这样的数字媒体项包括由网络关联方提供的内容中继促销内容。
本文所述原理可以用多种形式体现。所公开的系统和方法提供用于训练和应用视觉识别模型的高级机制,以便更准确和有效地检测、识别或以其他方式标识视频文件的视频帧内的特定对象。
如上所讨论的,常规的识别技术在视频上实现图像处理机制,以标识特定的对象。然而,这种技术不仅效率低下,而且会产生不准确的结果。也就是说,如上所讨论的,由于视频帧没有表现出与图像相同的视觉特性(例如,它们具有动态对象而不是静态对象,并且进行了编码),因此将图像识别技术应用于视频会产生需要大量“事后”处理的结果以便理解和/或校正这些结果。除了效率低下和结果不准确的明显缺点外,这样的常规应用程序还需要大量的数据处理,这会导致设备和网络资源的浪费,因为系统必须执行额外的计算步骤,以确保结果准确。
所公开的系统和方法提供了一种新颖的图像到视频的引导框架,该框架减少了产生视频训练数据集的时间量,从而提高了在数据集的创建和最终应用方面的准确性和效率。例如,常规的系统需要大约3周的时间来训练一个系统,使其了解数据集中通常大量的信息(例如,数百万幅图像);而所公开的系统和方法可以在更短的时间内(例如,3天)就相同的数据量训练系统。如本文所讨论的,所公开的系统和方法利用图像搜索和视频搜索的结果(例如,图像和视频的引导),以提供通过每次学习迭代提高其准确性和效率的主动学习系统。因此,在分析视频帧时,所公开的框架正在执行一个系统,该系统利用所引导的图像和视频并以计算高效的方式输出准确的结果,从而为文件的高质量输出节省系统资源,而不是分析/标识正在被显示的对象。
本文讨论的改进的处理框架的应用可以分析已知或将要已知的任何格式的视频(例如,任何类型的文件格式和/或呈现格式)。出于本公开的目的,本文的讨论集中在视频内的对象识别;然而,这不应被解释为限制,因为任何类型的已知或将要已知的媒体格式(例如图像或其他形式的多媒体)都可以在不脱离本公开的范围的情况下使用。
根据一些实施例,如下文至少针对图8所详细讨论的,与视频文件的识别处理相关联、由其衍生或以其他方式从其标识、在其期间或作为其结果的信息(如本文所讨论的)可用于货币化目的,并在提供内容、递送内容或使得这样的设备能够通过网络访问内容时被定向广告。向与这些所发现的内容相关联的用户提供定向广告可能会导致这些广告的点击率(CTR)增加和/或广告商为由第三方提供的这些内容(例如,由广告商提供的数字广告内容,其中广告商可以是第三方广告商,或与本文讨论的系统和方法直接相关联或托管本文讨论的系统和方法的实体)提供服务的投资回报率(ROI)增加。
现在将参考附图更详细地描述某些实施例。一般而言,参考图1,示出了根据本公开的实施例的系统100。图1示出了通用环境的组件,可以在该通用环境中实践本文讨论的系统和方法。实践本公开并非需要所有的组件,并且可以在不脱离本公开的精神或范围的情况下对组件的布置和类型进行变型。如图所示,图1的系统100包括局域网(“LAN”)/广域网(“WAN”)——网络105、无线网络110、移动设备(客户端设备)102-104和客户端设备101。图1另外包括各种服务器,例如内容服务器106、应用程序(或“App”)服务器108和广告(“ad”)服务器130。
下面更详细地描述了移动设备102-104的一个实施例。然而,一般而言,移动设备102-104可以包括实际上能够通过网络(例如网络105、无线网络110等)接收和发送信息的任何便携式计算设备。移动设备102-104通常也可以描述为被配置为便携式的客户端设备。因此,移动设备102-104实际上可以包括能够连接到另一个计算设备并接收信息的任何便携式计算设备,如上所讨论的。因此,移动设备102-104通常在能力和功能方面广泛变化。例如,手机可以具有数字键盘和在其上只能显示文本的几行单色液晶显示器。在另一个示例中,支持web的移动设备可以具有触摸屏、触笔和可以显示文本和图形两者的HD显示器。
移动设备102-104还可以包括被配置为从另一个计算设备接收内容的至少一个客户端应用程序。在一些实施例中,移动设备102-104还可以与非移动客户端设备(例如客户端设备101等)通信。在一个实施例中,这样的通信可以包括发送和/或接收消息;搜索,查看和/或共享照片、音频剪辑、视频剪辑;或任何其他形式的通信。因此,客户端设备101还可以具有用于显示信息的可导航视图的不同功能。
客户端设备101-104可以能够例如通过有线或无线网络发送或接收信号发送或接收信号,或者可以能够(例如作为物理存储器状态在存储器中)处理或存储信号并且因此可以作为服务器操作。
无线网络110被配置为将移动设备102-104及其组件与网络105耦合。无线网络110可以包括各种无线子网络中的任何一种,这些子网络可以进一步覆盖独立的自组网络等,以为移动设备102-104提供面向基础设施的连接。这样的子网络可能包括网状网络、无线LAN(WLAN)网络、蜂窝网络等。
网络105被配置为将内容服务器106、应用程序服务器108等与其他计算设备(包括客户端设备101)耦合,并通过无线网络110连接到移动设备102-104。网络105能够采用任何形式的计算机可读介质或网络,以用于将信息从一个电子设备传送到另一个电子设备。
在一些实施例中,所公开的网络110和/或105可以包括(一个或多个)内容分布网络。“内容递送网络”或“内容分布网络”(CDN)通常指代包括由一个或多个网络链接的计算机或计算设备的集合的分布式内容递送系统。CDN可以采用软件、系统、协议或技术来促进各种服务,例如存储、缓存、内容传送或流媒体或应用程序。CDN还可以使实体能够全部或部分地操作或管理另一站点基础设施。
内容服务器106可以包括一个设备,该设备包括通过网络向另一个设备提供任何类型或形式的内容的配置。可作为内容服务器106操作的设备包括个人计算机、台式计算机、多处理器系统、基于微处理器或可编程消费电子产品、网络PC、服务器等。内容服务器106可以进一步提供各种服务,包括但不限于流媒体和/或下载媒体服务、搜索服务、电子邮件服务、照片服务、web服务、社交网络服务、新闻服务、第三方服务、音频服务、视频服务、即时消息(IM)服务、SMS服务、MMS服务、FTP服务、IP电话(VOIP)服务等。
广告服务器130包括存储在线广告以向用户呈现的服务器。“广告服务”是指代用于(例如,在在线会话期间或在使用计算平台期间)在网站、应用程序或其他用户更容易看到的地方放置在线广告的方法。各种货币化技术或模型可用于与赞助广告结合,包括与用户数据相关联的广告。这样的赞助广告包括货币化技术,其包括赞助搜索广告、非赞助搜索广告、担保和非担保递送广告、广告网络/交换、广告定向、广告服务和广告分析。这种系统可以将在网页创建期间(在某些情况下不到500毫秒)将近乎即时的广告投放机会的拍卖与更高质量的广告投放机会结合在一起,从而使每个广告获得更高的收入。也就是说,当广告商相信他们的广告将被投放在正在被呈现给用户的高度相关的内容中或连同该高度相关的内容一起被投放时将支付更高的广告费率。减少量化高质量广告投放所需的时间提供了广告平台的竞争优势。因此,更高的速度和更相关的上下文检测改进了这些技术领域。
例如,购买或销售在线广告的过程可能涉及许多不同的实体,包括广告商、出版商、代理、网络或开发商。为了简化该过程,被称为“广告交换”的组织系统可以与广告商或出版商建立联系,例如通过用于促进从多个广告网络购买或销售在线广告库存的平台。“广告网络”是指代来自出版商的(例如,一同向广告商提供的)广告空间供应的聚集。对于雅虎这样的门户网站,广告可以显示在网页上或应用程序中,其是至少部分基于一个或多个搜索项从用户定义的搜索中产生的。如果所显示的广告与一个或多个用户的兴趣相关,则广告可能对用户、广告商或门户网站有利。因此,已经开发了各种技术来推断用户的兴趣、用户意图或随后针对用户定向相关广告。一种呈现用于定向广告的方法包括采用人口统计学特征(例如,年龄、收入、性别、职业等)来例如分组预测用户行为。可以至少部分基于所预测的(一个或多个)用户行为来将广告呈现给定向受众中的用户。
另一种方法包括配置文件类型的广告定向。在这种方法中,可以生成特定于用户的用户配置文件来对用户行为建模,这可以通过例如跟踪用户通过网站或网站网络的路径并至少部分基于最终递送的页面或广告编译配置文件。可以标识相关性,例如用户购买。通过将内容或广告定向到特定用户,可以将所标识的相关性用于定向潜在购买者。在广告的呈现期间,呈现系统可以收集有关呈现给用户的广告类型的描述性内容。可以收集广泛的描述性内容,包括特定于广告呈现系统的内容。收集到的广告分析可以发送到对于广告呈现系统而言远程的位置以进行存储或进一步评估。如果广告分析的传递不是立即可用的,则收集到的广告分析可由广告呈现系统存储,直到这些广告分析的传递可用。
在一些实施例中,用户能够访问由服务器106、108和/或130提供的服务。通过使用其各种设备101-104的网络105,这可以被包括在非限制性示例中,身份验证服务器、搜索服务器、电子邮件服务器、社交网络服务服务器、SMS服务器、IM服务器、MMS服务器、交换服务器、照片共享服务服务器和旅行服务服务器。在一些实施例中,诸如视频应用程序(例如
Figure GDA0003938729260000131
Amazon
Figure GDA0003938729260000132
HBO
Figure GDA0003938729260000133
等)之类的应用程序可以由应用程序服务器108(或内容服务器106等)托管。因此,应用程序服务器108可以存储各种类型的应用程序和应用程序相关信息,包括应用程序数据和用户配置文件信息(例如,与用户关联的标识和行为信息)。还应该理解的是,内容服务器106还可以将与由内容服务器106提供的内容和服务相关的各种类型的数据存储在关联的内容数据库107中,如下详细讨论的。存在这样的实施例,其中网络105还与可信搜索服务器(TSS)耦合/连接,该服务器可用于根据本文讨论的实施例呈现内容。存在这样的实施例,其中TSS功能可以体现在服务器106、108和/或130中。
此外,尽管图1分别将服务器106、108和130示出为单个计算设备,但本公开并不局限于此。例如,服务器106、108和/或130的一个或多个功能可以分布在一个或多个不同的计算设备上。此外,在一个实施例中,服务器106、108和/或130可以集成到单个计算设备中,而不脱离本公开的范围。
图2是示出客户端设备的示意图,其显示了可在本公开中使用的客户端设备的示例实施例。客户端设备200包括的组件可以比图2中所示的那些组件多或少。然而,所示的组件足以公开用于实施本公开的说明性实施例。例如,客户端设备200可以表示上述与图1相关的客户端设备。
如图所示,客户端设备200包括通过总线224与大容量存储器230通信的处理单元(CPU)222。客户端设备200还包括电源226、一个或多个网络接口250、音频接口252、显示器254、键盘256、照明器258、输入/输出接口260、触觉界面262、可选的全球定位系统(GPS)接收器264和(一个或多个)相机或其他光学、热或电磁传感器266。设备200可以包括一个相机/传感器266或多个相机/传感器266,如本领域技术人员所理解的。(一个或多个)相机/(一个或多个)传感器266在设备200上的位置可以按照每个设备200的型号、每个设备200的能力等、或者它们的一些组合而改变。电源226为客户端设备200供电。
客户端设备200可以可选地与基站通信(未显示),或者直接与另一个计算设备通信。网络接口250有时被称为收发器、收发设备或网络接口卡(NIC)。
音频接口252被布置为产生和接收诸如人声之类的音频信号。例如,音频接口252可以耦合到扬声器和麦克风(未显示),以便与其他人进行通信和/或生成针对某些动作的音频确认。显示器254可以是液晶显示器(LCD)、气体等离子体、发光二极管(LED)或与计算设备一起使用的任何其他类型的显示器。显示器254还可以包括触敏屏,该触敏屏被布置成接收来自诸如触针或人类手的手指之类的对象的输入。
键盘256可以包括被布置为从用户接收输入的任何输入设备。照明器258可以提供状态指示和/或提供光。
客户端设备200还包括用于与外部通信的输入/输出接口260。输入/输出接口260可以使用一种或多种通信技术,例如USB、红外线、蓝牙等。触觉界面262被布置为向客户端设备的用户提供触觉反馈。
可选的GPS收发器264可以确定客户端设备200在地球表面上的物理坐标,其通常以纬度和经度值输出位置。GPS收发器264还可以使用其他地理定位机制,包括但不限于三角测量、辅助GPS(AGPS)、E-OTD、CI、SAI、ETA、BSS等,以进一步确定客户端设备200在地球表面上的物理位置。然而,在一个实施例中,客户端设备可以通过其他组件提供可用于确定设备物理位置的其他信息,包括例如MAC地址、Internet协议(IP)地址等。
大容量存储器230包括RAM 232、ROM 234和其他存储装置。大容量存储器230示出了用于存储信息的计算机存储介质的另一个示例,该信息例如是计算机可读指令、数据结构、程序模块或其他数据。大容量存储器230存储基本输入/输出系统(“BIOS”)240,以用于控制客户端设备200的低级操作。大容量存储器还存储用于控制客户端设备200的操作系统241。
存储器230还包括一个或多个数据存储,客户端设备200可以利用该一个或多个数据存储以存储应用程序242和/或其他信息或数据等。例如,可以采用数据存储来存储描述客户端设备200的各种能力的信息。然后,可以基于各种事件中的任何一种将信息提供给另一个设备,该各种事件包括在通信期间作为头文件(例如,HLS流的索引文件)的一部分被发送、根据请求被发送等。能力信息的至少一部分还可以存储在客户端设备200内的磁盘驱动器或其他存储介质(未显示)上。
应用程序242可以包括计算机可执行指令,当由客户端设备200执行时,该指令发送,接收和/或以其他方式处理音频、视频、图像,并实现与服务器和/或另一客户端设备的另一用户的通信。应用程序242还可以包括搜索客户端245,搜索客户端245被配置为发送、接收和/或以其他方式处理搜索查询和/或搜索结果。
在描述了所公开的系统和方法中采用的一般架构的组件之后,现在将参考图3-8描述组件对所公开系统和方法的一般操作。
图3是示出用于执行本文讨论的系统和方法的组件的框图。图3包括视觉识别器引擎300、网络315和数据库320。视觉识别器引擎300可以是专用机器或处理器,并且可以由应用程序服务器、内容服务器、社交网络服务器、web服务器、搜索服务器、内容提供商、第三方服务器、用户的计算设备等或其任何组合托管。
根据一些实施例,视觉识别器引擎300可以作为在用户设备上执行的独立应用程序来体现。在一些实施例中,视觉识别器引擎300可以作为安装在用户设备上的应用程序运行,并且在一些实施例中,这样的应用程序可以是用户设备通过网络访问的基于web的应用程序。在一些实施例中,视觉识别器引擎300可以作为增强脚本、程序或应用程序(例如,插件或扩展)安装到另一个媒体内容托管/服务应用程序(例如,Yahoo!
Figure GDA0003938729260000161
Yahoo!
Figure GDA0003938729260000162
Video、
Figure GDA0003938729260000163
Video、
Figure GDA0003938729260000164
Video、
Figure GDA0003938729260000165
Video等)。
数据库320可以是任何类型的数据库或存储器,并且可以与网络上的内容服务器(例如,内容服务器、搜索服务器或应用程序服务器)或用户设备(例如,图1-2的设备101-104或设备200)相关联。数据库320包括跟与用户、服务、应用程序、内容(例如视频)等相关的本地和/或网络信息相关联的数据和元数据的数据集。这样的信息可以独立地存储和索引在数据库320中和/或作为链接或关联的数据集。如上所讨论的,应当理解的是,数据库320中的数据(和元数据)可以是任何类型的信息和类型,无论是已知的还是将要已知的,都不会脱离本公开的范围。
根据一些实施例,数据库320可以为用户存储数据,例如用户数据。根据一些实施例,所存储的用户数据可以包括但不限于与用户配置文件相关联的信息、用户兴趣、用户行为信息、用户属性、用户偏好或设置、用户人口统计信息、用户位置信息、用户传记信息等,或者其一些组合。在一些实施例中,出于创建、流式传输、推荐、呈现和/或传送视频的目的,用户数据还可以包括用户设备信息,包括但不限于设备标识信息、设备能力信息、语音/数据载体信息、因特网协议(IP)地址、安装或能够安装或执行在这样的设备上的应用程序、和/或它们的任何或某些组合。应当理解,数据库320中的数据(和元数据)可以是与用户、内容、设备、应用程序、服务提供商、内容提供商相关的任何类型的信息,无论是已知的还是将要已知的,而不脱离本公开的范围。
根据一些实施例,数据库320可以存储与来自各种媒体和/或服务提供商和/或平台的视频内容相关联的数据和元数据。例如,信息可以与以下项相关与但不限于以下项:视频的内容类型、与视频相关联的类别、与视频像素和帧相关联的信息、与视频的提供者相关联的信息、与视频中涉及的播放机相关的信息、与在视频中描绘的活动相关联的信息、以及与视频文件相关联的任何其他类型的已知或将要已知的属性或特征、或它们的一些组合。此外,数据库320中针对每个视频的视频信息可以包括但不限于以下属性,包括但不限于视频的流行程度、视频质量、视频的新旧程度(何时被发布、共享、编辑等)等。这样的因素可以从由用户、服务提供商(即
Figure GDA0003938729260000171
),由提供视频内容的内容/服务提供商(如
Figure GDA0003938729260000172
Figure GDA0003938729260000173
ABC
Figure GDA0003938729260000174
),或由其他第三方服务(例如rottentomatoes.com、IMDBTM
Figure GDA0003938729260000175
等),或由它们的一些组合提供的信息中得出。
根据一些实施例,在接收或分析这样的视频信息时,可以将其作为每个视频和/或视频帧的N维向量(或特征向量)表示存储在数据库320中,其中与视频相关联的信息可以被转换为N维向量上的节点。在一些实施例中,当标识、检测和/或跟踪视频中的数字对象时,与其对应的信息也可以以类似的方式存储在数据库320中。数据库320可以将数据库320中的视频信息存储和索引为视频数据和元数据的链接集合,其中数据和元数据关系可以被存储为N维向量。这样的存储可以通过任何已知或将要已知的向量或数组存储来实现,包括但不限于散列树、队列、堆栈、VList或任何其他已知或将要已知的动态存储器分配技术或方法。虽然上述存储讨论涉及对视频和与其相关的视频信息的向量分析,但所存储的视频信息可以根据任何已知或将要已知的计算分析技术或算法来分析、存储和索引,这些技术和算法例如但不限于聚类分析、数据挖掘、贝叶斯网络分析、隐马尔可夫模型、人工神经网络分析、逻辑模型和/或树分析等。
出于本公开的目的,如上所讨论的,在一些实施例中对视频(存储在数据库320中并位于数据库320中)整体进行了讨论;然而,不应将其解释为限制本文讨论的系统和方法的应用。也就是说,虽然在本公开中参考了视频(例如流媒体、可下载或点播(on-demand)视频),但也可以使用其他形式的用户生成的内容和相关联的信息(包括例如文本、音频、多媒体、RSS源信息)而不脱离本申请的范围,这些信息可以根据本文讨论的系统和方法由视觉识别器引擎300传送和/或访问和处理。
如上所讨论的,参考图1,网络315可以是任何类型的网络,例如但不限于无线网络、局域网(LAN)、广域网(WAN)、因特网或其组合。网络315促进了视觉识别器引擎300和所存储的资源的数据库320的连接。实际上,如图3中所示,视觉识别器引擎300和数据库320可以通过任何已知或将要已知的方法直接连接,该方法连接和/或实现这样的设备和资源之间的通信。
主处理器、服务器或设备组合(其包含根据本文的专用功能编程的硬件)为方便起见被称为视觉识别器引擎300,并且包括训练模块302、推断模块304、注释模块306和应用模块308。应理解的是,本文讨论的(一个或多个)引擎和模块是非详尽的,因为附加的或更少的引擎和/或模块(或子模块)也可适用于所讨论的系统和方法的实施例。下面将讨论每个模块的操作、配置和功能,以及它们在本公开的实施例中的作用。
转到图4,示出了图像到视频引导训练框架的总体数据流400。数据流400提供了视觉识别器引擎300如何基于图像和视频的引导以新颖的方式进行训练的描绘。如上所讨论的,这种新技术利用从图像和视频数据集两者提供的数据,而不是像常规系统那样简单地利用图像数据集。从下面与图4和图5以及图6-7中的讨论中可以清楚地看到,对引擎300的训练的初始迭代从图像数据集的使用开始,然后转换到图像和视频数据集两者,最后完全单独利用视频数据集信息,从而提供常规系统所缺乏的视频中对象检测的准确性。
数据流400涉及图像搜索引擎404、视频搜索引擎408和对象检测模型412之间的交互。在一些实施例中,图像搜索引擎404和视频搜索引擎408可以是单独的搜索引擎,并且在一些实施例中,引擎404和引擎408可以分别是针对特定数据类型(即,图像文件和视频文件)执行单独搜索的同一引擎。
数据流400从输入402开始。输入402包括n个查询项。在一些实施例中,每个输入402可以是一组项,其中每个项对应于请求检测的单个对象。例如,如果用户希望为两(2)个类别(狗和猫)构建对象检测系统,则用户可以提供两组查询项,每一组包含不同品种的狗和猫的名称。例如,一组可以包括(狗):金毛猎犬,小猎犬,猎犬,斗牛犬;另一组可以包括(猫):德文雷克斯猫(Devon rex),斑猫(Tabby),斯芬克斯(Sphinx),短毛。
在接收到这些输入402后,系统分别通过引擎404和408执行图像搜索和视频搜索。在搜索和标识了每个输入查询402中标识的每个品种的预定数量后,将下载所标识的结果(并将其存储在数据库320中)。由图像搜索引擎402标识的图像结果406被假定为“弱标记”,因为所标识的图像很可能包含查询项。这一假定是基于图像搜索引擎固有的搜索能力和功能而做出的,因为搜索引擎对图像集合的数据和元数据进行解析,并且然后根据由任何已知或将要已知的搜索引擎执行的任何已知或将要已知的技术来标识与搜索项匹配的特定图像。
以类似的方式,由视频搜索引擎408标识的视频结果410也被假定与查询项相关。然而,它们被假定为“未标记的”。对视频结果的“未标记”假定是基于这样一个事实,即这些视频文件上没有可用的帧级注释。因此,引擎408根据由已知或将要已知的视频搜索引擎执行的已知或将要已知的视频搜索功能来分析、解析、确定或以其他方式标识来自与视频相关的数据和元数据的视频结果。
从图像搜索引擎404下载图像搜索结果406并从视频搜索引擎410下载视频搜索结果410后,这些结果将通过对象检测模型412运行。针对下面的图5,详细讨论了对象检测模型412的运行所执行的图像到视频引导处理步骤,并且作为该处理的结果,一组带注释的示例414被生成,其用于训练视觉识别器引擎300。如下文关于图5所讨论的,带注释的示例414包括基于对未标记视频410和弱标记图像406的比较/分类来注释出的一组带注释视频。因此,如下文关于图7详细讨论的,经训练的视觉识别器引擎300可以呈现、流式传输、下载或以其他方式播放视频,并且在呈现视频的每个帧集期间,该引擎300可以利用带注释的示例414执行对象检测建模,其作为确定和标识哪些对象在每个帧集中的帧中和帧之间被描绘的基础。
转到图5,示出了由对象检测模型412执行的图像到视频引导。图5描绘了导致视觉识别器引擎300的迭代训练的迭代递归回路。也就是说,图5中的建模412描绘了对来自图像和视频的数据的引导,其中未标记的视频最终被注释并转换为用于训练引擎300的带注释的示例414。如上所讨论的,这个迭代过程中的关键是建模412的机内循环方面。在每次迭代中,对象检测模型412在从“到该迭代”结果产生的带注释的示例414上训练视觉识别引擎300;因此,在每次迭代后,仅对视频数据的准确性和依赖性增加(例如,组成带注释的示例414的图像数据的部分降低,而视频数据的部分增加),从而使引擎300能够在视频帧上准确地执行对象建模。
建模412从帧采样器450对未标记的视频410进行采样开始。在一些实施例中,采样器450执行神经网络(例如卷积神经网络(CNN))算法、技术或机制,以便对视频410的每个帧执行区域建议。在一些实施例中,这涉及将CNN模型应用于视频410中的每个视频的每个帧,从而解析和标识(在一些实施例中,提取)每个视频帧的帧数据。如本领域技术人员所理解的,这样的应用在被称为“区域建议”的过程中产生,在该过程中,视频的输入帧(即图像帧)被输入到采样器450并且输出包含这样的帧,所述帧具有应用于具有视觉显著性的阈值水平的特定检测元素的边界框。因此,使用上面的示例,对于“猫”视频,边界框将应用于其中描绘了猫的帧的区域。因此,这将导致视频采样,使得只有具有所需对象的帧被呈现给对象检测器452。
在一些替代实施例中,采样器450利用已经被人类贴标机458标记的帧作为采样/过滤视频410的视频帧的基础。视频包含许多冗余帧,并且通过利用来自人类标记帧(其提供了关于哪些帧包含某个对象的指示)的数据,采样器可以跨一系列“未标记”的帧地跟踪该对象。因此,在一些实施例中,采样器450可以通过标识人类标记帧开始,然后执行对象跟踪技术,以确定在标记帧周围的具有相似内容的帧(即,其中描绘了该对象的帧)。
在一些实施例中,采样器450可以通过从具有已知标签的帧开始执行CNN区域建议技术和人类标记技术,然后通过上述CNN区域建议技术来处理周围帧。
在采样器450对视频410的帧进行采样后,将结果提供给对象检测器452,对象检测器452还接收带注释的示例414作为输入。如上所讨论的,在建模412的第一次迭代期间,带注释的示例414仅包含“弱标记”图像406(并且在随后的迭代期间,示例414包含越来越明显的图像数据与视频数据的反比)。因此,对于引擎300的第一次训练迭代,对象检测器接收来自采样器450的视频410的采样帧以及与带注释的示例414相关的数据(对于第一次迭代,带注释的示例414包括弱标记图像406)。然后,对象检测器在这些输入上执行任何已知或将要已知的视觉识别模型,包括例如,可变形零件模型、单帧检测器(Single Shot Detector,SSD)、只看一次(You Only Look Once,YOLO)检测器等。
由对象检测器452执行的对示例414和采样视频410的这种视觉识别建模的结果是具有推断标签的视频帧454。例如,通过使用上面涉及“猫”和“狗”的示例,未标记的视频410现在具有特定的帧,该特定的帧用指示符标记(或加标签)以指示在这些帧中检测到猫或狗的位置。这样的标记可以包含以下信息:{(视频ID、帧ID、X坐标、Y坐标、宽度、高度、类别_标记)}。“视频ID”指示该帧采样自视频410中的哪个视频;“X坐标”和“Y坐标”值指示在该帧内的猫/狗被描绘的位置处的X-Y坐标;“宽度”和“高度”值指示应用于检测到的猫/狗的边界框的大小坐标;并且“类别_标记”指示检测到的是猫还是狗。
然后,建模412取从对象检测器452输出的带有推断标签的帧454,并应用帧选择器456来确定帧454是否应被添加到带注释的示例中,或者是否需要人类贴标机审查。此确定是基于针对每个带推断标签的帧454执行的置信度确定。在一些实施例中,这涉及通过应用人工网络分类器分析帧,并确定置信值,该置信值指示推断标签被应用的准确程度。例如,如果猫被描绘在某个帧中,并且该帧被相应地标记,并且猫的描绘没有被场景中的另一个对象阻碍,则置信值可以确定为高;然而,如果猫的耳朵和头被隐藏,则这可能导致低置信值,因为猫和狗的身体可能是相似的并导致对象分类不准确。如果由分类器针对给定帧454确定的置信值等于或高于由系统操作员、管理员或用户设置的作为应用程序特定变量的阈值(例如90%),则将帧454添加到带注释的示例414中。如果置信值低于该阈值,但高于由系统操作员、管理员或用户设置的作为应用程序特定变量的最小阈值(例如,10%),则将帧454提供给人类贴标机458以供审查和/或校正。当由贴标机458进行审查和/或校正(这可能涉及审查帧并确认、校正或从帧中移除标签)时,对其进行注释并将其添加到带注释的示例414中。如果帧454的推断标签低于最小阈值,则可以将其丢弃。
400的建模过程和图4-5的子过程412被迭代地执行,并产生准确、高效训练的视觉识别器引擎300,其可以在视频被呈现/播放时容易地标识视频中的特定对象。如上所讨论的,建模400/412是通过使用图像开始训练并缓慢移动到视频帧作为这样的训练的基础来执行的。如上所述,通过web搜索引擎搜索到的图像往往更准确(例如,当使用项“猫”进行搜索时,可以预期会看到猫图像),但对于视频来说,这不一定是正确的。即使视频是基于查询项来标识的,也没有信息指示视频的哪些帧实际包含该查询项。上面讨论的框架在过程开始时利用图像搜索结果来指导如何分析视频帧,从而产生图像到视频的引导。这个域到域的引导结合了主动学习和跨域引导的概念,使视频帧在被呈现时能够被主动分析,并被精确处理以标识这些帧在一系列这样的帧上实际描绘了什么。
转向图6A-7,本文讨论的过程详细说明了根据本公开的一些实施例执行的步骤,以用于构建和实现如上关于图4-5所述的机内循环、图像到视频引导技术。图6A-6B的过程详述了构建和训练框架的步骤(如图4和5分别所描绘的)并且图7的过程700详述了将这样的框架应用于视频的步骤(即,当视频在计算设备(例如,用户的移动设备)上呈现时)。
转到图6A的过程600,其进一步讨论了上述关于图4的数据流400讨论的步骤,对视觉识别器引擎300进行训练以使其具备标识视频文件的每帧内的特定元素的功能。根据本公开的实施例,过程600的步骤602-610由视觉识别器引擎300的训练模块302执行,步骤612由推断模块304执行,并且步骤614由注释模块306执行。
过程600从步骤602开始,其中接收一组查询项。如上文关于图4所讨论的,这可能涉及接收期望检测到的对象类型的若干术语(用于训练引擎300)。在步骤604和606中,图像搜索引擎和视频搜索引擎执行对步骤602中的术语的搜索。在步骤608中,下载并存储在步骤604和606中确定的结果。在步骤610中,将对象检测模型应用于下载的结果。如上关于图4和5所讨论的,对象检测模型的应用导致视频帧被标记并被添加到带注释的示例414中。带注释的示例414用于训练视觉识别器引擎300,以便在视频被播放时,可以准确处理该视频的各个帧以检测其中描绘的特定对象(如下文关于图7所讨论的)。
转到图6B,详述了在过程600中执行步骤610的过程,其中应用了对象检测模型(图4-5的项412)。步骤610涉及本文讨论的图像到视频引导。步骤610中的建模从子步骤650开始,在该步骤中将帧采样器应用于下载的视频,然后对下载的视频进行采样,并标识出其中描述了所检测的对象的帧集,如上关于图5所讨论的。在子步骤652中,将对象检测模型应用于采样视频帧和带注释的示例,如关于图5所讨论的。在子步骤654中,基于对象检测模型的应用,确定推断标签并将其应用到采样视频帧中。如上关于图5中的应用的对象检测器452所讨论的,由对象检测器452将带注释的示例与采样视频帧进行比较,并且其结果是带推断标签的视频帧454。
在子步骤656中,帧选择器456分析步骤654中应用的推断标签,并确定置信值。然后在子步骤658中确定所应用的标签是否满足置信阈值,如果满足,则通过将这些视频帧添加到带注释的示例414中来更新训练集(子步骤660,并上述关于图5所讨论的)。如果置信度低于阈值,则将这些视频帧提供给编辑器(例如,人类贴标机458)——步骤662。在步骤664中,编辑器通过校正或批准标签来验证推断标签的正确性,如上面关于图5所讨论的。然后在步骤666中将这些经验证的帧添加到带注释的示例中。同样,如上所述,更新后的训练集(即,其中添加有高置信帧和经验证的低置信帧的带注释的示例414)用于训练可应用于所呈现的视频的引擎300,如下文关于图7所讨论的。
根据一些实施例,可以递归地执行图6A的过程600和图6B的子过程610,直到视频数据的阈值水平构成带注释的示例414的全部。这将涉及完成过程600,然后通过经由视频搜索引擎搜索视频来重新开始。然而,如上所讨论的,替代使用图像搜索的结果,对象检测模型412将视频结果与更新后的训练集(即,上一次迭代中更新的带注释的示例)进行比较。因此,在每次迭代之后,视觉识别器引擎300最终将通过完全的视频数据来训练,从而提高在一系列视频帧上检测对象方面的准确性和效率。
转到图7,过程700详述了将经训练的视觉识别器引擎300应用于正被呈现的视频文件的步骤。根据一些实施例,过程450的步骤452-454由视觉识别器引擎300的应用模块308执行。
过程700从步骤702开始,在该步骤中接收视频文件以在用户界面(UI)中显示。根据一些实施例,视频文件可以是HTTP实时流(HLS)文件的实时流,并且在一些实施例中,视频可以是任何类型的可下载或可呈现的媒体文件,如上所讨论的。UI可以与在用户设备上或浏览器内执行的应用程序相关联,或者与用于呈现视频的任何其他类型的已知或将已知的机制相关联。应该理解的是,视频内容可以与任何类型的内容相关联,并且本申请的功能仍然适用。
在步骤704中,正在呈现视频,其中播放机当前正在处理特定的帧序列。在一些实施例中,这可能涉及标识正在由播放机处理的特定帧(或由播放器正在执行的设备所接收的帧,例如HLS文件)。在一些实施例中,可以分析这些帧(在解码之前或之后)并将其转换为RGB图像的阵列(通过用于转换视频/音频编解码器的任何类型的命令行应用程序,例如,快速转发MPEG(FFMPEG)软件)。然后,步骤704可以涉及解析和分析接收的帧,并从视频中标识帧集。
由于对当前正在呈现的帧集的标识,过程700然后执行步骤706,其中将经训练的视觉识别器引擎300应用于所标识的帧集。如上所讨论的,视觉识别器引擎300执行对象检测建模技术,该技术将训练集(来自上文关于图4-6B讨论的训练中的带注释的示例414的当前版本)与所标识的帧集进行比较,并检测帧集内特定对象的位置,即,该对象在哪些帧中以及在这些帧内的位置。步骤708。在一些实施例中,如果(一个或多个)帧没有这样的对象,则丢弃该帧,并且序列中的下一帧排队等待引擎300处理。
例如,使用上面的猫对狗的示例,正在播放视频,其涉及猫和狗相互玩耍。在播放视频时,引擎300分析帧,并确定描绘了狗和猫的帧以及它们在每帧中的位置。例如,如上所讨论的,步骤708的结果可以提供以下信息:{(视频ID、帧ID、X坐标、Y坐标、宽度、高度、类别_标记)},其指示描绘猫/狗的帧在哪个视频中、在哪个帧中以及其可以定位在哪个位置坐标中。根据一些实施例,信息还可以包括指示其中描绘的对象类型(例如,猫/狗的品种)的数据以及对象的任何其他形式的标识信息。
因此,过程700针对呈现的视频来执行,并且能够确定猫和/或狗是否以及在何处实时显示在屏幕上(例如,随着视频被播放)。因此,当在UI中描述所期望的对象时,可以自动检测、处理和标识对象的存在(根据过程700的上述步骤),并且如下面关于图8的讨论,还可以在UI内自动显示增强或附加信息(例如,与对象相关的信息)。
图8是基于与视频相关联的信息为相关数字媒体内容提供服务的工作流程示例800,如上关于图3-7所讨论的。在一些实施例中,内容可以与广告关联或包含广告(例如,数字广告内容)。在一些实施例中,这样的内容可以向视频提供增强信息。这样的信息(仅出于参考的目的而被称为“对象信息”)可以包括但不限于与视频中检测到的对象相关联的信息、视频背景等、以及/或其一些组合。
如上所述,对“广告”的引用应理解为包括但不限于提供由其他用户、服务、第三方、实体等提供的信息的数字媒体内容。这样的数字广告内容可以包括计算设备可呈现的任何类型的已知或将要已知的媒体,包括但不限于视频、文本、音频、图像和/或任何其他类型的已知或将要已知的多媒体。在一些实施例中,数字广告内容可以被格式化为提供深度链接功能和/或能力的超链接多媒体内容。因此,虽然内容被称为广告,但它仍然是可由计算设备呈现的数字媒体项,并且这样的数字媒体项包括由网络关联的第三方提供的数字内容中继促销内容。
在步骤802中,标识对象信息(例如,从步骤706)。如上所讨论的,对象信息可以基于关于图7所概述的过程中的任何信息。出于本公开的目的,过程800将涉及单个视频文件作为针对附加内容提供服务的基础;然而,不应将其理解为限制性的,因为任何数量的文件以及所使用的程序和/或其中包含的内容项都可以构成这样的基础,而不脱离本公开的范围。
在步骤804中,基于所标识的对象信息来确定上下文。该上下文构成了为与对象信息相关的内容提供服务的基础。在一些实施例中,上下文可以是根据视频的上下文的,如上文关于图4-7所讨论的。例如,视频可以包括描绘猫和狗一起玩耍的内容;因此,步骤804中标识的上下文可以与“宠物”相关,或者更具体地,与用户区域中的动物收容所相关,并且可以用来标识与这种活动相关的数字内容(例如,提供猫/狗食品,或提供与视频中描绘的品种类型相关的wiki信息的信息等),如本文中关于过程800的步骤所讨论的。在一些实施例中,步骤804中的对上下文的标识可以发生在上文关于过程700详述的分析之前、期间和/或之后,也可以是完全独立的过程,或者是它们的一些组合。
在步骤806中,将所确定的上下文传送到包含服务器和数据库(例如,内容服务器106和内容数据库107,和/或广告服务器130和广告数据库)的内容提供平台(或将所确定的上下文与该平台共享)。在接收到上下文后,服务器执行(例如,被使得按照从执行视觉识别器引擎300的设备接收到的指令来执行)在相关联的数据库中搜索相关数字内容。对内容的搜索至少基于所标识的上下文。
在步骤808中,服务器针对与所标识的上下文匹配的(一个或多个)数字内容项来搜索数据库。在步骤810中,基于步骤808的结果选择(或检索)内容项。在一些实施例中,可以修改所选择的内容项以符合将在其上显示内容项的页面、接口、消息、平台、应用程序或方法的属性或能力,和/或符合将针对其显示内容项的应用程序和/或设备。在一些实施例中,所选择的内容项通过用户用来查看、呈现和/或与媒体交互的应用程序来共享或传送。步骤812。在一些实施例中,所选择的内容项直接发送到用户计算设备,以便在设备上和/或在描绘视频的UI内显示。在一些实施例中,所选择的内容项显示在接口的一部分内,或显示在与用于播放视频的呈现接口相关联的覆盖或弹出接口内。
出于本公开的目的,模块是软件、硬件或固件(或其组合)系统、过程或功能或其组件,其执行或促进本文所述的过程、特征和/或功能(有或无人类交互或增强)。模块可以包括子模块。模块的软件组件可以存储在计算机可读介质上,以供处理器执行。模块可以集成到一个或多个服务器,或可以由一个或多个服务器加载和执行。一个或多个模块可以组合成引擎或应用程序。
出于本公开的目的,术语“用户”、“订户”、“消费者”或“客户”应理解为指代本文所述的一个或多个应用程序的用户和/或由数据提供商提供的数据的消费者。通过示例而非限制的方式,术语“用户”或“订户”可以指代在浏览器会话中通过因特网接收由数据或服务提供商提供的数据的人,也可以指代接收数据并存储或处理数据的自动软件应用程序。
本领域技术人员将认识到,本公开的方法和系统可以以多种方式实施,因此不受上述示例性实施例和示例的限制。换句话说,由单个或多个组件、硬件和软件或固件的各种组合以及单个功能执行的功能元素可以分布在客户端水平或服务器水平或两者处的软件应用程序上。在这方面,本文所述的不同实施例的任何数量的特征可以组合成单个或多个实施例,并且具有少于或多于本文所述的所有特征的替代实施例是可能的。
功能也可以整体或部分地分布在多个组件上,以现在已知或即将已知的方式。因此,在实现本文所述的功能、特征、接口和优选项时,可以使用无数的软件/硬件/固件组合。此外,本公开的范围包括用于执行所述特征、功能和接口的常规已知方式,以及对本文所述硬件或软件或固件组件可能作出的变化和修改,这些变化和修改将被本领域技术人员现在和以后理解。
此外,本公开中作为流程图呈现和描述的方法的实施例通过示例提供,以提供对该技术的更完整理解。所公开的方法不限于本文所述的操作和逻辑流。考虑到替代实施例,其中改变了各种操作的顺序,并在其中独立地执行被描述为较大操作的一部分的子操作。
虽然为了本公开的目的已经描述了各种实施例,但不应认为这些实施例限制了本公开对这些实施例的教导。可以对上述元素和操作进行各种更改和修改,以获得仍在本公开所述系统和过程范围内的结果。

Claims (20)

1.一种方法,包括以下步骤:
在计算设备处接收包括搜索项的搜索查询;
通过所述计算设备搜索图像的集合,并且基于所述搜索来标识图像集,所述图像集包括描绘所述搜索项的内容;
通过所述计算设备搜索视频的集合,并且基于所述搜索来标识视频集,所述视频集中的每个视频包括至少一个视频帧,所述至少一个视频帧包括描绘所述搜索项的内容;
通过所述计算设备,在所述图像集和所述视频集上执行对象检测软件,所述执行包括:分析所述图像集并标识与所述图像集中的每个图像内的描绘所述搜索项的所述内容相关的信息,并且基于所述分析,基于来自所述图像集的所标识的信息,对所述视频集中的视频帧执行视觉对象检测;
通过所述计算设备基于所述视觉对象检测生成带注释的视频帧集,所述生成包括用指示对所述搜索项的描绘被描绘在其中的信息来注释所述视频集中的视频的包括描绘所述搜索项的所述内容的视频帧;以及
通过所述计算设备,用所述生成的带注释的视频帧集来训练视觉识别器软件。
2.根据权利要求1所述的方法,还包括:
搜索所述视频的集合,并且基于所述搜索,标识视频的第二视频集,所述第二视频集中的每个视频包括至少一个视频帧,所述至少一个视频帧包括描绘所述搜索项的内容;
在所述第二视频集和所述带注释的视频帧集上执行所述对象检测软件,所述执行包括基于所述带注释的视频帧集中的带注释的信息对所述第二视频集中的视频帧执行视觉对象检测;
基于所述视觉对象检测生成第二带注释的视频帧集,所述生成包括用指示对所述搜索项的描绘被描绘在其中的信息来注释所述第二视频集中的视频的包括描绘所述搜索项的所述内容的视频帧集;以及
将所述第二带注释的视频帧集添加到包括所述带注释的视频帧的训练数据集。
3.根据权利要求2所述的方法,还包括基于将所述第二带注释的视频帧集添加到所述训练数据集来训练所述视觉识别器软件。
4.根据权利要求1所述的方法,还包括:
使视频文件在用户的设备上通过网络被呈现;
分析在用户设备上呈现的所述视频文件,所述分析包括标识当前正在呈现的视频的帧集;
将经训练的视觉识别器软件应用于所述所标识的帧集;以及
基于所述经训练的视觉识别器软件的所述应用,标识在所述帧集内描绘的与所述搜索项对应的对象。
5.根据权利要求4所述的方法,还包括:
通过网络搜索与所述对象相关联的内容;
基于所述搜索标识所述内容;以及
当所述对象被显示在所述视频内时,传送用于显示的所述内容,用于显示的所述内容包括增强对所述视频内的所述对象的描绘的信息。
6.根据权利要求1所述的方法,还包括:
对在所述视频集中标识的每个视频进行采样,并且基于所述采样,针对所述视频集中的每个视频标识帧集。
7.根据权利要求6所述的方法,其中,所述采样包括在所述视频集中的所述视频上应用神经网络区域建议软件。
8.根据权利要求1所述的方法,还包括:
确定每个带注释的视频帧的置信值,所述置信值指示所述对象在每个视频帧中的质量。
9.根据权利要求8所述的方法,其中,所述带注释的视频帧在所述帧的所述置信值满足阈值时被自动添加到训练数据集。
10.根据权利要求8所述的方法,其中,当所述置信值不满足阈值时,由编辑器对所述带注释的视频帧进行验证,其中,所述带注释的视频帧在所述验证后被添加到训练数据集。
11.根据权利要求1所述的方法,还包括:
在通过从所述图像进行搜索来标识所述图像集之后,下载并存储所述图像集;以及
在从所述视频搜索标识所述视频集之后,下载并存储所述视频集。
12.一种非暂时性计算机可读存储介质,其用计算机可执行指令有形编码,当由与计算设备相关联的处理器执行时,所述计算机可执行指令执行包括以下各项的方法:
在所述计算设备处接收包括搜索项的搜索查询;
通过所述计算设备搜索图像的集合,并且基于所述搜索来标识图像集,所述图像集包括描绘所述搜索项的内容;
通过所述计算设备搜索视频的集合,并且基于所述搜索来标识视频集,所述视频集中的每个视频包括至少一个视频帧,所述至少一个视频帧包括描绘所述搜索项的内容;
通过所述计算设备,在所述图像集和所述视频集上执行对象检测软件,所述执行包括:分析所述图像集并标识与所述图像集中的每个图像内的描绘所述搜索项的所述内容相关的信息,并且基于所述分析,基于来自所述图像集的所标识的信息,对所述视频集中的视频帧执行视觉对象检测;
通过所述计算设备基于所述视觉对象检测生成带注释的视频帧集,所述生成包括用指示对所述搜索项的描绘被描绘在其中的信息来注释所述视频集中的视频的包括描绘所述搜索项的所述内容的视频帧;以及
通过所述计算设备,用所述生成的带注释的视频帧集来训练视觉识别器软件。
13.根据权利要求12所述的非暂时性计算机可读存储介质,还包括:
搜索所述视频的集合,并且基于所述搜索,标识视频的第二视频集,所述第二视频集中的每个视频包括至少一个视频帧,所述至少一个视频帧包括描绘所述搜索项的内容;
在所述第二视频集和所述带注释的视频帧集上执行所述对象检测软件,所述执行包括基于所述带注释的视频帧集中的带注释的信息对所述第二视频集中的视频帧执行视觉对象检测;
基于所述视觉对象检测生成第二带注释的视频帧集,所述生成包括用指示对所述搜索项的描绘被描绘在其中的信息来注释所述第二视频集中的视频的包括描绘所述搜索项的所述内容的视频帧集;以及
将所述第二带注释的视频帧集添加到包括所述带注释的视频帧的训练数据集。
14.根据权利要求13所述的非暂时性计算机可读存储介质,还包括基于将所述第二带注释的视频帧集添加到所述训练数据集来训练所述视觉识别器软件。
15.根据权利要求12所述的非暂时性计算机可读存储介质,还包括:
使视频文件在用户的设备上通过网络被呈现;
分析在用户设备上呈现的所述视频文件,所述分析包括标识当前正在呈现的视频的帧集;
将经训练的视觉识别器软件应用于所述所标识的帧集;以及
基于所述经训练的视觉识别器软件的所述应用,标识在所述帧集内描绘的与所述搜索项对应的对象。
16.根据权利要求15所述的非暂时性计算机可读存储介质,还包括:
通过网络搜索与所述对象相关联的内容;
基于所述搜索标识所述内容;以及
当所述对象被显示在所述视频内时,传送用于显示的所述内容,用于显示的所述内容包括增强对所述视频内的所述对象的描绘的信息。
17.根据权利要求12所述的非暂时性计算机可读存储介质,还包括:
对在所述视频集中标识的每个视频进行采样,并且基于所述采样,针对所述视频集中的每个视频标识帧集,其中,所述采样包括在所述视频集中的所述视频上应用神经网络区域建议软件。
18.根据权利要求12所述的非暂时性计算机可读存储介质,还包括:
确定每个带注释的视频帧的置信值,所述置信值指示所述对象在每个视频帧中的质量,
其中,所述带注释的视频帧在所述帧的所述置信值满足阈值时被自动添加到训练数据集,
其中,当所述置信值不满足阈值时,由编辑器对所述带注释的视频帧进行验证,其中,所述带注释的视频帧在所述验证后被添加到训练数据集。
19.一种计算设备,包括:
处理器;
非暂时性计算机可读存储介质,其用于将程序逻辑有形地存储于其上,以供所述处理器执行,所述程序逻辑包括:
由所述处理器执行的用于在所述计算设备处接收包括搜索项的搜索查询的逻辑;
由所述处理器执行的用于通过所述计算设备搜索图像的集合并且基于所述搜索来标识图像集的逻辑,所述图像集包括描绘所述搜索项的内容;
由所述处理器执行的用于通过所述计算设备搜索视频的集合并且基于所述搜索来标识视频集的逻辑,所述视频集中的每个视频包括至少一个视频帧,所述至少一个视频帧包括描绘所述搜索项的内容;
由所述处理器执行的用于通过所述计算设备在所述图像集和所述视频集上执行对象检测软件的逻辑,所述执行包括:分析所述图像集并标识与所述图像集中的每个图像内的描绘所述搜索项的所述内容相关的信息,并且基于所述分析,基于来自所述图像集的所标识的信息来对所述视频集中的视频帧执行视觉对象检测;
由所述处理器执行的用于通过所述计算设备基于所述视觉对象检测来生成带注释的视频帧集的逻辑,所述生成包括用指示对所述搜索项的描绘被描绘在其中的信息来注释所述视频集中的视频的包括描绘所述搜索项的所述内容的视频帧;以及
由所述处理器执行的用于通过所述计算设备用所述生成的带注释的视频帧集来训练视觉识别器软件的逻辑。
20.根据权利要求19所述的计算设备,还包括:
由所述处理器执行的用于使视频文件在用户的设备上通过网络被呈现的逻辑;
由所述处理器执行的用于分析在用户设备上呈现的视频文件的逻辑,所述分析包括标识当前正在呈现的视频的帧集;
由所述处理器执行的用于将经训练的视觉识别器软件应用于所述所标识的帧集的逻辑;以及
由所述处理器执行的用于基于所述经训练的视觉识别器软件的所述应用来标识在所述帧集内描绘的与所述搜索项对应的对象的逻辑。
CN201910043715.8A 2018-01-18 2019-01-17 用于机内循环、图像到视频计算机视觉引导的方法与装置 Active CN110059223B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862619045P 2018-01-18 2018-01-18
US62/619,045 2018-01-18
US15/941,437 2018-03-30
US15/941,437 US10740394B2 (en) 2018-01-18 2018-03-30 Machine-in-the-loop, image-to-video computer vision bootstrapping

Publications (2)

Publication Number Publication Date
CN110059223A CN110059223A (zh) 2019-07-26
CN110059223B true CN110059223B (zh) 2023-04-07

Family

ID=65041671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910043715.8A Active CN110059223B (zh) 2018-01-18 2019-01-17 用于机内循环、图像到视频计算机视觉引导的方法与装置

Country Status (4)

Country Link
US (1) US10740394B2 (zh)
EP (1) EP3514728A1 (zh)
CN (1) CN110059223B (zh)
TW (1) TWI716798B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107832662B (zh) * 2017-09-27 2022-05-27 百度在线网络技术(北京)有限公司 一种获取图片标注数据的方法和系统
US11657320B2 (en) 2019-02-26 2023-05-23 Microsoft Technology Licensing, Llc Using online engagement footprints for video engagement prediction
US10984246B2 (en) 2019-03-13 2021-04-20 Google Llc Gating model for video analysis
US11082744B1 (en) * 2020-01-16 2021-08-03 Microsoft Technology Licensing, Llc Modifying training data for video response quality optimization
US11270147B1 (en) 2020-10-05 2022-03-08 International Business Machines Corporation Action-object recognition in cluttered video scenes using text
US11423252B1 (en) * 2021-04-29 2022-08-23 International Business Machines Corporation Object dataset creation or modification using labeled action-object videos
CN116547661A (zh) * 2021-12-03 2023-08-04 宁德时代新能源科技股份有限公司 用于图像分割的数据标注方法和系统以及图像分割装置
TWI803243B (zh) * 2022-03-16 2023-05-21 鴻海精密工業股份有限公司 圖像擴增方法、電腦設備及儲存介質
US11727672B1 (en) * 2022-05-24 2023-08-15 Nanotronics Imaging, Inc. System and method for generating training data sets for specimen defect detection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102549603A (zh) * 2009-08-24 2012-07-04 谷歌公司 基于相关性的图像选择
CN102625937A (zh) * 2009-08-07 2012-08-01 谷歌公司 用于对视觉查询作出响应的体系结构
CN107148632A (zh) * 2014-04-24 2017-09-08 河谷控股Ip有限责任公司 用于基于图像的目标识别的稳健特征识别

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014052740A1 (en) * 2012-09-28 2014-04-03 Vid Scale, Inc. Adaptive upsampling for multi-layer video coding
US9116924B2 (en) * 2013-01-14 2015-08-25 Xerox Corporation System and method for image selection using multivariate time series analysis
CA2952576C (en) * 2014-06-20 2022-07-26 Miovision Technologies Incorporated Machine learning platform for performing large scale data analytics
CN106021364B (zh) * 2016-05-10 2017-12-12 百度在线网络技术(北京)有限公司 图片搜索相关性预测模型的建立、图片搜索方法和装置
US10681391B2 (en) * 2016-07-13 2020-06-09 Oath Inc. Computerized system and method for automatic highlight detection from live streaming media and rendering within a specialized media player

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102625937A (zh) * 2009-08-07 2012-08-01 谷歌公司 用于对视觉查询作出响应的体系结构
CN102549603A (zh) * 2009-08-24 2012-07-04 谷歌公司 基于相关性的图像选择
CN107148632A (zh) * 2014-04-24 2017-09-08 河谷控股Ip有限责任公司 用于基于图像的目标识别的稳健特征识别

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
You Lead,We Exceed:Labor-Free Video Concep Learning by Jointly Exploiting Web Videos and Images;Ghuang Can et.al;《2016 IEEE Conference on Computer Vision and Pattern Recognition》;20160627;第923-933页 *

Also Published As

Publication number Publication date
EP3514728A1 (en) 2019-07-24
TW201941078A (zh) 2019-10-16
CN110059223A (zh) 2019-07-26
US10740394B2 (en) 2020-08-11
US20190220525A1 (en) 2019-07-18
TWI716798B (zh) 2021-01-21

Similar Documents

Publication Publication Date Title
CN110059223B (zh) 用于机内循环、图像到视频计算机视觉引导的方法与装置
US11290775B2 (en) Computerized system and method for automatically detecting and rendering highlights from streaming videos
US10565771B2 (en) Automatic video segment selection method and apparatus
US12120076B2 (en) Computerized system and method for automatically determining and providing digital content within an electronic communication system
US10998003B2 (en) Computerized system and method for automatically extracting GIFs from videos
US9672445B2 (en) Computerized method and system for automated determination of high quality digital content
US11194856B2 (en) Computerized system and method for automatically identifying and providing digital content based on physical geographic location data
US10482091B2 (en) Computerized system and method for high-quality and high-ranking digital content discovery
US11620825B2 (en) Computerized system and method for in-video modification
US11735226B2 (en) Systems and methods for dynamically augmenting videos via in-video insertion on mobile devices
US20230206632A1 (en) Computerized system and method for fine-grained video frame classification and content creation therefrom
US11302048B2 (en) Computerized system and method for automatically generating original memes for insertion into modified messages
US10616161B1 (en) Computerized system and method for digital content extraction and propagation in HTML messages
US20240143698A1 (en) Electronic information extraction using a machine-learned model architecture method and apparatus

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
TA01 Transfer of patent application right

Effective date of registration: 20210325

Address after: New York State, USA

Applicant after: Verizon media

Address before: New York State, USA

Applicant before: Aoshi Co.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210907

Address after: New jersey, USA

Applicant after: VERIZON PATENT AND LICENSING Inc.

Address before: New York, United States

Applicant before: Verizon media

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant