# US 2021/0342995 A1 · Image processing system for verification of rendered data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0342995 A1
- Document ID: US20210342995A1
- Status: Published application
- Kind: A1
- Application number: 16/330,685
- Filed: 2017-10-31
- Published: 2021-11-04
- Earliest claimed: 2017-10-31
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Tuna Toksoz; Anton Kast
- Web page: https://patentgrep.com/patent/US20210342995A1

## CPC

- G06F 21/10: Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]}
- G06Q 20/1235: {with control of digital rights management [DRM]}
- G06Q 20/40145: {Biometric identity checks}
- G06T 1/0021: {Image watermarking}
- G06T 5/80: Geometric correction
- G06T 7/0002: {Inspection of images, e.g. flaw detection}
- H04L 67/01: Protocols
- H04N 1/32144: {embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp}
- H04N 1/32352: {Controlling detectability or arrangements to facilitate detection or retrieval of the embedded information, e.g. using markers (for decoding, detection or retrieval operations H04N1/32149 and subgroups take precedence)}
- G06T 2200/16: involving adaptation to the client's capabilities
- G06T 2207/30176: Document
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04N 19/48: using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data (motion estimation in a transform domain H04N19/547; processing of decoded motion vectors H04N19/513)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION 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
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

An image processing system for verifying that embedded digital content satisfies a predetermined criterion associated with display of the content, the image processing system a content embedding engine that embeds content in a resource provided by a content provider and that configures the resource for rendering, a rendering engine that renders the content embedded in the resource; an application interface engine that interfaces with the rendering engine and that generates a visualization of the resource and of the embedded content rendered in the resource; and an image processing engine that processes one or more pixels of the generated visualization of the resource and of the embedded content and the resource to verify that the specified visual element satisfies the predetermined criterion; and transmits verification data comprising an indication of whether the predetermined criterion is satisfied.

## Claims

### Claim at position 1

1-11. (canceled)

### Claim 12

An image processing system for verifying that embedded digital content satisfies a predetermined criterion associated with display of the content, the image processing system comprising:
a software library comprising one or more portions of executable code for embedding digital content in a resource;
one or more hardware storage devices for storing data indicative of the predetermined criterion; and
a verification module configured to receive verification data comprising an indication of whether rendering by a remote device, the embedded digital content in the resource satisfies the predetermined criterion;
wherein the one or more portions of the executable code are configured to cause the remote device to perform operations comprising:
retrieving, from storage of the remote device, data indicative of the predetermined criterion;
processing, by an image processing engine, one or more pixels of a generated visualization of the embedded digital content in the resource to verify that the predetermined criterion is satisfied; and
transmitting, to the verification module, the verification data comprising an indication of whether the predetermined criterion is satisfied.

### Claim 13 (depends on 12)

The image processing system of claim 12, wherein the generated visualization comprises a screenshot of the resource and of the embedded content rendered in the resource.

### Claim 14 (depends on 12)

The image processing system of claim 12, wherein the predetermined criterion is associated with a specified visual element; and
wherein verifying that the specified visual element satisfies the predetermined criterion comprises verifying that the embedded digital content comprises the specified visual element.

### Claim 15 (depends on 14)

The image processing system of claim 14, wherein the storage of the remote device stores data indicative of rendering parameters of the specified visual element, and wherein the image processing engine selects a portion of the resource for analyzing based on the rendering parameters of the specified visual element.

### Claim 16

A client-side image processing system for verifying that embedded digital content comprises a specified visual element, the image processing system comprising:
one or more hardware storage devices that store data indicative of a specified visual element;
a content embedding engine that embeds content in a resource provided by a content provider and that configures the resource for rendering;
a rendering engine that renders the content embedded in the resource;
an application interface engine that interfaces with the rendering engine and that generates a visualization of the resource and of the embedded content rendered in the resource; and
an image processing engine that:
retrieves, from the one or more hardware storage devices, the data indicative of the specified visual element;
processes one or more pixels of the generated visualization of the resource and of the embedded content and the resource to verify that the specified visual element is rendered in the resource with the embedded content; and
transmits verification data comprising an indication of whether the specified visual element is rendered with the embedded content, wherein transmitting the verification data consumes less bandwidth than an amount of bandwidth that would be consumed by transmitting the visualization of the resource and of the embedded content rendered in the resource.

### Claim 17 (depends on 16)

The image processing system of claim 16, wherein generated visualization comprises a screenshot of the resource and of the embedded content rendered in the resource.

### Claim 18 (depends on 16)

The image processing system of claim 16, wherein the one or more hardware storage devices store data indicative of rendering parameters of the specified visual element, and wherein the image processing engine selects a portion of the resource for analyzing based on the rendering parameters of the specified visual element.

### Claim 19 (depends on 16)

The image processing system of claim 16, wherein the resource comprises one of a page of a mobile application or a webpage.

