# US 2021/0279916 A1 · Generation of a sequence of textures for video delivery

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

- Number: US 2021/0279916 A1
- Document ID: US20210279916A1
- Status: Published application
- Kind: A1
- Application number: 17/331,186
- Filed: 2021-05-26
- Published: 2021-09-09
- Earliest claimed: 2019-03-21
- Assignees: Adobe Inc.
- Applicants: Adobe Inc.
- Inventors: Gwendal Simon; Viswanathan Swaminathan; Nathan Carr; Stefano Petrangeli
- Web page: https://patentgrep.com/patent/US20210279916A1

## CPC

- G06T 11/10: Texturing; Colouring; Generation of textures or colours (retouching, inpainting or scratch removal G06T5/77)
- G06T 3/4038: Image mosaicing, e.g. composing plane images from plane sub-images
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/182: the unit being a pixel
- H04N 19/88: involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Techniques and systems are provided for generating a video from texture images, and for reconstructing the texture images from the video. For example, a texture image can be divided into a number of tiles, and the number of tiles can be sorted into a sequence of ordered tiles. The sequence of ordered tiles can be provided to a video coder for generating a coded video. The number of tiles can be encoded based on the sequence of ordered tiles. The encoded video including the encoded sequence of ordered tiles can be decoded. At least a portion of the decoded video can include the number of tiles sorted into a sequence of ordered tiles. A data file associated with at least the portion of the decoded video can be used to reconstruct the texture image using the tiles.

## Claims

### Claim 1

A method of reconstructing one or more texture images from a video, comprising:
obtaining at least a portion of decoded video including a first plurality of tiles sorted into a sequence of ordered tiles, the first plurality of tiles being associated with a first texture image configured for application to a first three-dimensional mesh, wherein each tile of the first plurality of tiles is temporally independent from other tiles of the first plurality of tiles;
obtaining a data file associated with at least the portion of the decoded video, the data file including contextual data mapping the first plurality of tiles to the first texture image; and
reconstructing the first texture image based on the contextual data mapping the first plurality of tiles to the first texture image.

### Claim 2 (depends on 1)

The method of claim 1, wherein contextual data for a tile of the first plurality of tiles includes at least a tile identifier, an identification of a texture image associated with the tile, and a location of the tile within the texture image.

### Claim 3 (depends on 2)

The method of claim 2, wherein the contextual data for the tile further includes an indication of a transform function, the transform function being configured to modify pixels of one or more tiles of the first plurality of tiles.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
applying an inverse transform function to the pixels of the one or more tiles of the first plurality of tiles, the inverse transform function being an inverse of the transform function.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first plurality of tiles are sorted into the sequence of ordered tiles in an order that minimizes a number of video segments needed to be downloaded to obtain the first texture image.

### Claim 6 (depends on 5)

The method of claim 5, wherein the sequence of ordered tiles includes a first sub-sequence and a second sub-sequence, the first sub-sequence including a first set of tiles from the first plurality of tiles and the second sub-sequence including a second set of tiles from the first plurality of tiles.

### Claim 7 (depends on 1)

The method of claim 1, wherein at least the portion of the decoded video further includes a second plurality of tiles, the second plurality of tiles being associated with a second texture image configured for application to at least one of the first three-dimensional mesh or a second three-dimensional mesh.

### Claim 8 (depends on 7)

The method of claim 7, wherein a first resolution of the first texture image and a second resolution of the second texture image are different resolutions, and wherein the first plurality of tiles and the second plurality of tiles have a uniform tile size.

### Claim 9 (depends on 1)

The method of claim 1, wherein a plurality of coded videos are generated for the sequence of ordered tiles, a first coded video of the plurality of coded videos having at least one of a different bit-rate, a different frame rate, or a different segment size than a second coded video of the plurality of coded videos, and further comprising:
receiving, over a network, at least one of a portion of the first coded video or a portion of the second coded video based on at least one or more network conditions associated with the network.

### Claim 10 (depends on 9)

The method of claim 9, wherein at least one of the portion of the first coded video or the portion of the second coded video is received further based on at least one of physical resources of a client device or an application of the client device.

### Claim 11

A system comprising:
at least one processor and a memory storing instructions which, when executed by the at least one processor, cause the system to:
obtain at least a portion of decoded video including a first plurality of tiles sorted into a sequence of ordered tiles, the first plurality of tiles being associated with a first texture image configured for application to a first three-dimensional mesh, wherein each tile of the first plurality of tiles is temporally independent from other tiles of the first plurality of tiles;
obtain a data file associated with at least the portion of the decoded video, the data file including contextual data mapping the first plurality of tiles to the first texture image; and
reconstruct the first texture image based on the contextual data mapping the first plurality of tiles to the first texture image.

### Claim 12 (depends on 11)

The system of claim 11, wherein at least the portion of the decoded video further includes a second plurality of tiles, the second plurality of tiles being associated with a second texture image configured for application to at least one of the first three-dimensional mesh or a second three-dimensional mesh.

### Claim 13 (depends on 12)

The system of claim 12, wherein a first resolution of the first texture image and a second resolution of the second texture image are different resolutions, and wherein the first plurality of tiles and the second plurality of tiles have a uniform tile size.

### Claim 14 (depends on 11)

The system of claim 11, wherein a plurality of coded videos are generated for the sequence of ordered tiles, a first coded video of the plurality of coded videos having at least one of a different bit-rate, a different frame rate, or a different segment size than a second coded video of the plurality of coded videos, and wherein the instructions, when executed, further cause the system to:
receive, over a network, at least one of a portion of the first coded video or a portion of the second coded video based on at least one or more network conditions associated with the network.

### Claim 15 (depends on 14)

The system of claim 14, wherein at least one of the portion of the first coded video or the portion of the second coded video is received further based on at least one of physical resources of a client device or an application of the client device.

### Claim 16

A non-transitory computer readable storage medium including instructions stored thereon which, when executed by a processor, cause the processor to:
obtain at least a portion of decoded video including a first plurality of tiles sorted into a sequence of ordered tiles, the first plurality of tiles being associated with a first texture image configured for application to a first three-dimensional mesh, wherein each tile of the first plurality of tiles is temporally independent from other tiles of the first plurality of tiles;
obtain a data file associated with at least the portion of the decoded video, the data file including contextual data mapping the first plurality of tiles to the first texture image; and
reconstruct the first texture image based on the contextual data mapping the first plurality of tiles to the first texture image.

### Claim 17 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein at least the portion of the decoded video further includes a second plurality of tiles, the second plurality of tiles being associated with a second texture image configured for application to at least one of the first three-dimensional mesh or a second three-dimensional mesh.

### Claim 18 (depends on 17)

The non-transitory computer readable storage medium of claim 17, wherein a first resolution of the first texture image and a second resolution of the second texture image are different resolutions, and wherein the first plurality of tiles and the second plurality of tiles have a uniform tile size.

### Claim 19 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein a plurality of coded videos are generated for the sequence of ordered tiles, a first coded video of the plurality of coded videos having at least one of a different bit-rate, a different frame rate, or a different segment size than a second coded video of the plurality of coded videos, and wherein the instructions, when executed, further cause the processor to:
receive, over a network, at least one of a portion of the first coded video or a portion of the second coded video based on at least one or more network conditions associated with the network.

### Claim 20 (depends on 19)

The non-transitory computer readable storage medium of claim 19, wherein at least one of the portion of the first coded video or the portion of the second coded video is received further based on at least one of physical resources of a client device or an application of the client device.
