Patent US8059915B2 successfully refreshed from Google Patents.
US8059915B2
Active / In Force
US
⏱️ 1.0 years remaining
Apparatus for and method of robust motion estimation using line averages
Assignee: Microsoft Technology Licensing LLC
•
Filing: 2007-11-20
•
Granted: 2011-11-15
•
Expires: 2027-11-20
Abstract
Abstract A method of processing an image includes the steps of computing a plurality of line averages for a first image; identifying a set of pairs of line averages having high edge strengths; identifying a set of maximal pairs of line averages from among the set of line averages having high edge strength; expanding each of the maximal pairs of line averages into line stacks to form a set of line stacks; applying the set of line stacks to a second image so as to compute lines averages for the second image; shifting the line stacks to center the stacks on areas of highest edge strength and computing a distance between line stacks of the first and second images.
Inventors
- 👤 Eitan Sharon
- 👤 Achiezer Brandt
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 09:59
CPC Classifications
G; G06; G06T; G06T7/00; G06T7/20; G06T7/246; G06T7/10; G06T7/13; G06T2207/00; G06T2207/10; G06T2207/10016; G06T2207/30; G06T2207/30196
Claims Analysis
Total Claims: 72
Claim 1
Independent Claim
104 words
A method of processing an image comprising the steps of: computing a plurality of line averages for a first image; identifying a set of pairs of line averages having high edge strengths; identifying a set of maximal pairs of line averages from among said set of line averages having high edge strength; expanding each of said maximal pairs of line averages into line stacks to form a set of line stacks; applying said set of line stacks to a second image so as to compute lines averages for said second image; and computing a distance between line stacks of said first and second images.
Claim 2
Independent Claim
104 words
A method of processing an image comprising the steps of: computing a plurality of line averages for a first image; identifying a set of pairs of line averages having high edge strengths; identifying a set of maximal pairs of line averages from among said set of line averages having high edge strength; expanding each of said maximal pairs of line averages into line stacks to form a set of line stacks; applying said set of line stacks to a second image so as to compute lines averages for said second image; and computing a distance between line stacks of said first and second images.
Claim 3
Dependent Claim
64 words
The method according to claim 1 wherein: said step of identifying said set of pairs of line averages having high edge strength forms clusters of said pairs of line averages having high edge strength; and said step of identifying a set of maximal pairs of line averages includes eliminating from each of said clusters line averages having adjacent pairs with a higher edge strength.
Claim 4
Dependent Claim
45 words
The method according to claim 1 wherein said step of identifying said set maximal pairs of line averages includes suppressing non-maximal pairs of said set of pairs of line averages having high edge strengths by eliminating pairs having any adjacent pairs with higher edge strength.
Claim 5
Dependent Claim
20 words
The method according to claim 1 wherein said first and second images are part of a sequence of video images.
Claim 6
Dependent Claim
29 words
The method according to claim 1 further comprising a step of translating each of said line stacks of said second image in a direction corresponding to said computed distances.
Claim 7
Dependent Claim
50 words
The method according to claim 5 wherein said step of translating includes shifting each of said line stacks in a direction orthogonal to lines of said line stack by a distance equal to respective computed distances to center each of said line stacks on respective areas of highest edge strength
Claim 8
Dependent Claim
27 words
The method according to claim 5 wherein said step of translating includes centering said line stacks of said second image on respective areas of highest edge strength.
Claim 9
Dependent Claim
30 words
The method according to claim 5 further comprising a step of verifying that all line averages fit to true object motion by compensating for edge movement internal to an object.
Claim 10
Dependent Claim
26 words
The method according to claim 1 wherein said step of computing said plurality of line averages includes implementing a Brandt-Dym method to compute said line averages.
Claim 11
Dependent Claim
37 words
The method according to claim 1 wherein said step of computing a plurality of line averages for said first image includes computing line averages for sets of line averages, each set having line averages of different geometries.
Claim 12
Dependent Claim
34 words
The method according to claim 10 wherein said different geometries include differences based on line length, width, angular orientation or relative position of lines of said pairs of line averages of said first image.
Claim 13
Dependent Claim
47 words
The method according to claim 1 wherein said step of computing a plurality of line averages for said first image includes computing line averages across different geometries of lines selected from the group consisting of different line (i) lengths, (ii) widths, (iii) angular orientations, and (iv) positions.
Claim 14
Dependent Claim
39 words
The method according to claim 1 wherein said step of computing a plurality of line averages for said first image includes computing an average color intensity value for a plurality of pixels defined by each of said line averages.
Claim 15
Dependent Claim
36 words
The method according to claim 1 wherein said step of computing a plurality of line averages for said first image includes computing line averages each spanning a plurality of pixel elements arranged in a rectangular array.
Claim 16
Dependent Claim
41 words
The method according to claim 1 wherein said step of identifying said set of pairs of line averages having high edge strengths includes a step of determining an intensity difference between line averages of each of said pairs of line averages.
Claim 17
Dependent Claim
54 words
The method according to claim 15 wherein said step of determining an intensity difference includes steps of determining an average pixel intensity of each line average of a pair of said line averages and subtracting said average pixel intensities to produce an edge intensity corresponding to each of said pairs of said line averages.
Claim 18
Dependent Claim
41 words
The method according to claim 1 wherein said step of identifying said set of pairs of line averages having high edge strengths includes a step of determining whether a difference in average pixel intensity of neighboring lines satisfies a threshold condition.
Claim 19
Dependent Claim
39 words
The method according to claim 1 wherein said step of computing distance between line stacks of said first and second images includes generating a set of motion vectors describing a movement of edges between said first and second images.
Claim 20
Dependent Claim
55 words
The method according to claim 1 wherein said step of expanding each of said maximal pairs of line averages into said line stacks to form said set of line stacks includes: identifying, for each of said maximal pairs, a set of 2 n adjacent line averages wherein n is an integer value great than 1.
Claim 21
Dependent Claim
41 words
The method according to claim 19 wherein each of said sets of 2 n adjacent line averages include line averages taken over regions each having a major axis that is substantially parallel to that of the other regions of a set.
Claim 22
Dependent Claim
55 words
The method according to claim 1 wherein said step of expanding each of said maximal pairs of line averages into said line stacks to form said set of line stacks includes: outwardly expanding from a centralized one of said maximal pairs to include, within each of said line stacks, line averages of immediately adjacent lines.
Claim 23
Independent Claim
178 words
A method of calculating motion vectors of an object included in a video comprising the steps of: identifying, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; suppressing non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; maximizing differences of said remaining pairs of said line averages to obtain local maximum edginess by adjusting line parameters length, width, angular orientation and location of pairs; expanding said remaining pairs of said line averages into line stacks of lines; applying said line stacks to a another image of said video; identifying, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack; translating said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength; and calculating motion vectors between original and translated line stack positions.
Claim 24
Independent Claim
178 words
A method of calculating motion vectors of an object included in a video comprising the steps of: identifying, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; suppressing non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; maximizing differences of said remaining pairs of said line averages to obtain local maximum edginess by adjusting line parameters length, width, angular orientation and location of pairs; expanding said remaining pairs of said line averages into line stacks of lines; applying said line stacks to a another image of said video; identifying, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack; translating said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength; and calculating motion vectors between original and translated line stack positions.
Claim 25
Independent Claim
139 words
An apparatus for processing an image, the apparatus comprising: a line averaging engine configured to compute a plurality of line averages for a first image; an edge detection engine configured to identify a set of pairs of line averages having high edge strengths; an edge extraction engine configured to identify a set of maximal pairs of line averages from among said set of line averages having high edge strength; a stack creation engine configured to expand each of said maximal pairs of line averages into line stacks to form a set of line stacks; a stack overlay engine configured to apply said set of line stacks to a second image so as to compute lines averages for said second image; and a motion detection engine configured to compute a distance between line stacks of said first and second images.
Claim 26
Independent Claim
139 words
An apparatus for processing an image, the apparatus comprising: a line averaging engine configured to compute a plurality of line averages for a first image; an edge detection engine configured to identify a set of pairs of line averages having high edge strengths; an edge extraction engine configured to identify a set of maximal pairs of line averages from among said set of line averages having high edge strength; a stack creation engine configured to expand each of said maximal pairs of line averages into line stacks to form a set of line stacks; a stack overlay engine configured to apply said set of line stacks to a second image so as to compute lines averages for said second image; and a motion detection engine configured to compute a distance between line stacks of said first and second images.
Claim 27
Independent Claim
181 words
An apparatus for calculating motion vectors of an object included in a video, the apparatus comprising: a line averaging engine configured to identify, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; an edge extraction engine configured to suppressing non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; a stack creation engine configured to expand said remaining pairs of said line averages into line stacks of lines; a stack overlay engine configured to apply said line stacks to a another image of said video; and a motion detection engine configured to: identify, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack, translate said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength, and calculate motion vectors between original and translated line stack positions.
Claim 28
Independent Claim
181 words
An apparatus for calculating motion vectors of an object included in a video, the apparatus comprising: a line averaging engine configured to identify, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; an edge extraction engine configured to suppressing non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; a stack creation engine configured to expand said remaining pairs of said line averages into line stacks of lines; a stack overlay engine configured to apply said line stacks to a another image of said video; and a motion detection engine configured to: identify, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack, translate said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength, and calculate motion vectors between original and translated line stack positions.
Claim 29
Dependent Claim
169 words
A non-transitory computer usable medium having computer readable program code embodied therein for processing images, the computer readable program code including: computer readable program code for causing the computer to compute a plurality of line averages for a first image; computer readable program code for causing the computer to identify a set of pairs of line averages having high edge strengths; computer readable program code for causing the computer to identify a set of maximal pairs of line averages from among said set of line averages having high edge strength; computer readable program code for causing the computer to expand each of said maximal pairs of line averages into line stacks to form a set of line stacks; computer readable program code for causing the computer to apply said set of line stacks to a second image so as to compute lines averages for said second image; and computer readable program code for causing the computer to compute a distance between line stacks of said first and second images.
Claim 30
Dependent Claim
169 words
A non-transitory computer usable medium having computer readable program code embodied therein for processing images, the computer readable program code including: computer readable program code for causing the computer to compute a plurality of line averages for a first image; computer readable program code for causing the computer to identify a set of pairs of line averages having high edge strengths; computer readable program code for causing the computer to identify a set of maximal pairs of line averages from among said set of line averages having high edge strength; computer readable program code for causing the computer to expand each of said maximal pairs of line averages into line stacks to form a set of line stacks; computer readable program code for causing the computer to apply said set of line stacks to a second image so as to compute lines averages for said second image; and computer readable program code for causing the computer to compute a distance between line stacks of said first and second images.
Claim 31
Dependent Claim
52 words
The apparatus according to claim 23 wherein: said edge detection engine is further configured to form clusters of said pairs of line averages having high edge strength; and said edge extraction engine is further configured to eliminate from each of said clusters line averages having adjacent pairs with a higher edge strength.
Claim 32
Dependent Claim
41 words
The apparatus according to claim 23 wherein said edge extraction engine is further configured to suppress non-maximal pairs of said set of pairs of line averages having high edge strengths by eliminating pairs having any adjacent pairs with higher edge strength.
Claim 33
Dependent Claim
20 words
The apparatus according to claim 23 wherein said first and second images are part of a sequence of video images.
Claim 34
Dependent Claim
31 words
The apparatus according to claim 23 further comprising a translating engine configured to translate each of said line stacks of said second image in a direction corresponding to said computed distances.
Claim 35
Dependent Claim
52 words
The apparatus according to claim 27 wherein said translating engine is further configured to shift each of said line stacks in a direction orthogonal to lines of said line stack by a distance equal to respective computed distances to center each of said line stacks on respective areas of highest edge strength
Claim 36
Dependent Claim
29 words
The apparatus according to claim 27 wherein said translating engine is further configured to center said line stacks of said second image on respective areas of highest edge strength.
Claim 37
Dependent Claim
33 words
The apparatus according to claim 27 wherein said translating engine is further configured to verify that all line averages fit to true object motion by compensating for edge movement internal to an object.
Claim 38
Dependent Claim
24 words
The apparatus according to claim 23 wherein said line averaging engine is further configured to implement a Brandt-Dym method to compute said line averages.
Claim 39
Dependent Claim
31 words
The apparatus according to claim 23 wherein said line averaging engine is further configured to compute line averages for sets of line averages, each set having line averages of different geometries.
Claim 40
Dependent Claim
34 words
The apparatus according to claim 32 wherein said different geometries include differences based on line length, width, angular orientation or relative position of lines of said pairs of line averages of said first image.
Claim 41
Dependent Claim
41 words
The apparatus according to claim 23 wherein said line averaging engine is further configured to compute line averages across different geometries of lines selected from the group consisting of different line (i) lengths, (ii) widths, (iii) angular orientations, and (iv) positions.
Claim 42
Dependent Claim
31 words
The apparatus according to claim 23 wherein said line averaging engine is further configured to average color intensity values for a plurality of pixels defined by each of said line averages.
Claim 43
Dependent Claim
30 words
The apparatus according to claim 23 wherein said line averaging engine is further configured to compute line averages each spanning a plurality of pixel elements arranged in a rectangular array.
Claim 44
Dependent Claim
30 words
The apparatus according to claim 23 wherein said edge detection engine is further configured to calculate an intensity difference between line averages of each of said pairs of line averages.
Claim 45
Dependent Claim
52 words
The apparatus according to claim 37 wherein said edge detection engine is further configured to calculate an average pixel intensity of each line average of a pair of said line averages and subtract said average pixel intensities to produce an edge intensity corresponding to each of said pairs of said line averages.
Claim 46
Dependent Claim
29 words
The apparatus according to claim 23 wherein said edge detection engine is further configured to determine a difference in average pixel intensity of neighboring lines satisfies a threshold condition.
Claim 47
Dependent Claim
32 words
The apparatus according to claim 23 wherein said motion detection engine is further configured to generate a set of motion vectors describing a movement of edges between said first and second images.
Claim 48
Dependent Claim
39 words
The apparatus according to claim 23 wherein said stack creation engine is further configured to identify, for each of said maximal pairs, a set of 2 n adjacent line averages wherein n is an integer value great than 1.
Claim 49
Dependent Claim
41 words
The apparatus according to claim 41 wherein each of said sets of 2 n adjacent line averages include line averages taken over regions each having a major axis that is substantially parallel to that of the other regions of a set.
Claim 50
Dependent Claim
39 words
The apparatus according to claim 23 wherein said stack creation engine is further configured to outwardly expand from a centralized one of said maximal pairs to include, within each of said line stacks, line averages of immediately adjacent lines.
Claim 51
Dependent Claim
95 words
The computer usable medium according to claim 25 wherein: said computer readable code for causing the computer to identify said set of pairs of line averages having high edge strength include computer readable code for causing said computer to form clusters of said pairs of line averages having high edge strength; and said computer readable code for causing the computer to identify a set of maximal pairs of line averages includes computer readable code for causing said computer to eliminate, from each of said clusters, line averages having adjacent pairs with a higher edge strength.
Claim 52
Dependent Claim
60 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to identify said set maximal pairs of line averages includes computer readable code for causing the computer suppress non-maximal pairs of said set of pairs of line averages having high edge strengths by eliminating pairs having any adjacent pairs with higher edge strength.
Claim 53
Dependent Claim
22 words
The computer usable medium according to claim 25 wherein said first and second images are part of a sequence of video images.
Claim 54
Dependent Claim
36 words
The computer usable medium according to claim 25 further comprising computer readable code for causing the computer to translate each of said line stacks of said second image in a direction corresponding to said computed distances.
Claim 55
Dependent Claim
71 words
The computer usable medium according to claim 49 wherein said computer readable code for causing the computer to translate each of said line stacks includes computer readable code for causing said computer to shift each of said line stacks in a direction orthogonal to lines of said line stack by a distance equal to respective computed distances to center each of said line stacks on respective areas of highest edge strength.
Claim 56
Dependent Claim
53 words
The computer usable medium according to claim 49 wherein said computer readable code for causing the computer to translate each line of said line stacks in said second image includes computer readable code for causing the computer to center said line stacks of said second image on respective areas of highest edge strength.
Claim 57
Dependent Claim
37 words
The computer usable medium according to claim 49 further comprising computer readable code for causing the computer to verify that all line averages fit to true object motion by compensating for edge movement internal to an object.
Claim 58
Dependent Claim
42 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute said plurality of line averages includes computer readable code for causing the computer to implement a Brandt-Dym method to compute said line averages.
Claim 59
Dependent Claim
53 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute a plurality of line averages for said first image includes computer readable code for causing the computer to compute line averages for sets of line averages, each set having line averages of different geometries.
Claim 60
Dependent Claim
36 words
The computer usable medium according to claim 54 wherein said different geometries include differences based on line length, width, angular orientation or relative position of lines of said pairs of line averages of said first image.
Claim 61
Dependent Claim
63 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute a plurality of line averages for said first image includes computer readable code for causing the computer to compute line averages across different geometries of lines selected from the group consisting of different line (i) lengths, (ii) widths, (iii) angular orientations, and (iv) positions.
Claim 62
Dependent Claim
55 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute a plurality of line averages for said first image includes computer readable code for causing the computer to compute an average color intensity value for a plurality of pixels defined by each of said line averages.
Claim 63
Dependent Claim
52 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute a plurality of line averages for said first image includes computer readable code for causing the computer to compute line averages each spanning a plurality of pixel elements arranged in a rectangular array.
Claim 64
Dependent Claim
54 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to identify said set of pairs of line averages having high edge strengths includes computer readable code for causing the computer to determine an intensity difference between line averages of each of said pairs of line averages.
Claim 65
Dependent Claim
68 words
The computer usable medium according to claim 59 wherein said computer readable code for causing the computer to determine an intensity difference includes computer readable code for causing the computer to determine an average pixel intensity of each line average of a pair of said line averages and subtract said average pixel intensities to produce an edge intensity corresponding to each of said pairs of said line averages.
Claim 66
Dependent Claim
54 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to identify said set of pairs of line averages having high edge strengths includes computer readable code for causing the computer to determine whether a difference in average pixel intensity of neighboring lines satisfies a threshold condition.
Claim 67
Dependent Claim
56 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to compute said distance between line stacks of said first and second images includes computer readable code for causing the computer to generate a set of motion vectors describing a movement of edges between said first and second images.
Claim 68
Dependent Claim
71 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to expand each of said maximal pairs of line averages into said line stacks to form said set of line stacks includes computer readable code for causing the computer to: identify, for each of said maximal pairs, a set of 2 n adjacent line averages wherein n is an integer value great than 1.
Claim 69
Dependent Claim
43 words
The computer usable medium according to claim 63 wherein each of said sets of 2 n adjacent line averages include line averages taken over regions each having a major axis that is substantially parallel to that of the other regions of a set.
Claim 70
Dependent Claim
71 words
The computer usable medium according to claim 25 wherein said computer readable code for causing the computer to expand each of said maximal pairs of line averages into said line stacks to form said set of line stacks includes computer readable code for causing the computer to outwardly expand from a centralized one of said maximal pairs to include, within each of said line stacks, line averages of immediately adjacent lines.
Claim 71
Dependent Claim
262 words
A non-transitory computer usable medium having computer readable program code embodied therein for calculating motion vectors of an object included in a video, the computer readable program code including: computer readable program code for causing the computer to identify, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; computer readable program code for causing the computer to suppress non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; computer readable program code for causing the computer to maximize differences of said remaining pairs of said line averages to obtain local maximum edginess by adjusting line parameters length, width, angular orientation and location of pairs; computer readable program code for causing the computer to expand said remaining pairs of said line averages into line stacks of lines; computer readable program code for causing the computer to apply said line stacks to a another image of said video; computer readable program code for causing the computer to identify, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack; computer readable program code for causing the computer to translate said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength; and computer readable program code for causing the computer to calculate motion vectors between original and translated line stack positions.
Claim 72
Dependent Claim
262 words
A non-transitory computer usable medium having computer readable program code embodied therein for calculating motion vectors of an object included in a video, the computer readable program code including: computer readable program code for causing the computer to identify, within a first image of said video, pairs of line averages having strong differences indicating high edge strengths; computer readable program code for causing the computer to suppress non-maximal pairs of said pairs of line averages by eliminating ones of said pairs having adjacent pairs with higher edge strength leaving a plurality of remaining pairs of line averages; computer readable program code for causing the computer to maximize differences of said remaining pairs of said line averages to obtain local maximum edginess by adjusting line parameters length, width, angular orientation and location of pairs; computer readable program code for causing the computer to expand said remaining pairs of said line averages into line stacks of lines; computer readable program code for causing the computer to apply said line stacks to a another image of said video; computer readable program code for causing the computer to identify, for each line stack within said other image, a line pair having maximum differences indicating highest edge strength within line stack; computer readable program code for causing the computer to translate said line stacks within said other image in direction orthogonal to said line stack lines to center line stacks on respective areas of highest edge strength; and computer readable program code for causing the computer to calculate motion vectors between original and translated line stack positions.
References Cited (Backward Citations)
US4639773A
Cited
US5410643A
Cited
US7080392B1
Cited
JPH06105211A
Cited
US5392223A
Cited
US5473384A
Cited
US5886745A
Cited
US5638135A
Cited
US6462768B1
Cited
US5923775A
Cited
US6370543B2
Cited
US5838838A
Cited
US6449608B1
Cited
US20030088554A1
Cited
US6229929B1
Cited
US6396948B1
Cited
US20050216851A1
Cited
US6766037B1
Cited
US6643387B1
Cited
US6774917B1
Cited
US7246314B2
Cited
US7031555B2
Cited
US6611296B1
Cited
US20030120652A1
Cited
US6792575B1
Cited
US6442203B1
Cited
US20010049826A1
Cited
US6718365B1
Cited
US20020003900A1
Cited
EP1152621A1
Cited
US6891891B2
Cited
US20050179814A1
Cited
US20050275626A1
Cited
US7042527B2
Cited
US20020114394A1
Cited
US6714929B1
Cited
US6850651B2
Cited
US7190832B2
Cited
US20040013305A1
Cited
US20030097301A1
Cited
US7149355B2
Cited
CN1199449C
Cited
US7043078B2
Cited
US7146361B2
Cited
US7268939B1
Cited
US7042639B1
Cited
US7274828B2
Cited
US7555718B2
Cited
US20060122997A1
Cited
EP1732329A1
Cited
US20060291567A1
Cited
US20070185858A1
Cited
US7136524B1
Cited
US20070078832A1
Cited
US20070157239A1
Cited
US7421455B2
Cited
US20080021710A1
Cited
US20080080743A1
Cited
US20080086688A1
Cited
US20080118108A1
Cited
US20080120328A1
Cited
US20080120290A1
Cited
US20080120291A1
Cited
US20080118107A1
Cited
US20080159622A1
Cited
US20080154889A1
Cited
US20080193017A1
Cited
US20080292188A1
Cited
US20080292187A1
Cited
US20090141940A1
Cited
US20100070523A1
Cited
US20100070483A1
Cited
US20100057694A1
Cited
US20100082585A1
Cited
US20100104261A1
Cited
US20100205203A1
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2014-11-14 | 2015-05-16 | 2015-11-15 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2018-11-14 | 2019-05-16 | 2019-11-15 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2022-11-14 | 2023-05-16 | 2023-11-15 | $7700.00 | Window Closed / Lapsed |