IP Library Granted Patent US 8,923,400
Granted Patent B1
US 8,923,400 · App. 11/939,715 · Granted Dec 30, 2014

Method and/or apparatus for multiple pass digital image stabilization

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 8,923,400
App. No.
11/939,715
Granted
Dec 30, 2014
Kind
B1
Abstract

An apparatus including a first circuit and a second circuit. The first circuit may be configured to generate (i) a first series of sequential frames, (ii) a plurality of local motion vectors for each of the frames, (iii) one or more global motion vectors for each of the frames, (iv) a second series of stabilized sequential frames, (v) a plurality of rough motion vectors and (vi) a digital bitstream in response to (i) a video input signal. The second circuit may be configured to generate a single motion vector in response to a plurality of motion vectors. The second circuit may be further configured to eliminate outlier vectors from the plurality of motion vectors.

Claims (43)

1. An apparatus comprising:

a first circuit configured to generate (i) a first series of sequential frames, (ii) a plurality of local motion vectors for each of said frames, (iii) one or more global motion vectors for each of said frames, (iv) a second series of stabilized sequential frames, (v) a plurality of rough motion vectors and (vi) a digital bitstream in response to (i) a video input signal wherein each local motion vector for each of said frames is associated with a search window, and the location, number and size of search windows for each frame are determined according to a video stabilization process;

a second circuit configured to generate a single motion vector in response to a plurality of motion vectors, wherein said second circuit is further configured to eliminate outlier vectors from said plurality of motion vectors such that each global motion vector for each of said frames is derived based on the plurality of local motion vectors among which the outlier vectors are eliminated by the second circuit, and

wherein said series of stabilized sequential frames is motion compensated from the first series of sequential frames according to a sequence of said global motion vectors that are associated with the first series of sequential frames, and each global motion vector is temporally adjusted according to the sequence of said global vectors for the video stabilization process;

wherein said second circuit comprises one or more modules selected from the group consisting of a median filter, a mode filter and a range detector.

2. The apparatus according to claim 1 , wherein said median filter comprises a filter selected from the group consisting of a 3-tap median filter and a 5-tap median filter.

3. The apparatus according to claim 1 , wherein said range detector comprises a minimum/maximum range detector.

4. The apparatus according to claim 1 , wherein said range detector is configured to eliminate motion vectors having values below a first predetermined threshold value or above a second predetermined threshold value.

5. The apparatus according to claim 4 , wherein said range detector is configured to eliminate motion vectors having values below a 20th percentile of said plurality of motion vectors or above an 80th percentile of said plurality of motion vectors.

6. The apparatus according to claim 1 , wherein said apparatus is configured to process horizontal motion vectors and vertical motion vectors independently.

7. The apparatus according to claim 1 , wherein said second circuit comprises a median filter module, a mode filter module and a range detector module, and said second circuit is configured to select between said modules based upon global motion.

8. The apparatus according to claim 1 , wherein said second circuit comprises a median filter module, a mode filter module and a range detector module, and said second circuit is configured to select between said modules based upon global motion detected in the horizontal and vertical directions independently.

9. The apparatus according to claim 8 , wherein said second circuit is further configured to select the same module for both horizontal and vertical directions.

10. The apparatus according to claim 8 , wherein said second circuit is further configured to select a different module for each direction.

11. The apparatus according to claim 8 , wherein said second circuit is further configured to select either the same module for both horizontal and vertical directions or different modules for each direction.

12. The apparatus according to the claim 1 , wherein said first circuit comprises:

a video preprocessor configured to generate (i) said first series of sequential frames, (ii) said second series of stabilized sequential frames, (iii) statistics for said first series of sequential frames and (iv) statistics for said second series of stabilized sequential frames.

13. The apparatus according to the claim 12 , wherein said first circuit further comprises:

a pre-motion estimator configured to generate (i) said plurality of local motion vectors and (ii) said plurality of rough motion vectors in response to one or more search window parameters and a control signal.

14. The apparatus according to claim 13 , wherein said first circuit further comprises:

an encoder circuit configured to generate said digital bitstream in response to said second series of stabilized sequential frames.

15. The apparatus according to claim 1 , wherein said second circuit comprises:

a scan module configured to arrange said plurality of motion vectors according to a predetermined order;

a center predictor module configured to generate a first control signal in response to (i) said motion vectors arranged in said predetermined order and (ii) a threshold value;

a multiplexing module configured to select between (i) said motion vectors arranged in said predetermined order and (ii) an output of one or more filter modules in response to said first control signal and a second control signal;

a post process filter configured to generate said single motion vector in response to an output of said multiplexing module; and

a recursive control module configured to perform a recursive operation with motion vectors generated by said post process filter module.

