IP Library Granted Patent US 7,746,934
Granted Patent B2
US 7,746,934 · App. 11/407,450 · Granted Jun 29, 2010

Image stabilization method

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,746,934
App. No.
11/407,450
Granted
Jun 29, 2010
Kind
B2
Abstract

In one embodiment, a method for reducing motion artifacts in an output image is provided. The method comprises capturing multiple frames of a scene; determining local motion vectors between each pixel in a current frame and a corresponding pixel in the a previous frame; and performing a temporal filtering operation based on the local motion vectors wherein pixels from a plurality frames are integrated to form the output image.

Claims (28)

1. A method for reducing motion artifacts in an output image, comprising:

capturing multiple frames of a scene;

determining local motion vectors between each pixel in a current frame and a corresponding pixel in a previous frame; and

performing a selective temporal filtering operation based on the local motion vectors to form the output image; wherein said temporal filtering operation (a) rejects a local motion vector if the local motion vector is above a threshold in which case no temporal filtering is performed; (b) averages a current pixel with the corresponding pixel from the previous frame if the local motion vector for the current pixel is considered zero; and (c) averages the current pixel with the motion-compensated pixel from the previous frame in all other cases.

2. The method of claim 1 , wherein an effective exposure time for the output image is longer than for each of the multiple frames.

3. The method of claim 1 , wherein determining the local motion vectors comprises for each pixel location (m,n) in the current frame, defining a block of pixels centered at (m,n) in the current frame and finding a block in the previous frame that is the closest match to the block of pixels centered at (m,n) in the current frame.

4. The method of claim 3 , further comprising applying a smoothing filter to the current and previous frames prior to calculating the local motion vectors.

5. The method of claim 3 , wherein the smoothing filter comprises a spatial low pass filter.

6. The method of claim 3 , wherein performing the temporal filtering operation comprises selectively adjusting for pixel motion between a current and a previous frame.

7. The method of claim 6 , wherein selectively adjusting for pixel motion comprises rejecting a motion vector if a degree of similarity between the closest matching block in the previous frame to the block of pixels in the current frame centered on (m,n) exceeds a predefined block rejection threshold.

8. The method of claim 6 , wherein selectively adjusting for pixel motion comprises applying a motion vector of zero if a degree of similarity between the closest matching block in the previous frame to the block of pixels in the current frame centered on (m,n) is below a predefined block noise threshold.

9. The method of claim 1 , wherein in determining the closest match, luminance values for the pixels in each block are compared.

10. The method of claim 1 , wherein the temporal filtering operation comprises applying a finite impulse response filter.

11. The method of claim 1 , wherein the temporal filtering operation comprises applying an infinite impulse response filter.

12. An image processor, comprising:

an image buffer to store image data for a captured image; and

image stabilization logic to reduce motion artifacts in an output image, wherein the image stabilization logic captures multiple frames of a scene; determines local motion vectors between each pixel in a current frame and a corresponding pixel in a previous frame; and performs a selective temporal filtering operation based on the local motion vectors to form the output image; wherein said temporal filtering operation (a) rejects a local motion vector if the is above a threshold in which case no temporal filtering is performed: (b) averages a current pixel with the corresponding pixel from the previous frame if the local motion vector for the current pixel is considered zero; and (c) averages the current pixel with its motion-compensated pixel from the previous frame in all other cases.

13. The image processor of claim 12 , wherein determining the local motion vectors comprises for each pixel location (m,n) in the current frame, defining a block of pixels centered at (m,n) in the current frame and finding a block in the previous frame that is the closest match to the block of pixels centered at (m,n) in the current frame.

14. The image processor of claim 12 , wherein the temporal filtering comprises applying either a finite impulse response filter or an infinite impulse response filter.

15. A camera system, comprising:

camera optics;

an image sensor positioned so that light passing through the camera optics impinges on the image sensor; and

an image processor coupled to the image sensor to receive image data for a captured image therefrom, wherein the image processor comprises image stabilization logic to perform a method for reducing motion artifacts in an output image, comprising:

capturing multiple frames of a scene;

determining local motion vectors between each pixel in a current frame and a corresponding pixel in the a previous frame; and

performing a temporal filtering operation based on the local motion vectors to form the output image; wherein said temporal filtering operation (a) rejects a local motion vector if the local motion vector is above a threshold in which case no temporal filtering is performed: (b) averages a current pixel with the corresponding pixel from the previous frame if the local motion vector for the current pixel is considered zero; and (c) averages the current pixel with the motion-compensated pixel from the previous frame in all other cases.

16. The camera system of claim 15 , wherein determining the local motion vectors comprises for each pixel location (m,n) in the current frame, defining a block of pixels centered at (m,n) in the current frame and finding a block in the previous frame that is the closest match to the block of pixels centered at (m,n) in the current frame.

17. The camera system of claim 15 , wherein the temporal filtering operation comprises either a finite impulse response filter or an infinite impulse response filter.

Assignments (5)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2013
From: METAGENCE TECHNOLOGIES LIMITED
To: IMAGINATION TECHNOLOGIES LIMITED
Reel/Frame 031683/0028 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2013
From: NETHRA IMAGING, INC
To: METAGENCE TECHNOLOGIES LIMITED
Reel/Frame 031672/0731 →
SECURITY AGREEMENT Recorded Jun 30, 2010
From: NETHRA IMAGING, INC.
To: ARM LIMITED
Reel/Frame 024611/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2006
From: CHEN, HONG; HONG, PING WAH
To: NETHRA IMAGING INC.
Reel/Frame 017899/0259 →