[Insight-users] Simple ITK vs Scripted ITK vs full ITK

Alexandre GOUAILLARD agouaillard at gmail.com
Fri Jan 13 03:54:50 EST 2012


hi michel,

I guess dan answered for most, and I agree with him that you might
want to mix the 3 of them.

Now, simpleITK does not expose the filter names, whereas wrapITK does.
It is good when you want to simplify things, but then jumping from
simpleITK to ITK requires finding this "mapping".

You can mix simpleITK and ITK purely in C++, there are some exampel of
this in the MICCAI tutorial.

You can mix simpleITK and wrapITK in Python and Java for sure, Tcl
maybe (I'm not positive of the tcl support status or wrapITK). wrapITK
wraps around 85+ of the toolkit now, whereas simpleITK is (as of
today, but it improves quickly) more limited not only in term of
filters but also in term of objects (only image filters) .WrapITK will
expose the pipeline and event mechanisms.

As dan mentionned, a progressive approach, each step using a different
layer may be what you want.

regards,

alex.


On Thu, Jan 12, 2012 at 10:42 PM, Dan Mueller <dan.muel at gmail.com> wrote:
> Hi Michel,
>
> Your email seems to have posed the question as SimpleITK xor WrapITK
> xor ITK. Have you considered SimpleITK _and_ WrapITK _and_ ITK? IMHO
> the tools make a nice progression: simple/less features to more
> complex/fully featured. Concepts learnt in SimpleITK are transferable
> to WrapITK, and concepts learnt in WrapITK are transferable to pure
> C++ ITK.
>
> For example:
>
> SimpleITK could be used to introduced the notion of an n-D image with
> configurable pixel type, file types supported by ITK, common filters,
> etc.
> WrapITK could introduce pipeline execution, events/progress reporting,
> additional functionality not available (yet) in SimpleITK (e.g.
> registration).
> Finally ITK topics could include CMake/building, generic
> programming/templates, writing custom filters, etc.
> (Of course these topics are on top of the general medical image
> analysis topics.)
>
> Anyhow, just an idea that perhaps you hadn't considered...
>
> To answer some of your more specific questions:
> SimpleITK currently supports the following first tier languages:
> Python, Tcl, Java. Other "second" tier languages include R, Lua, C#.
> WrapITK also supports a number of different languages, including:
> Python, Tcl, Java, Perl, Ruby. I don't know the exact figure, but
> WrapITK would cover roughly 70% of available ITK filters.
> Also, AFAIK SimpleITK can be integrated with both WrapITK and classic
> ITK (depending on the wrapping language i.e. Python).
>
> HTH
>
> Cheers, Dan
>
> On 13 January 2012 15:13, Matt McCormick <matt.mccormick at kitware.com> wrote:
>> Hi Michel,
>>
>> Another ITK based course would be great!
>>
>> SimpleITK is probably your best bet at this point.  It will remove
>> language hurtles that may cloud the learning process, and it still
>> provides a basis for what can easily be a full course.  The most
>> notable drawback right now with SimpleITK is a lack of registration
>> interfaces.  There is good Doxygen documentation, and the SimpleITK
>> developers are working on a user's guide and better in-language help.
>>
>> The script-based ITK (WrapITK) is available, and it would not be a bad
>> choice either.  It removes the high programming bar for understanding
>> C++, templates, writing typedefs, ...  You can build the python
>> interface by setting ITK_WRAP_PYTHON to ON in the CMake configuration.
>>
>> Of course, there is nothing wrong with ITK classic, either.  However,
>> the other interfaces may be more effective as a gateway drug other
>> than direct access to "the good stuff".
>>
>> Best regards,
>> Matt
>>
>> On Thu, Jan 12, 2012 at 4:41 PM, Audette, Michel A. <maudette at odu.edu> wrote:
>>> Dear ITK users and developers,
>>>
>>> I'm giving thought to producing a course similar to John Galeotti's at CMU, i.e. medical image analysis based on ITK, but I'm also considering whether to use Simple ITK, or scripted ITK (you guys are working on that, right?), vs ITK Classic.
>>>
>>> I want to give the students the full breadth of possibilities, but at the same time, if I can attract biology students to the class on the basis of a script-based course, that might a justification for opting for the scripting-based version.
>>>
>>> Can anyone give me a sense of how much ITK functionality I would be sacrificing if I opt for script-based ITK (what is it: python?) vs what will be available via C++-based ITK, Simple or otherwise?
>>>
>>> Thanks for your kind consideration.
>>>
>>> Cheers,
>>>
>>> Michel
>>>
>>> Michel Audette, Ph.D.
>>> Assistant Professor,
>>> Department of Modeling, Simulation and Visualization Engineering,
>>> Old Dominion University,
>>> Norfolk, VA.
>>> _____________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Kitware offers ITK Training Courses, for more information visit:
>>> http://www.kitware.com/products/protraining.html
>>>
>>> Please keep messages on-topic and check the ITK FAQ at:
>>> http://www.itk.org/Wiki/ITK_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.itk.org/mailman/listinfo/insight-users
>> _____________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Kitware offers ITK Training Courses, for more information visit:
>> http://www.kitware.com/products/protraining.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-users
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://www.kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list