[Insight-users] A Question about itk : Examples, 2D versus 3D registration, ICP

Luis Ibanez luis.ibanez at kitware.com
Fri Oct 15 14:28:36 EDT 2004


Hi Weihua,


-----------------------------------------------------------------------
Question 1: How can I instatiate the image class for 3D ?

Answer:

    typedef itk::Image< char, 3 > ImageType;
    ImageType::Pointer image = ImageType::New();

    Please read the ITK Software Guide

      htt://www.itk.org/ItkSoftwareGuide.pdf

    in particular Chapter 4, section 4.1,
    pdf-pages 61-73

    You should also read the Tutorials

       http://www.itk.org/HTML/Tutorials.htm

    in particular the session "Getting Started I"

http://www.itk.org/CourseWare/Training/GettingStartedI-WebPage/index.htm


-------------------------------------------------------------------
Question 2:  How I can extend the 2D registration
             into 3D image registration?

Answer:

      Just use the ImageType defined above
      when you instantiate the classes:

       ImageMetric< ImageType, ImageType >
       ImageRegistrationMethod< ImageType, ImageType >

      Please look at the example:


        Insight/Examples/Registration/
                  ImageRegistration8.cxx

      It shows in detail how to do registration
      with 3D images.


------------------------------------------------------------------
Question 3

    What type of '3D image format' does it support?

Answer:

    This is a very common question.
    Please look at the answer on the FAQ pages:

          http://www.itk.org/Wiki/Itk_FAQ

    More specifically at:

http://www.itk.org/Wiki/Itk_FAQ#What_3D_file_formats_can_ITK_import_and_export.3F

    You should also read Chapter 7 from the ITK Software Guide.
    pdf-pages 219-240.


--------------------------------------------------------
Question 4:

    How to read a set of DICOM slices into a Volume ?

Answer:

    Please look at the examples in:

         Insight/Examples/IO

    In particular to

          DicomSeriesReadImageWrite.cxx

    You *don't* need to write the DICOM slices into
    another format.  Simply take the itkImage that
    is the ouput of the ImageSeriesReader and plug it
    as input to the ImageRegistrationMethod class.


--------------------------------------------------------


   Regards,



      Luis



----------------------
weihuax at sfu.ca wrote:

> hi luis:
> 
> 
> Thanks.
> 
> 
> 
> But how can I 'instatial the image class for 3D', can you give me a simple
> example how I can extend the 2D registration into 3D image registration?
> 
> 
> 
> In itk, what type of '3D image format' does it support? I tried to create
> TWO 3D 'DICOM' file and extend one 2D registration code into 3D, it does
> work. Error shows ' Can not read the file'. What is the problem? Do you how
> to write a 3D image into a file in itk?
> 
> 
> 
> thanks again
> 
> 
> 
> Weihua
> 
> 
> 
> 
> 
> On Fri, 15 Oct 2004 12:33:31 -0400 luis.ibanez at kitware.com wrote:
> 
> 
> 
> 
>>Hi Weihua,
> 
> 
> 
>>Welcome to ITK !!
> 
> 
> 
> 
>>1) The document that you want to look
> 
> 
>>    at is the ITK Software Guide.
> 
> 
> 
>>     http://www.itk.org/ItkSoftwareGuide.pdf
> 
> 
> 
>>    You can download it also from the ITK
> 
> 
>>    Donwload page.
> 
> 
> 
>>    The source code for ALL the examples shown
> 
> 
>>    in this PDF documents are available in
> 
> 
> 
>>	      Insight/Examples/
> 
> 
> 
> 
> 
>>2)  There is no "Samples" subdirectory in ITK.
> 
> 
>>     Are you probably refering to "Examples" ?
> 
> 
> 
> 
>>     If so, the Registration examples in
> 
> 
> 
>>	   Insight/Examples/Registration
> 
> 
> 
>>     are mostly in 2D because that made easier
> 
> 
>>     to present them in the book.
> 
> 
> 
>>     However, all those techniques can be used
> 
> 
>>     in N-Dimensional images.
> 
> 
> 
>>     You can do 3D registration with ITK, just
> 
> 
>>     need to instantiate the image class for 3D.
> 
> 
> 
>>     *DO NOT* divide your 3D image into 2D slices !!!
> 
> 
>>     You can use the 3D format of your image directly.
> 
> 
> 
>>     For examples on applications doing 3D registration
> 
> 
>>     with ITK, please look at the checkout:
> 
> 
> 
>>		InsightApplications
> 
> 
> 
> 
>>3)  You will find examples on how to use the ICP
> 
> 
>>     (Iterative Closest Point) method in the directory:
> 
> 
> 
>>	    Insight/Examples/Patented/
> 
> 
> 
>>	If you are using the CVS version of ITK,
> 
> 
> 
>>	or in the directory
> 
> 
> 
>>	    Insight/Examples/Registration
> 
> 
> 
>>	if you are using ITK 1.8
> 
> 
> 
> 
>>	The files that you want to look at are:
> 
> 
> 
>>	     IterativeClosestPoint1.cxx
> 
> 
>>	     IterativeClosestPoint2.cxx
> 
> 
>>	     IterativeClosestPoint3.cxx
> 
> 
> 
> 
> 
>>	Input files for these examples are available
> 
> 
>>	in the directory
> 
> 
> 
>>	       Insight/Examples/Data
> 
> 
> 
> 
>>	in particular:
> 
> 
> 
>>	       IterativeClosestPointFixedPoints.txt
> 
> 
>>	       IterativeClosestPointFixedPoints2.txt
> 
> 
>>	       IterativeClosestPointMovingPoints.txt
> 
> 
>>	       IterativeClosestPointMovingPoints2.txt
> 
> 
> 
> 
> 
>>	 Note that the ICP algorithm is covered by a Patent
> 
> 
>>	 from General Motors Corp. You should get a license
> 
> 
>>	 from GM in order to use this algorithm even for
> 
> 
>>	 research purposes.
> 
> 
> 
> 
> 
> 
>>   Regards,
> 
> 
> 
> 
> 
>>	Luis
> 
> 
> 
> 
> 
>>---------------------
> 
> 
>>weihuax at sfu.ca wrote:
> 
> 
> 
>>>Hi, 
> 
> 
> 
>>>I am a new user for itk. I have several questions
> 
> 
> 
>>>(1) From the downloaded 'ITK_hadnout.pdf', Page 51-58, there are two
> 
> 
>>>examples, I wanted to know where I can find the codes so that I can
> 
> 
>>use them
> 
> 
>>>for my own images.
> 
> 
> 
>>>(2) From the 'Samples' subdirectory, I read a lot of registration
> 
> method,
> 
> 
>>>but almost of them are for 2-D images. If I have two 3-D images for
> 
> 
>>>registration, any samples or codes that I can refer to? Should I
> 
> 
>>divide all
> 
> 
>>>3-D images into several 2-D slices and apply the registration method?
> 
> 
> 
>>>(3) From the 'Samples' subdirectory, there are three 'iterative control
> 
> 
>>>points' samples, how can I organize the input file format?
> 
> 
> 
>>>Thanks
> 
> 
> 
>>>weihua xiong
> 
> 
> 
> 
> 
> 
>>>_______________________________________________
> 
> 
>>>Insight-users mailing list
> 
> 
>>>Insight-users at itk.org
> 
> 
>>>http://www.itk.org/mailman/listinfo/insight-users
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 






More information about the Insight-users mailing list