# US 10,321,132 B2 · System and method for detecting motion in compressed video

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

- Number: US 10,321,132 B2
- Document ID: US10321132B2
- Status: Granted
- Kind: B2
- Application number: 15/228,635
- Filed: 2016-08-04
- Published: 2016-11-24
- Granted: 2019-06-11
- Earliest claimed: 2013-02-20
- Assignees: Honeywell International Inc.
- Applicants: Honeywell International Inc.
- Inventors: Yadhunandan Us; Gurumurthy Swaminathan; Kwong Wing Au
- Web page: https://patentgrep.com/patent/US10321132B2

## CPC

- H04N 19/503: involving temporal prediction (adaptive coding with adaptive selection between spatial and temporal predictive coding H04N19/107; adaptive coding with adaptive selection among a plurality of temporal predictive coding modes H04N19/109)
- H04N 19/117: Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635)
- H04N 19/137: Motion inside a coding unit, e.g. average field, frame or block difference
- H04N 19/139: Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
- H04N 19/176: the region being a block, e.g. a macroblock
- 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)
- H04N 19/51: Motion estimation or motion compensation
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Systems and methods for detecting motion in compressed video are provided. Some methods can include parsing a stream of compressed video, obtaining macroblock size information from the parsed stream, computing factors derived from the macroblock size information, computing adaptive threshold values derived from relative frame characteristics of the compressed video, comparing the factors derived from the macroblock size information with the adaptive threshold values, and detecting motion based upon the comparing when at least one of the factors exceeds at least one of the adaptive threshold values. In some embodiments, detecting the motion can include performing spatio-temporal filtering on macroblocks in which the motion is detected or performing spatio-temporal filtering on at least one non-motion macroblock.

## Claims

### Claim 1

A method comprising:
parsing a stream of compressed video, wherein the steam of compressed video includes a plurality of a first type of frames and a plurality of a second type of frames, and wherein each of the plurality of the first type of frames and the plurality of the second type of frames includes respective macroblocks;
obtaining respective macroblock size information for the respective macroblocks of each of the plurality of the first type of frames and the plurality of the second type of frames from the parsing of the stream of compressed video;
computing respective factors indicative of respective frame characteristics for each of the plurality of the first type of frames and the plurality of the second type of frames from the respective macroblock size information;
comparing the respective factors for a first set of the plurality of the second type of frames bounded by a first one of the plurality of the first type of frames and a second one of the plurality of the first type of frames with a bit threshold value;
designating as motion macroblocks the respective macroblocks of the first set of the plurality of the second type of frames when the respective factors are greater than the bit threshold value;
performing spatio-temporal filtering on non-motion macroblocks of the first set of the plurality of the second type of frames to determine whether any of the non-motion macroblocks should be reclassified as the motion macroblocks;
reclassifying at least one of the non-motion macroblocks as the motion macroblocks when the at least one of the non-motion macroblocks is adjacent to a first predetermined number of the motion macroblocks within a respective frame of the at least one of the non-motion macroblocks and a past two frames of the first set of the plurality of the second type of frames relative to the respective frame of the at least one of the non-motion macroblocks are adjacent to a second predetermined number of the motion macroblocks, and
detecting motion in the stream of compressed video when a number of the motion macroblocks, including any of the non-motion macroblocks reclassified as the motion macroblocks, exceeds a motion threshold value,
wherein the non-motion macroblocks include the respective macroblocks of the first set of the plurality of the second type of frames non-designated as the motion macroblocks.

### Claim 2

An apparatus comprising:
a parsing processor that parses a stream of compressed video, wherein the stream of compressed video includes a plurality of a first type of frames and a plurality of a second type of frames, and wherein each of the plurality of the first type of frames and the plurality of the second type of frames includes respective macroblocks;
a macroblock size processor that obtains respective macroblock size information for the respective macroblocks of each of the plurality of the first type of frames and the plurality of the second type of frames from parsing the stream of compressed video;
a computing processor that computes respective factors indicative of respective frame characteristics for each of the plurality of the first type of frames and the plurality of the second type of frames from the respective macroblock size information;
a comparison processor that compares the respective factors for a first set of the plurality of the second type of frames bounded by a first one of the plurality of the first type of frames and a second one of the plurality of the first type of frames with a bit threshold value;
a detection processor that designates as motion macroblocks the respective macroblocks of the first set of the plurality of the second type of frames when the respective factors are greater than the bit threshold value;
a spatio-temporal filtering processor that performs spatio-temporal filtering on non-motion macroblocks of the first set of the plurality of the second type of frames to determine whether any of the non-motion macroblocks should be reclassified as the motion macroblocks and reclassifies at least one of the non-motion macroblocks as the motion macroblocks when the at least one of the non-motion macroblocks is adjacent to a first predetermined number of the motion macroblocks within a respective frame of the at least one of the non-motion macroblocks and a past two frames of the first set of the plurality of the second type of frames relative to the respective frame of the at least one of the non-motion macroblocks are adjacent to a second predetermined number of the motion macroblocks; and
a motion detection processor that detects motion in the stream of compressed video when a number of the motion macroblocks, including any of the non-motion macroblocks reclassified as the motion macroblocks, exceeds a motion threshold value,
wherein the non-motion macroblocks include the respective macroblocks of the first set of the plurality of the second type of frames non-designated as the motion macroblocks.

### Claim 3

A method comprising:
parsing a stream of compressed video, wherein the stream of compressed video includes a plurality of a first type of frames and a plurality of a second type of frames, and wherein each of the plurality of the first type of frames and the plurality of the second type of frames includes respective macroblocks;
obtaining respective macroblock size information for the respective macroblocks of each of the plurality of the first type of frames and the plurality of the second type of frames from the parsing of the stream of compressed video;
computing respective factors indicative of respective frame characteristics for each of the plurality of the first type of frames and the plurality of the second type of frames from the respective macroblock size information;
computing a respective ratio for each of the respective macroblocks for a first set of the plurality of the second type of frames bounded by a first one of the plurality of the first type of frames and a second one of the plurality of the first type of frames, wherein the respective ratio is between the respective factors for a respective one of the respective macroblocks of the first set of the plurality of the second type of frames and the respective factors for the respective one of the respective macroblocks in both the first one of the plurality of the first type of frames and the second one of the plurality of the second type of frames;
comparing the respective ratio for each of the respective macroblocks of the first set of the plurality of the second type of frames to a ratio threshold value;
comparing the respective factors for each of the first set of the plurality of the second type of frames with a bit threshold value when the respective ratio of the respective one of the respective macroblocks is greater than the ratio threshold value;
designating as motion macroblocks the respective macroblocks of the first set of the plurality of the second type of frames when the respective factors are greater than the bit threshold value;
performing spatio-temporal filtering on non-motion macroblocks of the first set of the plurality of the second type of frames to determine whether any of the non-motion macroblocks should be reclassified as the motion macroblocks;
reclassifying at least one of the non-motion macroblocks as the motion macroblocks when the at least one of the non-motion macroblocks is adjacent to a first predetermined number of the motion macroblocks within a respective frame of the at least one of the non-motion macroblocks and a past two frames of the first set of the plurality of the second type of frames relative to the respective frame of the at least one of the non-motion macroblocks are adjacent to a second predetermined number of the motion macroblocks; and
detecting motion in the stream of compressed video when a number of the motion macroblocks, including any of the non-motion macroblocks reclassified as the motion macroblocks, exceeds a motion threshold value,
wherein the non-motion macroblocks include the respective macroblocks of the first set of the plurality of the second type of frames non-designated as the motion macroblocks.
