[Insight-developers] Modularization, Groups, IO, NRRD, oh my!
Daniel Blezek
Blezek.Daniel at mayo.edu
Mon Mar 28 14:51:14 EDT 2011
Hi,
I did get this output. However, the resulting ITK library would not read
Nrrd images.
ITKGroup_IO is not set in UseITK.cmake. There is no way to tell from an
external project how ITK was compiled. (I did try to print it out wath a
message command)
Thanks,
-dan
On 3/28/11 1:42 PM, "Xiaoxiao Liu" <xiaoxiao.liu at kitware.com> wrote:
>
> I just tried from a clean build tree. After the configuration, you will see
> the output from cmake like this:
> ************************************************
> .....
>
> Enabled ITK-IO-Base, needed by
> [ITK-IO-BMP;ITK-IO-GDCM;ITK-IO-JPEG;ITK-IO-Meta;ITK-IO-NRRD;ITK-IO-PNG;ITK-IO-
> TIFF;ITK-IO-VTK;ITK-SpatialObjects;ITK-IO-SpatialObjects;ITK-IO-XML;ITK-IO-GIP
> L;ITKGroup_IO;ITK-IO-NIFTI;ITK-IO-IPL;ITK-IO-BioRad;ITK-IO-RAW;ITK-IO-Stimulat
> e].
> -- Enabled ITK-IO-BMP, requested by Module_ITK-IO-BMP.
> -- Enabled ITK-Expat, needed by [ITK-GDCM;ITK-IO-XML].
> -- Enabled ITK-OpenJPEG, needed by [ITK-GDCM].
> -- Enabled ITK-ZLIB, needed by
> [ITK-GDCM;ITK-MetaIO;ITK-NrrdIO;ITK-PNG;ITK-TIFF;ITK-IO-GIPL;ITK-NIFTI].
> -- Enabled ITK-GDCM, needed by [ITK-IO-GDCM].
> -- Enabled ITK-IO-GDCM, requested by Module_ITK-IO-GDCM.
> -- Enabled ITK-JPEG, needed by [ITK-IO-JPEG;ITK-TIFF].
> -- Enabled ITK-IO-JPEG, requested by Module_ITK-IO-JPEG.
> -- Enabled ITK-MetaIO, needed by [ITK-IO-Meta].
> -- Enabled ITK-IO-Meta, requested by Module_ITK-IO-Meta.
> -- Enabled ITK-NrrdIO, needed by [ITK-IO-NRRD].
> -- Enabled ITK-IO-NRRD, requested by Module_ITK-IO-NRRD.
> -- Enabled ITK-PNG, needed by [ITK-IO-PNG].
> -- Enabled ITK-IO-PNG, requested by Module_ITK-IO-PNG.
> -- Enabled ITK-TIFF, needed by [ITK-IO-TIFF].
> -- Enabled ITK-IO-TIFF, requested by Module_ITK-IO-TIFF.
> -- Enabled ITK-IO-VTK, requested by Module_ITK-IO-VTK.
>
> ......
>
> ******************************************************
>
> Which shows that those IO modules were enabled. If you didn't see this msg,
> maybe something is wrong.
> You can always print out the value of "ITKGroup_IO" in your cmake code to
> check whether it's ON or OFF. Not sure this answers your second question.
>
>
>
>
> On Mon, Mar 28, 2011 at 2:26 PM, Daniel Blezek <Blezek.Daniel at mayo.edu> wrote:
>> Xiaoxiao,
>>
>> Groups do not do the right thing (for IO). I¹ve just confirmed this. It
>> is very confusing to have IO-NRRD and NrrdIO, and do they turn each other on
>> (NrrdIO library is pointless without IO-NRRD, and vice versa). Same for
>> GDCM.
>>
>
>> I¹ll re-ask #3, Can I detect if ITKGroup_IO is on in my CMakeLists.txt
>> file? If so, how?
>>
>
>
>> -dan
>>
>>
>> On 3/28/11 1:17 PM, "Xiaoxiao Liu" <xiaoxiao.liu at kitware.com
>> <http://xiaoxiao.liu@kitware.com> > wrote:
>>
>>>
>>>
>>> On Mon, Mar 28, 2011 at 2:01 PM, Daniel Blezek <Blezek.Daniel at mayo.edu
>>> <http://Blezek.Daniel@mayo.edu> > wrote:
>>>> ITKers,
>>>>
>>>> I have so questions about ITK¹s new modularization scheme, now that I¹ve
>>>> had some time to digest it.
>>>>
>>>> 1. Why is there a Module_ITK-IO-NRRD and Module_ITK-NrrdIO?
>>>>> >> The module named "ITK-IO-NRRD" is in IO group under Module/IO . It's
>>>>> the ITK interface for Nrrd image format.
>>> The module named "ITK-NrrdIO" is in Thirdparty group under
>>> Module/ThridParty/.
>>> Yes, It is quite confusing if you don't get to see the grouping in the
>>> option.
>>>> 1. Groups don¹t seem to do the right thing. I had to explicitly turn on
>>>> IO-NRRD and NrrdIO to make SimpleITK read NRRD images, despite ITKGroup_IO
>>>> being ON.
>>> If you turn ITKGroup_IO on, you shouldn't need to turn on IO-NRRD and
>>> NrrdIO. The CMake will turn them on automatically for you when you
>>> configure it, but the cmake variable Module_<**> won't reflect those
>>> CMake-enforced changes on the gui. The gui only reflect users's changes to
>>> avoid confusion. Let me know if your experience suggested the opposite, we
>>> can try to debug the problem.
>>>
>>>> 1. How can my CMakeLists.txt file determine which modules are turned on in
>>>> ITK? This is especially a problem for IO, because our test data comes in
>>>> many formats. Because #2 isn¹t working, it¹s a pain to turn on all the IO
>>>> formats. I would like to check to make sure we have the minimum supported
>>>> set of modules configured to avoid the frustration of missing include flags
>>>> and being unable to read images that worked in monolithic ITK.
>>> If you use most of the IO formats, just turn on ITKGroup_IO. As sugguested
>>> by the previous item.
>>>
>>>>
>>>> Thanks,
>>>> -dan
--
Daniel Blezek, PhD
Medical Imaging Informatics Innovation Center
P 127 or (77) 8 8886
T 507 538 8886
E blezek.daniel at mayo.edu
Mayo Clinic
200 First St. S.W.
Harwick SL-44
Rochester, MN 55905
mayoclinic.org
"It is more complicated than you think." -- RFC 1925
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/mailman/private/insight-developers/attachments/20110328/75001234/attachment.htm>
More information about the Insight-developers
mailing list