# US 10,872,392 B2 · Generating artistic designs encoded with robust, machine-readable data

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

- Number: US 10,872,392 B2
- Document ID: US10872392B2
- Status: Granted
- Kind: B2
- Application number: 16/129,487
- Filed: 2018-09-12
- Published: 2019-05-09
- Granted: 2020-12-22
- Earliest claimed: 2017-11-07
- Assignees: Digimarc Corporation
- Applicants: Digimarc Corporation
- Inventors: John F. Stach; Ravi K. Sharma; Christopher A. Ambiel; Ajith M. Kamath
- Web page: https://patentgrep.com/patent/US10872392B2

## CPC

- G06T 1/0028: {Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking}
- G06K 19/06103: {the marking being embedded in a human recognizable image, e.g. a company logo with an embedded two-dimensional code}
- G06T 1/005: {Robust watermarking, e.g. average attack or collusion attack resistant}
- G06T 1/0071: {using multiple or alternating watermarks}
- G06T 1/0092: {Payload characteristic determination in a watermarking scheme, e.g. number of bits to be embedded}
- G06T 3/20: Linear translation of whole images or parts thereof, e.g. panning
- G06T 5/30: Erosion or dilatation, e.g. thinning
- G06T 5/70: Denoising; Smoothing
- G06T 11/60: Creating or editing images; Combining images with text
- G06T 2201/0051: Embedding of the watermark in the spatial domain
- G06T 2201/0061: Embedding of the watermark in each block of the image, e.g. segmented watermarking
- G06T 2201/0202: whereby the quality of watermarked images is measured; Measuring quality or performance of watermarking methods; Balancing between quality and robustness
- G06T 2201/0601: whereby calibration information is embedded in the watermark, e.g. a grid, a scale, a list of transformations
- G06T 2207/20044: Skeletonization; Medial axis transform
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06K: GRAPHICAL DATA READING (image or video recognition or understanding G06V); PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS

## Abstract

Artwork carrying machine readable data is generated by editing artwork according to a data signal or transforming the data signal into artwork. The machine-readable data signal is generated from a digital payload and converted into an image tile. Artwork is edited according to the image tile by moving graphic elements, adapting intersections of lines, or altering line density, among other techniques. Artwork is generated from the data signal by skeletonizing it and applying morphological operators to a skeletal representation, such as a medial axis transform. Artistic effects are introduced by filtering the data signal with directional blurring or shape filters.

## Claims

### Claim 1

A method of generating artwork carrying a machine-readable data signal, the method comprising:
obtaining artwork;
generating a data signal from a digital payload, the generating comprising generating payload carrying and synchronization signal components;
prioritizing the payload carrying and synchronization components by applying a weighting to the components derived from measuring robustness at different ratios of the signal components, and selecting a ratio of signal components based on the measured robustness; and
editing the artwork according to the data signal to produce output artwork carrying the digital payload.

### Claim 2 (depends on 1)

The method of claim 1 further comprising:
measuring robustness of the data signal at spatial blocks within the output artwork to determine a robustness metric per spatial block;
identifying areas with weak data signal from the robustness metric per spatial block; and
updating the editing of the artwork at the areas with weak data signal by inserting additional graphic elements according to the data signal.

### Claim 3 (depends on 1)

The method of claim 1 wherein the editing comprises moving position of graphic objects according to a signal gradient of the data signal.

### Claim 4 (depends on 1)

The method of claim 1 wherein the editing comprises editing line density of line elements by removing interior of the line element according to the data signal.

### Claim 5 (depends on 1)

The method of claim 1 wherein the editing comprises inserting a gap at intersections of line elements according to the data signal.

### Claim 6 (depends on 1)

The method of claim 1 wherein the editing comprises inserting graphical elements into the artwork according to the data signal.

### Claim 7 (depends on 1)

The method of claim 1 comprising converting the artwork to skeletal representation and editing the skeletal representation according to the data signal.

### Claim 8 (depends on 7)

The method of claim 7 wherein the converting comprises computing a medial axis transform of the artwork, and the editing comprises editing the medial axis transform according to the data signal.

### Claim 9 (depends on 1)

A method of claim 1 wherein generating the data signal comprises:
error correction coding the payload, modulating a carrier with the payload to produce modulated payload elements; and
mapping the modulated payload elements to locations within a rectangular data tile;
wherein the editing comprises editing the artwork at locations according to the modulated payload elements at the locations.

### Claim 10 (depends on 9)

The method of claim 9 comprising repeating the data tile in contiguous blocks of the artwork.

### Claim 11 (depends on 1)

A non-transitory computer readable medium on which is stored instructions, which when executed by a processor, perform a method of claim 1.

### Claim 12

A method of generating artwork carrying a machine-readable data signal, the method comprising:
generating a data signal from a digital payload;
mapping the data signal to spatial locations to form an image of the data signal;
transforming data signal elements in the image according to a filter of shape or directionality that corresponds to desired aesthetic effect;
skeletonizing the data signal into a skeletal representation;
editing the skeletal representation with morphological operations; and
converting the skeletal representation to an image of artwork for application to an object, the artwork carrying the digital payload.

### Claim 13 (depends on 12)

The method of claim 12 further comprising:
measuring robustness of the data signal at spatial blocks within the output artwork to determine a robustness metric per spatial block;
identifying areas with weak data signal from the robustness metric per spatial block; and
updating the areas with weak data signal by adjusting parameters of the morphological operators.

### Claim 14 (depends on 12)

The method of claim 12 wherein the editing comprises dilating or eroding stroke width of the skeletal representation.

### Claim 15 (depends on 12)

The method of claim 12 wherein the editing comprises smoothing corners.

### Claim 16 (depends on 12)

The method of any of claim 12 comprising thresholding the image of the data signal prior to skeletonizing to convert the image to a quantized form of two or more pixel values per data signal element location within the image.

### Claim 17 (depends on 12)

The method of claim 12 wherein the skeletonizing comprises computing a medial axis transform of the artwork, and the editing comprises editing the medial axis transform.

### Claim 18 (depends on 12)

A method of claim 12 generating the data signal comprises:
error correction coding the payload, modulating a carrier with the payload to produce modulated payload elements; and
mapping the modulated payload elements to locations within a rectangular data tile;
wherein the editing comprises editing the artwork at locations according to the modulated payload elements at the locations.

### Claim 19 (depends on 18)

The method of claim 18 comprising repeating the data tile in contiguous blocks to form the artwork, in which the payload is repeated in instances of the data tile.

### Claim 20 (depends on 12)

The method of claim 12 wherein generating the data signal comprises:
generating payload carrying and synchronization signal components; and
prioritizing the payload carrying and synchronization components.

### Claim 21 (depends on 20)

The method of claim 20 comprising optimizing the prioritizing of the components by measuring robustness at different ratios of the signal components; and selecting a ratio of signal components based on the measured robustness.

### Claim 22 (depends on 12)

A non-transitory computer readable medium on which is stored instructions, which when executed by a processor, perform a method of claim 12.
