<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hello Zhongliu,<div><br></div><div>SimpleITK does provide buffer access and per-pixel set get methods. It is designed to expose the algorithms in ITK with an easy to use interface. It's purpose is really designed to expose the building blocks available in ITK that make ITK a robust environment for development new algorithms.</div><div><br></div><div>For cases such as you are looking for, going through the layers of Manage and Unmanaged C# code, and the SimpleITK extraction is just too expensive to be done on a per pixel basis.</div><div><br></div><div>If your goal to to make available your algorithm in CSharp and you already have it in C++, why not consider wrapping it in SimpleITK?</div><div><br></div><div>Its frequently possible to implement algorithms as composites of other filters. With SimpleITK's operator overloading, consider how your algorithm could be implemented by operating on whole images and not at the pixel level.</div><div><br></div><div>Please consider your options carefully,</div><div>Brad</div><div><br><div><div>On Jan 2, 2014, at 11:33 AM, Zhongliu Xie <<a href="mailto:zhongliu.xie10@imperial.ac.uk">zhongliu.xie10@imperial.ac.uk</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<div text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Dear Brad,<br>
<br>
Thanks for your note. I think I need some example code of using
SimpleITK on C#, in particular about how to walk an image region,
and for each voxel in the region find a series of offset voxels in
its neighbourhood for further processing. Could you give a clue on
how to find such example code, and perhaps also examples for other
functions? Thanks.<br>
<br>
Regards,<br>
Zhongliu<br>
<br>
On 02/01/2014 14:44, Bradley Lowekamp wrote:<br>
</div>
<blockquote cite="mid:685EB15E-008D-4CF1-AA98-9A3FCE96201C@mail.nih.gov" type="cite">
What information are you looking for in a tutorial? Please be
specific to guide the writing of a new wiki page. There has been a
lot of interest in using SimpleITK with C# recently so, I think a
guided wiki page needs to be written.
<div>
<div><br>
</div>
<div>Here is some generic getting started info:</div>
<div><a moz-do-not-send="true" href="http://www.itk.org/Wiki/SimpleITK/GettingStarted">http://www.itk.org/Wiki/SimpleITK/GettingStarted</a></div>
<div><br>
</div>
<div>Here is some pretty detailed information with how to load
the CSharp binaries into Visual Studio:</div>
<div><a moz-do-not-send="true" href="http://public.kitware.com/pipermail/community/2013-December/000814.html">http://public.kitware.com/pipermail/community/2013-December/000814.html</a></div>
<div><br>
</div>
<div>Here is a basic example:</div>
<div><a moz-do-not-send="true" href="http://www.itk.org/SimpleITKDoxygen/html/SimpleGaussian_8cs-example.html">http://www.itk.org/SimpleITKDoxygen/html/SimpleGaussian_8cs-example.html</a></div>
<div><br>
</div>
<div>Then there are some crude C# tests:</div>
<div><a moz-do-not-send="true" href="https://github.com/SimpleITK/SimpleITK/blob/master/Testing/Unit/CSharpImageTest.cs">https://github.com/SimpleITK/SimpleITK/blob/master/Testing/Unit/CSharpImageTest.cs</a></div>
<div><br>
</div>
<div>The C# interface follows closely with the C++ interface.
Here is the SimpleITK doxygen:</div>
<div><a moz-do-not-send="true" href="http://www.itk.org/SimpleITKDoxygen/html/classes.html">http://www.itk.org/SimpleITKDoxygen/html/classes.html</a></div>
<div><br>
</div>
<div>Hope that's enough to get you started!</div>
<div>Brad</div>
<div><br>
</div>
<div><br>
</div>
<div>
<div>
<div>On Jan 2, 2014, at 9:24 AM, Zhongliu Xie <<a moz-do-not-send="true" href="mailto:zhongliu.xie10@imperial.ac.uk">zhongliu.xie10@imperial.ac.uk</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Thanks very much for your
note, Dan.<br>
<br>
I actually was using ITK on C++ previously and now
switching to C#, so my code contains operation with
iterators for processing of regions. I guess I would
take the advice to use SimpleITK.<br>
<br>
Then for SimpleITK, is there a tutorial for using it
on C#? The ITK Software Guide does not include
SimpleITK, and as far as I know most SimpleITK
tutorials are python based. Thanks.<br>
<br>
Regards,<br>
Zhongliu<br>
<br>
On 30/12/2013 12:36, Dan Mueller wrote:<br>
</div>
<blockquote cite="mid:CAPNvZ5YV_NkwEDedtbmrvdRqCj9auk=HTViqLVJs3pUhsT6=Sw@mail.gmail.com" type="cite"><p dir="ltr">Hi Nicholas,</p><p dir="ltr">WrapITK does not currently support C#,
and I know of no current plans to do so.</p><p dir="ltr">Even if WrapITK did support C#, iterators
would be of little practical use because the cost of
transferring from the native language to the wrapped
language would incur too great a performance penalty
(i.e. it would be too slow).</p><p dir="ltr">I would recommend using SimpleITK. What
operation do you need to use iterators? Can you
create a custom filter utilising the iterator and
wrap that? Or create the desired operation by
chaining together existing filters?</p><p dir="ltr">Good luck.</p><p dir="ltr">Cheers, Dan</p>
<div class="gmail_quote">On 30 Dec 2013 06:48,
"Zhongliu Xie" <<a moz-do-not-send="true" href="mailto:zhongliu.xie10@imperial.ac.uk">zhongliu.xie10@imperial.ac.uk</a>>
wrote:<br type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Dear fellow ITK users,<br>
<br>
I have been trying to use ITK on C#, but have
encountered difficulties.<br>
For the moment, I have tried Simple ITK which has
been a success,<br>
however as far as I know Simple ITK does not
support Iterators.<br>
Therefore I have been thinking of wrapping ITK for
C# environment. I<br>
have also checked the ManagedITK page at<br>
<a moz-do-not-send="true" href="http://code.google.com/p/manageditk/" target="_blank">http://code.google.com/p/manageditk/</a>,
but it says the project is no<br>
longer under active development, and the "ITK
version 4 may include<br>
internal support for C# wrapping, making
ManagedITK unnecessary".<br>
Therefore I would like to ask what is the latest
way to wrap ITK? Does<br>
anybody have a clue?<br>
<br>
Many thanks,<br>
Nicholas<br>
<br>
<br>
<br>
_____________________________________<br>
Powered by <a moz-do-not-send="true" href="http://www.kitware.com/" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a moz-do-not-send="true" href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Kitware offers ITK Training Courses, for more
information visit:<br>
<a moz-do-not-send="true" href="http://www.kitware.com/products/protraining.php" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
<br>
Please keep messages on-topic and check the ITK
FAQ at:<br>
<a moz-do-not-send="true" href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a moz-do-not-send="true" href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
_______________________________________________<br>
Community mailing list<br>
<a moz-do-not-send="true" href="mailto:Community@itk.org" target="_blank">Community@itk.org</a><br>
<a moz-do-not-send="true" href="http://public.kitware.com/cgi-bin/mailman/listinfo/community" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/community</a><br>
</blockquote>
</div>
</blockquote>
<br>
</div>
_____________________________________<br>
Powered by <a moz-do-not-send="true" href="http://www.kitware.com/">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a moz-do-not-send="true" href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Kitware offers ITK Training Courses, for more information
visit:<br>
<a class="moz-txt-link-freetext" href="http://www.kitware.com/products/protraining.php">http://www.kitware.com/products/protraining.php</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at:<br>
<a class="moz-txt-link-freetext" href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a class="moz-txt-link-freetext" href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a><br>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
<br>
</div>
</blockquote></div><br></div></body></html>