### Claim 20 (depends on 16)

The image processing system of claim 16, wherein processing one or more pixels of the generated visualization comprises performing an image processing algorithm comprising convolution with a static kernel.

### Claim 21 (depends on 16)

The image processing system of claim 16, wherein the image processing engine retrieves, from an operating system of a device operating the image processing engine, data indicative of rendering parameters of the operating system, and wherein the image processing engine adjusts processing one or more pixels of the generated visualization based on the rendering parameters.

### Claim 22 (depends on 21)

The image processing system of claim 21, wherein the rendering parameters are indicative of a distortion of the generated visualization, and wherein adjusting the processing of the one or more pixels of the generated visualization based on the rendering parameters comprises compensating for the distortion of the generated visualization.

### Claim 23 (depends on 16)

The image processing system of claim 16, wherein the specified visual element comprises a logo.

### Claim 24 (depends on 16)

The image processing system of claim 16, wherein the specified visual element comprises text.

### Claim 25 (depends on 16)

The image processing system of claim 16, wherein the image processing engine processes one or more pixels of the generated visualization of the resource without determining a format of the resource.

### Claim 26

An image processing system for verifying that embedded digital content comprises a specified visual element, the image processing system comprising:
a software library comprising one or more portions of executable code for embedding digital content in a resource;
one or more hardware storage devices for storing data indicative of a specified visual element; and
a verification module configured to receive verification data comprising an indication of whether the specified visual element is rendered, by a remote device, with the embedded digital content in the resource;
wherein the one or more portions of the executable code are configured to cause the remote device to perform operations comprising:
retrieving, from storage of the remote device, data indicative of the specified visual element;
processing, by an image processing engine, one or more pixels of a generated visualization of the embedded digital content in the resource to verify that the specified visual element is rendered with the embedded digital content; and
transmitting, to the verification module, the verification data comprising an indication of whether the specified visual element is rendered with the embedded digital content, wherein transmitting the verification data consumes less bandwidth than an amount of bandwidth that would be consumed by transmitting data representing the resource and the embedded digital content.

### Claim 27 (depends on 26)

The image processing system of claim 26, wherein the image processing engine retrieves, from an operating system of a device operating the image processing engine, data indicative of rendering parameters of the operating system, and wherein the image processing engine adjusts processing one or more pixels of the generated visualization based on the rendering parameters.

### Claim 28 (depends on 27)

The image processing system of claim 27, wherein the rendering parameters are indicative of a distortion of the generated visualization, and wherein adjusting the processing of the one or more pixels of the generated visualization based on the rendering parameters comprises compensating for the distortion of the generated visualization.

### Claim 29 (depends on 26)

The image processing system of claim 26, wherein the specified visual element comprises a logo.

### Claim 30 (depends on 26)

The image processing system of claim 26, wherein the specified visual element comprises text.

### Claim 31 (depends on 26)

The image processing system of claim 26, wherein the image processing engine processes one or more pixels of the generated visualization of the resource without determining a format of the resource.

### Claim 32

A method for verifying that embedded digital content of a rendered resource comprises a specified visual element, the method comprising:
storing data indicative of a specified visual element;
embedding, by a content embedding engine, content in a resource provided by a content provider and that configures the resource for rendering;
rendering, by a rendering engine, the content embedded in the resource;
generating, by an application interface engine, a visualization of the resource and of the embedded content rendered in the resource;
retrieving, by an image processing engine, from one or more hardware storage devices, the data indicative of the specified visual element;
processing, by the image processing engine, one or more pixels of the generated visualization of the resource and of the embedded content and the resource to verify that the specified visual element is rendered in the resource with the embedded content; and
transmitting verification data comprising an indication of whether the specified visual element is rendered with the embedded content, wherein transmitting the verification data consumes less bandwidth than an amount of bandwidth that would be consumed by transmitting the visualization of the resource and of the embedded content rendered in the resource.

### Claim 33

A non-transitory computer readable medium storing instructions that are executable by one or more processors configured to perform operations for verifying that embedded digital content of a rendered resource comprises a specified visual element, the operations comprising:
storing data indicative of a specified visual element;
embedding, by a content embedding engine, content in a resource provided by a content provider and that configures the resource for rendering;
rendering, by a rendering engine, the content embedded in the resource;
generating, by an application interface engine, a visualization of the resource and of the embedded content rendered in the resource;
retrieving, by an image processing engine, from one or more hardware storage devices, the data indicative of the specified visual element;
processing, by the image processing engine, one or more pixels of the generated visualization of the resource and of the embedded content and the resource to verify that the specified visual element is rendered in the resource with the embedded content; and
transmitting verification data comprising an indication of whether the specified visual element is rendered with the embedded content, wherein transmitting the verification data consumes less bandwidth than an amount of bandwidth that would be consumed by transmitting the visualization of the resource and of the embedded content rendered in the resource.
