IP Library Granted Patent US 7,907,217
Granted Patent B2
US 7,907,217 · App. 11/622,736 · Granted Mar 15, 2011

Systems and methods of subtraction angiography utilizing motion prediction

Assignee: Siemens Medical Solutions USA, Inc.
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,907,217
App. No.
11/622,736
Granted
Mar 15, 2011
Kind
B2
Abstract

A system and method for calculating a pixel-shift vector that predicts the motion in dynamic image data and can be used to shift reference image data in order to generate a subtracted image with reduced motion artifacts. The pixel-shift vector is calculated based on displacement vectors that have been calculated based on past motion in the dynamic image data. One embodiment determines a virtual pixel-shift vector as a function of stored pixel-shift vectors that were previously determined as a function of a previously captured live frame. The virtual pixel-shift vector is a prediction of the location of the current live frame before the current live frame is captured. The mask frame is adjusted as a function of this virtual pixel-shift vector. The current live frame is then subtracted from the mask frame adjusted as a function of the virtual pixel-shift vector. The adjusted mask frame and the live frame will then overlap and the subtracted image will have reduced artifacts.

Claims (123)

1. A method, comprising:

accessing reference image data;

accessing first dynamic image data;

determining first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the first dynamic image data;

accessing second dynamic image data;

determining second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the second dynamic image data;

determining third pixel-shift vector data as a function exclusively of the first pixel-shift vector data and the second pixel-shift vector data;

adjusting the reference image data as a function of the third pixel-shift vector data;

accessing third dynamic image data;

subtracting the adjusted reference image data from the third dynamic image data; and

generating resultant image data as a function of the subtracting step.

2. The method according to claim 1 , further comprising:

determining third pixel-shift vector data by interpolation between first pixel-shift vector data and the second pixel-shift vector data and

storing the resultant image data.

3. The method according to claim 1 , further comprising:

displaying the resultant image data.

4. The method according to claim 1 , further comprising:

determining the first pixel-shift vector data at a predetermined frame rate of the first dynamic image data.

5. The method according to claim 1 , further comprising:

adjusting the reference image data as a function of the second pixel shift vector data when the second pixel-shift vector data is known at the time the third dynamic image data is accessed.

6. The method according to claim 1 ,

wherein the reference image data is a first frame of data; and

wherein the first dynamic image data is a subsequent frame of data.

7. The method according to claim 1 , wherein the reference image data is a mask frame.

8. A method, comprising:

accessing reference image data;

accessing first and second dynamic image data;

determining first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the first dynamic image data;

determining second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the second dynamic image data;

determining third pixel-shift vector data by interpolation between first pixel-shift vector data and the second pixel-shift vector data; and

adjusting the reference image data as a function of the third pixel-shift vector data.

9. The method according to claim 8 , further comprising:

calculating said third pixel-shift vector data as a function exclusively of the first and second pixel-shift vector data;

accessing second dynamic image data;

subtracting the adjusted reference image data from the second dynamic image data; and

generating resultant image data as a function of the subtracting step.

10. The method according to claim 9 , further comprising:

determining the first pixel-shift vector data at a predetermined frame rate of dynamic image data; and

determining the second pixel-shift vector data at a predetermined frame rate of dynamic image data.

11. A method, comprising:

accessing a reference frame;

accessing dynamic frame data;

calculating first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference frame and the dynamic frame data;

calculating second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference frame and the dynamic frame data;

calculating virtual pixel-shift vector data as a function exclusively of the first and second pixel-shift vector data;

shifting the reference frame as a function of the virtual pixel-shift vector data;

accessing second dynamic frame data;

subtracting the second dynamic frame data from the shifted reference frame; and

generating resultant image data as a function of the subtracting step.

12. The method according to claim 11 , further comprising:

determining virtual pixel-shift vector data by interpolation between first pixel-shift vector data and the second pixel-shift vector data and

storing the pixel-shift vector data.

13. The method according to claim 12 , wherein the pixel-shift vector data is stored in an array.

14. The method according to claim 11 , further comprising:

determining the first pixel-shift vector data at a predetermined frame rate of dynamic image data.

15. The method according to claim 11 , further comprising:

storing the resultant image data.

16. The method according to claim 11 , further comprising:

displaying the resultant image data.

17. An apparatus implemented using at least one processor, comprising:

means for accessing reference image data;

means for accessing first dynamic image data;

means for determining first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the first dynamic image data;

means for accessing second dynamic image data;

means for determining second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the second dynamic image data;

means for determining third pixel-shift vector data as a function exclusively of the first pixel-shift vector data and the second pixel-shift vector data;