16. The apparatus of claim 1 , wherein the global motion vectors represent motion separate from motion introduced into a frame by jitter.

17. The apparatus of claim 1 , wherein the local motion vectors are determined within search windows of one frame of image data, and global motion vectors are obtained within respective frames from the local motion vectors of said one frame.

18. A method for stabilizing an image comprising the steps of: (A) capturing an uncompressed video signal to generate a first series of sequential frames;

(B) defining a plurality of search windows in each of the frames the location, number and size of search windows for each frame are determined according to a video stabilization process;

(C) calculating a local motion vector for each of the search windows in each of the frames in response to a plurality of individual motion vectors within each of the frames;

(D) calculating a global motion vector for each of the frames based on each of the local motion vectors in each of the frames using a process configured to eliminate outlier vectors; and

(E) generating a second series of sequential frames, wherein said series of stabilized sequential frames is motion compensated from the first series of sequential frames according to a sequence of said global motion vectors that are associated with the first series of sequential frames, and each global motion vector is temporally adjusted according to the sequence of said global vectors for the video stabilization process;

wherein said outlier vectors are eliminated using one or more processes selected, in response to a control signal, from the group consisting of median filtering, range detection, and mode filtering.

19. An apparatus for stabilizing an image comprising:

means for capturing an uncompressed video signal to generate a first series of sequential frames;

means for defining a plurality of search windows in each of the frames, the location, number and size of search windows for each frame are determined according to a video stabilization process;

means for calculating a local motion vector for each of the search windows in each of the frames in response to a plurality of individual motion vectors within each of the frames;

means for calculating a global motion vector for each of the frames based on each of the local motion vectors in each of the frames using a process configured to eliminate outlier vectors; and

means for generating a second series of sequential frames, wherein

said series of stabilized sequential frames is motion compensated from the first series of sequential frames according to a sequence of said global motion vectors that are associated with the first series of sequential frames, and each global motion vector is temporally adjusted according to the sequence of said global vectors for the video stabilization process;

wherein said process for eliminating outlier vectors comprises one or more processes selected, in response to a control signal, from the group consisting of median filtering, range detection, and mode filtering.

Assignments (12)
RELEASE OF SECURITY INTEREST Recorded Mar 4, 2023
From: EAST WEST BANK
To: GEO SEMICONDUCTOR INC.
Reel/Frame 062955/0700 →
SECURITY INTEREST Recorded Jul 26, 2022
From: GEO SEMICONDUCTOR INC.
To: EAST WEST BANK
Reel/Frame 060925/0979 →
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2022
From: CRESCENT COVE CAPITAL II, LP
To: GEO SEMICONDUCTOR, INC.
Reel/Frame 060840/0079 →
SECURITY INTEREST Recorded May 31, 2019
From: GEO SEMICONDUCTOR INC.
To: CRESCENT COVE CAPITAL II, LP
Reel/Frame 049337/0040 →
RELEASE OF SECURITY INTEREST Recorded May 31, 2019
From: SCOTT LAKE HOLDINGS INC.
To: GEO SEMICONDUCTOR INC.
Reel/Frame 050340/0516 →
RELEASE OF SECURITY INTEREST Recorded May 31, 2019
From: ROADMAP GEO LP III
To: GEO SEMICONDUCTOR INC.
Reel/Frame 049334/0793 →
RELEASE OF SECURITY INTEREST Recorded May 24, 2019
From: BISHOPSGATE HOLDINGS CORPORATION
To: GEO SEMICONDUCTOR INC.
Reel/Frame 049286/0365 →
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NO. FROM US12027189 TO PCTUS1227189 PREVIOUSLY RECORDED ON REEL 044958 FRAME 0828. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Mar 1, 2018
From: GEO SEMICONDUCTOR INC.
To: ROADMAP GEO LP III, AS ADMINISTRATIVE AGENT
Reel/Frame 045482/0808 →
SECURITY INTEREST Recorded Dec 26, 2017
From: GEO SEMICONDUCTOR INC.
To: ROADMAP GEO LP III, AS ADMINISTRATIVE AGENT
Reel/Frame 044958/0828 →
SECURITY INTEREST Recorded Dec 20, 2017
From: GEO SEMICONDUCTOR INC.
To: SCOTT LAKE HOLDINGS INC.
Reel/Frame 044957/0529 →
SECURITY AGREEMENT Recorded Oct 23, 2013
From: GEO SEMICONDUCTOR INC
To: BISHOPSGATE HOLDINGS CORPORATION
Reel/Frame 031479/0486 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2013
From: MAXIM INTEGRATED PRODUCTS, INC.
To: GEO SEMICONDUCTOR INC.
Reel/Frame 029677/0261 →