WO2006118548A1 - Method and apparatus for registration of an atlas to an image - Google Patents

Method and apparatus for registration of an atlas to an image Download PDF

Info

Publication number
WO2006118548A1
WO2006118548A1 PCT/SG2006/000112 SG2006000112W WO2006118548A1 WO 2006118548 A1 WO2006118548 A1 WO 2006118548A1 SG 2006000112 W SG2006000112 W SG 2006000112W WO 2006118548 A1 WO2006118548 A1 WO 2006118548A1
Authority
WO
WIPO (PCT)
Prior art keywords
points
boundary
image
displacement
point
Prior art date
Application number
PCT/SG2006/000112
Other languages
French (fr)
Inventor
Jimin Liu
Su Huang
Wieslaw Lucjan Nowinski
Original Assignee
Agency For Science, Technology And Research
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agency For Science, Technology And Research filed Critical Agency For Science, Technology And Research
Priority to EP06733555A priority Critical patent/EP1876954A4/en
Priority to US11/919,833 priority patent/US8687917B2/en
Publication of WO2006118548A1 publication Critical patent/WO2006118548A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B6/00Apparatus or devices for radiation diagnosis; Apparatus or devices for radiation diagnosis combined with radiation therapy equipment
    • A61B6/52Devices using data or image processing specially adapted for radiation diagnosis
    • A61B6/5211Devices using data or image processing specially adapted for radiation diagnosis involving processing of medical diagnostic data
    • A61B6/5229Devices using data or image processing specially adapted for radiation diagnosis involving processing of medical diagnostic data combining image data of a patient, e.g. combining a functional image with an anatomical image
    • A61B6/5247Devices using data or image processing specially adapted for radiation diagnosis involving processing of medical diagnostic data combining image data of a patient, e.g. combining a functional image with an anatomical image combining images from an ionising-radiation diagnostic technique and a non-ionising radiation diagnostic technique, e.g. X-ray and ultrasound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/754Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries involving a deformation of the sample pattern or of the reference pattern; Elastic matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/653Three-dimensional objects by matching three-dimensional models, e.g. conformal mapping of Riemann surfaces
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/05Detecting, measuring or recording for diagnosis by means of electric currents or magnetic fields; Measuring using microwaves or radio waves 
    • A61B5/055Detecting, measuring or recording for diagnosis by means of electric currents or magnetic fields; Measuring using microwaves or radio waves  involving electronic [EMR] or nuclear [NMR] magnetic resonance, e.g. magnetic resonance imaging
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B6/00Apparatus or devices for radiation diagnosis; Apparatus or devices for radiation diagnosis combined with radiation therapy equipment
    • A61B6/50Apparatus or devices for radiation diagnosis; Apparatus or devices for radiation diagnosis combined with radiation therapy equipment specially adapted for specific body parts; specially adapted for specific clinical applications
    • A61B6/501Apparatus or devices for radiation diagnosis; Apparatus or devices for radiation diagnosis combined with radiation therapy equipment specially adapted for specific body parts; specially adapted for specific clinical applications for diagnosis of the head, e.g. neuroimaging or craniography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30016Brain