means for adjusting the reference image data as a function of the third pixel-shift vector data;

means for accessing third dynamic image data;

means for subtracting the adjusted reference image data from the third dynamic image data; and

means for generating resultant image data as a function of the subtracting step.

18. The apparatus according to claim 17 , further comprising:

means for storing the resultant image data.

19. The apparatus according to claim 17 , further comprising:

means for determining the first pixel-shift vector data at a predetermined frame rate of the first dynamic image data.

20. The apparatus according to claim 17 , further comprising:

means for adjusting the reference image data as a function of the second pixel shift vector data when the second pixel-shift vector data is known at the time the third dynamic image data is accessed.

21. The apparatus according to claim 17 ,

wherein the reference image data is a first frame of data; and

wherein the first dynamic image data is a subsequent frame of data.

22. The apparatus according to claim 17 ,

wherein the reference image data is a mask frame.

23. An apparatus implemented using at least one processor, comprising:

means for accessing reference image data;

means for accessing first and second dynamic image data;

means for determining first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the first dynamic image data;

means for determining second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the second dynamic image data;

means for determining third pixel-shift vector data by interpolation between the first pixel-shift vector data and the second pixel-shift vector data; and

means for adjusting the reference image data as a function of the third pixel-shift vector data.

24. An apparatus implemented using at least one processor, comprising:

means for accessing a reference frame;

means for accessing dynamic frame data;

means for calculating first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference frame and the dynamic frame data;

means for calculating second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference frame and the dynamic frame data;

means for calculating virtual pixel-shift vector data as a function exclusively of the first and second pixel-shift vector data;

means for shifting the reference frame as a function of the virtual pixel-shift vector data;

means for accessing second dynamic frame data;

means for subtracting the second dynamic frame data from the shifted reference frame; and

means for generating resultant image data as a function of the subtracting step.

25. A system, comprising:

at least one processor; and

at least one memory, coupled to the at least one processor, storing program code adapted to cause the at least one processor to

access reference image data;

access first dynamic image data;

determine first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the first dynamic image data;

access second dynamic image data;

determine second pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference image data and the second dynamic image data;

determine third pixel-shift vector data as a function exclusively of the first pixel-shift vector data and the second pixel-shift vector data;

adjust the reference image data as a function of the third pixel-shift vector data;

access third dynamic image data;

subtract the adjusted reference image data from the third dynamic image data; and

generate resultant image data as a function of the subtracting step.

26. A system, comprising:

at least one processor; and

at least one memory, coupled to the at least one processor, storing program code adapted to cause the at least one processor to:

access a reference frame;

access dynamic frame data;

calculate first pixel-shift vector data indicating a shift amount and shift direction, as a function of the reference frame and the dynamic frame data;

calculate second pixel-shift vector data indicating a shift amount and shift direction, as a function of reference image data and the second dynamic image data;

calculate virtual pixel-shift vector data as a function exclusively of the first and second pixel-shift vector data;

shift the reference frame as a function of the virtual pixel-shift vector data;

access second dynamic frame data;

subtract the second dynamic frame data from the shifted reference frame; and

generate resultant image data as a function of the subtracting step.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2022
From: ICE CAP
To: PIXART IMAGING INC.
Reel/Frame 061639/0342 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: ALLIED SECURITY TRUST I
To: ICE CAP, SERIES 106 OF ALLIED SECURITY TRUST I
Reel/Frame 058601/0037 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2021
From: SIEMENS HEALTHCARE GMBH
To: ALLIED SECURITY TRUST I
Reel/Frame 058960/0371 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF ASSIGNMENT 3, ASSIGNOR SIEMENS MEDICAL SOLUTIONS USA, INC. TO SIEMENS HEALTHCARE GMBH PREVIOUSLY RECORDED ON REEL 043379 FRAME 0673. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF INVENTOR RIGHTS.. Recorded Dec 2, 2020
From: SIEMENS MEDICAL SOLUTIONS USA, INC.
To: SIEMENS HEALTHCARE GMBH
Reel/Frame 056112/0540 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2017
From: SIEMENS MEDICAL SOLUTIONS USA, INC.
To: SIEMENS HEALTHCARE GMBH
Reel/Frame 043379/0673 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2007
From: VOGT, FLORIAN
To: SIEMENS MEDICAL SOLUTIONS USA, INC.
Reel/Frame 018909/0051 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2007
From: BAUMGART, JOHN
To: SIEMENS MEDICAL SOLUTIONS USA, INC.
Reel/Frame 018909/0103 →
Continuity (2)
Provisional Application 60863629 · Oct 31, 2006
Related Publication 20080101670A1 · May 1, 2008