# US 9,438,925 B2 · Video encoder with block merging and methods for use therewith

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

- Number: US 9,438,925 B2
- Document ID: US9438925B2
- Status: Granted
- Kind: B2
- Application number: 14/145,508
- Filed: 2013-12-31
- Published: 2015-07-02
- Granted: 2016-09-06
- Earliest claimed: 2013-12-31
- Assignees: ViXS Systems, Inc.
- Applicants: ViXS Systems, Inc.
- Inventors: Ying Li; Xu Gang Zhao
- Web page: https://patentgrep.com/patent/US9438925B2

## CPC

- H04N 19/513: Processing of motion vectors
- H04N 19/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/136: Incoming video signal characteristics or properties
- H04N 19/137: Motion inside a coding unit, e.g. average field, frame or block difference
- H04N 19/17: the unit being an image region, e.g. an object
- H04N 19/53: Multi-resolution motion estimation; Hierarchical motion estimation
- H04N 19/91: Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
- H04N 19/543: using regions
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A video encoder includes a motion search module that determines a motion search motion vector for a region of a selected picture of the plurality of pictures. The motion search module determines the region by merging selected ones of a plurality of blocks of the selected picture based on an evaluation of a cost matrix associated with the plurality of blocks of the selected picture.

## Claims

### Claim 1

A video encoder for use in a video processing device that processes a video signal including a sequence of pictures, the video encoder comprising:
a motion search module, that determines a motion search motion vector for a region of a selected picture of the sequence of pictures, wherein the motion search module determines the region by merging selected ones of a plurality of blocks of the selected picture based on an evaluation of at least one cost matrix associated with the plurality of blocks of the selected picture wherein the evaluation includes determining when a first cost matrix of a first block of the plurality of blocks lacks a dominant minimum by identifying a minimum entry of the first cost matrix and comparing the minimum entry to a threshold.

### Claim 2 (depends on 1)

The video encoder of claim 1 wherein the selected ones of the plurality of blocks include a plurality of neighboring blocks.

### Claim 3 (depends on 1)

The video encoder of claim 1 wherein the evaluation includes determining when the first cost matrix for the first block includes a first small cost portion and a second cost matrix of a second block includes a second small cost portion that overlaps the first small cost portion.

### Claim 4 (depends on 3)

The video encoder of claim 3 wherein the selected ones of the plurality of blocks are determined further by comparing a first texture of the first block to a second texture of the second block and determining when the first texture and the second texture vary by less than a texture threshold.

### Claim 5 (depends on 4)

The video encoder of claim 4 wherein the motion search module merges the first block with the second block when the first cost matrix lacks the dominant minimum, the second small cost portion overlaps the first small cost portion and the first texture and the second texture vary by less than the texture threshold.

### Claim 6 (depends on 1)

The video encoder of claim 1 wherein the motion search module determines the motion search motion vector for the region by merging the cost matrix associated with the selected ones of the plurality of blocks into a merged cost matrix for the region.

### Claim 7 (depends on 6)

The video encoder of claim 6 wherein the motion search module determines the motion search motion vector for the region by determining a minimum of the merged cost matrix.

### Claim 8 (depends on 6)

The video encoder of claim 6 wherein the merged cost matrix is determined based on a weighted sum of the cost matrix associated with the selected ones of the plurality of blocks.

### Claim 9 (depends on 1)

The video encoder of claim 1 wherein the motion search module determines the region via an iterative evaluation of a plurality of neighboring blocks.

### Claim 10

A method for use in a video encoder that encodes a video signal including a sequence of pictures, the method comprising:
determining a motion search motion vector for a region of a selected picture of the sequence of pictures by merging selected ones of a plurality of blocks of the selected picture based on an evaluation of at least one cost matrix associated with the plurality of blocks of the selected picture wherein the evaluation includes determining when a first cost matrix of a first block of the plurality of blocks lacks a dominant minimum by identifying a minimum entry of the first cost matrix and comparing the minimum entry to a threshold.

### Claim 11 (depends on 10)

The method of claim 10 wherein the evaluation further includes determining when the first cost matrix for the first block includes a first small cost portion and a second cost matrix of a second block includes a second small cost portion that overlaps the first small cost portion.

### Claim 12 (depends on 11)

The method of claim 11 wherein the selected ones of the plurality of blocks are determined further by comparing a first texture of the first block to a second texture of the second block and determining when the first texture and the second texture vary by less than a texture threshold.

### Claim 13 (depends on 12)

The method of claim 12 wherein the first block is merged with the second block when the first cost matrix lacks the dominant minimum, the second small cost portion overlaps the first small cost portion and the first texture and the second texture vary by less than the texture threshold.

### Claim 14 (depends on 12)

The method of claim 12 wherein determining the motion search motion vector for the region includes merging the cost matrix associated with the selected ones of the plurality of blocks into a merged cost matrix for the region.