Definitions

  • the present invention relates generally to image deformation and, in particular, to image deformation where an atlas is registered to an image in a manner such that the topology of objects in the atlas is preserved.
  • Image deformation is an operation often performed in computer graphics.
  • One application where image deformation is particularly useful is where objects in different images have to be registered, for example, to register objects in an atlas with objects obtained through magnetic resonance (MR) imaging.
  • MR magnetic resonance
  • a three-dimensional brain atlas is registered onto a volumetric MR image.
  • brain functional image analysis, image-guided neurosurgery, and model-enhanced neuroradiology are facilitated through the resulting combined image.
  • Existing methods for image registration can be broadly classified into two classes, namely intensity based image registration and feature based image registration. In methods using intensity based image registration a transformation between two input images is sought that maximizes some intensity similarity measure between the two images.
  • feature based image registration methods do not work with the image data directly.
  • Feature based image registration methods operate by inserting an intermediate step wherein a set of structure- related homologous features are extracted. It is the matching of these structure-related homologous features which is then used for registration.
  • the features used for guiding the deformation vary from individual points, lines, contours, surface patches, entire parameterized surfaces, and particular objects. The reliance on structural information makes these methods more anatomically relevant. However, the challenge with these methods lies with obtaining a sufficiently large number of features automatically to drive the deformation.
  • a method of registering a first image with a second image comprising the steps of: calculating a boundary displacement of at least one structure in said first image in order to register that structure with an equivalent structure in said second image; and warping the boundary of said structure in said first image according to said boundary displacement using topology preserving propagation of boundary points of said structure.
  • an apparatus for implementing the aforementioned method According to another aspect of the present invention, there is provided an apparatus for implementing the aforementioned method.
  • a computer program product including a computer readable medium having recorded thereon a computer program for implementing the methods described above.
  • Fig. 1 shows a schematic flow diagram of a method of registering an input image
  • Fig. 2 shows a schematic block diagram of a computer system upon which the
  • Fig. 3 shows a schematic flow diagram of a process for advancing an active front
  • Fig. 4A shows a slice of a Talairach-Tournoux brain atlas
  • Fig. 4B shows a two-dimensional image obtained through magnetic resonance imaging
  • Fig. 5 illustrates a slice of a brain atlas aligned to a brain image, as well as a 2-
  • FIG. 6A and 6B illustrate 6-connected and 26-connected neighbours respectively;
  • Figs. 7A to 7C illustrate the displacement update of a new front point
  • Fig. 8 A illustrates a portion of the brain atlas slice shown in Fig. 5, the boundary of a structure, and its boundary displacement;
  • Fig. 8B illustrates the structure shown in Fig. 8A, the boundary displacement of that structure, and that structure after boundary warping;
  • Fig. 9A shows the outlines of the brain atlas shown in Fig. 4A after that brain atlas has been warped with the method disclosed herein, with that warped brain atlas superimposed over the MRI brain image shown in Fig. 4B;
  • Fig. 9B shows a portion of the image of Fig. 9A magnified in order to more clearly show the structures therein.
  • Fig. 1 shows a schematic flow diagram of a method 100 of registering an input image I(x) and an atlas A(x).
  • the image I(x) and the atlas A(x) are volumetric images
  • the values of the image I(x) at each three-dimensional grid point x, or voxel may represent any element property.
  • the image I(x) is formed from sampled intensity values, for example generated using 3-D medical scanners or computed tomography (CT) devices.
  • CT computed tomography
  • the steps of method 100 is implemented as software, such as an application program, executing within the computer system 200.
  • the steps of the method 100 are effected by instructions in the software that are carried out by the computer system 200.
  • the software may be stored on a computer readable medium.
  • the software is loaded into the computer system 200 from the computer readable medium, and then executed by the computer system 200.
  • a computer readable medium having such software or computer program recorded on it is a computer program product.
  • the use of the computer program product in the computer system 200 preferably effects an advantageous apparatus for registering the input image I ⁇ x) and the atlas A(x).
  • the computer system 200 is formed by a computer module 201, input devices 202 such as a keyboard and/or a pointing device, and a display device 214.
  • the computer module 201 typically includes at least one processor unit 205, and a memory unit 206.
  • the module 201 also includes a number of input/output (I/O) interfaces including a video interface 207 that couples to the video display device 214, and an I/O interface 213 for the input devices 202.
  • a storage device 209 is provided and typically includes a hard disk drive.
  • a CD-ROM drive (not illustrated) may be provided as a non-volatile source of data.
  • the components 205 to 213 of the computer module 201 typically communicate via an interconnected bus 204 and in a manner which results in a conventional mode of operation of the computer system 200 known to those in the relevant art.
  • the application program is resident on the storage device 209 and read and controlled in its execution by the processor 205. Intermediate storage of the program and any data may be accomplished using the memory 206, possibly in concert with the storage device 209.
  • the application program and atlas A(x) may be supplied to the user encoded on a CD-ROM, and read via a corresponding drive (not illustrated), or alternatively may be read by the user from a network via a modem device.
  • the software can also be loaded into the computer system 200 from other computer readable media.
  • the term "computer readable medium” as used herein refers to any storage or transmission medium that participates in providing instructions and/or data to the computer system 200 for execution and/or processing.
  • the method 100 of registering the input image I(x) and the atlas A(x) starts in step 110 where the image I(x) is pre-processed.
  • Pre-processing typically includes removal of features in the image I(x) which are not part of the object modelled in the atlas A(x).
  • Step 120 follows where the atlas A(x) is roughly aligned to the image I(x) through a global affine transformation.
  • the atlas A(x) is then in step 130 warped using non-rigid registration in order to register the atlas A(x) with the image I(x).
  • the non-rigid registration of step 130 is described in more detail below.
  • a preferred application of method 100 is in the medical field, and in particular the field of neurosurgery.
  • the atlas A(x) is a brain atlas and the image I(x) is obtained through magnetic resonance imaging (MRI).
  • MRIs are able to capture a three dimensional image of the internal structure of a patient's body at high resolution
  • the preferred brain atlas used is that which was published by
  • Fig. 4A shows a representation of a slice of the Talairach-Tournoux brain atlas.
  • Fig. 4B shows a two-dimensional MRI slice of a patient's brain.
  • the MRI brain image I(x) is pre-processed by removal of the scalp and skull.
  • Preferably morphological operations and connected component analysis are used to remove the scalp and skull from the MRI brain image I(x).
  • Step 130 starts in sub-step 131 where the grid domain D is divided into a set of regular blocks, namely, hexahedrons, hi particular, the grid domain D is divided into a set of regular blocks ⁇ B ⁇ p ⁇ ), B ⁇ pi), ...,B(p m ) ⁇ , with each block having the dimensions
  • Fig. 5 illustrates an atlas slice superimposed to a slice of an MRI brain image I(x). Also illustrated in Fig. 5 is a 2-dimensional portion of the grid of the grid domain D.
  • Block B(pi) is a hexahedron having centre point pu Block B'(qJ) is a block (hexahedron)
  • a block matching method is then used in sub-step 132 to calculate a boundary displacement of each structure in the atlas A(x).
  • the method 100 is used to align a brain atlas A(x) with an MRI brain image I(x)
  • Sub-step 132 operates by first calculating the displacement dp t of each block center point /? / by maximizing a block similarity measure of atlas block A ⁇ B(pi) within block BQ) 1 ) and image block within the block B(pi+dpi) as follows:
  • Block B(pi+dpi) is obtained by translating block B(pj) in grid domain D with the displacement
  • the displacement dp t of each block B is restricted such that the displacement dpi may not exceed half the block edge length in each direction, that is:
  • the displacement dx of all points x on structure boundaries is then calculated as the interpolation of displacements ⁇ dp ⁇ ,dp 2 , ..., dp m ⁇ . For any point x, there exist a block
  • centre points of blocks B(py), and the displacement dx of point x is calculated as:
  • Fig. 8A illustrates a portion of the slice in brain atlas A(x) shown in Fig. 5, that portion being a portion bounded by a single block B. Also illustrated is the boundary of a structure 901, and its boundary displacement.
  • the atlas A(x) is deformed by boundary warping and using topology preserving front propagation. In particular, each structure is warped according to the boundary displacement of that structure determined in sub-step 132.
  • Fig. 8B illustrates the structure 901 shown in Fig. 8 A, together with its boundary displacement, and that structure 901 after boundary warping, providing structure 902.
  • regions and contours of structures within the atlas A(x) may not overlap each other. This is a very natural requirement, since these regions and contours indicate different tissues or landmarks. Another requirement that has to be satisfied in order to preserve topology is that two line segments from the same contour may not intersect (except for their end points). This requirement indicates that the topological characteristic of a given region or contour does not change, and it is reasonable in cases when the general model correctly represent the topology relationships amongst considered tissues.
  • Another method used which strictly does not fall within any one of the two model deformation categories identified above is to generate surfaces from sparse points. This method is also computationally expensive, especially when the number of points is large.
  • a front propagation approach is used in sub-step 133 to deform the atlas A(x).
  • a connectivity pair (6, 26) is chosen, that being 6-connectivity for objects and 26 for object counterparts.
  • Fig. 6 A shows a point 601 together with its 6-connected neighbours
  • Fig. 6B shows a point 602 together with its 26-connected neighbours.
  • point P be a front point of a volume volume(P), which means that:
  • point P is a front point of volumeiP) when at least one 6-connected neighbour of point P is not labelled with the same label L as points in volumeiP).
  • a front is a set of 26- connected front points.
  • Atlas deformation is achieved by adding points to and removing points from all volumes in a breadth first style. That is, each front is repeatedly advanced one step forward in turn until none of the fronts can propagate any further.
  • the key principles of this digital front propagation method are front displacement update and single front one step forward propagation.
  • some front points P are removed, whereas some front points P are added to the volume volume(P) under consideration.
  • a new front is defined by the changed volume(P). In order to advance the new front, it is needed to update the displacement P.dx of all front points P on the new front.
  • [P JC] indicate the grid point on the three dimensional grid to which the front point P is approximate to.
  • front point P before and after displacement is not approximate to the same grid point, that front point P is considered to be active. Only active front point P propagate forward.
  • a preceding point pre(P) and a succeeding point next(P) are determined.
  • the position next(P)jc of the succeeding point next(P) is determined by moving from the (current) position PJC of front point P along the displacement vector P.dx in a manner so that: the grid point [next(P)jc] is within the 26-connected neighbours of the grid point [PJC]; and the grid point [next(P)jc] achieves the minimum distance from the line passing through positions PJC and Pjc+P.dx.
  • the position pre(P)x of the preceding point pre(P) is determined in a manner similar to that of the succeeding point next(P) described above. The difference is that when the position pre(P)jc is determined, movement is performed from the (current) position PJC of front point P along displacement vector —P.dx, in a manner so that grid point to which is the position pre(P)jc of the preceding point preiP) is approximate to is also a neighbour to grid point [PJC]. Also, the grid point has the minimum distance from the extended line passing through positions PJC and pre(P)jc.
  • FIG. 7 A illustrates a front point 701 having position PJC.
  • the position PJC of the front point P relative to grid positions is also illustrated. In the illustration only two dimensions are shown for clarity. However, as would be clear from the description, the grid domain D is three-dimensional.
  • the grid point [P.x] to which the position PJC is approximate to is grid point 705.
  • Vector 706 indicates the displacement P.dx calculated for front point P, which defines the target point 710 (P. x+P.dx) for front point P.
  • the position next(P)jc of the succeeding point next ⁇ P) is then determined by moving from the (current) position PJC of front point 701 along the displacement vector 706 towards the target point 710.
  • Point 708 is determined the succeeding point next(P), with the grid point 707 to which point 708 is approximate to being a 26-connected neighbour to the grid point 705.
  • Point 708 has the minimum distance from the line passing through positions 701 and 710.
  • the position pre(P)jc of the preceding point pre(P) is determined by moving from the (current) position Px of front point 701 along the displacement vector - P.dx .
  • Point 702 is determined as the preceding point pre(P), with the grid point 703 to which point 702 is approximate to being a 26-connected neighbour to the grid point 705.
  • Point 702 has the minimum distance from the extended line 704 passing through positions 701 and 710.
  • FIG. 7B A front including three front points 715, 716 and 717 is shown.
  • the front points 715, 716 and 717 have target points 721, 722 and 723 respectively.
  • front points 715 and 716 propagate to succeeding points 725 and 726 respectively.
  • both of points 725 and 726 are approximate grid position 720, which corresponds to [Q Jt].
  • the position Qx and displacement Q.dx take the values of the succeeding point 725 of front point 715.
  • the displacement Q.dx is indicated as vector 728. If none of the front points (P 1 , P 2 ,.... J* n ⁇ propagate to grid position [QJC] when the front is propagated by one step forward, then the position QJC is set to the grid position [QJC].
  • the displacement Q.dx is set such that the target position of point Q, which is Qx+Q.dx, corresponds to the centre of the target positions of all neighbours forming part of the front. That is:
  • Fig. 7C illustrates a front including three front points 751, 752 and 753, and having target points 761, 762 and 763 respectively.
  • the front points 751, 752 and 753 propagate to positions 771, 772 and 773 respectively, none of which corresponding to point Q.
  • the position Qx is set to the grid position 780, and the displacement Q.dx is set to such that the target position 781 of point Q corresponds to the centre of the target positions 761, 762 and 763 of front points 751, 752 and 753 respectively.
  • a front point P indicates the label L of the atlas A(x) at that front point P.
  • a front point P is defined to be a simple point when the addition or removal of that front point P from the
  • volume volume(P) does not change the digital topology of that volume volume(P).
  • main principle applied in that method is to determine whether the number of connected
  • Fig. 3 shows a schematic flow diagram of a process 800 for advancing an active
  • step 810 it is determined whether any active front points P remain for processing. In the case where one or more active front points P still remain, the process 800 continues
  • Step 820 then follows where it
  • the process 800 returns to step 810 from where the next active front point P is processed.
  • step 825 the next 26-connected neighbour is identified.
  • step 855 the process 800 returns to step 820 to process the remaining neighbours.
  • step 810 the process 800 continues to step 890 where the front is updated by determining the front displacements P.dx of all front points P, and in the manner described above with reference to Figs. 7A to 7C.
  • the above process 800 deforms the atlas A(x) by growing and shrinking structures within the atlas A(x) in a manner that preserves topology. As the structures within the atlas A(x) are used to calculate boundary displacements, the deformation may be said to be anatomically driven.
  • Fig. 9A shows the outlines of the brain atlas A (x) shown in Fig. 4A after that brain atlas A(x) has been warped using the non-rigid registration of step 130, with that warped brain atlas A(x) superimposed over the MRI brain image I(x) shown in Fig. 4B.
  • Fig. 9B shows a portion of the image of Fig. 9A magnified in order to more clearly show the result obtained through step 130.
  • a multi-resolution strategy is adopted whereby the size of the blocks B (formed in step 131) is changed from large to small during processing.
  • the boundary warping applied in step 133 is then applied to each block size.
  • This multi-resolution strategy allows the non-rigid registration performed in step 130 to initially operate on large blocks B, thereby making large deformation to the structures in the atlas A(x), followed by progressively smaller blocks B, causing finer, and more accurate deformations to the structures.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Pathology (AREA)
  • Radiology & Medical Imaging (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • High Energy & Nuclear Physics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Optics & Photonics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)

Abstract

A method (100) and an apparatus (200) are disclosed for registering an input image and an atlas. The atlas is warped (130) using non-rigid registration. In particular, boundary displacements of structures in the atlas are calculated (132) which register those structures with equivalent structures in the input image. The boundaries of structures in the atlas are then warped (133) according to their respective boundary displacements using topology preserving propagation of boundary points of the structures.

Description

METHOD AND APPARATUS FOR REGISTRATION OF AN ATLAS
TO AN IMAGE
Field of the Invention
The present invention relates generally to image deformation and, in particular, to image deformation where an atlas is registered to an image in a manner such that the topology of objects in the atlas is preserved.
Background
Image deformation is an operation often performed in computer graphics. One application where image deformation is particularly useful is where objects in different images have to be registered, for example, to register objects in an atlas with objects obtained through magnetic resonance (MR) imaging. More specifically, in the field of neurosurgery a three-dimensional brain atlas is registered onto a volumetric MR image. Following the registration of the atlas and the brain image, brain functional image analysis, image-guided neurosurgery, and model-enhanced neuroradiology are facilitated through the resulting combined image. Existing methods for image registration can be broadly classified into two classes, namely intensity based image registration and feature based image registration. In methods using intensity based image registration a transformation between two input images is sought that maximizes some intensity similarity measure between the two images. Such methods are easily automated as the transformation is derived directly from the intensity values of the image data when applied to the similarity measure. A substantial challenge, however, is the translation of an image-similarity function to a desired anatomic correspondence. In addition, a large amount of evenly distributed features confronts these methods with an extremely large search space and criterion landscapes with many local minima, leading to computing cost increase and precision degrading.
Compared to intensity based image registration methods, feature based image registration methods do not work with the image data directly. Feature based image registration methods operate by inserting an intermediate step wherein a set of structure- related homologous features are extracted. It is the matching of these structure-related homologous features which is then used for registration. The features used for guiding the deformation vary from individual points, lines, contours, surface patches, entire parameterized surfaces, and particular objects. The reliance on structural information makes these methods more anatomically relevant. However, the challenge with these methods lies with obtaining a sufficiently large number of features automatically to drive the deformation.
A need therefore exists for a registration method which does not require particular structures to be extract, and which preserves topology of structures during deformation of such structures.
Summary
It is an object of the present invention to provide an improved method and apparatus for registering a first image with a second image in a manner that preserves topology of object in the images.
According to a first aspect of the present invention, there is provided a method of registering a first image with a second image, said method comprising the steps of: calculating a boundary displacement of at least one structure in said first image in order to register that structure with an equivalent structure in said second image; and warping the boundary of said structure in said first image according to said boundary displacement using topology preserving propagation of boundary points of said structure.
According to another aspect of the present invention, there is provided an apparatus for implementing the aforementioned method.
According to another aspect of the present invention there is provided a computer program product including a computer readable medium having recorded thereon a computer program for implementing the methods described above.
Other aspects of the invention are also disclosed.
Brief Description of the Drawings
One or more embodiments of the present invention will now be described with
reference to the drawings, in which:
Fig. 1 shows a schematic flow diagram of a method of registering an input image
and an atlas;
Fig. 2 shows a schematic block diagram of a computer system upon which the
method shown in Fig. 1 may be practiced;
Fig. 3 shows a schematic flow diagram of a process for advancing an active front
one step forward by adding and removing front points;
Fig. 4A shows a slice of a Talairach-Tournoux brain atlas;
Fig. 4B shows a two-dimensional image obtained through magnetic resonance imaging;
Fig. 5 illustrates a slice of a brain atlas aligned to a brain image, as well as a 2-
dimensional portion of the grid of a grid domain; Figs. 6A and 6B illustrate 6-connected and 26-connected neighbours respectively;
Figs. 7A to 7C illustrate the displacement update of a new front point;
Fig. 8 A illustrates a portion of the brain atlas slice shown in Fig. 5, the boundary of a structure, and its boundary displacement;
Fig. 8B illustrates the structure shown in Fig. 8A, the boundary displacement of that structure, and that structure after boundary warping;
Fig. 9A shows the outlines of the brain atlas shown in Fig. 4A after that brain atlas has been warped with the method disclosed herein, with that warped brain atlas superimposed over the MRI brain image shown in Fig. 4B; and
Fig. 9B shows a portion of the image of Fig. 9A magnified in order to more clearly show the structures therein.
Detailed Description Where reference is made in any one or more of the accompanying drawings to steps and/or features, which have the same reference numerals, those steps and/or features have for the purposes of this description the same function(s) or operation(s), unless the contrary intention appears.
Fig. 1 shows a schematic flow diagram of a method 100 of registering an input image I(x) and an atlas A(x). The image I(x) and the atlas A(x) are volumetric images
defined in a grid domain D=[I... Ti1]X[I ... It2Jx[I --.«3] wherein the parameters m, n2 and
m specify the size of the atlas A(x). Atlas ^4(Λ;)eL≡{0,l,2,...,/}, wherein L are labels
defined within the atlas A(x), and / indicates the number of labels defined in the atlas A(x). Each nonzero label L corresponds to a structure, whereas the label L=O represents unlabeled structures. The values of the image I(x) at each three-dimensional grid point x, or voxel, may represent any element property. In a preferred implementation the image I(x) is formed from sampled intensity values, for example generated using 3-D medical scanners or computed tomography (CT) devices. The method 100 of registering the input image I(x) and the atlas A(x) is preferably practiced using a computer system 200, such as that shown in Fig. 2 wherein the steps of method 100 is implemented as software, such as an application program, executing within the computer system 200. In particular, the steps of the method 100 are effected by instructions in the software that are carried out by the computer system 200. The software may be stored on a computer readable medium. The software is loaded into the computer system 200 from the computer readable medium, and then executed by the computer system 200. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 200 preferably effects an advantageous apparatus for registering the input image I{x) and the atlas A(x).
The computer system 200 is formed by a computer module 201, input devices 202 such as a keyboard and/or a pointing device, and a display device 214. The computer module 201 typically includes at least one processor unit 205, and a memory unit 206. The module 201 also includes a number of input/output (I/O) interfaces including a video interface 207 that couples to the video display device 214, and an I/O interface 213 for the input devices 202. A storage device 209 is provided and typically includes a hard disk drive. A CD-ROM drive (not illustrated) may be provided as a non-volatile source of data. The components 205 to 213 of the computer module 201, typically communicate via an interconnected bus 204 and in a manner which results in a conventional mode of operation of the computer system 200 known to those in the relevant art. Typically, the application program is resident on the storage device 209 and read and controlled in its execution by the processor 205. Intermediate storage of the program and any data may be accomplished using the memory 206, possibly in concert with the storage device 209. In some instances, the application program and atlas A(x) may be supplied to the user encoded on a CD-ROM, and read via a corresponding drive (not illustrated), or alternatively may be read by the user from a network via a modem device. Still further, the software can also be loaded into the computer system 200 from other computer readable media. The term "computer readable medium" as used herein refers to any storage or transmission medium that participates in providing instructions and/or data to the computer system 200 for execution and/or processing.
Referring again to Fig. 1, the method 100 of registering the input image I(x) and the atlas A(x) starts in step 110 where the image I(x) is pre-processed. Pre-processing typically includes removal of features in the image I(x) which are not part of the object modelled in the atlas A(x). Step 120 follows where the atlas A(x) is roughly aligned to the image I(x) through a global affine transformation. The atlas A(x) is then in step 130 warped using non-rigid registration in order to register the atlas A(x) with the image I(x). The non-rigid registration of step 130 is described in more detail below.
A preferred application of method 100 is in the medical field, and in particular the field of neurosurgery. In that application the atlas A(x) is a brain atlas and the image I(x) is obtained through magnetic resonance imaging (MRI). MRIs are able to capture a three dimensional image of the internal structure of a patient's body at high resolution
such as 0.8x0.8x1.2 mm3. The preferred brain atlas used is that which was published by
Nowinski W.L. and Belov D. in the publication Neuroimage, vol. 20(1), 2003, pp.50-57, in an paper entitled "The Cerejy Neuroradiology Atlas: a Talairach-Tournoux atlas-based tool for analysis of neuroimages available over the Internet", where a high resolution brain atlas was generated by interpolation of the digital Talairach-Tournoux (TT) atlas. That brain atlas has 137 different structures, i.e. /=137.
Fig. 4A shows a representation of a slice of the Talairach-Tournoux brain atlas. Fig. 4B shows a two-dimensional MRI slice of a patient's brain. hi step 110 the MRI brain image I(x) is pre-processed by removal of the scalp and skull. Preferably morphological operations and connected component analysis are used to remove the scalp and skull from the MRI brain image I(x).
Referring again to Fig. 1, the non-rigid registration of step 130 where the atlas A(x) is warped in order to register the atlas A(x) with the image I(x) is now described in more detail. Step 130 starts in sub-step 131 where the grid domain D is divided into a set of regular blocks, namely, hexahedrons, hi particular, the grid domain D is divided into a set of regular blocks {B{p\), B{pi), ...,B(pm)}, with each block having the dimensions
L1XZ2XX3. Block B(pi) is a hexahedron having a centre point /?/ (/=1,2,... m). AU the
centre points {puPi, ---,Pm] form an adjunct block set {B'(q{), 5'(#2), ..., B\qn)}, where centre points % (J=I, 2,... ή) of block B\qJ) are vertexes of block B(pϊ), and vertexes of block B1 are centre points/?; of blocks B.
Fig. 5 illustrates an atlas slice superimposed to a slice of an MRI brain image I(x). Also illustrated in Fig. 5 is a 2-dimensional portion of the grid of the grid domain D.
Block B(pi) is a hexahedron having centre point pu Block B'(qJ) is a block (hexahedron)
from the adjunct block set and having centre point qj.
Referring again to Fig. 1, following sub-step 131 a block matching method is then used in sub-step 132 to calculate a boundary displacement of each structure in the atlas A(x). hi the preferred application where the method 100 is used to align a brain atlas A(x) with an MRI brain image I(x), it is impossible to use a simple function, such as the affine transformation, to describe the one-to-one correspondence between the (general) brain atlas A(x) and the brain image I(x) from a particular patient. This is due to the complexity and variability of brain structures.
Sub-step 132 operates by first calculating the displacement dpt of each block center point /?/ by maximizing a block similarity measure
Figure imgf000010_0001
of atlas block A\B(pi) within block BQ)1) and image block
Figure imgf000010_0002
within the block B(pi+dpi) as follows:
φ, = argmax [S(A \ B(pt),I \ B(pt + dpt))] (1)
\dpa\<Lj /2U=l,2,3)
Block B(pi+dpi) is obtained by translating block B(pj) in grid domain D with the displacement
Figure imgf000010_0003
The displacement dpt of each block B is restricted such that the displacement dpi may not exceed half the block edge length in each direction, that is:
Figure imgf000010_0004
To calculate the block similarity measure S(A\B(pi), I\B(pi+dpi)), suppose that all points x of the atlas A(x) in block B(pt) are classified into one of £ subset O1, O2, ... ,Ok according to their labels L. That is:
Or{x\xeB(pd, A(X)F= lt} (/=1,2,...A), (3)
wherein Z1, /2, ..., and 4 are different atlas labels L. In this case, according to the intensity of the image I(x), all points x of the image I(x) in the displaced block B(pi+dpi) are classified into one of k clusters C1, C2, ... , Ct with intensity from low to high by using a fussy clustering method, such as the fussy clustering method disclosed in the article entitled "An adaptive spatial fuzzy clustering algorithm for 3-D MR image segmentation", IEEE Trans Med Imaging. 22(9), pp.1063-1075, 2003, by Alan W.C.L. and Hong Y. For a given imaging modality, suppose that the average intensity of objects with labels Z1, h -..Jk are sorted from low to high. It is then reasonable to assume that cluster Q corresponds to subset O1. This allows the block similarity measure S(A\B(pi), 7|.5(pi+φ/)) to be calculated as follows:
S{A \ B{pi)J \ B{pi +dpi)) = ∑[#[(Ot +dpi) rΛ Cty(σt +V)\ (4) t=\
wherein # denotes the cardinality of a set, and σt is the intensity variance of
points x of image I(x) within volume Ot+dpi. Some structures can only be distinguished by their locations and morphologies, not by their intensities in the image I(x). This is for example the case with all the gyrus on the cortical surface. The labels Z1, h ...,4 of such structures are converted to one label L for the similarity measure S calculation.
The displacement dx of all points x on structure boundaries is then calculated as the interpolation of displacements {dpι,dp2, ..., dpm}. For any point x, there exist a block
B\qj) such that x<≡B'(qj). The block B\qj) has 8 vertexes {py} (/=1,2,...8) which are
centre points of blocks B(py), and the displacement dx of point x is calculated as:
dx = (% -*„*)(** -*o*)]}Φι (4)
Figure imgf000011_0001
wherein (xn, XQ, ^3) denotes the coordinate of centre point ^ (/=1,2,..., 8), (x01, *02, X03) indicates the coordinate of the centre point qj of block B\qj), dpi is the displacement of centre point/?,- of block B(pi), and (X1 , X2, x3) indicates the coordinates of the point x. Fig. 8A illustrates a portion of the slice in brain atlas A(x) shown in Fig. 5, that portion being a portion bounded by a single block B. Also illustrated is the boundary of a structure 901, and its boundary displacement. Finally, in sub-step 133 the atlas A(x) is deformed by boundary warping and using topology preserving front propagation. In particular, each structure is warped according to the boundary displacement of that structure determined in sub-step 132.
Fig. 8B illustrates the structure 901 shown in Fig. 8 A, together with its boundary displacement, and that structure 901 after boundary warping, providing structure 902.
In order to preserve the topology of structures within the atlas A(x), regions and contours of structures within the atlas A(x) may not overlap each other. This is a very natural requirement, since these regions and contours indicate different tissues or landmarks. Another requirement that has to be satisfied in order to preserve topology is that two line segments from the same contour may not intersect (except for their end points). This requirement indicates that the topological characteristic of a given region or contour does not change, and it is reasonable in cases when the general model correctly represent the topology relationships amongst considered tissues.
With regards to model deformation, in the prior art there generally exist two categories of methods to solve this boundary warping problem, those categories being surface based methods and volume based methods. The volume based methods are easy to implement, but are very computationally expensive, which makes these methods relatively slow. Surface based methods are faster. However, surface based methods of model deformation require a geometrical surface model to be generated, which is also time consuming.
Another method used which strictly does not fall within any one of the two model deformation categories identified above is to generate surfaces from sparse points. This method is also computationally expensive, especially when the number of points is large. In view of the foregoing deficiencies exhibited by common model deformation methods, a front propagation approach is used in sub-step 133 to deform the atlas A(x). In order to preserve topology, the concept of digital topology is adopted. A connectivity pair (6, 26) is chosen, that being 6-connectivity for objects and 26 for object counterparts. Fig. 6 A shows a point 601 together with its 6-connected neighbours, whereas Fig. 6B shows a point 602 together with its 26-connected neighbours.
Let point P be a front point of a volume volume(P), which means that:
Pevolume(P). AU points x in volume(P) have the same label L and are 6-connected. A
point P is a front point of volumeiP) when at least one 6-connected neighbour of point P is not labelled with the same label L as points in volumeiP). A front is a set of 26- connected front points.
Since there are multiple fronts, and topology must be preserved during propagation of the front, it is difficult, if not impossible, to propose a physically meaningful continuous model to describe the front propagation used for the boundary warping. Therefore, instead of using a traditional continuous model, a digital front propagation method is directly adopted.
In the digital front propagation method, atlas deformation is achieved by adding points to and removing points from all volumes in a breadth first style. That is, each front is repeatedly advanced one step forward in turn until none of the fronts can propagate any further. The key principles of this digital front propagation method are front displacement update and single front one step forward propagation.
As an initial condition, the position PJC=(P-X1 , P.x2, P.x3) and displacement P.ώc=(P.dx\, P.dx2, P.dxz) of each front point P are known. After the front propagates one step forward, some front points P are removed, whereas some front points P are added to the volume volume(P) under consideration. As a result, a new front is defined by the changed volume(P). In order to advance the new front, it is needed to update the displacement P.dx of all front points P on the new front.
Let [P JC] indicate the grid point on the three dimensional grid to which the front point P is approximate to. Hence, with the position
Figure imgf000014_0001
P.X2, P.X3), the grid point [P.x]=([P.x{], [P-X2], [PJC3]) to which the position PJC is approximate to is the grid point [P jc] which satisfies the following condition for i=(l, 2, 3):
|[P.x,]-P.x,|<0.5 (5)
When [P Jc]=[P jc+P.ckc], that is the position of front point P before and after displacement is approximate to the same grid point, that front point P is considered to be
non-active and can not propagate any further. Similarly, when [Pjc]≠[Pjc+P.dx], that is
the position of front point P before and after displacement is not approximate to the same grid point, that front point P is considered to be active. Only active front point P propagate forward.
For each active front point P, a preceding point pre(P) and a succeeding point next(P) are determined. The position next(P)jc of the succeeding point next(P) is determined by moving from the (current) position PJC of front point P along the displacement vector P.dx in a manner so that: the grid point [next(P)jc] is within the 26-connected neighbours of the grid point [PJC]; and the grid point [next(P)jc] achieves the minimum distance from the line passing through positions PJC and Pjc+P.dx. Formally:
Figure imgf000014_0002
6)
Figure imgf000015_0001
wherein the function (I1(P1, p2, p3) provides the minimum distance from point P1 to the line segment through points p2 and p3; the function
Figure imgf000015_0002
and the function d3(x, y) provides the distance between the two points x and y.
The position pre(P)x of the preceding point pre(P) is determined in a manner similar to that of the succeeding point next(P) described above. The difference is that when the position pre(P)jc is determined, movement is performed from the (current) position PJC of front point P along displacement vector —P.dx, in a manner so that grid point to which is the position pre(P)jc of the preceding point preiP) is approximate to is also a neighbour to grid point [PJC]. Also, the grid point
Figure imgf000015_0003
has the minimum distance from the extended line passing through positions PJC and pre(P)jc.
In order to illustrate the relationship between a front point P, its preceding point pre(P) and its succeeding point next(P), Fig. 7 A illustrates a front point 701 having position PJC. The position PJC of the front point P relative to grid positions is also illustrated. In the illustration only two dimensions are shown for clarity. However, as would be clear from the description, the grid domain D is three-dimensional.
The grid point [P.x] to which the position PJC is approximate to is grid point 705. Vector 706 indicates the displacement P.dx calculated for front point P, which defines the target point 710 (P. x+P.dx) for front point P.
The position next(P)jc of the succeeding point next{P) is then determined by moving from the (current) position PJC of front point 701 along the displacement vector 706 towards the target point 710. Point 708 is determined the succeeding point next(P), with the grid point 707 to which point 708 is approximate to being a 26-connected neighbour to the grid point 705. Point 708 has the minimum distance from the line passing through positions 701 and 710.
Similarly, the position pre(P)jc of the preceding point pre(P) is determined by moving from the (current) position Px of front point 701 along the displacement vector - P.dx . Point 702 is determined as the preceding point pre(P), with the grid point 703 to which point 702 is approximate to being a 26-connected neighbour to the grid point 705. Point 702 has the minimum distance from the extended line 704 passing through positions 701 and 710.
Now, consider a front including the front points (P1, P2,- • • -JPn}- When the front advances, the new position Qx and displacement Q.dx of a point Q, which is a 26- connected neighbour to at least one of the front points (P1, P2,....J*n}, and is calculated as follows:
If there are one or more front points (P11, Pj2, ...JfV} that propagate to grid position [Q~x] when the front is propagated by one step forward, i.e.
Figure imgf000016_0001
(s=l,2,..k), then the position QJC and displacement Q.dx take the corresponding values of the succeeding point next(PiS) of front point Pis that results in the minimum distance from the grid position [next(PjS) JC] to which the succeeding point next(Pιs) is approximate to, to the line segment between points P;SJC and PiSx+Pis.dx. Hence, point Q results from propagating front point P^ one step forward. Formally this is stated as:
s=argxmn{dr([nGxt(Pis).xlP.s.x,Pls.x + Pis.dx)} (8)
Figure imgf000016_0002
wherein the function di(pi, p2, p3) again provides the minimum distance from point P1 to the line segment through points p2 and p3. The above described scenario is illustrated in Fig. 7B. A front including three front points 715, 716 and 717 is shown. The front points 715, 716 and 717 have target points 721, 722 and 723 respectively. When the front is propagated by one step forward, front points 715 and 716 propagate to succeeding points 725 and 726 respectively. However, both of points 725 and 726 are approximate grid position 720, which corresponds to [Q Jt]. As succeeding point 725 is closer to the grid position 720 than the succeeding point 726, the position Qx and displacement Q.dx take the values of the succeeding point 725 of front point 715. The displacement Q.dx is indicated as vector 728. If none of the front points (P1, P2,.... J*n} propagate to grid position [QJC] when the front is propagated by one step forward, then the position QJC is set to the grid position [QJC]. The displacement Q.dx is set such that the target position of point Q, which is Qx+Q.dx, corresponds to the centre of the target positions of all neighbours forming part of the front. That is:
Figure imgf000017_0001
Fig. 7C illustrates a front including three front points 751, 752 and 753, and having target points 761, 762 and 763 respectively. When the front is propagated by one step forward, the front points 751, 752 and 753 propagate to positions 771, 772 and 773 respectively, none of which corresponding to point Q. Accordingly, the position Qx is set to the grid position 780, and the displacement Q.dx is set to such that the target position 781 of point Q corresponds to the centre of the target positions 761, 762 and 763 of front points 751, 752 and 753 respectively.
Having described the update of the front displacement, single front one step
forward propagation is now described. As stated above, when [Px]≠[Pjc+P.dx], that front point P is considered to be active. When at least one of a front's points P is active, then the front is said to be active. Otherwise the front is non-active. Only active fronts
can propagate forward.
For front point P, P. label indicates the label L of the atlas A(x) at that front point P. As has been mentioned before, all points within a volume have same label L, and the label L=O is the background label indicating unlabeled structures. A front point P is defined to be a simple point when the addition or removal of that front point P from the
volume volume(P) does not change the digital topology of that volume volume(P). To determine whether a particular front point P is a simple point or not, the method presented
ia Bertrand G, "Simple points, topological numbers and geodesic neighborhoods in cubic grids ", Pattern Recognition Letters, vol. 15, pp.1003-1011, 1994 is preferably used. The
main principle applied in that method is to determine whether the number of connected
components within certain geodesic neighbourhoods is changed or not.
Fig. 3 shows a schematic flow diagram of a process 800 for advancing an active
front one step forward by adding and removing front points P. The process 800 starts in
step 810 where it is determined whether any active front points P remain for processing. In the case where one or more active front points P still remain, the process 800 continues
to step 815 where the next active front point is identified. Step 820 then follows where it
is determined whether any of the 26-connected neighbours of that active front point P
remain for processing. If no more 26-connected neighbours remain for processing, then
the process 800 returns to step 810 from where the next active front point P is processed.
In the case where one or more 26-connected neighbours remain for processing,
the process 800 continues to step 825 where the next 26-connected neighbour is identified.
Step 830 then follows where it is determined whether: a) the label of the preceding point pre{Q) of point Q, which is a 26-connected neighbour of the front point P under consideration, has the same label as front point P. That is -pτe(Q).label= P. label; and b) point Q is a simple point; and c) point Q has a label Q.label=Q, that is point Q does not belong to any structure.
If it is determined in step 830 that all 3 of the above conditions are met by the 26-connected neighbour point Q, that point Q is added in step 835 to the volume volume.?. This is done by labelling point Q with the same label as front point P, hence setting Q.label=P. label. Step 835 thus corresponds to region growing. Following step 835, the process 800 returns to step 820.
If it is determined in step 830 that not all 3 of the stated conditions are met, then the process 800 continues to step 850 where it is determined whether: a) the label of the preceding point pre(P) of the front point P is the same as the label of the front point P under consideration. That is pre(P).label= P. label; and b) the label of the succeeding point next(P) of the front point P is that of the background (next(P).label-0), which means that the succeeding point next(P) does not presently belong to a structure; and c) point P is a simple point.
If it is determined in step 850 that all 3 of the above conditions are met by the front point P under consideration, that front point P is then in step 855 removed from its present volume volume.P by labelling point P with the background label, hence setting P.label=0. Step 855 thus corresponds to region shrinking.
Following step 855, or if it is determined in step 850 that not all 3 of the stated conditions are met, the process 800 returns to step 820 to process the remaining neighbours. Once it is determined in step 810 that all active front points P have been processed, the process 800 continues to step 890 where the front is updated by determining the front displacements P.dx of all front points P, and in the manner described above with reference to Figs. 7A to 7C. The above process 800 deforms the atlas A(x) by growing and shrinking structures within the atlas A(x) in a manner that preserves topology. As the structures within the atlas A(x) are used to calculate boundary displacements, the deformation may be said to be anatomically driven. The process 800 therefore does not required for particular structures to be extracted from the image I(x). Fig. 9A shows the outlines of the brain atlas A (x) shown in Fig. 4A after that brain atlas A(x) has been warped using the non-rigid registration of step 130, with that warped brain atlas A(x) superimposed over the MRI brain image I(x) shown in Fig. 4B. Fig. 9B shows a portion of the image of Fig. 9A magnified in order to more clearly show the result obtained through step 130. The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the scope and spirit of the invention, the embodiments being illustrative and not restrictive.
In one further embodiment a multi-resolution strategy is adopted whereby the size of the blocks B (formed in step 131) is changed from large to small during processing. The boundary warping applied in step 133 is then applied to each block size. This multi-resolution strategy allows the non-rigid registration performed in step 130 to initially operate on large blocks B, thereby making large deformation to the structures in the atlas A(x), followed by progressively smaller blocks B, causing finer, and more accurate deformations to the structures.

