# US 2014/0193080 A1 · Method of image denoising and method of generating motion vector data structure thereof

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

- Number: US 2014/0193080 A1
- Document ID: US20140193080A1
- Status: Published application
- Kind: A1
- Application number: 13/785,653
- Filed: 2013-03-05
- Published: 2014-07-10
- Earliest claimed: 2013-01-08
- Assignees: Altek Semiconductor Corp.
- Applicants: Altek Semiconductor Corporation
- Inventors: CHIA-YU WU; SHIH-YUAN PENG
- Web page: https://patentgrep.com/patent/US20140193080A1

## CPC

- G06T 5/70: Denoising; Smoothing
- G06T 7/207: for motion estimation over a hierarchy of resolutions (multi-resolution motion estimation or hierarchical motion estimation for coding, decoding, compressing or decompressing digital video signals H04N19/53)
- G06T 2207/20201: Motion blur correction
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

The present invention discloses a method of image denoising and method of generating motion vector data structure thereof. The method comprises: providing an image sequential capturing module to capture and to receive the plurality of images; generating a global motion vector based on the plurality of images in accordance with a first algorithm; reducing each image as reduced images; dividing each of the first reduced images into a plurality of first areas and generating a first local motion vector based on each of the first areas in accordance with a second algorithm, and via the similar way for generating a second local motion vector; finally, obtaining motion vector data in the plurality of images according to the global motion vector, each of the first local motion vectors and each of the second local motion vectors.

## Claims

### Claim 1

A method of generating a motion vector data structure, comprising:
providing an image capturing module to sequentially capture a plurality of images;
providing an image processing module to receive the plurality of images, and generating a first local motion vector based on the plurality of images in accordance with a first algorithm;
applying the image processing module to reduce size of each of the images as a first reduced image and a second reduced image respectively;
applying the image processing module to respectively divide each of the first reduced images into a plurality of first areas and to generate a second local motion vector respectively based on each of the first areas in accordance with a second algorithm;
applying the image processing module to respectively divide each of the second reduced images into a plurality of second areas, and to generate a global motion vector respectively based on each of the second areas in accordance with the second algorithm; and
applying the image processing module to obtain motion vector data in the plurality of images according to the global motion vector, each of the first local motion vectors and each of the second local motion vectors.

### Claim 2 (depends on 1)

The method of claim 1, further comprising the following steps of:
making a first number of times of two-dimensional direction motions toward a plurality of first pixels of a first image in the plurality of images respectively to generate a first location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the first pixels disposed on each of the first locations from a pixel value of each second pixel which is corresponding to the first location in a second image within the plurality of images respectively to generate a first absolute difference by the image processing module; and
subtracting a coordinate of the first pixel from a coordinate of the second pixel to generate the first local motion vector in accordance with both the first pixel and the second pixel corresponding to a minimum value among the first absolute differences by the image processing module.

### Claim 3 (depends on 2)

The method of claim 2, further comprising the following steps of:
making the first number of times of two-dimensional direction motions toward a plurality of third pixels of each of the first areas of the first reduced image of the first image respectively to generate a second location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the third pixels disposed on each of the second locations of each of the first areas from a pixel value of each fourth pixel which is corresponding to each of the second locations of each of the first areas of the first reduced image of the second image respectively to generate a second absolute difference by the image processing module; and
subtracting a coordinate of the third pixel from a coordinate of the fourth pixel to generate the second local motion vector in accordance with both the third pixel and the fourth pixel corresponding to a minimum value among the second absolute differences by the image processing module.

### Claim 4 (depends on 2)

The method of claim 2, further comprising the following steps of:
making the first number of times of two-dimensional direction motions toward a plurality of fifth pixels of each of the second areas of the second reduced image of the first image respectively to generate a third location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the fifth pixels disposed on each of the third locations of each of the second areas from a pixel value of each sixth pixel which is corresponding to each of the third locations of each of the second areas of the second reduced image of the second image respectively to generate a third absolute difference by the image processing module; and
subtracting a coordinate of the fifth pixel from a coordinate of the sixth pixel to generate a global motion vector in accordance with both the fifth pixel and the sixth pixel corresponding to a minimum value among the third absolute differences by the image processing module.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
employing a plurality of confidence levels and each of the confidence levels respectively having a preset range which is different from each other; and
classifying the plurality of the first local motion vectors or the plurality of the second local motion vectors into each of the confidence levels respectively by the image processing module.

### Claim 6

A method of image denoising, comprising the following steps:
providing an image capturing module to sequentially capture a plurality of images;
providing an image processing module to generate a first local motion vector based on the plurality of images in accordance with a first algorithm;
applying the image processing module to reduce size of each of the images as a first reduced image and a second reduced image respectively;
applying the image processing module to respectively divide each of the first reduced images into a plurality of first areas and generating a second local motion vector respectively based on each of the first areas in accordance with a second algorithm;
applying the image processing module to respectively divide each of the second reduced image into a plurality of second areas, and generating a global motion vector respectively based on each of the second areas in accordance with the second algorithm; and
applying the image processing module to proceed a denoising process towards each the plurality of images in accordance with the global motion vector, each of the first local motion vectors and each of the second local motion vectors.

### Claim 7 (depends on 6)

The method of claim 6, further comprising the following steps of:
making a first number of times of two-dimensional direction motions toward a plurality of first pixels of a first image in the plurality of images respectively to generate a first location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the first pixels disposed on each of the first locations from a pixel value of each second pixel which is corresponding to the first location in a second image within the plurality of images respectively to generate a first absolute difference by the image processing module; and
subtracting a coordinate of the first pixel from a coordinate of the second pixel to generate the first local motion vector in accordance with both the first pixel and the second pixel corresponding to a minimum value among the first absolute differences by the image processing module.

### Claim 8 (depends on 7)

The method of claim 7, further comprising the following steps of:
making the first number of times of two-dimensional direction motions toward a plurality of third pixels of each of the first areas of the first reduced image of the first image respectively to generate a second location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the third pixels disposed on each of the second locations of each of the first areas from a pixel value of each fourth pixel which is corresponding to each of the second locations of each of the first areas of the first reduced image of the second image respectively to generate a second absolute difference by the image processing module; and
subtracting a coordinate of the third pixel from a coordinate of the fourth pixel to generate the second local motion vector in accordance with both the third pixel and the fourth pixel corresponding to a minimum value among the second absolute differences by the image processing module.

### Claim 9 (depends on 7)

The method of claim 7, further comprising the following steps of:
making the first number of times of two-dimensional direction motions toward a plurality of fifth pixels of each of the second areas of the second reduced image of the first image respectively to generate a third location corresponding to the first number of times by the image processing module;
subtracting a pixel value of each of the fifth pixels disposed on each of the third locations of each of the second areas from a pixel value of each sixth pixel which is corresponding to each of the third locations of each of the second areas of the second reduced image of the second image respectively to generate a third absolute difference by the image processing module; and
subtracting a coordinate of the fifth pixel from a coordinate of the sixth pixel to generate a global motion vector in accordance with both the fifth pixel and the sixth pixel corresponding to a minimum value among the third absolute differences by the image processing module.

### Claim 10 (depends on 6)

The method of image denoising of claim 6, further comprising:
employing a plurality of confidence levels and each of the confidence levels respectively having a preset range which is different from each other; and
classifying the plurality of the first local motion vectors or the plurality of the second local motion vectors into each of the confidence levels respectively by the image processing module.
