CN110140144A - 用于验证渲染的数据的图像处理系统 - Google Patents

用于验证渲染的数据的图像处理系统 Download PDF

Info

Publication number
CN110140144A
CN110140144A CN201780062002.5A CN201780062002A CN110140144A CN 110140144 A CN110140144 A CN 110140144A CN 201780062002 A CN201780062002 A CN 201780062002A CN 110140144 A CN110140144 A CN 110140144A
Authority
CN
China
Prior art keywords
image processing
resource
content
processing system
embedded
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
CN201780062002.5A
Other languages
English (en)
Other versions
CN110140144B (zh
Inventor
T.托克索兹
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN110140144A publication Critical patent/CN110140144A/zh
Application granted granted Critical
Publication of CN110140144B publication Critical patent/CN110140144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/12Payment architectures specially adapted for electronic shopping systems
    • G06Q20/123Shopping for digital content
    • G06Q20/1235Shopping for digital content with control of digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • G06Q20/40145Biometric identity checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T5/80
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32352Controlling detectability or arrangements to facilitate detection or retrieval of the embedded information, e.g. using markers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/16Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30176Document
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data

Abstract

一种用于验证所嵌入的数字内容满足与内容的显示相关联的预定标准的图像处理系统,该图像处理系统包括:内容嵌入引擎,将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;渲染引擎,渲染被嵌入在资源中的内容;应用接口引擎,与渲染引擎接口并生成资源和在资源中渲染的所嵌入的内容的可视化;以及图像处理引擎,处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证指定的视觉元素满足预定标准,以及传输包括对是否满足预定标准的指示的验证数据。

Description

用于验证渲染的数据的图像处理系统
技术领域
本文档一般涉及诸如通过使用图像处理技术来验证数据。
背景技术
客户端设备和服务器系统可以通过诸如数字签名验证的过程来验证数据的可靠性。数字签名验证针对数据的源验证数据的可靠性。
软件开发工具包(Software development kit,SDK)可以由服务器系统来提供,以使得内容提供商能够将数据(例如,由服务器系统提供的数据)嵌入到由内容提供商发布的内容中。SDK提供可以由内容提供商使用以在将包括来自服务器系统的所获取的数据的内容发送到客户端设备之前从服务器系统获取数据的代码。
发明内容
本文档一般地描述了一种图像处理系统,其中该图像处理系统验证在客户端设备上渲染的数据根据经由服务器接收的指令来渲染的(例如,符合经由服务器接收的指令)。例如,图像处理系统确认由客户端设备渲染的并且包括由(例如,内容制作者的)服务器系统提供的软件嵌入的内容的数据是根据与内容并且具体是内容的渲染相关联的约束来渲染的。这样的约束可以采取任何适当的形式,诸如与内容如何呈现和/或什么与内容一起呈现相关联的约束。约束可以例如指定如由内容制作者的服务器系统指示的内容包括属性(例如,内容制作者)。
图像处理系统具有若干优点。产生由第三方内容提供商提供给终端用户的内容的内容制作者通常希望所提供的内容以预定格式呈现。预定格式可以与和内容相关联的要求相关联或符合和内容相关联的要求。例如,可能需要呈现特定信息与内容一起提供的某些内容,诸如可能需要满足法律或法规要求。额外地或者可替代地,内容提供商可能希望以特定格式呈现内容和/或将内容归属于内容制作者。为了确定是否使用预定格式,内容制作者从客户端设备检索数据以确定客户端设备实际渲染的内容是否满足与预定格式相关联的要求。数据处理系统使得内容制作者能够确定客户端设备实际渲染的内容是否满足内容提供商指定的条件,而不会危害与客户端设备相关联的(例如,存储在客户端设备上或由客户端设备渲染的)个人数据。数据处理系统使得内容制作者能够访问表示客户端设备实际渲染的内容的数据,而无需事先了解所渲染内容的结构,诸如由客户端设备正渲染的网页或应用接口的结构。数据处理系统因此能够实现用于验证远程系统(例如,客户端设备)上的所渲染的数据包括属性数据的更加灵活的方法,同时尊重在远程系统上存储和渲染的数据的隐私。
图像处理系统使得对所渲染的数据的验证能够在客户端设备处发生,而不是在产生正在被渲染和正在被验证的数据的服务器系统处发生。在客户端设备处进行验证确保不向服务器系统发送个人数据,并且不会危害客户端设备的用户的隐私。额外地,可以使用少量数据(例如,单个字节)来报告所渲染的数据是否符合内容制作者的指令,这相对于需要将所渲染的数据发送回内容制作者的系统用于验证的系统减少了图像处理系统的带宽使用。
在一些实施方式中,在显示数据时(诸如刚刚在显示数据之前或刚刚在显示数据之后)验证所渲染的数据。例如,可以防止显示不满足预定条件和/或未正确归属的内容制作者的数据,或者可以发生一些其他后果(诸如对不符合的报告被发送到内容制作者),这可能使内容制作者防止不符合的内容提供商进一步使用内容制作者的数据或软件。为了减少通过在显示数据之前验证所渲染的数据而导致的显示所渲染的数据的延迟,图像处理系统使用具有快速运行时间(例如,<150ms)的图像处理方法(如下所述),诸如利用静态内核的卷积和对由图像处理系统自动选择的所渲染的数据的一部分的图像处理。图像处理系统的图像处理方法确保在显示之前可以将所渲染的数据验证为符合的,而不会导致由更复杂的方法(例如,使用非常数内核或分析所有所渲染的数据)引入的延迟。例如,本文描述的图像处理系统执行渲染参数,其中该渲染参数简化图像处理并相对于在没有渲染参数的情况下处理屏幕截图所发生的延迟而减少用于对视觉元素的验证的延迟。这些渲染参数通过指定需要处理的图像的一个或多个特定部分(例如,而不是处理整个图像)并且通过指定可能存在于图像中的失真(其可以通过预先识别那些失真部分而不是图像处理引擎必须在处理期间识别或测试失真来减少图像处理中的延迟),来(相对于独立于渲染参数的图像处理效率)提高图像处理效率。
在一些实施方式中,图像处理系统包括:一个或多个硬件存储设备,存储指示与内容的显示相关联的预定标准的数据;内容嵌入引擎,将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;渲染引擎,渲染被嵌入资源中的内容;应用接口引擎,与渲染引擎接口并生成资源和在资源中渲染的所嵌入的内容的可视化;以及图像处理引擎:从一个或多个硬件存储设备检索指示预定标准的数据;处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证指定的视觉元素满足预定标准;以及传输包括对是否满足预定标准的指示的验证数据。
在一些实施方式中,所生成的可视化包括资源和资源中渲染的所嵌入的内容的屏幕截图。在一些实施方式中,预定标准与指定的视觉元素相关联。在一些实施方式中,验证指定的视觉元素满足预定标准包括验证所嵌入的数字内容包括指定的视觉元素。
在一些实施方式中,指定的视觉元素包括徽标(logo)。在一些实施方式中,指定的视觉元素包括文本。在一些实施方式中,一个或多个硬件存储设备存储指示指定的视觉元素的渲染参数的数据,并且图像处理引擎基于指定的视觉元素的渲染参数选择资源的一部分以用于分析。在一些实施方式中,资源包括移动应用的页面或网页中的一个。在一些实施方式中,处理所生成的可视化的一个或多个像素包括执行包括利用静态内核的卷积的图像处理算法。在一些实施方式中,图像处理引擎从操作图像处理引擎的设备的操作系统检索指示操作系统的渲染参数的数据,并且图像处理引擎基于渲染参数调整处理所生成的可视化的一个或多个像素。在一些实施方式中,渲染参数指示所生成的可视化的失真,并且其中调整分析包括补偿所生成的可视化的失真。在一些实施方式中,图像处理引擎处理资源的所生成的可视化的一个或多个像素,而不对资源的格式进行确定。
在一些实施方式中,图像处理系统包括:软件库,包括用于将数字内容嵌入资源中的可执行代码的一个或多个部分;一个或多个硬件存储设备,用于存储指示预定标准的数据;以及验证模块,被配置为接收包括对由远程设备在资源中渲染所嵌入的数字内容是否满足预定标准的指示的验证数据;其中,可执行代码的一个或多个部分被配置为使远程设备执行包括以下操作的操作:从远程设备的存储装置检索指示预定标准的数据;由图像处理引擎处理资源中的所嵌入的数字内容的所生成的可视化的一个或多个像素,以验证满足预定标准;以及向验证模块传输包括对是否满足预定标准的指示的验证数据。
在一些实施方式中,所生成的可视化包括资源和资源中渲染的所嵌入的内容的屏幕截图。在一些实施方式中,预定标准与指定的视觉元素相关联;并且验证指定的视觉元素满足预定标准包括验证所嵌入的数字内容包括指定的视觉元素。在一些实施方式中,远程设备的存储装置存储指示指定的视觉元素的渲染参数的数据,并且图像处理引擎基于指定的视觉元素的渲染参数选择资源的一部分以用于分析。
在一些实施方式中,图像处理系统包括:一个或多个硬件存储设备,存储指示指定的视觉元素的数据;内容嵌入引擎,将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;渲染引擎,渲染被嵌入资源中的内容;应用接口引擎,与渲染引擎接口并生成资源和在资源中渲染的所嵌入的内容的可视化;以及图像处理引擎:从一个或多个硬件存储设备检索指示指定的视觉元素的数据;处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证使用所嵌入的内容在资源中渲染了指定的视觉元素;以及传输包括对是否利用所嵌入的内容渲染了指定的视觉元素的指示的验证数据,其中传输验证数据消耗比通过传输资源和在资源中渲染的所嵌入的内容的可视化将消耗的带宽量更少的带宽。
在附图和以下描述中阐述了一个或多个实施例的细节。根据说明书和附图以及根据权利要求,本发明的其他特征、目的和优点将显而易见。
附图说明
图1是图像处理系统的示图。
图2是示出图像处理系统的组件的框图。
图3A-图3C示出了应用接口的示例屏幕截图。
图4是由图像处理系统的系统采取的动作的流程图。
图5是示出了图像处理系统的动作的流程图。
图6是图像处理系统的计算系统的框图。
各个附图中的相似参考符号指示相似元素。
具体实施方式
图1是联网环境100的示图。联网环境100包括客户端图像处理系统102、图像处理系统104和内容提供商系统106,其通过网络108(例如,互联网)进行通信。
联网环境100验证由客户端图像处理系统102渲染的资源(例如,文档、应用接口、网页、内容等)满足预定标准,例如,所渲染的资源包括指示其服务提供或帮助提供资源的至少一部分的内容制作者(例如,作者、创建者、提供商等)的属性(例如,视觉元素)。资源的一部分包括从图像处理系统104检索的内容。在一些实施方式中,资源的一部分可以包括诸如小部件(例如,新闻源(newsfeed))、赞助内容、社交网络接口、游戏内购买接口或其他所嵌入的内容的所嵌入的内容。虽然下面的实施方式一般地描述了与在所渲染的资源中包括属性相关联的标准,但是应当理解的是,预定标准可以与任何预定显示格式相关联,其中该预定显示格式可以与和内容相关联的要求(例如,满足法律或法规要求的要求和/或内容以特定格式呈现的要求)相关联或符合和内容相关联的要求。
例如,图像处理系统104提供由内容提供商系统106使用以用于向客户端图像处理系统102提供(例如,生成、组合、发送等)资源的软件平台。图像处理系统104的所有者指定例如内容提供商系统106包括表示图像处理系统104的视觉元素。内容提供商系统106向客户端图像处理系统102提供资源(例如,网页、应用、程序、脚本或其他可执行逻辑等)。当由客户端图像处理系统102渲染资源(例如,由内容提供商系统106的脚本、程序等引起)时,视觉元素被显示在客户端图像处理系统102的用户接口(例如,屏幕)上的资源中。视觉元素向用户指示资源中的内容的至少一部分由图像处理系统104产生。
根据由图像处理系统104提供的规范,视觉元素可以在客户端图像处理系统102上的资源中渲染(例如,由内容提供商系统106提供的脚本、程序或其他逻辑引起)。在一些实施方式中,图像处理系统104指定视觉元素被包括在资源中作为为图像处理系统104和客户端图像处理系统102提供或帮助提供资源的至少一部分的条件。在一些实施方式中,视觉元素向客户端图像处理系统102的用户指示图像处理系统104(直接或间接地)提供或帮助提供资源的至少一部分。在一些实施方式中,视觉元素的位置指示正在由图像处理系统104提供资源的哪个部分(例如,包括视觉元素或以其他方式接近视觉元素的部分)。
图像处理系统104通过生成或以其他方式向客户端图像处理系统102提供资源来验证内容提供商系统106已经包括用于由如图像处理系统104和内容提供商系统106的操作者所商定的那样在资源中被渲染的视觉元素,作为图像处理系统104(直接地或间接地)提供资源的一部分的条件。
为了对资源中的视觉元素的渲染的验证,图像处理系统104从客户端图像处理系统102接收确认视觉元素由客户端图像处理系统102渲染的数据。联网环境100被配置为使客户端图像处理系统102执行用于验证视觉元素是否在资源中渲染的操作,而使图像处理系统104(或另一系统)执行验证操作。在客户端图像处理系统102处本地执行验证使得客户端图像处理系统102能够将验证数据122发送到图像处理系统104,而不包括与客户端图像处理系统102的用户相关的个人数据,保持客户端图像处理系统102的用户的隐私。在一些实施方式中,联网环境100使客户端图像处理系统102不向图像处理系统104发送(例如,传输)与客户端图像处理系统102相关的数据,其中该数据可以用于识别客户端图像处理系统102,诸如设备标识符、IP地址、MAC地址或用于验证视觉元素存在于所渲染的资源中的其他识别数据。
更确切地,在该示例中,联网环境100使客户端图像处理系统102只发送指示视觉元素是否被验证为存在于所渲染的资源中的验证数据122。例如,验证数据122包括指示资源中的视觉元素的状态的数据位(“1”或“0”)。在一些实施方式中,对于单个资源中的验证的多个实例,可以发送包括每个视觉元素的标识符的指定量的数据(例如,数据串)。由客户端图像处理系统102向图像处理系统104发送指定量的数据相对于向图像处理系统104传输包括所渲染的资源的数据减少了带宽使用。
为了在客户端图像处理系统102处本地地验证视觉元素的存在(从而如上所述保护隐私并降低带宽使用),当由客户端图像处理系统102渲染资源时,联网环境100使客户端图像处理系统102对表示资源的数据执行一个或多个图像处理操作。在一些实现方式中,联网环境100使客户端图像处理系统102在由客户端图像处理系统102渲染资源时执行验证。在一些实施方式中,联网环境100使客户端图像处理系统102在稍后的时间(例如,在正在向用户显示资源之后)执行验证。以下结合附图3A-图3C更详细地描述图像处理操作。
图像处理系统104包括托管用于通过网络108分发到一个或多个其它计算系统的内容的一个或多个处理设备(例如,服务器系统)。图像处理系统104存储可由一个或内容提供商系统(例如,内容提供商系统106)访问以用于向一个或多个客户端设备(例如,客户端图像处理系统102)提供内容(例如,文本、图像、视频、应用、可执行脚本等)的一个或多个软件库(例如,软件开发工具包或“SDK”)。
例如,内容提供商系统106可以是配置为在网站的网页上检索新闻源小部件的新闻源项的网站主机。图像处理系统104提供包括可执行脚本(例如,内容嵌入脚本)的软件包112。软件包112可以由内容提供商系统106访问(例如,下载)并被添加到网页或以其他方式用于构建网页(例如,运行时环境)。软件包112由内容提供商系统106用于网页中以使正在渲染网页的客户端图像处理系统102发送对来自另一系统(例如,图像处理系统104)的内容110的请求。内容提供商系统106从图像处理系统104或其他内容制作者系统检索内容116(例如,新闻源项)。图像处理系统104指定网页应该在新闻源附近包括引用图像处理系统104的视觉元素。客户端图像处理系统102执行验证操作(如上并结合图3A-图3C所述)并将验证数据122发送到图像处理系统104。
在另一示例中,内容提供商系统106可以是应用提供商(诸如移动游戏发行商)。图像处理系统104所有者可能希望在由图像处理系统104发行的游戏中包括的所嵌入的内容(例如,赞助内容、应用内购买控件、社交网络接口等)。内容提供商系统106将包括资源的应用数据114(例如,游戏)提供给客户端图像处理系统102。在该示例中,当由下载由内容提供商系统106提供的应用数据114的客户端图像处理系统102渲染游戏的接口(例如,资源)时,由客户端图像处理系统102将对内容118的请求发送到另一设备(例如,图像处理系统104)。赞助内容(例如,内容120)从其他系统(例如,图像处理系统104)检索并被嵌入到应用(例如,移动游戏)的接口中。赞助内容由客户端图像处理系统102显示在游戏的接口中。图像处理系统104指定游戏接口应该包括表示图像处理系统104的视觉元素。在一些实施方式中,图像处理系统104指定视觉元素位于赞助内容附近(例如,在赞助内容内部)的资源中。客户端图像处理系统102执行验证操作(如上并结合图3A-图3C所述)并将验证数据122发送到图像处理系统104。
图像处理系统104可以托管将被包括在由内容提供商系统106提供的资源中的内容116、120(例如,文本、图像、视频、应用、可执行脚本等)。在一些实施方式中,图像处理系统104将内容116发送到内容提供商系统106,其中在发送到客户端图像处理系统102以用于渲染之前将内容116与内容提供商系统106的内容组合在一起。在一些实施方式中,图像处理系统104将内容120直接地发送到客户端图像处理系统102,诸如响应于对由在客户端图像处理系统102上操作的应用中嵌入的可执行逻辑引起的内容118的请求。
内容提供商系统106包括由内容发行商操作的一个或多个计算设备(例如,服务器系统)。虽然图像处理系统104提供通常被嵌入到资源中的内容116、120,但是内容提供商系统106包括被配置为自身提供资源的系统。例如,内容提供商系统106可以包括(诸如移动游戏、音乐应用、测绘应用、乘车服务应用、或由发行商提供以用于在客户端图像处理系统102上运行的任何这样的应用的)应用发行商的系统。对于这些应用,内容116、120通常是使用图像处理系统104的软件包112(例如,SDK)而嵌入以使能关于应用中的所嵌入的内容的功能的所嵌入的内容。例如,应用发行商可能希望将应用与由图像处理系统104提供的社交网络平台接口。图像处理系统104提供SDK来帮助内容提供商系统106在由内容提供商系统106提供的应用中包括社交网络平台访问。在一个示例中,内容提供商系统106包括网站发行商。内容提供商系统106可能希望在网站中包括所嵌入的内容,并且可能希望使用图像处理系统104的软件包112(例如,SDK)将内容嵌入网站中。在这些情况下,验证操作验证内容提供商系统106的视觉元素被内容提供商系统106包括,以与内容116、120一起显示。视觉元素指示图像处理系统104将软件包112提供给了内容提供商系统106以用于生成资源(例如,图像处理系统104的平台正在被使用)。
图2是示出了图像处理系统200(例如,联网环境100的实施方式)的组件的框图。图像处理系统200包括图像处理系统104、内容提供商系统106和客户端图像处理系统102。
图像处理系统104包括一个软件库206、存储装置208、验证模块212和接口214。图像处理系统104包括可以由一个或多个内容提供商系统访问并且内容可以由客户端图像处理系统102或内容提供商系统106从其检索并被嵌入到一个或多个资源的平台。例如,图像处理系统104可以包括广告交易平台、社交网络网站、购物网站、新闻源提供商、或者内容可以从其检索并被嵌入到资源的任何平台(例如,应用页面、网站等)。图像处理系统104可以包括提供软件库206和将由客户端图像处理系统102或内容提供商系统106检索的其他内容的单个系统。在一些实施方式中,图像处理系统104包括两个或更多个系统,诸如提供软件库206的第一系统和提供由客户端图像处理系统102检索的内容的第二系统。在一些实施方式中,由图像处理系统104产生的内容被存储在存储装置208中的图像处理系统104处。接口214被配置为诸如通过网络108发送和接收数据。
图像处理系统104包括使得内容提供商系统106能够从图像处理系统104检索内容并将内容嵌入到由内容提供商系统106提供的资源的软件库206。软件库206包括可以促进从图像处理系统104(或另一系统)检索内容的资源的开发的软件开发工具包。在一些实施方式中,由库提供的软件包括可以与资源的代码结合以将内容嵌入资源中的内容的可执行逻辑、代码片段等。在一些实施方式中,软件库206的软件使客户端图像处理系统102在正在渲染资源时(例如,从图像处理系统104)检索内容以嵌入资源中。在一些实现方式中,软件库206的软件包括在包中的所嵌入的内容,并且不会使内容由客户端图像处理系统102检索。
图像处理系统104包括解析从其它设备(诸如客户端图像处理系统102)接收到的数据并确定指定的视觉元素是否由客户端图像处理系统102适当地渲染的验证模块212。在一些实施方式中,验证模块212接收指示正确渲染的验证数据。验证模块212将信号发送到另一系统(例如,广告交易平台),其然后可以基于对所指定的视觉元素的存在的验证采取动作。例如,在广告上下文中,当验证数据指示视觉元素已被正确渲染时,广告交易平台可以仅补偿内容提供商系统106的操作者。例如,在社交网络上下文中,可以触发社交网络馈送以基于指示视觉元素未被正确渲染的验证数据来重新发送数据。在一些实施方式中,当视觉元素未被正确触发时,图像处理系统104可以向客户端图像处理系统102发送信号以禁止客户端图像处理系统102显示所嵌入的内容。
客户端图像处理系统102包括计算设备,诸如膝上型电脑、平板电脑、移动电话或其他计算设备。客户端图像处理系统102包括一个或多个资源在其上被渲染和被显示的终端设备。客户端图像处理系统102包括图像处理引擎210、数据捕获引擎218、数据传输设备220、存储装置222、内容嵌入引擎224、渲染引擎226和接口216。客户端图像处理系统102可以包括(例如,被安装在客户端图像处理系统102上的)应用230。应用230包括应用逻辑232和应用接口引擎234。
数据捕获引擎218被配置为捕获由客户端图像处理系统102渲染的数据(例如,将由/正由客户端图像处理系统102显示的数据)。在一些实施方式中,数据捕获引擎218获取资源的所渲染的数据的“屏幕截图”或“快照”。例如,当渲染资源时,将信号发送到数据捕获引擎218以获取屏幕截图。数据捕获引擎218捕获数据并将其提供给图像处理引擎210以用于分析,如下面在图3A-图3C中所描述的。在一些实施方式中,数据捕获引擎218还接收所渲染的资源的渲染参数。渲染参数包括分辨率、字体大小、各种字段的存在/不存在、或关于资源页面的其他结构信息,以帮助图像处理引擎210分析资源屏幕截图。例如,数据捕获引擎218可以询问客户端图像处理系统102的操作系统,以确定由渲染诸如屏幕大小和当正在渲染资源以在客户端设备上显示时可能发生的资源的拉伸或偏斜引起的视觉元素的失真。在一些实施方式中,数据捕获218可以确定是否已经存在视觉元素的压缩,这可以在视觉元素中引入进一步的失真。在一些实施方式中,数据捕获引擎218接收视觉元素在屏幕上的预期位置。例如,内容提供商系统106可以发送视觉元素的预期位置(例如,视觉元素的每个实例的边界框)。除了资源的屏幕截图之外,数据捕获引擎218还将渲染参数发送到图像处理引擎210以帮助图像处理引擎210确定视觉元素存在。渲染参数提供简化图像处理并相对于在没有渲染参数的情况下处理屏幕截图所发生的延迟而减少用于对视觉元素的验证的延迟。这些渲染参数通过指定需要处理的图像的一个或多个特定部分(例如,而不是处理整个图像)并通过指定可能存在于图像中的失真(其可以通过预先识别那些失真部分而不是图像处理引擎必须在处理期间识别或测试失真来减少图像处理中的延迟)来(相对于独立于渲染参数的图像处理效率)提高图像处理效率。在图像处理引擎210确认验证之后显示资源的一些实施方式中,图像处理在渲染资源和显示资源之间引入延迟。通过凭借上述技术减少图像处理时间,显示资源的延迟被减少,同时仍然能够使能对视觉元素的存在的验证。
内容嵌入引擎224(例如,从图像处理系统104或内容提供商系统106或两者)接收内容。在一些实施方式中,内容已经在存储222中作为应用230的一部分。内容嵌入引擎224配置资源以用于通过运行由图像处理系统104提供的脚本或其他逻辑来由客户端图像处理系统102进行渲染。内容嵌入引擎224组合资源内容,并且然后将资源发送到渲染引擎226以用于渲染。渲染引擎226渲染被嵌入在资源中的内容以及资源本身。
应用230可以包括用于在请求用于嵌入到应用中的内容的客户端图像处理系统102上运行的任何程序。例如,应用230可以包括浏览器、社交网络应用、移动游戏、测绘应用、新闻源等。应用230包括用于运行应用的应用逻辑232。应用230包括与渲染引擎226接口并生成在资源中渲染的所嵌入的内容的可视化的应用接口引擎234。
图像处理引擎210(例如,经由数据捕获引擎218)从应用接口引擎234接收可视化。图像处理引擎210处理所生成的可视化的一个或多个像素并验证指定的视觉元素存在于可视化中。在一些实施方式中,(诸如,当应用230被下载时)视觉元素存储在存储装置222中,并且由图像处理引擎210检索作为图案以比较所生成的可视化(或其一部分)。图像处理引擎210如在下面结合图3A-图3C所描述的那样处理所生成的可视化。
图像处理引擎210生成可以包括指示视觉元素是否存在于所渲染的可视化的单个位或其它数据的验证数据(例如,验证数据122)。验证数据被发送到数据传输设备220,其中该数据传输设备220(经由接口216)将数据发送到图像处理系统104(或另一远程设备)以指示视觉元素是否存在于资源中。在一些实施方式中,在渲染资源时将验证作为ping发送。图像处理系统104可以使用反垃圾邮件软件来确定ping是否是真实的或者验证是否正在被应用230欺骗。例如,反垃圾邮件措施可以包括验证客户端信息的数字签名、检测模拟器、数据耕作、错误信号等。这些系统类似于用于监视所嵌入的内容(诸如广告)的点击的那些系统。在这种情况下,仅将验证数据发送到远程设备,并且不将客户端图像处理系统102或客户端设备的操作者的个人信息发送到远程设备。可视化的图像处理发生在客户端图像处理系统102处,以保护客户端图像处理系统102的用户的隐私。被包括在由数据捕获引擎218捕获的屏幕截图中的个人信息因此在本地保持在客户端图像处理系统102上,并且不通过网络108传输。
然而,虽然通常没有个人数据被传输到图像处理系统104,但是对于这里讨论的系统收集和/或使用关于用户的个人信息的情况,可以向用户提供使能/禁用或控制可以收集和/或使用个人信息的程序或特征(例如,关于用户的社交网络、社交动作或活动、用户的偏好或用户的当前位置的信息)的机会。另外,某些数据在存储或使用之前可以以一种或多种方式对待,以便移除与用户相关联的个人可识别信息。例如,用户的身份可以是匿名的,以便没有个人可识别信息可以为用户而确定,或者用户的地理位置可以被概括为获得位置信息的地方(诸如城市、邮政编码或州级),以便用户的特定位置无法被确定。
图3A-图3C示出了应用接口300(例如,资源的示例)的示例屏幕截图305、310、315。图像处理引擎(例如,图像处理引擎210)处理诸如接口300(或其部分)的接口的屏幕截图以确定视觉元素是否存在。图像处理引擎使用在客户端图像处理系统102处可用并且快速(<100ms)且可靠的图像处理技术。例如,通过导入渲染参数,图像处理引擎使用预先计算的或预先确定的阈值用于各种图像处理算法。例如,图像处理引擎可以导入预设的HSV/HSI阈值、内核大小、过滤值等。通过导入渲染参数,图像处理引擎不需要用于将处理的图像与检索的视觉元素(例如,视觉元素320b-c)匹配的所计算的补偿度量。图像处理引擎可以执行一个或多个图像处理算法,包括诸如通过边缘检测、霍夫变换、尺度不变特征变换、分割等的特征检测。
转到图3A,接口300包括诸如在智能电话上的移动游戏的游戏应用的内容302a、302b、302c。内容302a-302c包括使得用户能够与接口交互的各种模块和控件。接口300包括所嵌入的内容304、306。例如,所嵌入的内容304包括内容提供商系统106对较新版本游戏的促销。例如,所嵌入的内容306包括该包括用于游戏的玩家的论坛(例如,社交网络)的链接的图像。所嵌入的内容304、306可以由内容制作者系统(例如,图像处理系统104)产生的脚本随机生成和检索,并由内容提供商系统(例如,内容提供商系统106)放入应用中。脚本使应用获取所嵌入的内容304、306并将其嵌入到接口300中。邻近内容304的是文本视觉元素308和图标视觉元素310。邻近内容306的是文本视觉元素308和图标视觉元素310。图标310和文本308可以由内容制作者系统指定,以在使用由内容制作者系统产生的脚本提供的所嵌入的内容附近或者由内容制作者系统产生的所嵌入的内容附近示出。视觉元素可以包括徽标、文本、图像等中的一个或多个。在一些实施方式中,将替代的图像、徽标、文本等的库提供给客户端设备并存储以用于与视觉元素进行比较。在一些实施方式中,内容提供商系统106提供在资源中正在使用的特定视觉元素。视觉元素可以是任何形状、大小、颜色、方向等。
转到图3B,接口300的一部分的屏幕截图由图像处理引擎312(例如,图像处理引擎210)处理。用于处理屏幕截图的方法包括简单的使得处理小于或约等于100ms的方法。在一些实施方式中,处理时间可以高达250ms。图像处理不需要知道资源的结构来确定视觉元素的存在或不存在。图像处理比解析资源的结构以确定表示视觉元素的数据是否存在于资源中具有更小的侵入性(invasive)。图像处理比解析资源的结构以确定表示视觉元素的数据是否存在于资源中更快。可以使用从提供资源的内容提供商系统接收的信息来简化图像处理,诸如在视觉元素应该出现在的接口300上的地方(例如,视觉元素的边界框)。可以如上所述检索压缩和分辨率数据,以进一步减少图像处理时间并提高图像处理的准确性。例如,压缩和渲染参数、操作系统渲染失真等可以用于调整图像处理阈值、降低图像处理算法的复杂度、提高验证的准确性、以及减少处理时间。在一些实施方式中,因为机器学习在客户端设备处不可用于验证视觉元素(因为没有可用的训练数据),这些技术被使用。
为了处理徽标310,图像处理引擎312接收指示应在其上发生图像处理的资源的区域的边界框314的尺寸。使用诸如利用静态内核的卷积的一个或多个图像处理算法处理边界框314内的接口的区域。(例如,由数据捕获引擎218从操作系统检索的)渲染参数318被用于帮助图像处理引擎312。图像处理引擎312检索从存储装置320a检索的指定的视觉元素320b并将指定的视觉元素320b与处理后的图像316进行比较。图像处理引擎312生成验证数据322并将数据发送到诸如内容制作者324的远程设备。
转到图3C,包括作为视觉元素的文本308的接口300被示出。类似于图3B的徽标310的图像处理,为了处理文本308,图像处理引擎312接收指示在其上应该发生图像处理的资源的区域的边界框314的尺寸。使用诸如利用静态内核的卷积的一个或多个图像处理算法处理边界框314内的接口的区域。(例如,由数据捕获引擎218从操作系统检索的)渲染参数318被用于帮助图像处理引擎312。图像处理引擎312检索从存储装置320a检索的指定的视觉元素320c并将指定的视觉元素320b与处理后的图像316进行比较。图像处理引擎312生成验证数据322并将数据发送到诸如内容制作者324的远程设备。在一些实施方式中,图像处理引擎312接收指示视觉元素316包括文本的数据,并且对视觉元素316执行光学字符识别(Optical Character Recognition,OCR)图像处理。
在一些实施方式中,除了或替代验证数据被渲染的图像处理,“音频处理”还可以被执行以验证由设备输出的预定音频实际上是正由设备根据预先确定输出的。例如,在一个语音激活的设备中(例如,在这种情况下的客户端设备),内容提供商可能提供插件或模块以使得客户端设备的用户能够直接地与内容提供商进行通信。图像处理系统可以使得内容提供商能够将这些服务与语音激活的设备的接口集成使得用户可以经由语音激活的设备访问内容提供商的内容。图像处理系统可以通过语音激活的设备监视所生成的音频数据,以验证由图像处理系统(或任何其他设备)提供的内容被正确地归属于由语音激活的设备生成的音频数据(例如,话音数据)。在一些实施方式中,设备不需要是语音激活的设备,而是可以是提供听觉输出以及来自内容提供商的数据(例如,响应于对该数据的请求而提供听觉输出)的任何设备。图像处理系统可以验证说出了特定的词、播放了特定的音调(例如,旋律等)等等以及由内容提供商提供的数据。在一些实施方式中,用于所渲染的数据的验证的音频处理的过程类似于通过该文档描述的图像处理示例,其中利用用于音频输出的信号处理技术来代替图像处理技术。例如,可以使用包括将绝对光谱信息与动态的或时间导数、光谱信息、隐马尔可夫模型等等混合的异构参数集的技术。
图4是由图像处理系统(例如,联网环境100)的系统采取的动作400的流程图。内容提供商系统106从图像处理系统104请求(402)软件(诸如SDK)。图像处理系统104确定(404)指定的视觉元素(或元素的库),并且将所请求的软件与(多个)指定的元素一起发送(406)到图像处理系统104。指定的元素将与使用由内容图像处理系统104提供的软件在由图像处理系统104提供给客户端图像处理系统102的资源中而嵌入的内容一起被示出。内容提供商系统106利用软件构建(408)包括指定的视觉元素的资源。图像处理系统104将资源发送(410)到客户端图像处理系统102。资源可以是应用或应用的一部分、网页或其他文档等等。客户端图像处理系统102接收(412)资源。当资源被激活时(例如,在运行时),客户端图像处理系统102(诸如从图像处理系统104)请求(414)用于嵌入到资源中的内容。图像处理系统104(例如,经由竞价或其他内容评估机制)确定(416)要提供哪些内容。图像处理系统104将内容发送(418)到客户端图像处理系统102。客户端图像处理系统102将内容嵌入(420)资源中。客户端图像处理系统102渲染(422)资源。客户端图像处理系统102(诸如使用图像处理引擎)确定(424)指定的视觉元素的存在。客户端图像处理系统102显示(426)资源,并且发送(428)要由图像处理系统104接收(430)的验证数据。在一些实施方式中,在由客户端图像处理系统102显示(426)资源之前发送(428)验证数据。
图5是示出图像处理系统的动作500的流程图。图像处理系统将包括视觉元素的内容嵌入(502)诸如由内容提供商系统106提供的资源的资源中。图像处理系统渲染(504)资源和所嵌入的内容。图像处理系统确定(506)渲染参数。图像处理系统检索(508)指定的视觉元素。图像处理系统处理(510)所生成的可视化。图像处理系统确定(512)指定的视觉元素的存在。图像处理系统传输(514)指示确定结果的验证数据。
图6是可以用于实施本文档中描述的系统和方法的、作为客户端或服务器或多个服务器的计算设备600、650的框图。计算设备600旨在表示各种形式的数字计算机,诸如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备650旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。额外地,计算设备600或计算设备650可以包括通用串行总线(Universal Serial Bus,USB)闪存驱动器。USB闪存驱动器可以存储操作系统和其他应用。USB闪存驱动器可以包括输入/输出组件,诸如无线发射器或可以插入另一计算设备的USB端口的USB连接器。这里示出的组件,它们的连接和关系以及它们的功能仅仅意味着是示例性的,并且不意味着限制本文档中描述和/或要求保护的发明的实施方式。
计算设备600包括处理器602、存储器604、存储设备606、连接到存储器604和高速扩展端口610的高速接口608、和连接到低速总线614和存储设备606的低速接口612。组件602、604、606、608、610和612中的每一个使用各种总线互连,并且可以安装在公共主板上或者适当地以其他方式安装。处理器602可以处理用于在计算设备600内执行的指令(包括存储在存储器604中或存储设备606上的指令)以在外部输入/输出设备(诸如耦合到高速接口608的显示器616)上显示用于GUI的图形信息。在其他实施方式中,可以适当地与多个存储器和多种类型的存储器一起使用多个处理器和/或多个总线。而且,可以连接多个计算设备600,每个设备提供必要操作的部分(例如,作为服务器库、一组刀片服务器或多处理器系统)。
存储器604存储计算设备600内的信息。在一个实施方式中,存储器604是易失性存储器单元或多个易失性存储器单元。在另一实施方式中,存储器604是非易失性存储器单元或多个非易失性存储器单元。存储器604还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。
存储设备606能够为计算设备600提供海量存储。在一个实施方式中,存储设备606可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备、或磁带设备、闪存或其它类似的固态存储器设备、或设备的阵列,包括存储区域网络或其他配置中的设备。计算机程序产品可以有形地体现在信息载体中。计算机程序产品还可以包含在运行时执行诸如上述的那些的方法的一个或多个方法的指令。信息载体是计算机或机器可读介质,诸如存储器604、存储设备606、或处理器602上的存储器。
高速控制器608管理计算设备600的带宽密集型操作,而低速控制器612管理较低带宽密集型操作。功能的这样的分配仅是示例性的。在一个实施方式中,高速控制器608耦合到存储器604、(例如,通过图形处理器或加速器耦合到)显示器616,以及可以接受各种扩展卡(未示出)的高速扩展端口610。在该实施方式中,低速控制器612耦合到存储设备606和低速扩展端口614。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪、或(诸如通过网络适配器耦合到)诸如交换机或路由器的网络设备。
计算设备600可以以多种不同的形式实施,如图中所示。例如,它可以实施为标准服务器620,或者在一组这样的服务器中实施多次。它还可以实施为机架服务器系统624的一部分。另外,它可以在诸如膝上型计算机622的个人计算机中实施。可替换地,来自计算设备600的组件可以与诸如设备650的移动设备(未示出)中的其他组件结合。这样的设备中的每一个可以包含计算设备600、计算设备650中的一个或多个,并且整个系统可以由彼此通信的多个计算设备600、计算设备650组成。
计算设备650包括处理器652、存储器664、诸如显示器654的输入/输出设备、通信接口666和收发器668,以及其他组件。设备650还可以提供有诸如微驱动器或其他设备的存储设备以提供额外的存储。组件650、652、664、654、666和668中的每一个使用各种总线互连,并且该组件中的若干组件可以安装在公共主板上或者适当地以其他方式安装。
处理器652可以执行计算设备650内的指令,包括存储在存储器664中的指令。处理器可以被实施为包括单独的和多个模拟和数字处理器的芯片的芯片组。额外地,可以使用多种架构中的任何架构来实施处理器。例如,处理器410可以是CISC(Complex InstructionSet Computer,复杂指令集计算机)处理器、RISC(Reduced Instruction Set Computer,精简指令集计算机)处理器或MISC(Minimal Instruction Set Computer,最小指令集计算机)处理器。处理器可以提供例如设备650中的其他组件的协调,诸如对用户接口、由设备650运行的应用和设备650的无线通信的控制。
处理器652可以通过控制接口658和耦合到显示器654的显示接口656与用户通信。显示器654可以是例如TFT(Thin-Film-Transistor Liquid Crystal Display,薄膜晶体管液晶显示器)显示器或OLED(Organic Light Emitting Diode,有机发光二极管)显示器、或其他适当的显示技术。显示接口656可以包括用于驱动显示器654以向用户呈现图形和其他信息的适当电路。控制接口658可以从用户接收命令并将它们转换以用于提交给处理器652。另外,可以提供与处理器652通信的外部接口662,以便使能设备650与其他设备的近区域通信。外部接口662可以例如在一些实施方式中提供有线通信,或者在其他实施方式中提供无线通信,并且还可以使用多个接口。
存储器664存储计算设备650内的信息。存储器664可以实施为计算机可读介质或多个计算机可读介质、易失性存储器单元或多个易失性存储器单元、或非易失性存储器单元或多个非易失性存储器单元中的一个或多个。扩展存储器674也可以被提供并通过可以包括例如SIMM(Single In-Line Memory Module,单列直插存储器模块)卡接口的扩展接口672连接到设备650。这样的扩展存储器674可以为设备650提供额外的存储空间,或者还可以为设备650存储应用或其他信息。具体地,扩展存储器674可以包括执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器674可以被提供为设备650的安全模块,并且可以用允许设备650的安全使用的指令编程。另外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不可黑客的方式将识别信息放在SIMM卡上。
存储器可以包括,例如,闪存和/或NVRAM存储器,如下所述。在一个实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含在运行时执行诸如上述那些方法的一个或多个方法的指令。信息载体是计算机或机器可读介质(诸如存储器664、扩展存储器674或处理器652上的存储器),其可以例如通过收发器668或外部接口662接收。
设备650可以通过可以在必要时包括数字信号处理电路的通信接口666进行无线通信。通信接口666可以提供各种模式或协议(诸如GSM语音呼叫、SMS、EMS、或MMS消息传递、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等)下的通信。这样的通信可以例如通过射频收发器668发生。此外,可以(诸如使用蓝牙、WiFi或其他这样的收发器(未示出))发生短程通信。另外,GPS(Global Positioning System,全球定位系统)接收器模块670可以向设备650提供附加的导航相关和位置相关的无线数据,其可以由在设备650上运行的应用适当地使用。
设备650还可以使用可以从用户接收口头信息并将其转换为可用的数字信息的音频编解码器660进行可听地通信。音频编解码器660同样可以(诸如通过例如在设备650的听筒中的扬声器)为用户生成可听的声音。这样的声音可以包括来自语音电话呼叫的声音,可以包括录制的声音(例如,语音消息、音乐文件等),并且还可以包括由在设备650上操作的应用生成的声音。
计算设备650可以以多种不同的形式实施,如图中所示。例如,它可以实施为蜂窝电话680。它还可以实施为智能手机682、个人数字助理或其他类似移动设备的一部分。
这里描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的ASIC(Application Specific Integrated Circuits,专用集成电路)、计算机硬件、固件、软件和/或其结合中实现。这些各种实施方式可以包括在包括(以是专用的或通用的)至少一个可编程处理器的可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,其中该至少一个可编程处理器被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并将数据和指令传输到存储系统、至少一个输入设备和至少一个输出设备。
这些计算机程序(也已知为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或汇编/机器语言来实施。如本文所使用的,术语“机器可读介质”“计算机可读介质”指的是用于向可编程处理器提供机器指令/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(Programmable Logic Devices,PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指的是用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,这里描述的系统和技术可以在具有用于向用户显示信息的显示设备(例如,CRT(Cathode Ray Tube,阴极射线管)或LCD(Liquid Crystal Display,液晶显示器)监视器)以及用户可以通过其向计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)的计算机上实施。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。
这里描述的系统和技术可以在包括后端组件(例如,作为数据服务器)、或包括中间件组件(例如,应用服务器)、或包括前端组件(例如,具有通过其用户可以与这里描述的系统和技术的实施方式进行交互的图形用户接口或Web浏览器的客户端计算机),或者这样的后端组件、中间件组件或前端组件的任何组合的计算系统中实施。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(Local Area Network,“LAN”),广域网(Wide Area Network,“WAN”)、对等网络(具有ad-hoc或静态成员)、网格计算基础设施和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序而出现。
尽管上面已经详细描述了一些实施方式,但是其他修改也是可能的。此外,可以使用用于图像处理系统的其他机制。另外,图中描绘的逻辑流程不需要所示的特定次序或顺序次序来实现希望的结果。可以从所描述的流程中提供其他步骤,或者可以从所描述的流程中消除步骤,并且可以向所描述的系统添加其他组件或从其移除其他组件。因此,其他实施方式在所附权利要求的范围内。

Claims (33)

1.一种用于验证所嵌入的数字内容满足与内容的显示相关联的预定标准的客户端图像处理系统,所述图像处理系统包括:
一个或多个硬件存储设备,存储指示与内容的显示相关联的预定标准的数据;
内容嵌入引擎,将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;
渲染引擎,渲染被嵌入在资源中的内容;
应用接口引擎,与渲染引擎接口并生成资源和在资源中渲染的所嵌入的内容的可视化;以及
图像处理引擎:
从一个或多个硬件存储设备检索指示预定标准的数据;
处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证指定的视觉元素满足预定标准;以及
传输包括对是否满足预定标准的指示的验证数据。
2.根据权利要求1所述的客户端图像处理系统,其中,所生成的可视化包括资源和在资源中渲染的所嵌入的内容的屏幕截图。
3.根据权利要求1或2所述的客户端图像处理系统,其中,预定标准与指定的视觉元素相关联;并且
其中,验证指定的视觉元素满足预定标准包括验证所嵌入的数字内容包括指定的视觉元素。
4.根据权利要求3所述的客户端图像处理系统,其中,指定的视觉元素包括徽标。
5.根据权利要求3或4所述的客户端图像处理系统,其中,指定的视觉元素包括文本。
6.根据权利要求3至5中任一项所述的客户端图像处理系统,其中,一个或多个硬件存储设备存储指示指定的视觉元素的渲染参数的数据,并且其中图像处理引擎基于指定的视觉元素的渲染参数选择资源的一部分以用于分析。
7.根据前述权利要求中任一项所述的客户端图像处理系统,其中,资源包括移动应用的页面或网页中的一个。
8.根据前述权利要求中任一项所述的客户端图像处理系统,其中,处理所生成的可视化的一个或多个像素包括执行包括利用静态内核的卷积的图像处理算法。
9.根据前述权利要求中任一项所述的客户端图像处理系统,其中,图像处理引擎从操作图像处理引擎的设备的操作系统检索指示操作系统的渲染参数的数据,并且其中图像处理引擎基于渲染参数调整处理所生成的可视化的一个或多个像素。
10.根据权利要求9所述的客户端图像处理系统,其中,渲染参数指示所生成的可视化的失真,并且其中调整分析包括补偿所生成的可视化的失真。
11.根据前述权利要求中任一项所述的客户端图像处理系统,其中,图像处理引擎处理资源的所生成的可视化的一个或多个像素,而不对资源的格式进行确定。
12.一种用于验证所嵌入的数字内容满足与内容的显示相关联的预定标准的图像处理系统,所述图像处理系统包括:
软件库,包括用于将数字内容嵌入资源中的可执行代码的一个或多个部分;
一个或多个硬件存储设备,用于存储指示预定标准的数据;以及
验证模块,被配置为接收包括对由远程设备在资源中渲染所嵌入的数字内容是否满足预定标准的指示的验证数据;
其中,可执行代码的一个或多个部分被配置为使远程设备执行包括以下操作的操作:
从远程设备的存储装置检索指示预定标准的数据;
由图像处理引擎处理资源中的所嵌入的数字内容的所生成的可视化的一个或多个像素,以验证满足预定标准;以及
向验证模块传输包括对是否满足预定标准的指示的验证数据。
13.根据权利要求12所述的图像处理系统,其中,所生成的可视化包括资源和在资源中渲染的所嵌入的内容的屏幕截图。
14.根据权利要求12或13所述的图像处理系统,其中,预定标准与指定的视觉元素相关联;并且
其中,验证指定的视觉元素满足预定标准包括验证所嵌入的数字内容包括指定的视觉元素。
15.根据权利要求14所述的图像处理系统,其中,远程设备的存储装置存储指示指定的视觉元素的渲染参数的数据,并且其中图像处理引擎基于指定的视觉元素的渲染参数选择资源的一部分以用于分析。
16.一种用于验证所嵌入的数字内容包括指定的视觉元素的客户端图像处理系统,所述图像处理系统包括:
一个或多个硬件存储设备,存储指示指定的视觉元素的数据;
内容嵌入引擎,将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;
渲染引擎,渲染被嵌入到资源中的内容;
应用接口引擎,与渲染引擎接口并生成资源和在资源中渲染的所嵌入的内容的可视化;以及
图像处理引擎:
从一个或多个硬件存储设备检索指示指定的视觉元素的数据;
处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证利用所嵌入的内容在资源中渲染了指定的视觉元素;以及
传输包括对是否利用所嵌入的内容渲染了指定的视觉元素的指示的验证数据,其中传输验证数据消耗比通过传输资源和在资源中渲染的所嵌入的内容的可视化将消耗的带宽量更少的带宽。
17.根据权利要求16所述的图像处理系统,其中,所生成的可视化包括资源和在资源中渲染的所嵌入的内容的屏幕截图。
18.根据权利要求16所述的图像处理系统,其中,一个或多个硬件存储设备存储指示指定的视觉元素的渲染参数的数据,并且其中图像处理引擎基于指定的视觉元素的渲染参数选择资源的一部分以用于分析。
19.根据权利要求16所述的图像处理系统,其中,资源包括移动应用的页面或网页中的一个。
20.根据权利要求16所述的图像处理系统,其中处理所生成的可视化的一个或多个像素包括执行包括利用静态内核的卷积的图像处理算法。
21.根据权利要求16所述的图像处理系统,其中,图像处理引擎从操作图像处理引擎的设备的操作系统检索指示操作系统的渲染参数的数据,并且其中图像处理引擎基于渲染参数调整处理所生成的可视化的一个或多个像素。
22.根据权利要求21所述的图像处理系统,其中,渲染参数指示所生成的可视化的失真,并且其中调整分析包括补偿所生成的可视化的失真。
23.根据权利要求16所述的图像处理系统,其中,指定的视觉元素包括徽标。
24.根据权利要求16所述的图像处理系统,其中,指定的视觉元素包括文本。
25.根据权利要求16所述的图像处理系统,其中,图像处理引擎处理资源的所生成的可视化的一个或多个像素,而不对资源的格式进行确定。
26.一种用于验证所嵌入的数字内容包括指定的视觉元素的图像处理系统,所述图像处理系统包括:
软件库,包括用于将数字内容嵌入资源中的可执行代码的一个或多个部分;
一个或多个硬件存储设备,用于存储指示指定的视觉元素的数据;以及
验证模块,被配置为接收包括对是否由远程设备利用资源中的所嵌入的数字内容渲染了指定的视觉元素的指示的验证数据;
其中,可执行代码的一个或多个部分被配置为使远程设备执行包括以下操作的操作:
从远程设备的存储装置检索指示指定的视觉元素的数据;
由图像处理引擎处理资源中的所嵌入的数字内容的所生成的可视化的一个或多个像素,以验证利用所嵌入的数字内容渲染了指定的视觉元素;以及
向验证模块传输包括对是否利用所嵌入的数字内容渲染了指定的视觉元素的指示的验证数据,其中传输验证数据消耗比通过传输表示资源和所嵌入的数字内容的数据将消耗的带宽量更少的带宽。
27.根据权利要求26所述的图像处理系统,其中,图像处理引擎从操作图像处理引擎的设备的操作系统检索指示操作系统的渲染参数的数据,并且其中图像处理引擎基于渲染参数调整处理所生成的可视化的一个或多个像素。
28.根据权利要求27所述的图像处理系统,其中,渲染参数指示所生成的可视化的失真,并且其中调整分析包括补偿所生成的可视化的失真。
29.根据权利要求26所述的图像处理系统,其中,指定的视觉元素包括徽标。
30.根据权利要求26所述的图像处理系统,其中,指定的视觉元素包括文本。
31.根据权利要求26所述的图像处理系统,其中,图像处理引擎处理资源的所生成的可视化的一个或多个像素,而不对资源的格式进行确定。
32.一种用于验证所渲染的资源的所嵌入的数字内容包括指定的视觉元素的方法,所述方法包括:
存储指示指定的视觉元素的数据;
由内容嵌入引擎将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;
由渲染引擎渲染被嵌入在资源中的内容;
由应用接口引擎生成资源和在资源中渲染的所嵌入的内容的可视化;
由图像处理引擎从一个或多个硬件存储设备检索指示指定的视觉元素的数据;
由图像处理引擎处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证利用所嵌入的内容在资源中渲染了指定的视觉元素;以及
传输包括对是否利用所嵌入的内容渲染了指定的视觉元素的指示的验证数据,其中传输验证数据消耗比通过传输资源和在资源中渲染的所嵌入的内容的可视化将消耗的带宽量更少的带宽。
33.一种存储可由一个或多个处理器执行的指令的非暂时性计算机可读介质,所述一个或多个处理器被配置为执行用于验证所渲染的资源的所嵌入的数字内容包括指定的视觉元素的操作,所述操作包括:
存储指示指定的视觉元素的数据;
由内容嵌入引擎将内容嵌入由内容提供商提供的资源中并配置资源以用于渲染;
由渲染引擎渲染被嵌入在资源中的内容;
由应用接口引擎生成资源和在资源中渲染的所嵌入的内容的可视化;
由图像处理引擎从一个或多个硬件存储设备检索指示指定的视觉元素的数据;
由图像处理引擎处理资源和所嵌入的内容的所生成的可视化的一个或多个像素以及资源,以验证利用所嵌入的内容在资源中渲染了指定的视觉元素;以及
传输包括对是否利用所嵌入的内容渲染了指定的视觉元素的指示的验证数据,其中传输验证数据消耗比通过传输资源和在资源中渲染的所嵌入的内容的可视化将消耗的带宽量更少的带宽。
CN201780062002.5A 2017-10-31 2017-10-31 用于验证渲染的数据的图像处理系统 Active CN110140144B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2017/059369 WO2019089012A1 (en) 2017-10-31 2017-10-31 Image processing system for verification of rendered data

Publications (2)

Publication Number Publication Date
CN110140144A true CN110140144A (zh) 2019-08-16
CN110140144B CN110140144B (zh) 2023-08-08

Family

ID=60382610

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780062002.5A Active CN110140144B (zh) 2017-10-31 2017-10-31 用于验证渲染的数据的图像处理系统

Country Status (4)

Country Link
US (2) US11710224B2 (zh)
EP (1) EP3510557B1 (zh)
CN (1) CN110140144B (zh)
WO (1) WO2019089012A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112669404A (zh) * 2020-12-28 2021-04-16 北京达佳互联信息技术有限公司 一种图像处理方法、装置、电子设备和存储介质
CN113207304A (zh) * 2019-12-03 2021-08-03 谷歌有限责任公司 将静态内容项转换为交互式内容项
CN116868187A (zh) * 2021-01-07 2023-10-10 谷歌有限责任公司 用于促进具有第三方资产的增强现实体验的计算平台

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020165912A1 (en) * 2001-02-25 2002-11-07 Storymail, Inc. Secure certificate and system and method for issuing and using same
CN102084388A (zh) * 2008-06-23 2011-06-01 双重验证有限公司 基于因特网的广告的自动监控和验证
CN104718770A (zh) * 2012-09-10 2015-06-17 卡尔加里科学股份有限公司 在客户端-服务器图像观看架构中的客户端侧图像渲染
US20160283050A1 (en) * 2015-03-26 2016-09-29 Ca, Inc. Adaptive tour interface engine
CN106487870A (zh) * 2015-08-27 2017-03-08 埃森哲环球服务有限公司 针对虚拟化技术部件的动作执行架构
CN107005746A (zh) * 2014-09-05 2017-08-01 微软技术许可有限责任公司 用于系统设立的数据流头部的部分加密

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8245306B2 (en) 2002-02-15 2012-08-14 Galo Gimenez Digital rights management printing system
US20090031216A1 (en) 2007-07-26 2009-01-29 Vio Worldwide Limited Preflighting for web publishing
US8612863B2 (en) * 2008-07-18 2013-12-17 Ebay Inc. Methods and systems for setting and enabling badges on web pages
US9361631B2 (en) 2010-01-06 2016-06-07 Ghostery, Inc. Managing and monitoring digital advertising
CN201674570U (zh) 2010-04-28 2010-12-15 天津三星光电子有限公司 一种具有数字水印功能的数码相机
WO2013052866A2 (en) * 2011-10-05 2013-04-11 Google Inc. Semantic selection and purpose facilitation
WO2015020629A1 (en) * 2013-08-05 2015-02-12 Nokia Corporation Secure storage synchronization
US20160065571A1 (en) * 2014-08-26 2016-03-03 Hoyos Labs Corp. System and methods for secure file sharing and access management
CN104484587A (zh) 2014-12-13 2015-04-01 天津远目科技有限公司 一种手机拍照认证的方法
US10380481B2 (en) * 2015-10-08 2019-08-13 Via Alliance Semiconductor Co., Ltd. Neural network unit that performs concurrent LSTM cell calculations

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020165912A1 (en) * 2001-02-25 2002-11-07 Storymail, Inc. Secure certificate and system and method for issuing and using same
CN102084388A (zh) * 2008-06-23 2011-06-01 双重验证有限公司 基于因特网的广告的自动监控和验证
US8583482B2 (en) * 2008-06-23 2013-11-12 Double Verify Inc. Automated monitoring and verification of internet based advertising
CN104718770A (zh) * 2012-09-10 2015-06-17 卡尔加里科学股份有限公司 在客户端-服务器图像观看架构中的客户端侧图像渲染
CN107005746A (zh) * 2014-09-05 2017-08-01 微软技术许可有限责任公司 用于系统设立的数据流头部的部分加密
US20160283050A1 (en) * 2015-03-26 2016-09-29 Ca, Inc. Adaptive tour interface engine
CN106487870A (zh) * 2015-08-27 2017-03-08 埃森哲环球服务有限公司 针对虚拟化技术部件的动作执行架构

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113207304A (zh) * 2019-12-03 2021-08-03 谷歌有限责任公司 将静态内容项转换为交互式内容项
CN112669404A (zh) * 2020-12-28 2021-04-16 北京达佳互联信息技术有限公司 一种图像处理方法、装置、电子设备和存储介质
CN112669404B (zh) * 2020-12-28 2023-11-14 北京达佳互联信息技术有限公司 一种图像处理方法、装置、电子设备和存储介质
CN116868187A (zh) * 2021-01-07 2023-10-10 谷歌有限责任公司 用于促进具有第三方资产的增强现实体验的计算平台

Also Published As

Publication number Publication date
US20230326003A1 (en) 2023-10-12
CN110140144B (zh) 2023-08-08
EP3510557A1 (en) 2019-07-17
EP3510557B1 (en) 2022-01-05
US11710224B2 (en) 2023-07-25
US20210342995A1 (en) 2021-11-04
WO2019089012A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
US10313726B2 (en) Distributing media content via media channels based on associated content being provided over other media channels
JP6681342B2 (ja) 行動イベント計測システム及び関連する方法
US9436580B2 (en) Analytics for mobile applications
US20120130801A1 (en) System and method for mobile advertising
JP6293269B2 (ja) コンテンツ視聴確認装置及びその方法
US20180108015A1 (en) System and method for evaluating fraud in online transactions
CN108886607A (zh) 视频流增强
CN108027830A (zh) 用于自动内容验证的系统和方法
CN104380722B (zh) 使用矩阵式条形码与端点通信
US11620825B2 (en) Computerized system and method for in-video modification
US20180293610A1 (en) Methods and systems for integrating applications into a content recommendation network
CN110140144A (zh) 用于验证渲染的数据的图像处理系统
CN109389736A (zh) 一种发票查验方法及装置
US20180204219A1 (en) Display and shelf space audit system
CN107342966A (zh) 权限凭证发放方法和装置
US20240037176A1 (en) Using embedded elements for online content verification
CN108470131A (zh) 用于生成提示信息的方法和装置
CN104471559B (zh) 用于模块的有效执行的方法和设备
US20230334142A1 (en) Data integrity with trusted code attestation tokens
KR101994564B1 (ko) 사용자 인증 방법 및 장치
CN116823537A (zh) 一种保险报案处理方法、装置、存储介质及电子设备
US10068250B2 (en) System and method for measuring mobile advertising and content by simulating mobile-device usage
CN110069649B (zh) 图形文件检索方法、装置、设备及计算机可读存储介质
US11423438B2 (en) Real-time online asset display campaign auditing system
CN115379270B (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