U.S. patent application number 16/552239 was filed with the patent office on 2020-02-20 for apparatus, methods and articles for four dimensional (4d) flow magnetic resonance imaging.
The applicant listed for this patent is Arterys Inc.. Invention is credited to John Axerio-Cilies, Daniel Marc Raymond Beauchamp, Fabien Beckers, Albert Hsiao, Torin Arni Taerum.
Application Number | 20200054235 16/552239 |
Document ID | / |
Family ID | 53543627 |
Filed Date | 2020-02-20 |
United States Patent
Application |
20200054235 |
Kind Code |
A1 |
Beckers; Fabien ; et
al. |
February 20, 2020 |
APPARATUS, METHODS AND ARTICLES FOR FOUR DIMENSIONAL (4D) FLOW
MAGNETIC RESONANCE IMAGING
Abstract
An MRI image processing and analysis system may identify
instances of structure in MRI flow data, e.g., coherency, derive
contours and/or clinical markers based on the identified
structures. The system may be remotely located from one or more MRI
acquisition systems, and perform: perform error detection and/or
correction on MRI data sets (e.g., phase error correction, phase
aliasing, signal unwrapping, and/or on other artifacts);
segmentation; visualization of flow (e.g., velocity, arterial
versus venous flow, shunts) superimposed on anatomical structure,
quantification; verification; and/or generation of patient specific
4-D flow protocols. An asynchronous command and imaging pipeline
allows remote image processing and analysis in a timely and secure
manner even with complicated or large 4-D flow MRI data sets.
Inventors: |
Beckers; Fabien; (San
Francisco, CA) ; Hsiao; Albert; (San Diego, CA)
; Axerio-Cilies; John; (San Francisco, CA) ;
Taerum; Torin Arni; (Calgary, CA) ; Beauchamp; Daniel
Marc Raymond; (Toronto, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Arterys Inc. |
San Francisco |
CA |
US |
|
|
Family ID: |
53543627 |
Appl. No.: |
16/552239 |
Filed: |
August 27, 2019 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
16181038 |
Nov 5, 2018 |
10398344 |
|
|
16552239 |
|
|
|
|
15112130 |
Jul 15, 2016 |
10117597 |
|
|
PCT/US2015/011851 |
Jan 16, 2015 |
|
|
|
16181038 |
|
|
|
|
61928702 |
Jan 17, 2014 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G16H 10/60 20180101;
A61B 5/0263 20130101; G06T 7/12 20170101; G06T 7/174 20170101; A61B
5/02014 20130101; G06T 2207/30048 20130101; G06F 19/321 20130101;
G01R 33/56308 20130101; G01R 33/56545 20130101; G06T 2207/20076
20130101; A61B 5/055 20130101; A61B 5/7257 20130101; A61B 5/0044
20130101; G01R 33/5608 20130101; G16H 30/40 20180101; A61B 2576/023
20130101; A61B 5/08 20130101; G06T 2207/30104 20130101; G06T 7/168
20170101; G06T 2207/10088 20130101; G06F 19/00 20130101; A61B
5/02007 20130101; G06T 2207/20056 20130101; A61B 5/021 20130101;
G16H 30/20 20180101 |
International
Class: |
A61B 5/055 20060101
A61B005/055; G16H 30/40 20060101 G16H030/40; G16H 10/60 20060101
G16H010/60; G16H 30/20 20060101 G16H030/20; A61B 5/021 20060101
A61B005/021; G06T 7/174 20060101 G06T007/174; G06T 7/168 20060101
G06T007/168; G06T 7/12 20060101 G06T007/12; G01R 33/565 20060101
G01R033/565; G01R 33/563 20060101 G01R033/563; A61B 5/00 20060101
A61B005/00; A61B 5/026 20060101 A61B005/026; A61B 5/02 20060101
A61B005/02 |
Claims
1. (canceled)
2. A method of operation for use with magnetic resonance imaging
(MRI) based medical imaging systems, the method comprising:
receiving a set of MRI data by at least one processor-based device,
the set of MRI data comprising respective anatomical structure and
blood flow information for each of a plurality of voxels; and
applying a first filter to isolate blood flow based on directional
coherence to at least a portion of the received set of MRI data by
the at least one processor-based device.
3. The method of claim 2 wherein applying a first filter to isolate
blood flow based on directional coherence to at least a portion of
the received set of MRI data includes: for each of a number of
voxels, calculating a directional coherence for the respective
voxel.
4. The method of claim 3 wherein calculating a directional
coherence for a respective voxel includes: summing a set of
weighted directional coherence scores between the respective voxel
and a plurality of neighboring voxels which are neighbors of the
respective voxel; and dividing a result of the summation by a
summation of all weights applied.
5. The method of claim 4, further comprising: determining the
weighted directional coherence scores between the respective voxel
and the plurality of neighboring voxels.
6. The method of claim 5 wherein determining the weighted
directional coherence scores between the respective voxel and the
plurality of neighboring voxels includes: determining a dot product
of normalized velocity vectors, applying the trigonometric function
ACOS to a result of the dot product to determine an angle
difference; scaling the angle difference between 0 and Pi to get a
result between 0 and 1; and multiplying the result of the scaling
by a respective weight which is indicative of a distance between
the respective voxel and a respective one of the neighboring
voxels.
7. The method of claim 6, further comprising: determining the
respective weight.
8. The method of claim 7 wherein determining the respective weight
includes: finding a minimum spacing for all three dimensions, and
dividing that minimum spacing by a distance between the voxels.
9. The method of claim 8 wherein the first filter is applied in one
volume per time point.
10. The method of claim 8 wherein the first filter is applied in
one volume averaged over all time points per time point.
11. The method of claim 8, further comprising: applying a second
filter to further remove random noise to the at least a portion of
the received set of MRI data by the at least one processor-based
device.
12. A processor-based device, comprising: at least one
nontransitory processor-readable storage medium storing at least
one of instructions or data; and at least one processor
communicatively coupled to the at least one nontransitory
processor-readable storage medium, in operation, the at least one
processor: receives a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; and applies a first filter to isolate blood
flow based on directional coherence to at least a portion of the
received set of MRI data by the at least one processor-based
device.
13. The device of claim 12, wherein the at least one processor
applies the first filter to isolate blood flow based on directional
coherence to at least a portion of the received set of MRI data at
least in part by: for each of a number of voxels, calculating a
directional coherence for the respective voxel.
14. The device of claim 13, wherein calculating a directional
coherence for a respective voxel includes: summing a set of
weighted directional coherence scores between the respective voxel
and a plurality of neighboring voxels which are neighbors of the
respective voxel; and dividing a result of the summation by a
summation of all weights applied.
15. The device of claim 14, wherein in operation, the at least one
processor further determines the weighted directional coherence
scores between the respective voxel and the plurality of
neighboring voxels.
16. The device of claim 15, wherein the at least one processor
determines the weighted directional coherence scores between the
respective voxel and the plurality of neighboring voxels at least
in part by: determining a dot product of normalized velocity
vectors, applying the trigonometric function ACOS to a result of
the dot product to determine an angle difference; scaling the angle
difference between 0 and Pi to get a result between 0 and 1; and
multiplying the result of the scaling by a respective weight which
is indicative of a distance between the respective voxel and a
respective one of the neighboring voxels.
17. The device of claim 16, wherein in operation, the at least one
processor further determines the respective weight.
18. The device of claim 17, wherein the at least one processor
determines the respective weight at least in part by: finding a
minimum spacing for all three dimensions, and dividing that minimum
spacing by a distance between the voxels.
19. The device of claim 18, wherein the first filter is applied in
one volume per time point.
20. The device of claim 18, wherein the first filter is applied in
one volume averaged over all time points per time point.
21. The device of claim 18, wherein in operation, the at least one
processor further applies a second filter to further remove random
noise to the at least a portion of the received set of MRI data by
the at least one processor-based device.
Description
BACKGROUND
Technical Field
[0001] The present disclosure generally relates to magnetic
resonance imaging (MRI), and in particular related to
four-dimensional (4D) flow MRI.
Description of the Related Art
[0002] MRI is most commonly employed in medical imaging, although
can be used in other fields. MRI machines include a main magnet
which is typically an annular array of coils having a central or
longitudinal bore. The main magnet is capable of producing a strong
stable magnetic field (e.g., 0.5 Tesla to 3.0 Tesla). The bore is
sized to receive at least a portion of an object to be imaged, for
instance a human body. When used in medical imaging applications,
the MRI machine may include a patient table which allows a prone
patient to be easily slid or rolled into and out of the bore.
[0003] MRI machines also include gradient magnets. The gradient
magnets produce a variable magnetic field that is relatively
smaller than that produced by the main magnet (e.g., 180 Gauss to
270 Gauss), allowing selected portions of an object (e.g., patient)
to be imaged. MRI machines also include radio frequency (RF) coils
which are operated to apply radiofrequency energy to selected
portions of the object (e.g., patient) to be imaged. Different RF
coils may be used for imaging different structures (e.g., anatomic
structures). For example, one set of RF coils may be appropriate
for imaging a neck of a patient, while another set of RF coils may
be appropriate for imaging a chest or heart of the patient. MRI
machines commonly include additional magnets, for example resistive
magnets and/or permanent magnets.
[0004] The MRI machine typically includes, or is communicatively
coupled to a computer system used to control the magnets and/or
coils and/or to perform image processing to produce images of the
portions of the object being imaged. Conventionally, MRI machines
produce magnitude data sets which represent physical structures,
for instance anatomical structures. The data sets are often conform
to the Digital Imaging and Communications in Medicine (DICOM)
standard. DICOM files typically include pixel data and metadata in
a prescribed format.
BRIEF SUMMARY
[0005] Recently, proposals for producing 4D flow data sets which
include anatomical data and velocity in three orthogonal
directions, which may be denominated as x velocity, y velocity, and
z velocity.
[0006] In use, an MRI study may be defined for a single patient
session. Each MRI study typically includes several series of
perfusion and 4D flow acquisitions, during which multiple sets of
MRI data (e.g., 100 images) are acquired for each series. Series
may be split into magnitude and phase acquisition portions. The
resulting images may be annotated with information.
[0007] 4D flow pulse sequence MRI has great promise for providing
low cost, fast and accurate medical imaging, particularly for
cardiac MRI procedures. Some impediments to adoption include high
costs. For example, there are high dollar and lost opportunity
costs associated with having to have a clinician (e.g., physician)
present during the MRI procedure (e.g., acquisition) to assess
anatomy during the imaging. There are also high costs associated
with the computational powerful computers which are employed at
clinical facilities at which the MRI medical imaging is performed
and the personnel required to operate and maintain such equipment.
Approaches which require breath holding may not be feasible with
some patients (e.g., very young or infant). Synchronization of
image acquisition with breathing (i.e., pulmonary or respiratory
cycles) and/or cardiac cycles also significantly length procedures.
Lengthy procedures increase costs as expensive equipment and costly
personnel are dedicated to a single patient for the period,
reducing throughput. Such also has a tendency to heighten patient
anxiety. Not only do these approaches tend to require highly
trained technicians and clinicians to be present, but annotation of
imaging results tends to be difficult. Further, due to the
subjectivity in interpreting the images, for example anatomical
structure, there tends to be little repeatability from series to
series, let alone from session to session.
[0008] Various apparatus, methods and articles are described herein
which at least in part address one or more of these issues.
[0009] Instead of acquiring only specific planes during MRI
acquisition, 4D pulse sequences are employed that acquire a full 3D
volume set which includes phase contrast data, hence is denominated
as 4D phase contrast MRI. This provides a clinician with the
freedom to view any plane they desire, after acquisition without
the continued presence of the patient. Error detection and/or
correction, segmentation (e.g., delineation of boundaries),
quantification, verification and visualization (e.g., fusion of
visual representations of flow information with visual
representations of anatomy) may be performed on the resulting MRI
data set. Much of the image processing and analysis can be
performed autonomously (e.g., without intervention of a human).
[0010] An MRI image processing and analysis system may be remotely
located from one or more MRI acquisition systems, and perform:
perform error detection and/or correction on MRI data sets (e.g.,
phase error correction, phase aliasing, signal unwrapping, and/or
on other artifacts); segmentation; visualization of flow (e.g.,
velocity, arterial versus venous flow, shunts) superimposed on
anatomical structure, quantification; verification; and/or
generation of patient specific 4-D flow protocols. An asynchronous
command and imaging pipeline allows remote image processing and
analysis in a timely and secure manner even with complicated or
large 4-D flow MRI data sets.
[0011] A remote MRI image processing and analysis system may
provide cloud based, Web services, or software as services (SAS).
The MRI image processing and analysis system employ powerful
computational resources, for example large sets or arrays of GPUs.
The MRI image processing and analysis system may serve multiple MRI
acquisition systems, the MRI acquisition systems operated by one or
more diagnostic entities and/or located at one or more diagnostic
facilities. This can significantly reduce costs to diagnostic
facilities, and the burdens associated with acquiring and
maintaining expensive computational equipment.
[0012] The approaches described herein may simplify MRI procedures.
The approach provides a turn-key system, which captures complete 4D
flow images, eliminating the need to have a clinician present
during the MRI procedure. The approaches described herein may also
significantly shorten the length of MRI procedures. This reduces
cost associated with personnel and equipment. This may also
increase throughput, allowing capital intensive MRI systems to be
amortized over a large number of patients during the equipment's
useful life.
[0013] The approaches described herein also provide for automated
or even autonomous validation of results. Relying on mass
conversation principals, at least one approach can identify shunts
or other anatomical abnormalities.
[0014] Due to enhanced repeatability across a patient or across a
population, the approaches described herein may allow
identification of new indicators, development of new
treatments.
[0015] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; identifying one or more instances of structure
in the set of MRI flow data by at least one processor-based device;
and deriving contours in the set of MRI flow data based on the
identified one or more instances of structure in the set of MRI
flow data by at least one processor-based device. Identifying one
or more instances of structure in the set of MRI flow data may
include identifying one or more instances of coherency in the set
of MRI flow data. Identifying one or more instances of coherency in
the set of MRI flow data may include identifying one or more
instances of directional coherency in the set of MRI flow data.
Identifying one or more instances of coherency in the set of MRI
flow data may include identifying one or more instances of
directional pathline or structural coherency in the set of MRI flow
data. Identifying one or more instances of coherency in the set of
MRI flow data may include identifying one or more instances of
Discrete Fourier Transform (DFT) component coherency in the set of
MRI flow data. Identifying one or more instances of coherency in
the set of MRI flow data may include identifying one or more
instances of acceleration coherency in the set of MRI flow
data.
[0016] The may further include identifying one or more instances of
clinical markers in the set of MRI flow data, by the at least one
processor, based on the identified one or more instances of
structure in the set of MRI flow data. Identifying one or more
instances of clinical markers in the set of MRI flow data may
include identifying one or more instances of anatomical markers
and/or temporal markers in the set of MRI flow data. Identifying
one or more instances of clinical markers in the set of MRI flow
data may include identifying one or more instances of aneurysms,
stenosis, or plaque in the set of MRI flow data. Identifying one or
more instances of clinical markers in the set of MRI flow data may
include identifying one or more pressure gradients in the set of
MRI flow data. Identifying one or more instances of clinical
markers in the set of MRI flow data may include identifying one or
more instances of anatomical landmarks of a heart in the set of MRI
flow data. Deriving contours in the set of MRI flow data based on
the identified one or more instances of structure in the set of MRI
flow data may include deriving contours in the set of MRI flow data
that represent various bodily tissues.
[0017] The method may further include autonomously segmenting blood
bodily tissue from non-blood bodily tissues by at least one
processor-based device.
[0018] The method may further include autonomously segmenting air
from bodily tissues by at least one processor-based device.
[0019] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including for a first study of a subject, in a first pass and prior
to a first MRI acquisition series: receiving input at a
processor-based device, the input specific to the first MRI
acquisition; and generating a 4D flow localizer by the
processor-based device based at least in part on the received
input. Receiving input may include receiving at least one of: a
clinical indication, a type or identify of a contrast agent, an
amount of contrast agent, a subject's weight, a subject's height,
and a subject's heart rate, an amount of time elapsed after bolus
provided to subject, an identification of an MRI hardware
manufacturer, a type of coil to used, and an identification of at
least one characteristic of an MRI machine to be used.
[0020] The method may further include for the first study of the
subject, in a second pass and prior to a second MRI acquisition
series: receiving information about the first MRI acquisition
series at a processor-based device; and generating a high fidelity
4D flow localizer by the processor-based device based at least in
part on the received information. Receiving information about the
first MRI acquisition series at a processor-based device may
include receiving output from the first MRI acquisition series.
Receiving information about the first MRI acquisition series at a
processor-based device may include receiving metrics indicative of
a quality of the first MRI acquisition series. Receiving metrics
indicative of a quality of the first MRI acquisition series may
include at least one rating indicative of a quality of the first
MRI acquisition series as assessed by at least one human.
Generating a high fidelity 4D flow localizer by the processor-based
device based at least in part on the received information may
include specifying one or more of: a duration of acquisition, a
VENC, a field of view, a repetition time (TR), an echo time (TE), a
row resolution, a column resolution, a slice resolution, a temporal
resolution, and a flip angle. Generating a high fidelity 4D flow
localizer may include determining a value for a velocity encoding
(VENC) parameter. Determining a value for a velocity encoding
(VENC) parameter may include determining at least an approximation
of a velocity of a blood flow in a lumen, and selecting a value for
the VENC via a look-up table. Determining a value for a velocity
encoding (VENC) parameter may include determining a number of
channels of a coil to be used in the acquisition and selecting the
value for the VENC based at least in part on the number of channels
in the coils.
[0021] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0022] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including for a plurality of voxels of an MRI image data set,
grouping the voxels into a number of bins by at least one
processor-based device; reducing the number of bins via the at
least one processor-based device; for a first and a second one of
the bins, determining which of the first or the second ones of the
bins includes voxels representative of arterial blood flow and
which of the first or second one of the bins includes voxels
representative of venous blood flow; and assigning a first set of
colors to the voxels representative of arterial blood flow and
assigning a second set of colors to the voxels representative of
venous blood flow, the second set of colors different than the
first set of colors. Assigning a first set of colors to the voxels
representative of arterial blood flow may include assigning a
single blue color to the voxels representative of arterial blood
flow and wherein assigning the second set of colors to the voxels
representative of venous blood flow may include assigning a single
red color to the voxels representative of venous blood flow.
[0023] Determining which of the first or the second ones of the
bins may include voxels representative of arterial blood flow and
which of the first or second one of the bins may include voxels
representative of venous blood flow may include determining which
of the first or the second ones of the bins may include voxels
representative of arterial blood flow and which of the first or
second one of the bins may include voxels representative of venous
blood flow based on a proximity of at least one of the voxels to a
number of anatomical landmarks by the at least one processor-based
device. Determining which of the first or the second ones of the
bins may include voxels representative of arterial blood flow and
which of the first or second one of the bins may include voxels
representative of venous blood flow may include determining which
of the first or the second ones of the bins may include voxels
representative of arterial blood flow and which of the first or
second one of the bins may include voxels representative of venous
blood flow based on a closet one of the voxels in each bin to a
number of anatomical landmarks by the at least one processor-based
device.
[0024] The method may further include autonomously identifying the
anatomical landmarks by the processor-based device.
[0025] The method may further include receiving user input that
identifies the anatomical landmarks by the processor-based
device.
[0026] The method may further include for each of at least some of
the plurality of voxels, determining whether the respective voxel
is representative of blood flow before grouping the voxels into the
plurality of bins; and logically marking voxels which are
determined to be representative of blood flow. Determining whether
the respective voxel may be representative of blood flow may
include autonomously determining whether the respective voxel may
be representative of blood flow by the at least one processor-based
device. Determining whether the respective voxel may be
representative of blood flow may include receiving user input
indicative of whether the respective voxel may be representative of
blood flow by the at least one processor-based device. Reducing the
number of bins via the at least one processor-based device may
include, where the voxels of one bin spatially contact the voxels
of another bin over time, consolidating the voxels into one of the
bins.
[0027] The method may further include determining if there are more
than two bins; and in response to determining if there are more
than two bins, determining whether some of the voxels represent a
potential shunt by the at least one processor-based device.
Determining whether some of the voxels represent a potential shunt
by the at least one processor-based device may include identifying
areas where adjacent bins are connected by a number of voxels that
is less than a defined threshold number of voxels or by an area
that is smaller than a defined threshold area.
[0028] The method may further include providing a visual emphasis
to at least one of voxels that represent the potential shunt or
areas at least proximate the potential shunt. Providing a visual
emphasis to at least one of voxels that represent the potential
shunt or areas at least proximate the potential shunt may include
assigning a third set of colors to the voxels that represent the
potential shunt or areas at least proximate the potential shunt,
the third set of colors different than both the first and the
second sets of colors.
[0029] The method may further include receiving input by the at
least one processor-based device, the input indicative of a human
assessment of whether the voxels represent an actual shunt; and
updating a color of the voxels that represent the potential shunt
based on the received the input indicative of the human assessment
of whether the voxels represent an actual shunt. Determining which
of the first or the second ones of the bins may include voxels
representative of arterial blood flow and which of the first or
second one of the bins may include voxels representative of venous
blood flow may include for each of at least some of the bins,
identifying any voxels in the bin that have a coherence value above
a threshold coherence value; for any voxels in the bin that have a
coherence value above the threshold coherence value, computing an
angle between an average velocity over all of a plurality of time
points and a vector that connects a centroid of the respective
voxel with a centroid of an anatomical structure; and computing an
average angle between all voxels in the bin and the centroid of the
anatomical structure.
[0030] Determining which of the first or the second ones of the
bins may include voxels representative of arterial blood flow and
which of the first or second one of the bins may include voxels
representative of venous blood flow may further include assigning
the bin that has a highest average angle as representing the
arterial blood flow; and assigning the bin that has a lowest
average angle as representing the venous blood flow. Computing an
angle between an average velocity over all of a plurality of time
points and a vector that connects a centroid of the respective
voxel with a centroid of an anatomical structure may include
computing the angle between the average velocity over all of the
plurality of time points and the vector that connects the centroid
of the respective voxel with the centroid of a heart.
[0031] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0032] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; and applying a first filter to isolate blood
flow based on directional coherence to at least a portion of the
received set of MRI data by the at least one processor-based
device. Applying a first filter to isolate blood flow based on
directional coherence to at least a portion of the received set of
MRI data may include for each of a number of voxels, calculating a
directional coherence for the respective voxel. Calculating a
directional coherence for a respective voxel may include summing a
set of weighted directional coherence scores between the respective
voxel and a plurality of neighboring voxels which are neighbors of
the respective voxel; and dividing a result of the summation by a
summation of all weights applied.
[0033] The method may further include determining the weighted
directional coherence scores between the respective voxel and the
plurality of neighboring voxels. Determining the weighted
directional coherence scores between the respective voxel and the
plurality of neighboring voxels may include determining a dot
product of the normalized velocity vectors, applying the
trigonometric function ACOS to a result of the dot product to
determine an angled difference; scaling the angle difference
between 0 and Pi to get a result between 0 and 1; and multiplying
the result of the scaling by a respective weight which is
indicative of a distance between the respective voxel and a
respective one of the neighboring voxels.
[0034] The method may further include determining the respective
weight. Determining the respective weight may include finding a
minimum spacing for all three dimensions, and dividing that minimum
spacing by a distance between the voxels. The first filter may be
applied in one volume per time point. The first filter may be
applied in one volume averaged over all time points per time
point.
[0035] The method may further include applying a second filter to
further remove random noise to the at least a portion of the
received set of MRI data by the at least one processor-based
device.
[0036] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0037] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; and identifying an anatomical volume in the
set of MRI data; determining a flow of blood into the identified
anatomical volume; determining a flow of blood out of the
identified anatomical volume; comparing the flow of blood into the
identified anatomical volume with the flow of blood out of the
identified anatomical volume by the at least one processor-based
device.
[0038] The method may further include validating a previous
operation based on a result of the comparing the flow of blood into
the identified anatomical volume with the flow of blood out of the
identified anatomical volume.
[0039] The method may further include validating a previous
segmentation operation based on a result of the comparing the flow
of blood into the identified anatomical volume with the flow of
blood out of the identified anatomical volume.
[0040] The method may further include providing a notification
based on a result of the comparing the flow of blood into the
identified anatomical volume with the flow of blood out of the
identified anatomical volume.
[0041] The method may further include providing a notification of a
detected shunt based on a result of the comparing the flow of blood
into the identified anatomical volume with the flow of blood out of
the identified anatomical volume. Identifying an anatomical volume
in the set of MRI data may include identifying at least one of a
lumen, a portion of a lumen, a vessel, a portion of a vessel, a
chamber, or a cavity or a portion of a cavity in an anatomical
structure. Identifying an anatomical volume in the set of MRI data
may include autonomously identifying the anatomical volume by the
at least one processor-based device. Identifying an anatomical
volume in the set of MRI data may include autonomously identifying
the anatomical volume based on user input received by the at least
one processor-based device.
[0042] The method may further include identifying a natural
entrance to the identified anatomical volume; and Identifying a
natural exit of the identified anatomical volume.
[0043] The method may further include denominating a first location
as an inlet to the identified anatomical volume; and denominating a
second location as an outlet from the identified anatomical volume,
the second location spaced from the first location. Determining a
flow of blood into the identified anatomical volume may include
determining a dot product of a normal vector of a first plane that
slices the identified anatomical volume at a first location and a
velocity vector at each voxel, and determining a flow of blood out
of the identified anatomical volume may include determining a dot
product of a normal vector of a second plane that slices the
identified anatomical volume at a second location and a velocity
vector at each voxel, the second location different than the first
location.
[0044] The method may further include determining a net flow of
blood into the identified anatomical volume; and determining a net
flow of blood out of the identified anatomical volume. Determining
a net flow of blood into the identified anatomical volume may
include integrating a result of a dot product of a normal vector of
a first plane that slices the identified anatomical volume at a
first location and a velocity vector at each voxel over time, and
determining a net flow of blood out of the identified anatomical
volume may include integrating a result of a dot product of a
normal vector of a second plane that slices the identified
anatomical volume at a second location and a velocity vector at
each voxel over time, the second location different from the first
location.
[0045] Comparing the flow of blood into the identified anatomical
volume with the flow of blood out of the identified anatomical
volume may include determining whether the flow values at an inlet
and an outlet of the identified anatomical volume match at least
within a defined threshold; and may further include in response to
determining that the flow values at the inlet and the outlet of the
identified anatomical volume do not match at least within the
defined threshold, providing an indication of a mismatch.
Determining whether the flow values at an inlet and an outlet of
the identified anatomical volume match at least within a defined
threshold may include autonomously determining whether the flow
values at the inlet and the outlet match within the defined
threshold by the at least one processor-based device. Comparing the
flow of blood into the identified anatomical volume with the flow
of blood out of the identified anatomical volume by the at least
one processor-based device may include comparing a flow of blood
through an ascending thoracic aorta with a combined flow of blood
through a superior vena cava and a descending thoracic aorta.
Comparing the flow of blood into the identified anatomical volume
with the flow of blood out of the identified anatomical volume by
the at least one processor-based device may include comparing a
combined flow of blood through a superior vena cava and an inferior
vena cava with a flow of blood through a set of pulmonary
vasculature. Comparing the flow of blood into the identified
anatomical volume with the flow of blood out of the identified
anatomical volume by the at least one processor-based device may
include comparing a flow of blood through the set of pulmonary
vasculature with a combined flow of blood through a set of right
pulmonary vasculature and a set of left pulmonary vasculature.
Comparing the flow of blood into the identified anatomical volume
with the flow of blood out of the identified anatomical volume by
the at least one processor-based device may include comparing a
flow of blood through the set of left pulmonary vasculature to a
sum of a flow of blood through all left pulmonary veins. Comparing
the flow of blood into the identified anatomical volume with the
flow of blood out of the identified anatomical volume by the at
least one processor-based device may include comparing a flow of
blood through a set of right pulmonary vasculature with a sum of a
flow of blood through all right pulmonary veins. Comparing the flow
of blood into the identified anatomical volume with the flow of
blood out of the identified anatomical volume by the at least one
processor-based device may include comparing a flow of blood
exiting a cardiac chamber of a heart to a change in a systolic and
a diastolic volume for each cardiac chamber of the heart.
[0046] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0047] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; identifying an anatomical volume in the set of
MRI data; identifying a plurality of planes that each intersect a
common point and that each cut across the anatomical volume at a
respective orientation, the orientations different from one
another; and autonomously comparing a flow of blood through each of
the planes over a full cardiac cycle by the at least one
processor-based device.
[0048] Autonomously comparing a flow of blood through each of the
planes over a full cardiac cycle includes autonomously determining
whether the flow of blood through each of the planes matches at
least within some defined threshold over the full cardiac
cycle.
[0049] The method may further include validating a previous
operation based on a result of the comparing the flow of blood
through each of the planes over a full cardiac cycle.
[0050] The method may further include validating a previous
segmentation operation based on a result of the comparing the flow
of blood through each of the planes over a full cardiac cycle.
[0051] The method may further include providing a notification
based on a result of the comparing the flow of blood through each
of the planes over a full cardiac cycle.
[0052] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0053] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow velocity information for each
of a plurality of voxels; identifying a seed point in a vessel
represented in the set of MRI data; identifying a time point with a
highest flow magnitude at the seed point; determining a cross
sectional plane that is perpendicular to a direction of flow based
on both the anatomical structure and blood flow velocity
information; and determining a luminal border of the vessel based
at least in part on the determined cross sectional plane.
[0054] Determining a cross sectional plane that is perpendicular to
a direction of flow based on both the anatomical structure and
blood flow velocity information may include generating a coarse
hemisphere of vectors at the seed point, where any vectors closest
to the flow direction have a highest weight; for each of the
vectors that make up the coarse hemisphere, casting a plurality of
rays perpendicularly to the vector on the coarse hemisphere; and
for each of the rays, terminating the respective ray when a
magnitude of a change in both an anatomy pixel intensity and a
velocity magnitude reaches or exceeds a threshold change.
[0055] Determining a cross sectional plane that is perpendicular to
a direction of flow based on both the anatomical structure and
blood flow velocity information may further include for each of a
number of the rays, computing a sum of areas of all of a number of
resulting triangles, where the seed point, the termination of the
respective ray and the termination of another one of the rays
define the resulting triangle; and selecting a vector on the coarse
hemisphere that has a smallest computed sum of the areas as a
normal vector for a plane that is most perpendicular to the
direction of blood flow.
[0056] The method may further include resampling a multi-planar
reconstruction which combines both the anatomical structure and
blood flow velocity information at the initial seed point, along
with the strongest flow time point, and with the normal vector.
[0057] The method may further include finding a contour that
outlines the luminal border of the vessel via an active contour
model.
[0058] The method may further include applying an energy
minimization function using gradient descent to find a smooth
contour.
[0059] The method may further include determining if a contour
diverges by more than a threshold value in area or in curvature; in
response to determining that the contour diverges by more than the
threshold value in area or in curvature, replacing the contour with
a replacement contour that is a linear blend of contours from a
plurality of time points adjacent to the time point of the contour
being replaced.
[0060] A processor-based device may have at least one processor and
at least one nontransitory processor-readable medium
communicatively coupled to the at least one processor, and may be
operable to perform any of the previous methods.
[0061] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving a plurality of user events from a plurality of
client devices via a first channel of an asynchronous command and
image pipeline; capturing at least some of the user events to a
persistence layer; determining which of the captured user events to
squelch; performing image processing and analysis; and providing a
respective response to the user events to the clients via a second
channel of the asynchronous command and image pipeline.
[0062] Receiving a plurality of user events from a plurality of
clients via a first channel of an asynchronous command and image
pipeline may include receiving the user events by a server, and may
further include providing user events by the server to an MRI image
processing and analysis system for image processing and analysis of
MRI data sets associated with the user events. Capturing at least
some of the user events to a persistence layer and determining
which of the captured user events to squelch may include: receiving
the user event as a message, and determining whether the image
processing and analysis system is busy; and in response to
determining that the compute server is not busy, immediately
forwarding the message to the compute server. Capturing at least
some of the user events to a persistence layer and determining
which of the captured user events to squelch may include: receiving
the user event as a message, and determining whether the image
processing and analysis system is busy; and in response to
determining that the compute server is busy, placing the message in
a slot.
[0063] The method may further include placing a more recent message
in the slot that the message placed in the slot.
[0064] The method may further include detecting a completion event;
and forwarding the respective response to the user event to the
respective client. In response to a response that may include image
data, sending the response as an HTTPS image request, and HTTPS
AJAX request or via a Web socket with binary support. In response
to a response that may not include image data, sending the response
directly via a Web socket.
[0065] The method may further include determining if the is a
message in the slot; in response to determining that there is a
message in the slot, waiting for a completion event to be detected;
in response to detecting the completion event, sending the message
from the slot to the compute server; and clearing the slot.
[0066] The method may further include rendering multiple images
that have linked properties as one larger image; and sending the
one large image as a single response.
[0067] The method may further include overlaying at least one of
lines, markers, or planes in the images before sending the one
large image as the single response.
[0068] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including providing access to information from a secure clinical
facility network through a first firewall by a remote, where all
secure patient health information is retained on the secure
clinical facility network; securing a MRI image processing and
analysis system from the Internet by a second firewall.
[0069] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including receiving raw DICOM files by an anonymization service
running on a clinical facility network; generating a hash of any
plain text patient health information in the raw DICOM file;
replacing any plain text patient health information in the raw
DICOM file with the respective hash of the plain text patient
health information;
[0070] The method may further include identifying all patient
health information fields in the raw DICOM file, and wherein
generating a hash of any plain text patient health information in
the raw DICOM file includes generating a salted hash.
[0071] The method may further include accessing a key kept within
the clinical facility network that turns plain text patient health
information into a hash by the anonymization service. The method
may further include allowing access to the anonymization service
running on a clinical facility network from outside the clinical
facility network only by a VPN of the clinical facility.
[0072] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including servicing a plurality of request by a first proxy server,
the request coming from with a clinical facility network and from
outside the clinical facility network; in response to at least some
of the requests, generating plain text information from hashed
patient health information by the proxy server; replacing the
hashed patient health information with the plain text information
by the proxy server; and transmitting the resulting information to
a client device.
[0073] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including connecting by a client to a server of the MRI image
processing and analysis system, the server outside a clinical
facility network; checking a flag that indicates whether the client
is missing information required to render the patient health
information in plain text; in response to an indication that the
client is missing information required to render the patient health
information in plain text PHI, connecting by the client to an
anonymization service; requesting the patient health information in
plain text by the client from the anonymization service. Requesting
the patient health information in plain text by the client from the
anonymization service may include providing a hash or an
identifier.
[0074] The method may further include caching the received plain
text patient health information locally by the client.
[0075] The method may further include purging the cached plain text
patient health by the client in response to a user logging out.
[0076] A method of operation for use with magnetic resonance
imaging (MRI) based medical imaging systems may be summarized as
including: receiving a set of MRI data by at least one
processor-based device, the set of MRI data comprising respective
anatomical structure and blood flow information for each of a
plurality of voxels; applying a Discrete Fourier Transform (DFT) to
each of a plurality of voxels in the set of MRI data over a
plurality of available time-points, by the at least one
processor-based device; and examining a number of components of the
DFT at each of the voxels over the available time-points by the at
least one processor-based device.
[0077] Applying a DFT to each of a plurality of voxels in the set
of MRI data over a plurality of available time-points may include
applying a DFT to three velocity components (x, y, z) of the blood
flow information. Applying a DFT to each of a plurality of voxels
in the set of MRI data over a plurality of available time-points
may include applying a DFT to a resulting velocity magnitude of the
blood flow information. The method may further include: segmenting
a blood pool from static tissue based at least part on the DFT
components, by the at least one processor. Segmenting a blood pool
from static tissue based at least part on the DFT components may
include segmenting the blood pool from the static tissue based at
least part on a set of low order, non-DC DFT components,
autonomously by the at least one processor. The method may further
include: identifying lung tissue in the MRI data. The method may
further include: combining a number of DFT components together
without regard for relative magnitude or phase to produce a general
mask to locate all blood flow within a chest scan, by the at least
one processor. The method may further include: combining a number
of DFT components together taking into account relative magnitude
or phase of the DFT components to produce a refined mask to
identify a particular region of a blood pool in the body, by the at
least one processor. The method may further include:
[0078] comparing a phase of the DFT components to a time-point of
peak systole, and assigning a probability to each voxel based on an
amount of deviation of the phase from an expected value, by the at
least one processor. The method may further include: distinguishing
between a blood flow in the aorta and a blood flow in the pulmonary
arteries based at least in part on the refined mask, by the at
least one processor. The method may further include: identifying a
probability cutoff value based at least in part on a histogram of
the resulting probability values, autonomously by the at least one
processor. The method may further include: identifying a
probability cutoff value for an arterial specific mask based at
least in part on a histogram of the resulting probability values,
autonomously by the at least one processor; and determining a
probability cutoff values for at least one other mask based at
least in part on the arterial specific mask. Determining a
probability cutoff values for at least one other mask based at
least in part on the arterial specific mask may include performing
a flood fill of a general blood mask to remove extraneous
non-connected pieces. The method may further include: separating
the arterial specific mask into two main portions based at least in
part on a number of flow directions and a number or gradients
and/or a number of path-lines along with the resulting probability
values, by the at least one processor. The method may further
include: distinguishing the aorta and the pulmonary artery from one
another based at least in part at least one of an average direction
of flow or a relative position of the two main portions in space,
by the at least one processor. The method may further include:
producing a probability mask for a wall of the heart, autonomously
by the at least one processor. The method may further include:
combining the probability mask for the wall of the heart with a
blood flow mask, by the at least one processor. The method may
further include: employing the probability mask for the wall of the
heart in performing eddy current correction, by the at least one
processor. The method may further include: employing the
probability mask for the wall of the heart to provide at least one
of a location and/or a size of the heart in an image, by the at
least one processor.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0079] In the drawings, identical reference numbers identify
similar elements or acts. The sizes and relative positions of
elements in the drawings are not necessarily drawn to scale. For
example, the shapes of various elements and angles are not
necessarily drawn to scale, and some of these elements may be
arbitrarily enlarged and positioned to improve drawing legibility.
Further, the particular shapes of the elements as drawn, are not
necessarily intended to convey any information regarding the actual
shape of the particular elements, and may have been solely selected
for ease of recognition in the drawings.
[0080] FIG. 1 is a schematic view of a networked environment
including at least one MRI acquisition system and at least one
image processing system, the MRI acquisition system located in a
clinical setting and the image processing system located remotely
from the MRI acquisition system and communicatively coupled
therewith over one or more networks, according to one illustrated
embodiment.
[0081] FIG. 2 is a functional block diagram of an MRI acquisition
system and an MRI image processing and analysis system that
provides MRI image processing and analysis services, according to
one illustrated embodiment.
[0082] FIG. 3A is a schematic view of a data flow in an MRI image
processing and analysis or rendering system, according to one
illustrated embodiment.
[0083] FIG. 3B is a schematic view of a data flow in an MRI imaging
and processing/analysis environment, according to one illustrated
embodiment.
[0084] FIG. 4A is a look-up table of exemplary velocity encoding
(VENC) values for ranges of flow velocity in bodily vessels or
chambers, according to one illustrated embodiment.
[0085] FIG. 4B is a look-up table of exemplary values for scan
length or duration for a number of channels of a cardiac coil,
according to one illustrated embodiment.
[0086] FIG. 5 is a flow diagram illustrating a method of operation
with a 4D flow localizer and an optional refinement algorithm,
according to one illustrated embodiment.
[0087] FIG. 6 is a flow diagram showing a high level method of
operation of generating a color map of blood flow, according to one
illustrated embodiment.
[0088] FIG. 7 is a flow diagram showing a method of determining
whether a bin corresponds to venous flow or arterial flow,
according to one illustrated embodiment.
[0089] FIG. 8 is a flow diagram showing a method of determining
whether a bin corresponds to venous flow or arterial flow,
according to one illustrated embodiment.
[0090] FIG. 9A is schematic diagram of operation of an asynchronous
command and imaging pipeline, according to one illustrated
embodiment.
[0091] FIG. 9B is schematic diagram of operation of the
asynchronous command and imaging pipeline of FIG. 9A, at a
different time.
DETAILED DESCRIPTION
[0092] In the following description, certain specific details are
set forth in order to provide a thorough understanding of various
disclosed embodiments. However, one skilled in the relevant art
will recognize that embodiments may be practiced without one or
more of these specific details, or with other methods, components,
materials, etc. In other instances, well-known structures
associated with MRI machines, computer systems, server computers,
and/or communications networks have not been shown or described in
detail to avoid unnecessarily obscuring descriptions of the
embodiments.
[0093] Unless the context requires otherwise, throughout the
specification and claims which follow, the word "comprise" and
variations thereof, such as, "comprises" and "comprising" are
synonymous with "including," and are s inclusive or open-ended
(i.e., does not exclude additional, unrecited elements or method
acts).
[0094] Reference throughout this specification to "one embodiment"
or "an embodiment" means that a particular feature, structure or
characteristic described in connection with the embodiment is
included in at least one embodiment. Thus, the appearances of the
phrases "in one embodiment" or "in an embodiment" in various places
throughout this specification are not necessarily all referring to
the same embodiment. Furthermore, the particular features,
structures, or characteristics may be combined in any suitable
manner in one or more embodiments.
[0095] As used in this specification and the appended claims, the
singular forms "a," "an," and "the" include plural referents unless
the content clearly dictates otherwise. It should also be noted
that the term "or" is generally employed in its sense including
"and/or" unless the content clearly dictates otherwise.
[0096] The headings and Abstract of the Disclosure provided herein
are for convenience only and do not interpret the scope or meaning
of the embodiments.
[0097] Many of the implementations described herein take advantage
of a 4-D flow MRI data set, which essentially captures MRI
magnitude and phase information for a three dimensional volume over
a period of time. This approach may allow capture or acquisition of
MRI data sets without requiring breath holding or synchronization
or gating to a patient's cardiac or pulmonary cycles. Instead, MRI
data sets are captured or acquired, and imaging processing and
analysis employed to derive the desired information, for example by
re-binning acquired information based on the cardiac and pulmonary
cycles. This essentially pushes what is normally time-intensive
acquisition operations to the imaging processing and analysis
stage. As way of a simplified analogy, in some respects such may be
thought of as capturing a movie of the anatomical structure (e.g.,
chest, heart) without concern over a patient's pulmonary or cardiac
cycles, the processing the captured movie to account for relative
movement introduced by the pulmonary and cardiac cycles. The
captured information includes both magnitude information, which is
indicative of anatomical structure, and phase information which is
indicative of velocity. The phase information allows distinction
between static and non-static tissue, for example allowing
non-static tissue (e.g., blood, air) to be distinguished from
static tissue (e.g., fat, bone). The phase information also allows
certain non-static tissue (e.g., air) to be distinguished from
other non-static tissue (e.g., blood). This may advantageously
allow automated or even autonomous segmentation between tissues,
and/or distinguishing atrial blood flow from venous blood flow.
This may advantageously allow automated or even autonomous
generation of flow visualization information, which may be
superimposed on anatomical information. This may also
advantageously allow automated or even autonomous flow
quantification, identifying abnormalities and/or verifying
results.
[0098] The workflow may general divided into three portions,
sequentially: 1) image acquisition, 2) image reconstruction, and 3)
image processing or post-processing and analysis. Alternatively,
the workflow may be divided into 1) operational, 2) preprocessing,
and 3) visualization and quantification.
[0099] Image acquisition may include determining, defining,
generating or otherwise setting one or more pulse sequences, which
are used to run the MRI machine (e.g., control magnets) and acquire
raw MRI. Use of a 4D flow pulse sequence allow capture of not only
anatomical structure, which is represented by magnitude, but of
velocity, which is represented by phase. At least one of the
methods or techniques described herein, generation of patient
specific 4D pulse sequences, occurs during or as part of image
acquisition portion. Image reconstruction may, for example, employ
fast Fourier transformations, and result in MRI data sets, often in
a form compatible with the DICOM standard. Image reconstruction has
traditional been computationally intensive often relying on
supercomputers. The requirement for such is a significant burden to
many clinical facilities. Many of the methods and techniques
described herein occur during or as part of the imaging processor
or post-processing and analysis. Such can include error detection
and/or error correction, segmentation, visualization including
fusion of flow related information and images of anatomical
structures, quantification, identification of abnormalities
including shunts, verification including identification of spurious
data. Alternatively, error detection and/or error correction may
occur during the preprocessing portion.
[0100] FIG. 1 shows a networked environment 100 according to one
illustrated embodiment, in which one or more MRI acquisition system
(one shown) 102 are communicatively coupled to at least one image
processing and analysis system 104 via one or more networks 106a,
106b (two shown, collectively 106).
[0101] The MRI acquisition system 102 is typically located at a
clinical facility, for instance a hospital or dedicated medical
imaging center. Various techniques and structures, as explained
herein, may advantageously allow the image processing and analysis
system 104 to be remotely located from the MRI acquisition system
102. The image processing and analysis system 104 may, for example,
be located in another building, city, state, province or even
country.
[0102] The MRI acquisition system 102 may, for example, include an
MRI machine 108, a computer system 110 and an MRI operator's system
112. The MRI machine 108 may include a main magnet 114, which is
typically an annular array of coils having a central or
longitudinal bore 116. The main magnet 108 is capable of producing
a strong stable magnetic field (e.g., 0.5 Tesla to 2.0 Tesla). The
bore 116 is sized to receive at least a portion of an object to be
imaged, for instance a human body 118. When used in medical imaging
applications, the MRI machine 108 typically includes a patient
table 120 which allows a prone patient 118 to be easily slid or
rolled into and out of the bore 116.
[0103] The MRI machine also includes a set of gradient magnets 122
(only one called out). The gradient magnets 122 produce a variable
magnetic field that is relatively smaller than that produced by the
main magnet 114 (e.g., 180 Gauss to 270 Gauss), allowing selected
portions of an object (e.g., patient) to be imaged.
[0104] MRI machine 108 also include radio frequency (RF) coils 124
(only one called out) which are operated to apply radiofrequency
energy to selected portions of the object (e.g., patient 118) to be
imaged. Different RF coils 124 may be used for imaging different
structures (e.g., anatomic structures). For example, one set of RF
coils 124 may be appropriate for imaging a neck of a patient, while
another set of RF coils 124 may be appropriate for imaging a chest
or heart of the patient. MRI machines 108 commonly include
additional magnets, for example resistive magnets and/or permanent
magnets.
[0105] The MRI machine 108 typically includes, or is
communicatively coupled to, a processor-based MRI control system
126 used to control the magnets and/or coils 114, 122, 124. The
processor-based control system 126 may include one or more
processors, non-transitory computer- or processor-readable memory,
drive circuitry and/or interface components to interface with the
MRI machine 108. The processor-based control system 126 may, in
some implementations, also perform some preprocessing on data
resulting from the MRI operation.
[0106] An MRI operator's system 128 may include a computer system
130, monitor or display 132, keypad and/or keyboard 134, and/or a
cursor control device such as a mouse 136, joystick, trackpad,
trackball or the like. The MRI operator's system 128 may include or
read computer- or processor executable instructions from one or
more non-transitory computer- or processor-readable medium, for
instance spinning media 138 such as a magnetic or optical disk. The
operator's system 128 may allow a technician to operate the MRI
machine 108 to capture MRI data from a patient 118. Various
techniques, structures and features described herein may allow MRI
machine 108 operation by a technician without requiring the
presence of a clinician or physician. Such may advantageously
significantly lower costs of MRI procedures. Also as described
herein, various techniques, structures and features may allow MRI
procedures to be performed much more quickly than using
conventional techniques. Such may advantageously allow higher
throughput for each MRI installation, amortizing cost of the
capital intensive equipment over a much larger number of
procedures. For example, high computational power computers may be
located remotely from the clinical setting, and may be used to
server multiple clinical facilities. The various techniques,
structures and features described herein may also additionally or
alternatively advantageously reduce the time that each patient is
exposed to the MRI procedure, reducing or alleviating the anxiety
that often accompanies undergoing an MRI procedure. For instance,
eliminating the need for breath holding and/or synchronizing with a
patient's pulmonary and/or cardiac cycles via image processing and
analysis techniques described herein may significantly reduce the
time for acquisition, for example to eight to ten minutes.
[0107] The image processing and analysis system 104 may include one
or more servers 139 to handle incoming requests and responses, and
one or more rendering or image processing and analysis computers
140. The server(s) 139 may, for example take the form of one or
more server computers, workstation computers, supercomputers, or
personal computers, executing server software or instructions. The
one or more rendering or image processing and analysis computers
140 may take the form of one or more computers, workstation
computers, supercomputers, or personal computers, executing image
processing and/or analysis software or instructions. The one or
more rendering or image processing and analysis computers 140 will
typically employ one, and preferably multiple, graphical processing
units (GPUs) or GPU cores.
[0108] The image processing and analysis system 104 may include one
or more non-transitory computer-readable medium 142 (e.g., magnetic
or optical hard drives, RAID, RAM, Flash) that stores
processor-executable instructions and/or data or other information.
The image processing and analysis system 104 may include one or
more may include one or more image processing and analysis
operator's systems 144. The image processing and analysis
operator's system 144 may include a computer system 146, monitor or
display 148, keypad and/or keyboard 150, and/or a cursor control
device such as a mouse 152, joystick, trackpad, trackball or the
like. The image processing and analysis operator's system 144 may
be communicatively coupled to the rendering or image processing and
analysis computer(s) 140 via one or more networks, for instance a
LAN 154. While many image processing techniques and analysis may be
fully automated, the image processing and analysis operator's
system may allow a technician to perform certain image processing
and/or analysis operations on MRI data captured from a patient.
[0109] While illustrated as a single nontransitory computer- or
processor-readable storage medium 142, in many implementations the
nontransitory computer- or processor-readable storage medium 142
may constitute a plurality of nontransitory storage media. The
plurality of nontransitory storage media may be commonly located at
a common location, or distributed at a variety of remote locations.
Thus, a database of raw MRI data, preprocessed MRI data and/or
processed MRI data may be implemented in one, or across more than
one, nontransitory computer- or processor-readable storage media.
Such database(s) may be stored separately from one another on
separate computer- or processor-readable storage medium 142 or may
be stored on the same computer- or processor-readable storage
medium 142 as one another. The computer- or processor-readable
storage medium 142 may be co-located with the image processing and
analysis system 104, for example, in the same room, building or
facility. Alternatively, the computer- or processor-readable
storage medium 142 may be located remotely from the image
processing and analysis system 104, for example, in a different
facility, city, state or country. Electronic or digital
information, files or records or other collections of information
may be stored at specific locations in non-transitory computer- or
processor-readable media 142, thus are logically addressable
portions of such media, which may or may not be contiguous.
[0110] As noted above, the image processing and analysis system 104
may be remotely located from the MRI acquisition system 102. The
MRI acquisition system 102 and the image processing and analysis
system 104 are capable of communications, for example via one or
more communications channels, for example local area networks
(LANs) 106a and Wide Area Networks (WANs) 106b. The networks 106
may, for instance include packet switched communications networks,
such as the Internet, Worldwide Web portion of the Internet,
extranets, and/or intranets. The networks 106 may take the form of
various other types of telecommunications networks, such as
cellular phone and data networks, and plain old telephone system
(POTS) networks. The type of communications infrastructure should
not be considered limiting.
[0111] As illustrated in FIG. 1, the MRI acquisition system 102 is
communicatively coupled to the first LAN 106a. The first LAN 106a
may be a network operated by or for the clinical facility,
providing local area communications for the clinical facility. The
first LAN 106a is communicatively coupled to the WAN (e.g.,
Internet) 106b. A first firewall 156a may provide security for the
first LAN.
[0112] Also as illustrated in FIG. 1, the image processing and
analysis system 104 is communicatively coupled to the second LAN
154. The second LAN 154 may be a network operated by or for an
image processing facility or entity, providing local area
communications for the image processing facility or entity. The
second LAN 154 is communicatively coupled to the WAN 106b (e.g.,
Internet). A second firewall 156b may provide security for the
second LAN 154.
[0113] The image processing facility or entity may be independent
from the clinical facility, for example an independent business
providing services to one, two or many clinical facilities.
[0114] While not illustrated, the communications network may
include one or more additional networking devices. The networking
devices may take any of a large variety of forms, including
servers, routers, network switches, bridges, and/or modems (e.g.,
DSL modem, cable modem), etc.
[0115] While FIG. 1 illustrates a representative networked
environment 100, typical networked environments may include many
additional MRI acquisition systems, image processing and analysis
system 104, computer systems, and/or entities. The concepts taught
herein may be employed in a similar fashion with more populated
networked environments than that illustrated. For example, a single
entity may provide image processing and analysis services to
multiple diagnostic entities. One or more of the diagnostic
entities may operate two or more MRI acquisition systems 102. For
example, a large hospital or dedicated medical imaging center may
operate two, three or even more MRI acquisition systems at a single
facility. Typically, the entity that provides the image processing
and analysis services will operate multiple entity may provide
image processing and analysis systems 104 which may include two,
three or even hundreds of rendering or image processing and
analysis computers 140.
[0116] FIG. 2 shows a networked environment 200 comprising one or
more image processing and analysis systems 104 (only one
illustrated) and one or more associated nontransitory computer- or
processor-readable storage medium 204 (only one illustrated). The
associated nontransitory computer- or processor-readable storage
medium 204 is communicatively coupled to the image processing and
analysis system(s) 104 via one or more communications channels, for
example, one or more parallel cables, serial cables, or wireless
channels capable of high speed communications, for instance, via
FireWire.RTM., Universal Serial Bus.RTM. (USB) 2 or 3, and/or
Thunderbolt.RTM., Gigabyte Ethernet.RTM..
[0117] The networked environment 200 also comprises one or more end
MRI acquisition systems 102 (only one illustrated). The MRI
acquisition system(s) 102 are communicatively coupled to the image
processing and analysis system(s) 104 by one or more communications
channels, for example, one or more wide area networks (WANs) 210,
for instance the Internet or Worldwide Web portion thereof.
[0118] In operation, the MRI acquisition systems 102 typically
function as a client to the image processing and analysis system
104. In operation, the image processing and analysis systems 104
typically functions as a server to receive requests or information
(e.g., MRI data sets) from the MRI acquisition systems 102.
Described herein is an overall process which employs an
asynchronous command and imaging pipeline that allows the image
processing and analysis to be performed remotely (e.g., over a WAN)
from the MRI acquisition system 102. This approach provides for a
number of distinctive advantages, for instance allowing the MRI
acquisition system(s) 102 to be operated by a technician without
requiring the presence of a clinician (e.g., physician). Various
techniques or approaches are also described to enhance security,
while allowing access to medical imaging data as well as private
patient specific health information.
[0119] While illustrated as located remotely from the MRI
acquisition system(s) 102, in some implementations the image
processing and analysis systems 104 may be co-located with the MRI
acquisition system 102. In other implementations, one or more of
the operations or functions described herein may be performed by
the MRI acquisition system 102 or via a processor-based device
co-located with the MRI acquisition system 102.
[0120] The image processing and analysis systems 104 receive MRI
data sets, perform image processing on the MRI data sets, and
provide the processed MRI data sets, for example to a clinician for
review. The image processing and analysis systems 104 may, for
example, perform error detection and/or correction on MRI data
sets, for example phase error correction, phase aliasing detection,
signal unwrapping, and/or detection and/or correction of various
artifacts. Phase error is related to phase, as is phase aliasing.
Signal unwrapping is related to magnitude. Various other artifacts
may be related to phase and/or magnitude.
[0121] The image processing and analysis systems 104 may, for
example, perform segmentation, distinguishing between various
tissue type. The image processing and analysis systems 104 may, for
example, perform quantification, for instance comparing blood flow
into and out of a closed anatomical structure or through two or
more anatomical structures. The image processing and analysis
systems 104 may advantageously use quantification to verify
results, for example confirming identification of a certain tissue
and/or providing an indication of an amount of certainty in the
results. Additionally, the image processing and analysis systems
104 may advantageously use quantification to identify the existence
of a shunt.
[0122] In some implementations, the image processing and analysis
systems 104 may generate images which reflect blood flow, for
example including distinguishing between arterial and venous blood
flow. For instance, the image processing and analysis systems 104
may employ a first color map (e.g., blue) to indicate arterial
blood flow and a second color map (e.g., red) to indicate venous
blood flow. The image processing and analysis systems 104 may
indicate aberrations (e.g., shunt) using some other, distinctive
color or visual emphasis. Numerous different techniques are
described for distinguishing between different tissues as wells as
between arterial and venous blood flow. Flow visualization may be
superimposed, for instance as one or more layers, on or over visual
representations of anatomical structure or magnitude data.
[0123] In some implementations, the image processing and analysis
systems 104 may generate a patient specific 4D-flow protocol for
use in operating an MRI acquisition system 102 with a specific
patient. Such may include setting an appropriate velocity encoding
(VENC) for operation of the MRI machine.
[0124] The image processing and analysis systems 104 may perform
one or more of these operations or functions autonomously, without
human input. Alternatively, the image processing and analysis
systems 104 may perform one or more of these operations or
functions based on human input, for example human input which
identifies a point, location or plane, or which otherwise
identifies a characteristic of anatomical tissue. Some planes
and/or views may be predefined, allowing the operator, user or
clinician to simply select a plane (e.g., a valve plane) or a
denominated view (e.g., 2 chamber view, 3 chamber view, 4 chamber
view) to quickly and easily obtain the desired view.
[0125] The networked environment 200 may employ other computer
systems and network equipment, for example, additional servers,
proxy servers, firewalls, routers and/or bridges. The image
processing and analysis systems 104 will at times be referred to in
the singular herein, but this is not intended to limit the
embodiments to a single device since in typical embodiments there
may be more than one image processing and analysis systems 104
involved. Unless described otherwise, the construction and
operation of the various blocks shown in FIG. 2 are of conventional
design. As a result, such blocks need not be described in further
detail herein, as they will be understood by those skilled in the
relevant art.
[0126] The image processing and analysis systems 104 may include
one or more processing units 212a, 212b (collectively 212), a
system memory 214 and a system bus 216 that couples various system
components, including the system memory 214 to the processing units
212. The processing units 212 may be any logic processing unit,
such as one or more central processing units (CPUs) 212a, digital
signal processors (DSPs) 212b, application-specific integrated
circuits (ASICs), field programmable gate arrays (FPGAs), etc. The
system bus 216 can employ any known bus structures or
architectures, including a memory bus with memory controller, a
peripheral bus, and/or a local bus. The system memory 214 includes
read-only memory ("ROM") 218 and random access memory ("RAM") 220.
A basic input/output system ("BIOS") 222, which can form part of
the ROM 218, contains basic routines that help transfer information
between elements within the image processing and analysis system(s)
104, such as during start-up.
[0127] The image processing and analysis system(s) 104 may include
a hard disk drive 224 for reading from and writing to a hard disk
226, an optical disk drive 228 for reading from and writing to
removable optical disks 232, and/or a magnetic disk drive 230 for
reading from and writing to magnetic disks 234. The optical disk
232 can be a CD-ROM, while the magnetic disk 234 can be a magnetic
floppy disk or diskette. The hard disk drive 224, optical disk
drive 228 and magnetic disk drive 230 may communicate with the
processing unit 212 via the system bus 216. The hard disk drive
224, optical disk drive 228 and magnetic disk drive 230 may include
interfaces or controllers (not shown) coupled between such drives
and the system bus 216, as is known by those skilled in the
relevant art. The drives 224, 228 and 230, and their associated
computer-readable media 226, 232, 234, provide nonvolatile storage
of computer-readable instructions, data structures, program modules
and other data for the image processing and analysis system(s) 104.
Although the depicted image processing and analysis systems 104 is
illustrated employing a hard disk 224, optical disk 228 and
magnetic disk 230, those skilled in the relevant art will
appreciate that other types of computer-readable media that can
store data accessible by a computer may be employed, such as WORM
drives, RAID drives, magnetic cassettes, flash memory cards,
digital video disks ("DVD"), Bernoulli cartridges, RAMs, ROMs,
smart cards, etc.
[0128] Program modules can be stored in the system memory 214, such
as an operating system 236, one or more application programs 238,
other programs or modules 240 and program data 242. Application
programs 238 may include instructions that cause the processor(s)
212 to perform image processing and analysis on MRI image data
sets. For example, the application programs 238 may include
instructions that cause the processor(s) 212 to perform phase error
correction on phase or velocity related data. For example, the
application programs 238 may include instructions that cause the
processor(s) 212 to correct for phase aliasing. Also for example,
the application programs 238 may include instructions that cause
the processor(s) 212 to perform signal unwrapping. Additionally or
alternatively, the application programs 238 may include
instructions that cause the processor(s) 212 to identify and/or
correct for artifacts.
[0129] The application programs 238 may include instructions that
cause the processor(s) 212 to, for example, perform segmentation,
distinguishing between various tissue type. The application
programs 238 may include instructions that cause the processor(s)
212 to perform quantification, for instance comparing blood flow
into and out of a closed anatomical structure or through two or
more anatomical structures. The application programs 238 may
include instructions that cause the processor(s) 212 to use
quantification to verify results, for example confirming
identification of a certain tissue and/or providing an indication
of an amount of certainty in the results. The application programs
238 may include instructions that cause the processor(s) 212 to use
quantification to identify the existence of a shunt.
[0130] The application programs 238 may include instructions that
cause the processor(s) 212 to generate images which reflect blood
flow, for example distinguishing between arterial and venous blood
flow. For instance, a first color map (e.g., blue) may be used to
indicate arterial blood flow and a second color map (e.g., red) to
indicate venous blood flow. Aberrations (e.g., shunt) may be
indicated using some other, distinctive color or visual emphasis.
Color transfer functions may be applied to generate the color maps.
The application programs 238 may include instructions that cause
the processor(s) 212 to superimpose visualization of flow (e.g.,
MRI phase data indicative of blood flow velocity and/or volume) on
visualization or rendered images of anatomy (e.g., MRI magnitude
data). The instructions may cause the flow visualization to be
rendered as one or more layers on the images of the anatomy to
provide a fusion of anatomy (i.e., magnitude) and flow (i.e.,
phase) information, for example as a color heat map and/or as
vectors (e.g. arrow icons) with direction and magnitude (e.g.,
represented by length, line weight). The instructions may
additionally or alternatively cause the generation of spatial
mappings or visualization of signal dispersion, turbulence and/or
pressure, which may be overlaid or superimposed on a spatial
mapping or visualization of anatomical structure. Fusing
visualization of phase or velocity related information with
visualization of anatomical information or visual representations
of anatomical structures may facilitate the identification of
anatomical landmarks. The instructions may make use of sets or
arrays of graphics processing units or GPUs to quickly render the
visualizations.
[0131] Transfer functions may also be applied to determine which
visual effects (e.g., color) to apply to which tissue. For example,
arterial blood flow may be colored in shades of blue and venous
blood flow in shades of red, while fat tissue colored as yellow.
Anatomical structure, represented as magnitude in the MRI image
data set, may, for example, be visualized using grey scale. Depth
of view may be operator or user adjustable, for example via a
slider control on a graphical user interface. Thus, visualization
may be in the form a fusion view that advantageously fuses a visual
representation of velocity information with a visual representation
of anatomical information or representation.
[0132] The application programs 238 may include instructions that
cause the processor(s) 212 to generate a patient specific 4D-flow
protocol for use in operating an MRI acquisition system 102 with a
specific patient. Such may be based on patient specific input, for
example provided by a technician, and may be based on the
particular MRI machine being used to capture the MRI data set.
[0133] The application programs 238 may include instructions that
cause the processor(s) 212 to receive image data sets from the MRI
acquisition system, process and/or analyze the image data sets, and
provide processed and/or analyzed images and other information to
users remotely located from the image processing, in a time
sensitive and secure manner. Such is described in detail herein
with reference to the various Figures.
[0134] The system memory 214 may also include communications
programs, for example, a server 244 that causes the image
processing and analysis system(s) 104 to serve electronic
information or files via the Internet, intranets, extranets,
telecommunications networks, or other networks as described below.
The server 244 in the depicted embodiment is markup language based,
such as Hypertext Markup Language (HTML), Extensible Markup
Language (XML) or Wireless Markup Language (WML), and operates with
markup languages that use syntactically delimited characters added
to the data of a document to represent the structure of the
document. A number of suitable servers may be commercially
available such as those from Mozilla, Google, Microsoft and Apple
Computer.
[0135] While shown in FIG. 2 as being stored in the system memory
214, the operating system 236, application programs 238, other
programs/modules 240, program data 242 and server 244 can be stored
on the hard disk 226 of the hard disk drive 224, the optical disk
232 of the optical disk drive 228 and/or the magnetic disk 234 of
the magnetic disk drive 230.
[0136] An operator can enter commands and information into the
image processing and analysis system(s) 104 through input devices
such as a touch screen or keyboard 246 and/or a pointing device
such as a mouse 248, and/or via a graphical user interface. Other
input devices can include a microphone, joystick, game pad, tablet,
scanner, etc. These and other input devices are connected to one or
more of the processing units 212 through an interface 250 such as a
serial port interface that couples to the system bus 216, although
other interfaces such as a parallel port, a game port or a wireless
interface or a universal serial bus ("USB") can be used. A monitor
252 or other display device is coupled to the system bus 216 via a
video interface 254, such as a video adapter. The image processing
and analysis system(s) 104 can include other output devices, such
as speakers, printers, etc.
[0137] The image processing and analysis systems 104 can operate in
a networked environment 200 using logical connections to one or
more remote computers and/or devices. For example, the image
processing and analysis 104 can operate in a networked environment
200 using logical connections to one or more MRI acquisition
systems 102. Communications may be via a wired and/or wireless
network architecture, for instance, wired and wireless
enterprise-wide computer networks, intranets, extranets, and/or the
Internet. Other embodiments may include other types of
communications networks including telecommunications networks,
cellular networks, paging networks, and other mobile networks.
There may be any variety of computers, switching devices, routers,
bridges, firewalls and other devices in the communications paths
between the image processing and analysis systems 104, the MRI
acquisition systems 102.
[0138] The MRI acquisition systems 102 will typically take the form
of an MRI machine 108 and one or more associated processor-based
devices, for instance an MRI control system 126 and/or MRI
operator's system 128. The MRI acquisition systems 102 capture MRI
information or data sets from patients. Thus, in some instances the
MRI acquisition systems 102 may be denominated as front end MRI
acquisition systems or MRI capture systems, to distinguish such
from the MRI image processing and analysis system(s) 104, which in
some instances may be denominated as MRI backend systems. The MRI
acquisition systems 102 will at times each be referred to in the
singular herein, but this is not intended to limit the embodiments
to a single MRI acquisition system 102. In typical embodiments,
there may be more than one MRI acquisition system 102 and there
will likely be a large number of MRI acquisition systems 102 in the
networked environment 200.
[0139] The MRI acquisition systems 102 may be communicatively
coupled to one or more server computers (not shown). For instance,
MRI acquisition systems 102 may be communicatively coupled via one
or more diagnostic facility server computers (not shown), routers
(not shown), bridges (not shown), LANs 106a (FIG. 1), etc., which
may include or implement a firewall 156a (FIG. 1). The server
computers (not shown) may execute a set of server instructions to
function as a server for a number of MRI acquisition systems 102
(i.e., clients) communicatively coupled via a LAN 106a at a
clinical facility or site, and thus act as intermediaries between
the MRI acquisition systems 102 and the MRI image processing and
analysis system(s) 104. The MRI acquisition systems 102 may execute
a set of client instructions to function as a client of the server
computer(s), which are communicatively coupled via a WAN.
[0140] The MRI control system 126 typically includes one or more
processor (e.g., microprocessors, central processing units, digital
signal processors, graphical processing units) and non-transitory
processor-readable memory (e.g., ROM, RAM, Flash, magnetic and/or
optical disks). The MRI operator's system 128 may take the form of
a computer, for instance personal computers (e.g., desktop or
laptop computers), net book computers, tablet computers, smart
phones, personal digital assistants, workstation computers and/or
mainframe computers, and the like, executing appropriate
instructions.
[0141] The MRI operator's system 128 may include one or more
processing units 268, system memories 269 and a system bus (not
shown) that couples various system components including the system
memory 269 to the processing unit 268.
[0142] The processing unit 268 may be any logic processing unit,
such as one or more central processing units (CPUs), digital signal
processors (DSPs), application-specific integrated circuits
(ASICs), field programmable gate arrays (FPGAs), graphical
processing units (GPUs), etc. Non-limiting examples of commercially
available computer systems include, but are not limited to, an
80.times.86 or Pentium series microprocessor from Intel
Corporation, U.S.A., a PowerPC microprocessor from IBM, a Sparc
microprocessor from Sun Microsystems, Inc., a PA-RISC series
microprocessor from Hewlett-Packard Company, a 68xxx series
microprocessor from Motorola Corporation, an ATOM processor, or an
A4 or A5 processor. Unless described otherwise, the construction
and operation of the various blocks of the MRI acquisition systems
102 shown in FIG. 2 are of conventional design. As a result, such
blocks need not be described in further detail herein, as they will
be understood by those skilled in the relevant art.
[0143] The system bus can employ any known bus structures or
architectures, including a memory bus with memory controller, a
peripheral bus, and a local bus. The system memory 269 includes
read-only memory ("ROM") 270 and random access memory ("RAM") 272.
A basic input/output system ("BIOS") 271, which can form part of
the ROM 270, contains basic routines that help transfer information
between elements within the MRI acquisition systems 102, such as
during start-up.
[0144] The MRI operator's system 128 may also include one or more
media drives 273, e.g., a hard disk drive, magnetic disk drive,
WORM drive, and/or optical disk drive, for reading from and writing
to computer-readable storage media 274, e.g., hard disk, optical
disks, and/or magnetic disks. The nontransitory computer-readable
storage media 274 may, for example, take the form of removable
media. For example, hard disks may take the form of a Winchester
drive, and optical disks can take the form of CD-ROMs, while
magnetic disks can take the form of magnetic floppy disks or
diskettes. The media drive(s) 273 communicate with the processing
unit 268 via one or more system buses. The media drives 273 may
include interfaces or controllers (not shown) coupled between such
drives and the system bus, as is known by those skilled in the
relevant art. The media drives 273, and their associated
nontransitory computer-readable storage media 274, provide
nonvolatile storage of computer readable instructions, data
structures, program modules and other data for MRI acquisition
system(s) 102. Although described as employing computer-readable
storage media 274 such as hard disks, optical disks and magnetic
disks, those skilled in the relevant art will appreciate that MRI
operator's system(s) 128 may employ other types of nontransitory
computer-readable storage media that can store data accessible by a
computer, such as magnetic cassettes, flash memory cards, digital
video disks ("DVD"), Bernoulli cartridges, RAMs, ROMs, smart cards,
etc. Data or information, for example, electronic or digital files
or data or metadata related to such can be stored in the
nontransitory computer-readable storage media 274.
[0145] Program modules, such as an operating system, one or more
application programs, other programs or modules and program data,
can be stored in the system memory 269. Program modules may include
instructions for accessing a Website, extranet site or other site
or services (e.g., Web services) and associated Webpages, other
pages, screens or services hosted or provided by the MRI processing
and analysis system(s) 104.
[0146] In particular, the system memory 269 may include
communications programs that permit the MRI acquisition system(s)
102 to exchange electronic or digital information or files or data
or metadata with the MRI image processing and/or analysis services
provided by the MRI processing and analysis system(s) 104. The
communications programs may, for example, be a Web client or
browser that permits the MRI acquisition system(s) 102 to access
and exchange information, files, data and/or metadata with sources
such as Web sites of the Internet, corporate intranets, extranets,
or other networks. Such may require that an end user client have
sufficient right, permission, privilege or authority for accessing
a given Website, for example, one hosted by the MRI processing and
analysis system(s) 104. As discussed herein, patient identifying
data may reside on systems operated by or for the clinical
facility, and may not be accessible by or through the systems
operated by or for the image processing facility or the image
processing facility personnel. The browser may, for example, be
markup language based, such as Hypertext Markup Language (HTML),
Extensible Markup Language (XML) or Wireless Markup Language (WML),
and may operate with markup languages that use syntactically
delimited characters added to the data of a document to represent
the structure of the document.
[0147] While described as being stored in the system memory 269,
the operating system, application programs, other programs/modules,
program data and/or browser can be stored on the computer-readable
storage media 274 of the media drive(s) 273. An operator can enter
commands and information into the MRI operator's system(s) 128 via
a user interface 275 through input devices such as a touch screen
or keyboard 276 and/or a pointing device 277 such as a mouse. Other
input devices can include a microphone, joystick, game pad, tablet,
scanner, etc. These and other input devices are connected to the
processing unit 269 through an interface such as a serial port
interface that couples to the system bus, although other interfaces
such as a parallel port, a game port or a wireless interface or a
universal serial bus ("USB") can be used. A display or monitor 278
may be coupled to the system bus via a video interface, such as a
video adapter. The MRI operator system(s) 128 can include other
output devices, such as speakers, printers, etc.
[0148] The MRI image processing and analysis system may build a
static interface, which allows various tissue types to be
subtracted or added to an MRI 4D flow data set. For example, static
tissues such as fat or bone may be distinguished from non-static
tissues such as air or flowing blood. The MRI image processing and
analysis system may further autonomously distinguish between
various non-static tissues, for instance distinguishing between air
(e.g., lungs) and flowing blood. Further, the MRI image processing
and analysis system may distinguish between arterial and venous
blood flows.
[0149] For instance, the MRI image processing and analysis system
may employ fast Fourier transformation to identify blood tissue,
which is expected to have a pulsatile pattern or waveform. Air or
lung will tend to have a random appear pattern over a defined
volume, as velocity of neighboring voxels are compared. For
instance, voxels with strong or fast velocities are typically
indicative or air. The MRI data sets may be rather large, for
example 256.times.256.times.256.times.20 time points. The MRI image
processing and analysis system may rely on gradients (e.g.,
gradient descent method) to detect different tissue types, and may
advantageously employ a numerical approach rather than an analytic
solution approach to quickly handle the relatively large MRI data
sets. By controlling the number of significant digits (e.g., 2) of
the numerical approach, the MRI image processing and analysis
system may achieve very fast (e.g., 1 second as opposed to 30
minutes) results, while still obtaining results that are
sufficiently accurate for the particular application.
[0150] In some implementations, different tissue types may be
subtracted from the patient MRI data set, one at a time. For
example, subtracting air or lung, subtracting blood, separating
atrial from venous flow, subtracting bone, leaving fat. Notably,
fat is static, so each voxel representing fat should have zero
velocity associated therewith. The MRI image processing and
analysis system may advantageously employ such a ground truth to
correct MRI data set for all tissue types.
[0151] If a non-zero velocity is found for fat type tissue, this
can be used to adjust the entire set of data (e.g., for all
tissue). For example, the MRI image processing and analysis system
may generate or create a polynomial model based on an identified
area or volume (e.g., fat or soft tissue). Such may be a simple
polynomial (e.g., ax.sup.2+bx+c) or a much more complex polynomial
(e.g., non-rational uniform b-spline). The MRI image processing and
analysis system may find the coefficients to the polynomial fits
the image, for example using linear regression techniques or linear
algebra techniques. This results in a model which the MRI image
processing and analysis system may apply to (e.g., subtract from)
the whole field, not just the fat or soft tissue.
[0152] In one implementations, a replica body is imaged to create a
reference set of data or "phantom" model which can be subtracted
from actually patient data. The replica body may be formed of
materials that mimic the MRI response of an actually body, although
will not have blood flow. A phase gradient in reference set of data
or "phantom" model may represent noise (e.g., random noise), and
can be used to correct a phase shift. This approach advantageously
avoids the need to generate a polynomial fit to the 3D data. The
generated reference set or phantom model may be valid over a number
of months of MRI machine operation, although a new set of reference
data or phantom model should be generated if the MRI machine is
serviced or moved.
[0153] The MRI image processing and analysis system may define
various filters or mask for removing different tissue types or for
removing either venous or atrial blood flow. Filters or masks may
remove anomalous blood flow, such as blood flow outside some
reasonable range (e.g., too high or fast, too slow or low) or where
blood appears to be flowing in an anatomical structure (e.g., bone)
where there should be no blood flow. A filter or mask may also be
defined to display only voxels having magnitudes with an absolute
value greater than some threshold value. A filter or mask may also
be defined to display only voxels with an absolute value of the
cross product of magnitude and a velocity vector which absolute
value is greater than some defined threshold. Further a filter or
mask may be defined that shows only voxels having vectors in a same
direction as the vectors of neighboring voxels, to for instance
identify or view high velocity jets. Notably, velocity vectors of
neighboring voxels are in different directions may be an indication
of noise.
[0154] FIG. 3A shows a representative data flow 300 in an MRI image
processing and analysis or rendering system, according to one
illustrated embodiment.
[0155] The MRI image processing and analysis system 104 (FIG. 1)
receives "raw" MRI image data 302, for example in the form of DICOM
standard compliant electronic files. In some implementations, the
"raw" MRI image data 302 may have had some minimal level of image
preprocessing performed, for example by a processor-based system
associated with the acquisition portion (MRI acquisition system
102, FIG. 1).
[0156] At 304, the MRI image processing and analysis system
performs data pre-processing on the "raw" data.
[0157] The pre-processing may, for example, include, phase error
correction 306 which the MRI image processing and analysis system
may be perform autonomously. Various suitable approaches to phase
error correction 306 are discussed elsewhere herein.
[0158] As part of pre-processing 304, the MRI image processing and
analysis system may, for example, perform tissue segmentation at
308. The MRI image processing and analysis system may be perform
the tissue segmentation 306 autonomously, as indicated by a circle
enclosing the letter A. Alternatively or additionally, the MRI
image processing and analysis system may be perform the tissue
segmentation 308 manually as indicated by a circle enclosing the
letter M, for instance via interaction (e.g., receipt of input from
a human) with the MRI image processing and analysis system. Various
suitable approaches to tissue segmentation 306 are discussed
elsewhere herein.
[0159] As part of pre-processing 304, the MRI image processing and
analysis system may, for example, perform landmark identification
at 310. The MRI image processing and analysis system may be perform
the landmark identification 310 autonomously, as indicated by a
circle enclosing the letter A. Alternatively or additionally, the
MRI image processing and analysis system may be perform the
landmark identification 310 manually as indicated by a circle
enclosing the letter M, for instance via interaction (e.g., receipt
of input from a human) with the MRI image processing and analysis
system. Various suitable approaches to landmark identification 310
are discussed elsewhere herein.
[0160] At 312, the MRI image processing and analysis system
performs visualization on the pre-processing data.
[0161] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform velocity weighted volume
rendering at 314. Various suitable approaches to velocity weighted
volume rendering 314 are discussed elsewhere herein.
[0162] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform simultaneous vector field
and anatomical structure visualization or rendering at 316. Various
suitable approaches to simultaneous vector field and anatomical
structure visualization or rendering 316 are discussed elsewhere
herein.
[0163] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform natural volume rendering
transition at 318. Various suitable approaches to natural volume
rendering transition 318 are discussed elsewhere herein.
[0164] As part of visualization 312, the MRI image processing and
analysis system may, for example, provide for or produce
interactive landmarked based view at 320. Various suitable
approaches to providing interactive landmarked based view 320 are
discussed elsewhere herein.
[0165] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform or provide interactive 3D
volumetric segmentation at 322. Various suitable approaches to
providing interactive 3D volumetric segmentation 322 are discussed
elsewhere herein.
[0166] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform visualization guided
cardiac and/or vessel interrogation at 324. Various suitable
approaches to performing or providing visualization guided cardiac
and/or vessel interrogation 324 are discussed elsewhere herein.
[0167] As part of visualization 312, the MRI image processing and
analysis system may, for example, perform or provide stereoscopic
3D vector field and anatomic visualization at 326. Various suitable
approaches to providing for stereoscopic 3D vector field and
anatomic visualization 326 are discussed elsewhere herein.
[0168] At 328, the MRI image processing and analysis system
performs visualization on the pre-processing data.
[0169] As part of performing quantification, 328, the MRI image
processing and analysis system may, for example, perform vessel
measurement at 330. The MRI image processing and analysis system
may be perform the vessel measurement 330 autonomously, as
indicated by a circle enclosing the letter A. Alternatively or
additionally, the MRI image processing and analysis system may be
perform the vessel measurement 330 manually as indicated by a
circle enclosing the letter M, for instance via interaction (e.g.,
receipt of input from a human) with the MRI image processing and
analysis system. Various suitable approaches to vessel measurement
330 are discussed elsewhere herein.
[0170] As part of performing quantification, 328, the MRI image
processing and analysis system may, for example, perform blood flow
quantification at 332. The MRI image processing and analysis system
may be perform the blood flow quantification 332 autonomously, as
indicated by a circle enclosing the letter A. Alternatively or
additionally, the MRI image processing and analysis system may be
perform the blood flow quantification 332 manually as indicated by
a circle enclosing the letter M, for instance via interaction
(e.g., receipt of input from a human) with the MRI image processing
and analysis system. Various suitable approaches to blood flow
quantification 332 are discussed elsewhere herein.
[0171] As part of performing quantification, 328, the MRI image
processing and analysis system may, for example, perform cardiac
chamber volume quantification at 334. The MRI image processing and
analysis system may be perform the cardiac chamber volume
quantification 334 autonomously, as indicated by a circle enclosing
the letter A. Alternatively or additionally, the MRI image
processing and analysis system may be perform the cardiac chamber
volume quantification 334 manually as indicated by a circle
enclosing the letter M, for instance via interaction (e.g., receipt
of input from a human) with the MRI image processing and analysis
system. Various suitable approaches to cardiac chamber volume
quantification 334 are discussed elsewhere herein.
[0172] As part of performing quantification, 328, the MRI image
processing and analysis system may, for example, perform pressure
quantification at 336. The MRI image processing and analysis system
may be perform the pressure quantification 336 autonomously, as
indicated by a circle enclosing the letter A. Alternatively or
additionally, the MRI image processing and analysis system may be
perform the pressure quantification 336 manually as indicated by a
circle enclosing the letter M, for instance via interaction (e.g.,
receipt of input from a human) with the MRI image processing and
analysis system. Various suitable approaches to pressure
quantification 336 are discussed elsewhere herein.
[0173] At 338, the MRI image processing and analysis system
performs automated result validation. Various suitable approaches
to performing automated result validation 338 are discussed
elsewhere herein.
[0174] At 340, the MRI image processing and analysis system
performs automated structure reporting. Various suitable approaches
to performing automated structure reporting 340 are discussed
elsewhere herein.
[0175] FIG. 3B shows a data flow 350 in an MRI imaging and
processing/analysis environment, according to one illustrated
embodiment.
[0176] The MRI imaging and processing/analysis data flow 350 may be
broken into three segments or phases, namely image acquisition
phase 352, image reconstruction phase 354 and post-processing phase
356.
[0177] During the image acquisition phase 352, various pulse
sequences (PS.sub.1, PS.sub.2, PS.sub.n, 4D flow PS) are employed
to drive the magnets of an MRI machine, and raw or K space MRI data
or information is collected. The raw or K space MRI data or
information may represent a plurality of voxels, and include
magnitude values and phase values for each voxel. The magnitude
values represent anatomical structures, while the phase values
represent blood flow or velocity.
[0178] The raw MRI data is processed during the image
reconstruction phase 354. The image reconstruction may, for
example, result in standardized files, for example MRI data sets in
the DICOM standard format. The image reconstruction may be specific
to an MRI machine manufacturer, for instance GE, Siemens, and
Philips, and may employ software or firmware provided by the MRI
machine manufacturer. Typically, the image reconstruction is
performed locally, at the site at which the MRI machine is
located.
[0179] The MRI data sets (e.g., DICOM files) are further processed
in the post-processing phase 356. In some particularly advantageous
implementations, the post-processing phase 356 is performed
remotely from the image acquisition phase 352 and image
reconstruction phase 354. For example, the post-processing phase
356 may be performed at a dedicated post-processing facility, which
may even be operated by an entity that is separate and independent
from the entity or entities (e.g., clinical facility or
organization) that perform the image acquisition phase 352 and
image reconstruction phase 354.
[0180] The post-processing phase 356 may be divided into an
operational phase 360, error detection and/or correction phase 362,
visualization phase 364, and quantification phase 366. While
sequentially illustrated, these phases 360-366 may be performed in
a different order than illustrated, and may not be performed
sequentially. For example, many of the actions grouped under each
phase may be performed concurrently, or some acts in one phase may
be performed before acts in another phase, while other acts in the
one phase may be performed after acts in the other phase.
[0181] The operational phase 360 may include receiving requests
(e.g., Web requests with MRI data sets), queuing requests, and
providing responses. Many techniques are described below for
implementing the operational phase, for instance via an
asynchronous command and imaging pipeline architecture.
[0182] The error detection and/or correction phase 362 includes
performing error detection on the MRI data set, and where possible
error correction. The error detection and/or correction phase 362
may, for example, include performing eddy current detection and/or
correction, phase detection and/or correction, image unwrapping,
magnitude aliasing detection and/or correction, phase aliasing
detection and/or correction, and/or artifact detection and/or
correction. Many error detection and/or correction techniques are
described in detail elsewhere herein. Many of the error correction
and/or detection acts may be performed autonomously by a rendering
or post-processing system, while others may employ human
intervention or input to the computer.
[0183] The visualization phase 364 may include a variety of
actions, for example defining or setting landmarks (e.g.,
anatomical landmarks or structures), generating two-dimensional
contours and/or three-dimensional volumes, via segmentation. The
visualization phase 364 may additionally include distinguishing
between information representing arterial and venous blood flow,
and identifying such, for instance via appropriate colors (e.g.,
blue(s), red(s)). The visualization phase 364 may additionally
include identifying suspected shunts representing blood flow that
should not occur in a healthy subject, and identifying such, for
instance via appropriate colors. Many of the visualization acts may
be performed autonomously by a rendering or post-processing system,
while others may employ human intervention or input to the
computer.
[0184] During the quantification phase 366 various characteristics
may be quantized and compared. For example, the quantification
phase 366 may employ the concept of mass conservation or flow
conservation. Thus, flows of blood may be quantized and compared.
For instance, a flow of blood into a volume should typically match
the flow of blood out of the volume. The volume may, for example
constitute a bodily organ, such as vasculature (e.g., artery, vein,
sinus) or heart, chamber of the heart. The volume may be enclosed
structure, with a natural inlet and a natural outlet.
Alternatively, the volume may have a defined inlet and outlet which
do not correspond to any naturally occurring entrance or exist. For
instance, any segment of an artery may be delineated or identified
as the volume. Also for instance, two or more anatomical structure
may be combined to form or define the volume.
[0185] Comparing flow into and out of a volume may be used to
identify shunt (e.g., defects allowing blood flow which should not
occur in normal, healthy tissue). Comparing flow into and out of a
volume may be used to validate or verify other post-processing
actions, for example to validation segmentation or the assignment
of arterial versus venous flow to one or more voxels.
[0186] Many quantification techniques are described in detail
elsewhere herein. Many of the quantification acts may be performed
autonomously by a rendering or post-processing system, while others
may employ human intervention or input to the computer.
Pre-Acquisition
[0187] 4D-Flow Localizer
[0188] A 4D-Flow localizer is a specific pulse sequence (i.e.,
instructions or drive signals which control the magnets of the MRI
machine during an MRI scan or acquisition) that is tailored to
gather information for a high fidelity 4D-Flow scan or acquisition.
The 4D-flow localizer is essentially a first pass scan or
acquisition to help prescribe appropriate or optimized settings for
a second pass (i.e., high fidelity 4D-Flow scan or acquisition).
Prior to the patient entering the scanner, the type of 4D-Flow
localizer is selected based on the several variables. The clinical
indication, type of contrast agent, amount of contrast agent,
patient weight, patient height and heart rate, hardware
manufacturer, type of cardiac coil used, and type of hardware (1.5
T or 3 T) will be used to predict the optimal localizer to use. The
localizer data will then be sent to a processor-based system (e.g.,
server of the image processing and analysis system) to build a
patient-specific 4D-Flow protocol.
[0189] For example, the localizer may help to select the VENC
(Velocity encoding) and required temporal resolution. For example,
the VENC may be selected based wholly or in part on a maximum
velocity found inside the vessel of interest. The VENC may be
selected using a look-up table approach and/or interpolation. FIG.
4A shows a look-up table 400 with exemplary values of VENC for
various ranges of velocity.
[0190] Also for example, a length or duration of a scan may be
selected based wholly or in part on a number of channels of the
coil (e.g., cardiac coil) being used for the MRI procedure.
Typically, the lower the number of channels, the lower the signal
to noise ratio (SNR), which means longer imaging times are
required. FIG. 4B is a table 402 that shows a number of exemplary
scan lengths or durations for a number of total channels for a
cardiac coil.
[0191] In addition, as more data is collected and sent to servers
of the image processing and analysis system, a learning or
refinement algorithm can detect the optimal settings to use based
on a set of input parameters. This algorithm could employ feedback
from the clinician (e.g., from a range of 1-10 of the quality of
the high-fidelity 4D-flow scan) to train the algorithm in knowing
or recognizing whether the selected output variables were
appropriate for a given scan (i.e., acquisition). The algorithm may
employ one or more artificial intelligence (AI) techniques,
including but not limited to training a neural network. life there
are no training sets, default values of the input variables of the
high fidelity 4D-Flow scan will be selected. Once the images come
back to the server, in addition to a quality metric, this data is
used in determining what the next scan settings should be. The goal
is to increase the scan quality over time or number of procedures.
The input parameters will be incremented or decremented to
determine if scan quality increases or decreases. Once there are a
sufficient number of training sets from a specific institution, a
multi-variable optimization algorithm can be used to select the
optimal input variables for any new patients that need to be
imaged.
[0192] In use, for each patient the MRI imaging and analysis system
may generate one or more pulse sequences which are patient
specific, and which are used to operate the MRI machine to acquire
MRI data sets. For example, the MRI imaging and analysis system may
generate 4-6 pulse sequences for a patient. The MRI machine may
execute the pulse sequences, for example in response to a single
input by an MRI machine operator or technician. Notably, such
allows capture or acquisition of the desired MRI data sets without
requiring the attendance or time of a clinician (e.g., physician).
Input may include patient characteristics, identification of a
gradient coil, and/or contrast.
[0193] FIG. 5 illustrates a method of operation 500 with a 4D flow
localizer and an optional refinement algorithm, according to one
illustrated embodiment.
[0194] Initial input variables 502 are generated or collected to
produce a 4D flow localizer 504. The input variables 502 may, for
example, be collected via an MRI operator's system 112, for
instance entered by a human and/or automatically or autonomously
collected. Input variables 502 may include one or more of: clinical
indication, name or identifier of contrast agent, amount or dosage
of contrast agent, amount of time elapsed after bolus injected or
provided to patient or subject, patient or subject weight, patient
or subject height, patient or subject age, patient's or subject's
heart rate, hardware manufacture, make, model, serial number or
other hardware identifier, type of coil (e.g., cardiac coil, number
of channels), hardware magnet strength (e.g., 1.5 T, 3 T),
indication of whether patient or subject has been sedated or not,
etc.
[0195] The 4D flow localizer 504 may be generated via a
processor-based device. In many implementations the processor-based
device will be part of the image processing and analysis system,
although the teachings herein are not limited to such. For example,
in some implementations the 4D-Flow localizer may be generated by a
component or portion of the MRI acquisition system.
[0196] Operation of the MRI machine using the 4D flow localizer 504
generates or produces a set of output variables 506. The output
variables 506 may, at least in some instances, take the form of 4D
flow localizer images.
[0197] The output variables (e.g., 4D flow localizer images) are
refined at 508. For example a processor-based device may execute an
algorithm, for instance a machine learning algorithm.
Alternatively, a neural network may be employed to perform the
refinement.
[0198] As described above, a machine learning or other approach may
allow refinement, generating a set of input variables of high
fidelity 4D flow 510. The input variables of high fidelity 4D flow
510 may, for example, include one or more of: length or duration of
scan or acquisition, VENC, field of view, repetition time (TR ms),
echo time (TE ms), row resolution (mm), column resolution (mm),
slice resolution (mm), temporal resolutions (ms), flip angle
(degree).
[0199] A processor-based device uses input variables of high
fidelity 4D flow 510 to generate a high fidelity 4D flow scan or
acquisition 512. The high fidelity 4D flow scan or acquisition 512
results in output variables of high fidelity fl4D-Flow 514. The
output of high fidelity 4D flow may, for example, include one or
more of: 4D flow images, quality of scan (as assessed by one or
more professionals, for instance on a scale such as 1-10), events
occurring during a scan (e.g., patient moved).
Visualization
[0200] Arterial and Venous Blood Flow Isolation
[0201] In order to highlight the difference between left heart
(i.e., arterial) or right heart (i.e., venous) blood flow, the MRI
image processing and analysis system is operable to generate a
unique color map (i.e., color gradient map) for each side. The MRI
image processing and analysis system generates image data with
voxels colored with a respective color map, either using 2D
rendering or 3D rendering (i.e., pathlines and streamlines).
Typically, arterial blood flow will have a red based color map and
venous blood flow will have a blue based color map. With a healthy
system these two blood pools never come in contact with each other,
except at the microscopic level in the lungs for instance. In order
to decide which voxel in a body belongs to which side, the MRI
image processing and analysis system executes an algorithm that,
for each voxel, detects or determines which bin the voxel belongs
to, and assigns an appropriate color to that voxel.
[0202] A method 600 of generating the color map of blood flow is
illustrated in FIG. 6, according to one illustrated embodiment.
[0203] The method 600 starts at 602, for example in response to
being called by a calling routine.
[0204] At 604, for each voxel of a plurality of voxels the MRI
image processing and analysis system determines whether a given
voxel is in a blood pool. To determine such, the MRI image
processing and analysis system can employ any of a number of
segmentation algorithms or methods, for example the various
segmentation algorithms or methods described herein. The MRI image
processing and analysis system may autonomously perform the
segmentation and/or determination to identify an enclosed volume or
area or pathway. Alternatively, the MRI image processing and
analysis system may receive input from a human operator or user
that identifies whether a given voxel is in the pool of blood or
which otherwise facilitates segmentation between blood tissue and
non-blood tissue. The determination may be repeated until, for
example, all voxels have been analyzed.
[0205] At 606, if it is determined that the given voxel is in the
blood pool, the MRI image processing and analysis system marks
(e.g., logically), identifies or otherwise logically assigns the
given voxel as blood type tissue.
[0206] At 608, the MRI image processing and analysis system places
all neighboring voxels which have been marked or identified as
blood in the same bin. If these bins spatially come in contact with
each other over time, the MRI image processing and analysis system
consolidates the contacting bins of voxels in the same bin.
Optionally, the MRI image processing and analysis system may
compute streamlines and/or pathlines in the blood pool, which could
highlight which bins are connected.
[0207] At 610, the MRI image processing and analysis system counts
the number of bins. Ideally there will be only two bins, one
corresponding to arterial blood flow and one to venous blood
flow.
[0208] At 612, the MRI image processing and analysis system
determines whether there are more than two bins. If the MRI image
processing and analysis system determines that there are more than
two bins, control passes to 614. Otherwise control passes to
626.
[0209] Areas where there is a shunt (i.e., connection between the
left and right heart flow), are typically indicative of a medical
problem or abnormal condition. As indicated at 614, the MRI image
processing and analysis system may perform a shunt detection method
or algorithm on these areas. A suitable shunt detection method or
algorithm is described elsewhere herein. For example, the MRI image
processing and analysis system may determine or identify areas
where adjacent bins are connected by a number of voxels that is
less than a defined threshold number of voxels or a defined
threshold area. For example, if the threshold is 10 voxels, the MRI
image processing and analysis system may tentatively mark or
identify any area that connects two large volumes of blood flow
together with less than 10 voxels as a shunt as illustrated at 616.
Care must be taken to not assume such areas are necessarily shunts.
These areas could, for example, be a stenotic valve or stenosis.
Optionally at 618, the MRI image processing and analysis system
visually emphasizes (e.g., highlights) these areas for the operator
or user. The operator or user could very quickly visually confirm
the existence or absence of a shunt, and provides a corresponding
input which is received by the MRI image processing and analysis
system as indicated at 620. At 622, the MRI image processing and
analysis system marks or identifies the corresponding voxels
accordingly. At 624, the MRI image processing and analysis system
updates or assigning a color associated with the area based on the
user input confirming the existence or absence of a shunt. For
instance, if existence of a shunt is confirmed, the MRI image
processing and analysis system will color the corresponding area
with neither the red nor blue color map. Instead, the MRI image
processing and analysis system may associate a unique color with
this area of voxels to visually emphasize (e.g., highlight) this
area for the operator or user.
[0210] At 626, the MRI image processing and analysis system
determines whether a bin corresponds to venous flow or arterial
flow. Various approaches to determining whether a bin corresponds
to venous flow or arterial flow are discussed herein with reference
to FIGS. 4 and 5 At 628, the MRI image processing and analysis
system associates the voxels of each of the two bins with a
respective color or set of colors, for instance blue or blues for
arterial and red or reds for venous flow. The method 600 terminates
at 630.
[0211] FIG. 7 shows a method 700 of determining whether a bin
corresponds to venous flow or arterial flow, according to one
illustrated embodiment. The method 700 is particularly suitable if
anatomical landmarks (i.e., point in space, e.g., apex of left
ventricle) have already been defined, allowing simple selection of
just the landmarks that are within the blood pool. Techniques for
identification and/or selection of landmarks are described
elsewhere herein.
[0212] To define arterial blood flow, at 702 the MRI image
processing and analysis system may autonomously identify or select,
or may receive user input from manual identification or selection
of one or more of anatomical landmarks associated with arterial
blood flow. The anatomical landmarks may, for example, include one
or more of an aortic valve point, a mitral valve point, and/or an
aorta (e.g., point in the aortic sinus, point in the ascending
aorta, point at the top of the aortic arch, point in the descending
aorta).
[0213] To define venous blood flow, at 704 the MRI image processing
and analysis system may autonomously identify or select, or may
receive user input from manual identification or selection of one
or more of anatomical landmarks associated with venous blood flow.
The anatomical landmarks may, for example, include one or more of a
pulmonary valve point, a tricuspid valve point, a point in a left
pulmonary artery, a point in a right pulmonary artery, a point in
inferior vena cava, and/or a point in superior vena cava.
[0214] At 706, the MRI image processing and analysis system may
autonomously find or determine a distance between the closest point
in a bin to every anatomical landmark point. Ideally this distance
should be zero because each landmark is in a respective one of the
blood pools. At 708, the MRI image processing and analysis system
assigns each bin closest to each anatomical landmark to either
arterial or venous blood flow, depending on whether the anatomical
landmark is in the arterial or venous blood pool. At 710, the MRI
image processing and analysis system determines whether there is
conflict. A conflict indicates either the existence of a shunt, or
that a connected group of voxels are in the wrong bin. In response
to identification of a conflict, the MRI image processing and
analysis system provides an indication or notification at 712.
[0215] The MRI image processing and analysis system implements
image navigation, for instance autonomously or in response to
operator or user input. For example, the MRI image processing and
analysis system implements distance scrolling, allow movement
through a defined number of spatial slices is some defined spatial
direction (e.g., along X axis, y axis or z axis) and comparison of
data between the spatial slices. For example, the MRI image
processing and analysis system implements time or temporal
scrolling, allow movement through a defined number of temporally
sequential slices is some defined temporal direction (e.g.,
increasing time, decreasing time) and comparison of data between
the temporal slices. As noted elsewhere herein, the MRI image
processing and analysis system may advantageously use the
comparison between slices employed to identify artifacts. For
example, the MRI image processing and analysis system implements
zoom and/or pan operations, allowing an operator or user to zoom in
on portions of an image or pan across an image.
[0216] FIG. 8 shows a method 800 of determining whether a bin
corresponds to venous flow or arterial flow, according to one
illustrated embodiment. The method 800 is particularly suitable if
anatomical landmarks have not be identified.
[0217] The method 800 is starts at 802, for example in response to
a call from a calling routine.
[0218] The method 800 is based on Vector Angles. At 804, the MRI
image processing and analysis system finds the centroid of the
heart. Such may be performed autonomously or may be based on
operator or user input. For example, the centroid can actually be
extracted from the DICOM tags since there is a patient coordinate
system in these fields and where 0,0,0 corresponds to a specific
point in the patients anatomy.
[0219] At 806, the MRI image processing and analysis system
determines or identifies for all voxels in a bin that have
coherence above a threshold value. At 808, for all voxels in a bin
that have coherence above a threshold value, the MRI image
processing and analysis system computes the angle between the
average velocity over all time points and the vector that connects
the centroid of the voxel with the centroid of the heart. The MRI
image processing and analysis system then computes the average
angle between all voxels in a bin and the centroid. At 810, the MRI
image processing and analysis system determines if there are
additional bins to processor, incrementing the bin at 812 in a loop
814 to repeat the computations 806, 808 for all bins. Since
arterial blood flow moves away from the heart, the MRI image
processing and analysis system assigns the bin that has the highest
average angle to be arterial blood flow at 816. The MRI image
processing and analysis system assigns the bin that has the lowest
average angle to be venous blood flow at 818.
[0220] The method 800 terminates at 820.
[0221] Additionally or alternatively, the MRI image processing and
analysis system may employ probability. Based on several other
datasets where the blood pool has already been identified, the MRI
image processing and analysis system can create an atlas and then
compared a new dataset with the atlas. By co-registering the atlas
and new dataset, the MRI image processing and analysis system can
assign the bin the correct blood pool.
[0222] Additionally or alternatively, the MRI image processing and
analysis system may employ velocity signals. Notably, the blood
velocity waveform of a vein is unique with respect to the blood
velocity waveform of an artery (e.g. lower speed flow, and shape of
the waveform is unique).
[0223] Blood Flow Filter Based on Directional Coherence
[0224] A filter may be used to isolate blood flow voxels by
measuring directional coherence.
[0225] The filter may be a 4D feature extraction operator that
determines how similar a 3D flow vector at a particular voxel is
compared to the flow vectors of its neighboring voxels. The filter
may determine how similar a 3D flow vector at a particular voxel at
a given time is with the 3D flow vector of the same voxel at time
points before and after the given time. This may assist in
filtering out random noise, resulting in isolating blood
vessels.
[0226] The filter can be generated in one volume per time point, to
allow moving blood vessels. Alternatively, the filter can be
generated as one volume which is averaged over all time points,
which is typically achieves better noise reduction by itself. The
averaging period could be changed from the cine's length (i.e.,
duration of resulting acquisition) to a cardiac or respiratory
phase.
[0227] The filter can be assisted with another filter to further
remove random noise, such as (anatomy_magnitude*velocity_magnitude)
with a Boolean or weighted function.
[0228] Since both filters only rely on a single input each (e.g.,
percentage threshold), the filters can be combined into a single 2D
input gesture. An example would be where moving from left to right
increases the directional coherence percentage threshold, and
moving from the bottom to the top increases the second filter's
percentage threshold.
[0229] Since quality/magnitude of velocity volumes varies from
anatomy sections, sites, scanners, etc., different default values
for these filters could be used per metadata combinations.
[0230] The directional coherence for a particular voxel is
calculated by: summating the weighted directional coherence scores
between the voxel and all applicable neighboring voxels, and
dividing by the summation of all of the weights that were applied.
For example, if a voxel were on the left edge of a volume, the
applicable neighboring voxels would consist of all voxels within a
given radius to all dimensions except the left, as well as the same
center voxel on adjacent time point volumes.
[0231] The directional coherence score between two voxels is
calculated by: taking the dot product of the normalized velocity
vectors, running those through the function ACOS to get the angled
difference, and then scaling that angle between 0-Pi to get a 0-1
result. That result is then multiplied by a weight (signifying the
distance between the voxels). If one of the voxels has a velocity
with magnitude 0, then a default score of 0.5 is multiplied by the
weight.
[0232] The weight applied to a directional coherence score is
calculated by: finding the minimum spacing for all three
dimensions, and dividing that number by the distance between the
voxels (as defined by the spacing). For example, the "weight" for a
voxel on the adjacent slice, a column over and a row up would be:
min_spacing/sqrt(column_spacing.sup.2+row_spacing.sup.2+slice_spacing.sup-
.2).
[0233] After all directional coherence scores are calculated, the
min and max values are found and used to scale the scores inside a
given range for more effective thresholding.
Quantification
[0234] Result Validation
[0235] There are physical principles that provide insight into
whether flow data is correct. For example, flow entering an
enclosed volume must equal flow exiting the enclosed volume. A
mismatch between the flow values entering and exiting an enclosed
volume may be indicative of a shunt or other anatomical problem.
The MRI image processing and analysis system may employ this
general principal in a variety of specific ways. Such may, for
example, be determined as the dot product of a normal vector of a
plane that slices a volume and a velocity vector at each point or
voxel. For net flow, the dot product may be integrated over time.
The flow may, for instance be represented as pressure per time
(e.g., millibars per second) or as volume per time (e.g., liters
per second).
[0236] i) Flow entering a closed vessel or portion thereof must
match the flow exiting a closed vessel. The MRI image processing
and analysis system can autonomously identify, or be used by a
human operator to identify vessels or lumens or other delineated
volumes or cavities of various organs, and then identify inlets and
outlets of vessels or lumens or delineated volumes. The inlets
and/or outlets may be anatomically significant starts or ends of a
lumen or physical port or opening. Alternatively, the inlets and/or
outlets may be logical constructs, for example defined spaced
inwardly of natural starts, ends or openings or ports. The MRI
image processing and analysis system can autonomously determine
whether the flow value at the inlet matches the flow value at
outlet, for example within some defined threshold (e.g., 1%). The
MRI image processing and analysis system can provide an indication
of the result of the determination. For example, MRI image
processing and analysis system can provide an indication that the
flow does not match, an indication of an amount or percentage of
mismatch, and/or an indication that the flow matches.
[0237] ii) Flow through the Ascending Thoracic Aorta should match
the combined flow of through the Superior Vena Cava (SVC) and the
Descending Thoracic Aorta. The MRI image processing and analysis
system can autonomously identify, or be used by a human operator to
identify the Ascending Thoracic Aorta, the SVC and the Descending
Thoracic Aorta. The MRI image processing and analysis system can
autonomously determine whether the flow value through the Ascending
Thoracic Aorta match the combined flow of through the SVC and the
Descending Thoracic Aorta, within some defined threshold (e.g.,
1%). The MRI image processing and analysis system can provide an
indication of the result of the determination. For example, MRI
image processing and analysis system can provide an indication that
the flow does not match, an indication of an amount or percentage
of mismatch, and/or an indication that the flow matches.
[0238] iii) Combined flow through the SVC and the Inferior Vena
Cava (IVC) should match flow through the Pulmonary Vasculature
(PA). The MRI image processing and analysis system can autonomously
identify, or be used by a human operator to identify the SVC, IVC,
and PA. The MRI image processing and analysis system can
autonomously determine whether the combined flow value through the
SVC and IVC matches the flow through the PA, within some defined
threshold (e.g., 1%). The MRI image processing and analysis system
can provide an indication of the result of the determination. For
example, MRI image processing and analysis system can provide an
indication that the flow does not match, an indication of an amount
or percentage of mismatch, and/or an indication that the flow
matches.
[0239] iv) The flow through the PA should match the combined flow
through the Right Pulmonary Vasculature (RPA) and the Left
Pulmonary Vasculature (LPA). The MRI image processing and analysis
system can autonomously identify, or be used by a human operator to
identify the PA, RPA, and LPA. The MRI image processing and
analysis system can autonomously determine whether the flow value
through the PA matches the combined flow value through the RPA and
LPA, within some defined threshold (e.g., 1%). The MRI image
processing and analysis system can provide an indication of the
result of the determination. For example, MRI image processing and
analysis system can provide an indication that the flow does not
match, an indication of an amount or percentage of mismatch, and/or
an indication that the flow matches.
[0240] v) The flow through the LPA should match the sum of flow
through all left pulmonary veins. The MRI image processing and
analysis system can autonomously identify, or be used by a human
operator to identify the LPA and left pulmonary veins. The MRI
image processing and analysis system can autonomously determine
whether the flow value through the LPA matches the flow through all
left pulmonary veins, within some defined threshold (e.g. 1%). The
MRI image processing and analysis system can provide an indication
of the result of the determination. For example, MRI image
processing and analysis system can provide an indication that the
flow does not match, an indication of an amount or percentage of
mismatch, and/or an indication that the flow matches.
[0241] vi) The flow through the RPA should match the sum of flow
through all right pulmonary veins. The MRI image processing and
analysis system can autonomously identify, or be used by a human
operator to identify the RPA and right pulmonary veins. The MRI
image processing and analysis system can autonomously determine
whether the flow value through the RPA matches the flow through all
right pulmonary veins, within some defined threshold (e.g. 1%). The
MRI image processing and analysis system can provide an indication
of the result of the determination. For example, MRI image
processing and analysis system can provide an indication that the
flow does not match, an indication of an amount or percentage of
mismatch, and/or an indication that the flow matches.
[0242] vii) The flow through a closed volume should be the same
without regard to an orientation of a plane that cuts the closed
volume. The MRI image processing and analysis system can
autonomously identify, or be used by a human operator to identify,
two or more planes that intersect a given point and which each cut
across a vessel at a respective orientation (i.e., two or more
planes with different normal vectors that each intersect a same
point). The MRI image processing and analysis system can
autonomously determine whether the flow over the full cardiac cycle
match for all of the planes, at least within some defined
threshold. The MRI image processing and analysis system can provide
an indication of the result of the determination. For example, MRI
image processing and analysis system can provide an indication that
the flow does not match, an indication of an amount or percentage
of mismatch, and/or an indication that the flow matches.
[0243] viii) A flow existing a cardiac chamber of a heart should
match a change in systolic and diastolic volume for each cardiac
chamber of the heart. The MRI image processing and analysis system
can autonomously identify, or be used by a human operator to
identify one or more chambers of a heart. The MRI image processing
and analysis system can autonomously determine. The MRI image
processing and analysis system can provide an indication of the
result of the determination. For example, MRI image processing and
analysis system can provide an indication that the flow does not
match, an indication of an amount or percentage of mismatch, and/or
an indication that the flow matches.
[0244] The MRI image processing and analysis system may perform any
one or more of the above operations as validation of results,
either manually or autonomously. This can provide a confidence
measure, indicative of the accuracy of the flow values. For
example, instead of just providing (e.g., displaying) a flow value
(e.g., 5.4 L/min), the result validation allows the MRI image
processing and analysis system to provide the results with an
indication of accuracy (e.g., 5.4 L/min.+-.0.3 L/min. with a 95%
confidence interval. An error estimate can be determined by
evaluating a difference between the left and right sides of the
relationships listed above. In addition, other error estimates can
be derived by perturbing the measurement several times (e.g., in
position, orientation, and dilation/erosion of contour), thereby
generating several measurements that can be statistically evaluated
(e.g., average, 95% confidence interval, etc.). Knowing the level
of possible error in the data or results also can help other
pre-processing algorithms (i.e., eddy current correction). For
example, this may be used by the implementing algorithms to know in
which direction to skew the data to make the data or results more
accurate.
Segmentation
[0245] Flow Driven Segmentation
[0246] Various implementations described herein advantageously
employ blood flow datasets (i.e., x velocity, y velocity, and z
velocity) as input for any type of quantification. Conventionally,
only anatomic (i.e., magnitude) datasets have been used for
magnetic resonance (MR) quantification. As an example, a blood flow
dataset can serve as a proxy for blood flow quantification, but
also can be used as input for determining a luminal border of a
vessel or chamber (i.e., segmenting the anatomic dataset). The
blood flow dataset can also be used for computing pressure, wall
shear stress, as well as determining how to render 2D and 3D
images. As an example of how flow can alter the rendering of an
image: the MRI image processing and analysis system may render only
anatomic voxels that match a certain flow condition (i.e., if the
velocity magnitude in that voxel is above a certain defined
threshold, for instance a user defined threshold).
[0247] An example is flow driven segmentation (e.g., volume, area,
pathway) to isolate blood from other tissue types. As a specific
example, volumetric segmentations of the chambers of the heart.
Some of the time points in the scan may have a very high magnitude
for flow in the chambers of the heart. The MRI image processing and
analysis system may use these time points to derive a geometric
model of a chamber. Once the geometric model has been derived from
the high flow magnitude time points, the MRI image processing and
analysis system can coregistered the model with the magnitude scan.
The MRI image processing and analysis system may subsequently
register the model with the other time points to find the
non-linear transforms that line up the model with the other time
points.
[0248] In an exemplary algorithm for segmenting a blood vessel and
determining a luminal border of a vessel cross section is provided,
given a seed point in a vessel, the time point with the highest
flow magnitude at the seed point is identified. This time point
denotes when the strongest jet of blood is moving through the
vessel. The system uses a combination of the anatomy and velocity
data in order to determine the cross section that is perpendicular
to the direction of flow. The direction of flow gives a strong
indication of the cross section normal to use. In some cases, the
flow may have turbulence which would lead to a poor result.
Additionally, the system make take a coarse hemisphere of vectors
at the seed point, where vectors closest to the flow direction have
the highest weight. For each of the vectors that make up the
hemisphere, several rays are cast perpendicular to the vector on
the hemisphere. These rays are terminated when the magnitude of the
change in both anatomy pixel intensity and velocity magnitude has
changed sufficiently. This provides an approximation of the
boundary of the vessel on that plane. The seed point, the
termination of ray n, and the termination of ray (n+1) from a
triangle. The system computes the sum of areas of all the resulting
triangles. The vector on the hemisphere that has the smallest
result area from this computation is selected as the normal for the
plane that is most perpendicular to the direction of flow.
[0249] Next a multi-planar reconstruction (MPR) is resampled
combining (i.e. product) both the anatomy and velocity data at the
initial seed point, the strongest flow time point, and with the
normal vector from the previous step. A technique called active
contour model or snakes may be used to find the contour that
outlines the luminal border of the vessel. A seed contour is
created based on the termination points of the rays that were cast
to find the area measurement. The active contour then attempts to
find a smooth contour that outlines the vessel wall. This smooth
contour is found by applying an energy minimization function using
gradient descent. The forces involved in the energy function
include: 1) internal forces of the first and second derivatives
using finite differences for points on the contour; 2) an external
force that is constantly pushing outward from the centroid (balloon
force); and 3) an external force that pulls points toward areas
with a large gradient magnitude.
[0250] The internal forces ensure that the contour will be smooth.
The outward pushing force is used to expand the contour through the
MPR. The force pulling towards large gradient magnitudes should
overcome the balloon and gravitate the contour to the vessel wall.
Since the algorithm that is determining the luminal border of the
vessel is heavily influenced by gradients within the MPR, the MPR
is first smoothed, for instance using Gaussian convolution. Once
the contour for the strongest flow time point has been found, the
remaining time points are evaluated in the same way. Since the
active contour model can be very sensitive, if a contour diverges
sufficiently in area or curvature, it is treated as thrown out. Any
contours that have been thrown out are replaced with a contour that
is a linear blend of contours from adjacent time points.
Overall Process
[0251] Asynchronous Command and Imaging Pipeline.
[0252] Commands are sent from the client to the server using a
persistent connection over a Web socket protocol. Images are
returned through standard over the same Web socket connection.
Since user events can happen with significantly higher frequency
than the application is able to generate images and return them to
the client some events must be squelched. Using an asynchronous
command and image pipeline allows every important user event to be
sent to or handled by, the server. All important events are
captured to persistence layer and decide, allowing time, if needed,
to determine which events will be squelched, if any, to create the
best possible user experience. Images will only be processed and
returned to the client at the rate the network is capable.
[0253] The architectural design for a remotely located rendering
system (i.e., image processing and analysis system) involves
commands being sent from a client to a Web server, the Web server
interpreting these commands, and one or more compute servers
generating images or computational results to be sent back to the
client, for instance via the Web server. If the message involves
work that can be distributed, multiple compute nodes may be used,
otherwise the message will be routed to the appropriate compute
node. The problem with a simplistic design where every user event
generates an image or computation is that user events can occur
with significantly higher frequency than the rendering system is
able to generate results and have the results returned to the
client over a network by the server. Also, simply squelching events
can result is important user interactions being missed.
[0254] The network may employ an asynchronous command and imaging
pipeline, which uses two communication channels, one for the client
to send commands to the server, and one for the server to send
responses to the client. This approach allows the capture of all
events to a persistence layer, and to intelligently decide which
events will be squelched, and conversely which events will be
serviced, to create the best possible user experience. Results will
only be processed and returned to the client at the rate the image
processing and analysis computation can be performed and
transmitted.
[0255] An example of operation of the asynchronous command and
imaging pipeline 900 is illustrated in FIGS. 9A and 9B. As
illustrated in FIG. 9A, a client 902 initiates a message 904. A
middle-tier 906 receives the message 904 and determines which
compute server will handle the message. At 908, the middle-tier 906
checks to determine if the compute server 910 (e.g., server of
image processing and analysis system 104 of FIG. 1) is already busy
executing an equivalent command. If the compute server 910 is not
busy, the message 904 is immediately forwarded to the compute
server 910 as illustrated by arrow 912. Otherwise the message 910
is placed in a command slot 914, as illustrated by arrow 916, to be
executed upon receiving the completion event from the compute
server 910. If another message 904 arrives before the compute
server 910 is ready, the message in the command slot 914 is
replaced with the newer one. Alternatively, newer messages may be
added in a queue.
[0256] As illustrated in FIG. 9B, when the compute server 910 has
finished executing the command 918, the compute server 910 raises a
completion event 920. The Middle Tier 906 receives the completion
event 920 and forwards the response 922 as indicated by arrow 924
to the client 902. The Middle Tier 906 determines if there is a
message in the command slot 914 at 926. If there is a message in
the command slot 914, the when the completion event 920 fires the
Middle Tier 906 sends the message 904' to the compute server 910 as
indicated by arrow 928, and the command slot 914 is cleared.
[0257] As another example of a suitable imaging pipeline, some
workflows require multiple images to be rendered at the same time
that have linked properties. In some cases, the current workflow
act may require simultaneous viewing of, for instance 20 images. If
each of these images was retrieved with a distinct request,
performance would suffer greatly as there is significant overhead
in creating and sending a request. Instead, all the images may be
rendered onto or as one large image, and only a single response for
that resulting `sprite sheet` is sent. The client then displays the
images by using pixel offsets. For example, if a view had four
images each 256.times.256, the sprite sheet might be 256.times.1024
with each of the images placed or arranged one on top of another.
The client would then display 4 images at 256.times.256 by using
offsets of 0, 256, 512, and 768.
[0258] In addition, any lines, markers, or planes in the images are
drawn on the client as an overlay, and the information that informs
the client how to render the overlay comes from the server via a
text based message. This provides higher quality rendering of the
overlay data than if the overlay were to be rendered on the server
and then encoded as a JPEG and transmitted.
[0259] Workflow Architecture
[0260] Description: One of the primary advantages of 4D-Flow, is
that during acquisition there is no need to have a radiologist
on-site. A technician just needs to locate the chest or area of
interest, and then press one button to start acquiring this area of
interest. This drastically changes the typical cardiac MR workflow.
In addition, due to the off-line processing, the patient can
immediately leave the scanner after the acquisition. If a
technologist is concerned with image quality, perhaps because the
patient moved during acquisition, accelerated reconstruction can be
used to give back 1 cardiac phase of images to the technician with
5 minutes or less. Once the technician has verified that quality of
the images, they can feel confident in letting the patient leave.
Once the full 4D-Flow scan has been completed the raw data is sent
for automated image reconstruction (this can be done online at the
scanner or off-line). If this is done off-line, this can be done in
the hospital network or in the Morpheus cloud. After image
reconstruction the workflow is to take the DICOM images and import
them into the Morpheus software. At this point a Morpheus
technician or hospital technician goes through the workflow steps
highlighted above (image pre-processing, segmentation,
visualization, and quantification) to process the case off-line.
The goal is to set up the case for the clinician such that when the
clinician sits down in front of the Morpheus software all they need
to do is validate and annotate the report. The goal is to have this
process completed in 10 minutes or less. This workflow is
drastically different than many other software applications on the
market today primarily because very few software applications are
connected to a central database (i.e. in the cloud) and have the
flexibility to allow multiple users to quickly access the data on
any device (e.g. laptop at home, tablet, etc.).
[0261] Anonymization Service
[0262] There are numerous regulatory requirements for a class of
information typically denominated as protected health information
(PHI). Many clinical facilities (e.g., hospitals) or entities that
operate clinical facilities do not want any PHI to leave their
network or control. Likewise, to avoid onerous handling and
security requirements and to eliminate or reduce potential
liability, an entity that provides services to the clinical
facility may desire to be isolated from PHI. Various
implementations of the networked environment may implement a
service that prevents PHI from ever leaving the clinical facility's
own network.
[0263] A number of approaches are described herein, the preferred
approach depending on a location of a database that holds the
PHI.
[0264] In cases where the database containing PHI and the computer
nodes which require access to the PHI are all within the clinical
facility's own network there are typically two different
implementations that allow a user to access the MRI imaging and
analysis services provided by a remotely located MRI image
processing and analysis system which is outside the clinical
facility's own network.
[0265] 1) A first implementation employs multiple firewalls.
Clinical facility (e.g. Hospital) deployment should consist of
several security layers. The secure clinical facility network
should contain all PHI information (e.g., MONGO.RTM. database, data
files). The MRI image processing and analysis system (e.g., server
component thereof) should run in a demilitarized zone (DMZ) or
perimeter network configuration, with appropriate access
permissions to the secure clinical facility network for data access
as required through a firewall. Another firewall should separate
the DMZ from the Internet, and only ports 80 and 443 should be
exposed to the public through the Internet. This way a user can
login via a regular URL from a remote location or network (e.g.,
home), and access (e.g., see) PHI from the remote location or
network.
[0266] 2) A second implementation employs a virtual private network
(VPN). The particular URL for accessing the services provided by
the MRI image processing and analysis system is only accessible if
the client device is first connected through a VPN of the clinical
facility.
[0267] In cases where the clinical facility does not want the PHI
in databases outside clinical facility's own network and the
computer nodes which require access to the PHI are hosted outside
the clinical facility's own network (e.g., AMAZON.RTM. Web Services
or AWS), an anonymization service can run within the clinical
facility's network. The anonymization service receives raw DICOM
files, anonymizing the raw DICOM files by removing any plain text
PHI, and replaces the plain text PHI with a hash of the PHI (e.g.
all PHI fields in the DICOM images are identified and converted to
salted hashes). A key that turns the plain text PHI into a hash is
kept within the clinical facility's own network and is accessible
by the anonymization service.
[0268] This anonymization service can operate in at least two
ways
[0269] 1) A first implementation employs a Proxy Server. As
requests come from a client, either within the clinical facility's
network or outside the clinical facility's network, the request
passes through a proxy server, and the anonymization service
replaces the hash with the plain text PHI. This allows the client
to always see PHI. In this implementation, all HTTP/S requests are
funneled to the proxy server.
[0270] 2) A second implementation employs a one-time Lookup. When a
client connects to the server(s) of the MRI image processing and
analysis system, which are located outside the clinical facility's
network, a flag indicates to the client whether the client is
missing information required to render the PHI. If the client does
not have the plain text PHI, the client connects to the
anonymization service and requests the PHI by providing the hash or
an identifier (ID). The correct plain text PHI is then provided to
the client based on that provided hash or ID. The received PHI is
then stored locally (cached) by the client, as long as the session
is active. When the user logs out, the client purges the cache.
[0271] In all of the above described implementations, PHI is
transmitted from the client to/from the anonymization service
to/from server encrypted. In addition, any stored data may also be
in encrypted form.
[0272] In the case that a customer would want their PHI hosted in
the cloud, but in some circumstances wants to hide PHI in their
client (e.g. for academic conferences) we have created an
anonymization filter (which will be part of the anonymization
service). The anonymization filter is a filter that is installed on
the client data stream that inspects the traffic that passes
through the filter and removes PHI before allowing data to proceed
through the communication pipeline (it's a streaming data
filter).
[0273] Phase Aliasing Detection and/or Correction
[0274] Phase aliasing is typically the result of a 2.pi. offset of
certain information in the MRI data set. Phase aliasing may, for
example, appear as a voxel of wrong color, for example the
appearance of a black voxel representing a blood flow in a first
direction, where immediately adjacent voxels are white representing
a second direction, for instance opposite the first direction.
Phase aliasing may be the result of the velocity encoding (VENC)
parameter being set incorrectly (e.g., too high). Notably, it is
generally desirable to set the VENC parameter high to achieve
better resolution, however setting the VENC parameter too high will
tend to cause voxels to appear as a "negative" image.
[0275] To detect such, the MRI image processing and analysis system
may detect a body of an anatomical structure, for instance a
vessel. The MRI image processing and analysis system may then
analyze each voxel within the detected boundary, determining flow
within the bounded volume is all in a same direction or within a
defined angular threshold of the same direction. In particular, the
MRI image processing and analysis system may compare a respective
vector for each of the voxels, the vector indicative of a direction
of movement of the tissue represented by the particular voxel. The
MRI image processing and analysis system may mark voxels that
appear to be aberrant. The MRI image processing and analysis system
may check neighboring voxels, for example nearest neighbors, and/or
next nearest neighbors outward to some defined extent or degree.
For instance, the MRI image processing and analysis system may
initially check the nearest neighbors to a given voxel, in either
two-dimensions or more typically three-dimensions. In response to
identifying one or more apparently aberrant neighboring voxel, the
MRI image processing and analysis system may iterate outwardly to a
next level of voxels. This may include all next nearest neighboring
voxels to the first apparently aberrant voxel, or the nearest
neighboring voxels to the second, or later identified apparently
aberrant voxels. The MRI image processing and analysis system
defines or forms a region of interest (ROI) from the set of
apparently aberrant voxels.
[0276] Additionally or alternatively, the MRI image processing and
analysis system may employ continuity or mass conservation. For
example, the MRI image processing and analysis system may determine
if a flow into a bounded volume matches a flow out of the bounded
volume.
[0277] In some implementations, the MRI image processing and
analysis system may attempt to correct the phase aliasing, for
instance by adding a corrective value (e.g., 2.pi.). Other
approaches include a multi-VENC approach where a plurality of
passes at a variety of VENC parameters (i.e., different
frequencies) are tried to see which works the best. multiple
[0278] Signal Unwrapping
[0279] In some instances the appearance of certain portions of an
image may appear in an incorrect location. For example, a lower or
bottom portion of an image may appear at the top of the image or
frame. This results form an incorrect ordering of data or
information, which since the signal is periodic often results in
incorrect rendering at the ends of the image (e.g., upper end,
lower end). This time of error may be referred to as image wrapping
or magnitude aliasing.
[0280] In such instances the MRI image processing and analysis
system may implement a corrective action, for instance cropping the
incorrectly located (e.g., aberrant) portion from the image or even
correcting the image by moving the incorrectly located portion to
the correct location within the image or image frame. In some
implementations, the MRI image processing and analysis system can
rely on user input to identify the incorrectly located portion. In
other implementations, the MRI image processing and analysis system
may autonomously identify the incorrectly located portion. For
example, the MRI image processing and analysis system may analyze
the image data for discontinuities. For instance, the MRI image
processing and analysis system may compare are the image for
temporal slice by temporal slice consistency. The MRI image
processing and analysis system may, for instance, identify
gradients or steps in voxel intensity values (magnitudes). For
example, a large change in magnitude (e.g., doubling) in static
tissue should not occur, thus such is detected as an error.
[0281] Other Artifacts
[0282] In some instances artifacts may appear in the MRI data set.
For example, movement of a patient or portion thereof may give rise
to a blurring of a resulting image. Also for example, presence of
metal may give rise to streaks or other visual artifacts in the
resulting image. Contrasts agents may also give rise to
artifacts.
[0283] Typically these artifacts are difficult to correct. However,
the MRI image processing and analysis system may detect the
appearance of artifacts, and alert the medical care provider (e.g.,
physician) of the existence of artifacts in the data set.
[0284] Flow Driven Segmentation
[0285] The system may, for example automatically or autonomously,
identify structures (e.g., 1D, 2D, 3D flow structures) in the 4D
flow information, and may identify clinical makers. For example,
the system may, automatically or autonomously, identify clinical
makers such as anatomical and/or temporal clinical markers or
clinical landmarks. Clinical makers may, for example, include one
or more of aneurysms, stenosis, and plaque. Clinical markers may,
for example, include anatomical markers or landmarks, such as
various structures of the heart, for instance an apex of the heart,
the aorta, the vena cava, and values such as the mitral valve or
tricuspid valve. Clinical markers may, for example, include other
known structures and/or other signatures. In some instances, the
system may use the structures to identify various clinical markers.
The system may, for example automatically or autonomously, segment
or delineate various structures or clinical markers. For instance,
the system may segment or delineate the lungs from other bodily
tissue, for example based at least in part on the highly dynamic
nature of the air in the lungs as compare to the relatively less
dynamic nature of the other bodily tissue (e.g., cardiac tissue).
Also for instance, the system may segment or delineate blood tissue
from non-blood tissue, again based in part on the relatively
dynamic and/or periodic nature of the blood tissue relative to the
non-blood tissue, for example. Also for instance, the system may
segment or delineate fluid substances (e.g., air in the lungs,
blood in the vasculature or heart) from non-fluid tissue (e.g.,
vasculature, heart, fat).
[0286] Blood flow in a particular location in a body can frequently
be characterized by a velocity of that blood flow over time. This
is particularly true for blood flow within the heart and in the
main arteries and veins of the body. Because of the rhythmic nature
of the cardiac cycle, one method of characterizing blood flow
patterns in a temporally resolved velocity data-set, where the
time-points are distributed evenly over a single cardiac cycle, is
by examining the components of a Discrete Fourier Transform (DFT)
calculated at each voxel or pixel over the available time-points.
Analysis can be performed via one or more processors using either
transforms of the individual velocity components (x, y and z) or
transforms of the resulting velocity magnitude.
[0287] The DFT components are useful for segmenting a blood pool
from static tissue. For this purpose the low order, non-DC
components are most useful as these components show strongly in
both the blood flow within the heart and in the main arteries and
veins connected to the heart, while any false velocity signals in
static tissue, caused by eddy currents and other sources, tend to
be largely static in time. Air within the lungs and outside of the
body, with its typically high velocity signals, will also tend to
show strongly in this transform, however these regions are easily
removed using other techniques, for instance a simple threshold in
images of the anatomy.
[0288] As different regions of blood flow (e.g., the aorta as
compared to the inferior and superior vena cava) will have a
different respective shapes or flow patterns, a general mask
designed to locate all the blood flow within a chest scan can be
obtained by combining the desired DFT components together without
regard for their relative magnitude or phase. Application of such a
mask will generally do a good job of separating the blood pool from
static tissue. More refined masks designed to identify particular
regions of the blood pool can be produced via the system by taking
the phase and magnitude of the DFT components into account. The
phase of the DFT components can be compared to the time-point of
peak systole, with a probability assigned to each pixel based on
the deviation of the phase from the expected value. The time-point
of peak systole may be determined through various techniques
described elsewhere. Likewise, the system may examine the relative
magnitudes of the different DFT components and produce probability
values based on the expected characteristics of the flow. The
system may combine the probability values with the overall blood
mask to produce highly accurate blood masks for the particular
blood pool region of interest. In particular, the highly
characteristic temporal nature of the blood flow in the aorta and
pulmonary arteries can be easily distinguished and segmented from
the rest of the blood pool using this technique.
[0289] Blood probability masks produced in this way for the
arterial flow from the ventricles have the property, due to the
strength by which they identify arterial flow, that a histogram of
the resulting probability values can be used to automatically
identify the appropriate probability cutoff value by the system,
without assistance from a user (i.e., autonomously). Once an
appropriate probability cutoff is determined for the arterial mask,
the system may use the resulting mask to assist in determining
probability cutoff values for other masks such as the
aforementioned general blood mask. Due to the resulting accuracy of
the arterial mask, it is also useful for providing points that can
be guaranteed, with high probability, to be within the blood pool.
Such points are useful to the system for various purposes, such as
performing a flood fill of the less accurate general blood mask in
order to clean it up by removing extraneous non-connected
pieces.
[0290] Once the arterial flow mask is produced, marking regions of
blood flow from the ventricles, the blood flow or blood pool can be
automatically divided into aorta and pulmonary artery flow. Since
there is no direct connection between the flow in the aorta and the
flow in the pulmonary artery, the system can use flow directions
and gradients and/or path-lines along with the probability values
to separate the arterial mask into two main pieces. Once separated,
the system can easily distinguish the aorta and pulmonary artery
from each other by anatomical clues such as the average direction
of flow or the relative positions of the two segments in space.
[0291] Since the tissue of the heart moves rhythmically with the
cardiac cycle, calculating a per pixel DFT of a temporally resolved
anatomy data set can be used to produce a probability mask for the
wall of the heart, in a similar manor to that used for identifying
blood pools in the temporally resolved velocity data-sets. As with
this previous use, the non-zero low frequency components are the
most useful for identifying motion having the same overall period
as the heartbeat. Producing a mask that accurately identifies heart
muscle is useful for a number of purposes. The system may combine
the mask with the blood flow mask to produce a mask that covers the
entire heart. This is useful, for example, in the described eddy
current correction algorithms, where it is important to ignore
regions of non-static tissue, or simply for segmenting the heart by
the system for better visualization. A heart wall mask also
provides useful information for segmenting the different regions of
the blood pool and the chambers of the heart by the system, and can
be used in combination with other metrics to assist with the
automatic or autonomous identification of landmarks such as heart
valves by the system.
[0292] A mask that accurately identifies heart muscle can also be
used to provide metrics such as the location and size of the heart
within the scan or image. The position of the heart within the scan
or image has many uses. For example, the position can be used by
blood flow segmentation routines executed by the system for
determining whether blood is moving towards or away from the heart
in order to separate, for example, right from left blood flow
within the lungs.
[0293] The above described automated approaches remove the
subjectivity in identifying anatomical structure and flow, which is
endemic in conventional approaches, providing a high level or
repeatability. This repeatability allows new uses for the MRI data.
For example, MRI data for single patient may be reliably reviewed
across different sessions for trends. Even more surprisingly, MRI
data for a plurality of patients may be reliably reviewed for
trends across a population or demographic.
[0294] The various embodiments described above can be combined to
provide further embodiments. To the extent that they are not
inconsistent with the specific teachings and definitions herein,
all of the U.S. patents, U.S. patent application publications, U.S.
patent applications, foreign patents, foreign patent applications
and non-patent publications referred to in this specification
and/or listed in the Application Data Sheet, including but not
limited to U.S. Provisional Patent Application No. 61/571,908,
filed Jul. 7, 2011; International Patent Application No.
PCT/US2012/045575, filed Jul. 5, 2012; U.S. Provisional Patent
Application No. 61/928,702, filed Jan. 17, 2014; International
Patent Application No. PCT/US2015/011851, filed Jan. 16, 2015; U.S.
Patent Application No. 15/112,130, filed July 15, 2016; and U.S.
patent application Ser. No. 16/181,038, filed Nov. 5, 2018 are
incorporated herein by reference, in their entirety. Aspects of the
embodiments can be modified, if necessary, to employ systems,
circuits and concepts of the various patents, applications and
publications to provide yet further embodiments.
[0295] These and other changes can be made to the embodiments in
light of the above-detailed description. In general, in the
following claims, the terms used should not be construed to limit
the claims to the specific embodiments disclosed in the
specification and the claims, but should be construed to include
all possible embodiments along with the full scope of equivalents
to which such claims are entitled. Accordingly, the claims are not
limited by the disclosure.
* * * * *