Claims

We Claim:
1. A method of registering a first image with a second image, said method comprising the steps of: calculating a boundary displacement of at least one structure in said first image in order to register that structure with an equivalent structure in said second image; and warping the boundary of said structure in said first image according to said boundary displacement using topology preserving propagation of boundary points of said structure.
2. The method according to claim 1, wherein said first and second images are defined in a predefined domain, and said calculating step comprises the sub-steps of: dividing said domain into blocks; calculating a displacement of the centre points of each block, said displacement maximising a block similarity measure between corresponding blocks in said first and second images; and calculating said boundary displacement by calculating a displacement for points on said boundary of said structure by interpolating said displacements of neighbouring centre points.
3. The method according to claim 2 wherein said first and second images are volumetric images, and said blocks are hexahedrons.
4. The method according to claim 1 wherein said topology preserving propagation of boundary points comprises adding points to and removing points from the boundary of said structure.
5. The method according to claim 4 wherein only points not belonging to other structures are added to said structure.
6. An apparatus for registering a first image with a second image, said apparatus comprising: means for calculating a boundary displacement of at least one structure in said first image in order to register that structure with an equivalent structure in said second image; and means for warping the boundary of said structure in said first image according to said boundary displacement using topology preserving propagation of boundary points of said structure.
7. The apparatus according to claim 6, wherein said first and second images are defined in a predefined domain, and said means for calculating comprises: means for dividing said domain into blocks; means for calculating a displacement of the centre points of each block, said displacement maximising a block similarity measure between corresponding blocks in said first and second images; and means for calculating said boundary displacement by calculating a displacement for points on said boundary of said structure by interpolating said displacements of neighbouring centre points.
8. The apparatus according to claim 7 wherein said first and second images are
volumetric images, and said blocks are hexahedrons.
9. The apparatus according to claim 6 wherein said topology preserving propagation of boundary points comprises adding points to and removing points from the
boundary of said structure.
10. The apparatus according to claim 9 wherein only points not belonging
to other structures are added to said structure.
11. A computer program product including a computer readable medium
having recorded thereon a computer program for registering a first image with a second
image, said program comprising: code for calculating a boundary displacement of at least one structure in said first
image in order to register that structure with an equivalent structure in said second image;
and
code for warping the boundary of said structure in said first image according to
said boundary displacement using topology preserving propagation of boundary points of said structure.
12. The computer program product according to claim 11, wherein said first
and second images are defined in a predefined domain, and said code for calculating comprises:
code for dividing said domain into blocks; code for calculating a displacement of the centre points of each block, said displacement maximising a block similarity measure between corresponding blocks in said first and second images; and code for calculating said boundary displacement by calculating a displacement for points on said boundary of said structure by interpolating said displacements of neighbouring centre points.
13. The computer program product according to claim 12 wherein said first and second images are volumetric images, and said blocks are hexahedrons.
14. The computer program product according to claim 11 wherein said topology preserving propagation of boundary points comprises adding points to and removing points from the boundary of said structure.
15. The computer program product according to claim 14 wherein only points not belonging to other structures are added to said structure.
PCT/SG2006/000112 2005-05-02 2006-05-02 Method and apparatus for registration of an atlas to an image WO2006118548A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP06733555A EP1876954A4 (en) 2005-05-02 2006-05-02 Method and apparatus for registration of an atlas to an image
US11/919,833 US8687917B2 (en) 2005-05-02 2006-05-02 Method and apparatus for registration of an atlas to an image

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67685005P 2005-05-02 2005-05-02
US60/676,850 2005-05-02

Publications (1)

Publication Number Publication Date
WO2006118548A1 true WO2006118548A1 (en) 2006-11-09

Family

ID=37308247

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/SG2006/000112 WO2006118548A1 (en) 2005-05-02 2006-05-02 Method and apparatus for registration of an atlas to an image

Country Status (3)

Country Link
US (1) US8687917B2 (en)
EP (1) EP1876954A4 (en)
WO (1) WO2006118548A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2048617A2 (en) 2007-10-12 2009-04-15 Claron Technology Inc. Method, system and software product for providing efficient registration of volumetric images
WO2011143820A1 (en) * 2010-05-20 2011-11-24 复旦大学 Method for simulating and correcting deformation of cerebral tissue images
WO2012080949A1 (en) * 2010-12-15 2012-06-21 Koninklijke Philips Electronics N.V. Contour guided deformable image registration

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2220619A2 (en) * 2007-12-14 2010-08-25 Koninklijke Philips Electronics N.V. Labeling a segmented object
US8229247B1 (en) * 2008-09-19 2012-07-24 Adobe Systems Incorporated Method and apparatus for structure preserving editing in computer graphics
US20110184238A1 (en) * 2010-01-28 2011-07-28 The Penn State Research Foundation Image-based global registration system and method applicable to bronchoscopy guidance
US10049448B2 (en) 2014-01-06 2018-08-14 Koninklijke Philips N.V. Articulated structure registration in magnetic resonance images of the brain
JP5708868B1 (en) * 2014-08-20 2015-04-30 富士ゼロックス株式会社 Program, information processing apparatus and method
US9786058B2 (en) * 2016-02-08 2017-10-10 Sony Corporation Method and system for segmentation of vascular structure in a volumetric image dataset

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010036302A1 (en) * 1999-12-10 2001-11-01 Miller Michael I. Method and apparatus for cross modality image registration
US6594378B1 (en) 1999-10-21 2003-07-15 Arch Development Corporation Method, system and computer readable medium for computerized processing of contralateral and temporal subtraction images using elastic matching
US6611615B1 (en) * 1999-06-25 2003-08-26 University Of Iowa Research Foundation Method and apparatus for generating consistent image registration
US6633686B1 (en) * 1998-11-05 2003-10-14 Washington University Method and apparatus for image registration using large deformation diffeomorphisms on a sphere

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0602730B1 (en) 1992-12-18 2002-06-19 Koninklijke Philips Electronics N.V. Registration of Volumetric images which are relatively elastically deformed by matching surfaces
US5769092A (en) * 1996-02-22 1998-06-23 Integrated Surgical Systems, Inc. Computer-aided system for revision total hip replacement surgery
US5956418A (en) * 1996-12-10 1999-09-21 Medsim Ltd. Method of mosaicing ultrasonic volumes for visual simulation
US6037949A (en) * 1997-08-04 2000-03-14 Pixar Animation Studios Texture mapping and other uses of scalar fields on subdivision surfaces in computer graphics and animation
US6300960B1 (en) * 1997-08-04 2001-10-09 Pixar Animation Studios Realistic surface simulation in computer animation
US5951475A (en) * 1997-09-25 1999-09-14 International Business Machines Corporation Methods and apparatus for registering CT-scan data to multiple fluoroscopic images
US6608631B1 (en) 2000-05-02 2003-08-19 Pixar Amination Studios Method, apparatus, and computer program product for geometric warps and deformations
JP4175536B2 (en) * 2002-05-17 2008-11-05 独立行政法人理化学研究所 Boundary data inside / outside judgment method and program
US20030228042A1 (en) * 2002-06-06 2003-12-11 Usha Sinha Method and system for preparation of customized imaging atlas and registration with patient images
US7617079B2 (en) * 2003-01-20 2009-11-10 Autodesk, Inc. Unified subdivision for arbitrary and partial degree surfaces and curves with consistent property propagation
US7236168B2 (en) * 2003-06-13 2007-06-26 Geometric Software Solutions Co., Ltd. Method for removing blends in B-rep models
JP3962361B2 (en) * 2003-06-27 2007-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーション Phase determining device, decomposable shape generating device, structural mesh generating device, phase determining method, decomposable shape generating method, computer executable program for executing the phase determining method, and decomposable shape generating method Computer executable program and structured mesh generation system
EP1522875B1 (en) * 2003-09-30 2012-03-21 Esaote S.p.A. A method of tracking position and velocity of object's borders in two or three dimensional digital echographic images
JP4526063B2 (en) * 2004-05-06 2010-08-18 独立行政法人理化学研究所 Volume data cell labeling method and program, and volume data cell labeling device
US8554490B2 (en) * 2009-02-25 2013-10-08 Worcester Polytechnic Institute Automatic vascular model generation based on fluid-structure interactions (FSI)
US8315812B2 (en) * 2010-08-12 2012-11-20 Heartflow, Inc. Method and system for patient-specific modeling of blood flow

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633686B1 (en) * 1998-11-05 2003-10-14 Washington University Method and apparatus for image registration using large deformation diffeomorphisms on a sphere
US6611615B1 (en) * 1999-06-25 2003-08-26 University Of Iowa Research Foundation Method and apparatus for generating consistent image registration
US6594378B1 (en) 1999-10-21 2003-07-15 Arch Development Corporation Method, system and computer readable medium for computerized processing of contralateral and temporal subtraction images using elastic matching
US20010036302A1 (en) * 1999-12-10 2001-11-01 Miller Michael I. Method and apparatus for cross modality image registration

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CHRISTENSEN ET AL.: "Volumetric Transformation of Brain Anatomy", IEEE TRANSACTIONS ON MEDICAL IMAGING, vol. 16, no. 6, December 1997 (1997-12-01), XP011035678 *
DAVITZIKOS C. ET AL.: "Image Registration Based on Boundary Mapping", IEEE TRANSACTIONS ON MEDICAL IMAGING, vol. 15, no. 1, February 1996 (1996-02-01), pages 112 - 115, XP000584339 *
FERRANT ET AL.: "Registration of 3D Intraoperative MR Images of the Brain Using a Finite Element Biomechanical Model", IEEE TRANSACTIONS ON MEDICAL IMAGING, vol. 20, 2001, pages 1384 - 1397, XP001101465 *
MAURER C. ET AL.: "A Review of Medical Image Registration", INTERACTIVE IMAGE GUIDED NEUROSURGERY, 28 January 1993 (1993-01-28), XP002366700 *
See also references of EP1876954A4
SZELISKI; RICHARD; LAVALLEE; STEPHANE: "International Journal of Computer Vision", vol. 18, 1996, KLUWER ACADEMIC PUBLISHERS, article "Matching 3-D Anatomical Surfaces with Non-Rigid Deformations using Octree-Splines", pages: 171 - 186

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2048617A2 (en) 2007-10-12 2009-04-15 Claron Technology Inc. Method, system and software product for providing efficient registration of volumetric images
US8218905B2 (en) 2007-10-12 2012-07-10 Claron Technology Inc. Method, system and software product for providing efficient registration of 3D image data
WO2011143820A1 (en) * 2010-05-20 2011-11-24 复旦大学 Method for simulating and correcting deformation of cerebral tissue images
WO2012080949A1 (en) * 2010-12-15 2012-06-21 Koninklijke Philips Electronics N.V. Contour guided deformable image registration
JP2014500102A (en) * 2010-12-15 2014-01-09 コーニンクレッカ フィリップス エヌ ヴェ Deformed image registration guided by contours
US9245336B2 (en) 2010-12-15 2016-01-26 Koninklijke Philips N.V. Contour guided deformable image registration

Also Published As

Publication number Publication date
EP1876954A1 (en) 2008-01-16
EP1876954A4 (en) 2009-12-16
US8687917B2 (en) 2014-04-01
US20090220171A1 (en) 2009-09-03

Similar Documents

Publication Publication Date Title
US8687917B2 (en) Method and apparatus for registration of an atlas to an image
Ferrante et al. Slice-to-volume medical image registration: A survey
Ferrant et al. Serial registration of intraoperative MR images of the brain
Fischer et al. A unified approach to fast image registration and a new curvature based registration technique
Le Guyader et al. A combined segmentation and registration framework with a nonlinear elasticity smoother
Ma et al. Hierarchical segmentation and identification of thoracic vertebra using learning-based edge detection and coarse-to-fine deformable model
Edwards et al. A three-component deformation model for image-guided surgery
WO2009108135A1 (en) A method and system for anatomy structure segmentation and modeling in an image
Tavares Analysis of biomedical images based on automated methods of image registration
EP3077989B1 (en) Model-based segmentation of an anatomical structure.
WO2009045471A1 (en) System and method for organ segmentation using surface patch classification in 2d and 3d images
Khallaghi et al. Statistical biomechanical surface registration: application to MR-TRUS fusion for prostate interventions
Dandekar et al. FPGA-accelerated deformable image registration for improved target-delineation during CT-guided interventions
Cheng et al. Fully automated prostate whole gland and central gland segmentation on MRI using holistically nested networks with short connections
Arakeri et al. An effective and efficient approach to 3D reconstruction and quantification of brain tumor on magnetic resonance images
Gao et al. 4D cardiac reconstruction using high resolution CT images
US9361701B2 (en) Method and system for binary and quasi-binary atlas-based auto-contouring of volume sets in medical images
US20240005498A1 (en) Method of generating trained model, machine learning system, program, and medical image processing apparatus
Rouchdy et al. A nonlinear elastic deformable template for soft structure segmentation: application to the heart segmentation in MRI
Yu et al. Sparse deformable models with application to cardiac motion analysis
Taimouri et al. Deformation similarity measurement in quasi-conformal shape space
Krüger et al. Breast compression simulation using ICP-based B-spline deformation for correspondence analysis in mammography and MRI datasets
Liu et al. Groupwise registration of brain magnetic resonance images: A review
Lee et al. Robust feature-based registration using a Gaussian-weighted distance map and brain feature points for brain PET/CT images
Ayache Volume image processing: results and research challenges

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2006733555

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: RU

WWP Wipo information: published in national office

Ref document number: 2006733555

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11919833

Country of ref document: US