<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
p.m-869863128702153880m3566153338244404760msolistparagraph, li.m-869863128702153880m3566153338244404760msolistparagraph, div.m-869863128702153880m3566153338244404760msolistparagraph
        {mso-style-name:m_-869863128702153880m3566153338244404760msolistparagraph;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.m-869863128702153880m3566153338244404760apple-converted-space
        {mso-style-name:m_-869863128702153880m3566153338244404760apple-converted-space;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE-CH" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Thank you for your reply.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">I am now working on a itk project with C++ (no Python binding), but I can’t reproduce what I did in Python with the PhysicalPointImageSource
 filter:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US">      
</span><span style="font-size:9.5pt;font-family:Consolas;color:blue;mso-fareast-language:EN-US">typedef</span><span style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US"> itk::</span><span style="font-size:9.5pt;font-family:Consolas;color:#2B91AF;mso-fareast-language:EN-US">Image</span><span style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US"><
 itk::</span><span style="font-size:9.5pt;font-family:Consolas;color:#2B91AF;mso-fareast-language:EN-US">Vector</span><span style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US"><</span><span style="font-size:9.5pt;font-family:Consolas;color:#2B91AF;mso-fareast-language:EN-US">Ctype</span><span style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US">,
 3>, Dimension > </span><span style="font-size:9.5pt;font-family:Consolas;color:#2B91AF;mso-fareast-language:EN-US">PhyImageType</span><span style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US">;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:35.4pt"><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:blue;mso-fareast-language:EN-US">typedef</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US">
 itk::</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:blue;mso-fareast-language:EN-US"> typedef</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black;mso-fareast-language:EN-US"> itk::PhysicalPointImageSource<
 PhyImageType > PhysicalPointImagefilter; // error ITK has no member PhysicalPointImageSource</span><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">It is strange to me, since it is part of manual… Is this filter not for the ITK C++ distribution? If this is the case,
 how can I get an image of physical coordinates with itk C++?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Thank you again,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Fabio.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Francois Budin [mailto:francois.budin@kitware.com]
<br>
<b>Sent:</b> Dienstag, 2. Mai 2017 17:49<br>
<b>To:</b> D'Isidoro Fabio <fisidoro@ethz.ch><br>
<b>Cc:</b> Lowekamp, Bradley (NIH/NLM/LHC) [C] <blowekamp@mail.nih.gov>; insight-users@itk.org<br>
<b>Subject:</b> Re: [ITK-users] [ITK] ITK PyBuffer get physical point coordinates<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hello Fabio,<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">The main difference between itk.GetArrayFromImage() and itk.PyBuffer[ImageType].GetArrayFromImage() is that itk.GetAraryFromImage() is a wrapping of itk.PyBuffer[ImageType].GetArrayFromImage() in Python that
 automatically finds the type of the input image (and is a shorted command line). The reason why this worked but not itk.PyBuffer[ImageType.GetArrayFromImage() is because in the wrapping, if a filter is given instead of an image, the output of the filter will
 be used.<o:p></o:p></p>
</div>
<p class="MsoNormal">Which means that what really happen is that you gave a filter to a function (itk.PyBuffer[ImageType].GetArrayFromImage()) expecting an image.<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">If you want to work with the long command, you have to make sure that the input is an image:<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">image=source.GetOutput()<br>
itk.PyBuffer[ImageType].GetArrayFromImage(image)<o:p></o:p></p>
</div>
<p class="MsoNormal">And then it should work.<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hope this helps,<o:p></o:p></p>
</div>
<p class="MsoNormal">Francois<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Tue, May 2, 2017 at 11:20 AM, D'Isidoro Fabio <<a href="mailto:fisidoro@ethz.ch" target="_blank">fisidoro@ethz.ch</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Hi Francois,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">It works with your commands, the difference being the use of:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">itk.GetArrayFromImage(source)<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">in your version, instead of:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">itk.PyBuffer[ImageType].GetArrayFromImage(source)<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">in my version.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">May you explain me the difference, and why using PyBuffer does not work for this case?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Also, when using VectorImage I get the error “No module named 'ITKQuadEdgeMeshPython'”.
 This is the only module that failed in my ITK Python build. Is this a known bug or it was just for my build?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Thank you!</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Fabio.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Francois
 Budin [mailto:<a href="mailto:francois.budin@kitware.com" target="_blank">francois.budin@kitware.com</a>]
<br>
<b>Sent:</b> Freitag, 28. April 2017 23:12<br>
<b>To:</b> D'Isidoro Fabio <<a href="mailto:fisidoro@ethz.ch" target="_blank">fisidoro@ethz.ch</a>><br>
<b>Cc:</b> Lowekamp, Bradley (NIH/NLM/LHC) [C] <<a href="mailto:blowekamp@mail.nih.gov" target="_blank">blowekamp@mail.nih.gov</a>>;
<a href="mailto:insight-users@itk.org" target="_blank">insight-users@itk.org</a><br>
<b>Subject:</b> Re: [ITK-users] [ITK] ITK PyBuffer get physical point coordinates</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">Hello Fabio,<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">I was able to use this filter in Python. Here is the commands I typed:<br>
In [14]: ImageType=itk.Image[itk.Vector[itk.F,2],2]<br>
<br>
In [15]: source=itk.PhysicalPointImageSource[ImageType].New()<br>
<br>
In [16]: source.SetSize([5,5])<br>
<br>
In [17]: source.SetOrigin([0,0])<br>
<br>
In [18]: source.SetSpacing([.5,.5])<br>
<br>
In [19]: source.Update()<br>
<br>
In [20]: itk.GetArrayFromImage(source)<br>
Out[20]: <br>
itkndarray([[[ 0. ,  0. ],<br>
        [ 0.5,  0. ],<br>
        [ 1. ,  0. ],<br>
        [ 1.5,  0. ],<br>
        [ 2. ,  0. ]],<br>
<br>
       [[ 0. ,  0.5],<br>
        [ 0.5,  0.5],<br>
        [ 1. ,  0.5],<br>
        [ 1.5,  0.5],<br>
        [ 2. ,  0.5]],<br>
<br>
       [[ 0. ,  1. ],<br>
        [ 0.5,  1. ],<br>
        [ 1. ,  1. ],<br>
        [ 1.5,  1. ],<br>
        [ 2. ,  1. ]],<br>
<br>
       [[ 0. ,  1.5],<br>
        [ 0.5,  1.5],<br>
        [ 1. ,  1.5],<br>
        [ 1.5,  1.5],<br>
        [ 2. ,  1.5]],<br>
<br>
       [[ 0. ,  2. ],<br>
        [ 0.5,  2. ],<br>
        [ 1. ,  2. ],<br>
        [ 1.5,  2. ],<br>
        [ 2. ,  2. ]]], dtype=float32)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">It also worked with VectorImages:<br>
<br>
In [22]: ImageType=itk.VectorImage[itk.F,2]<br>
<br>
In [23]: source=itk.PhysicalPointImageSource[ImageType].New()<br>
<br>
In [24]: source.SetOrigin([0,0])<br>
<br>
In [25]: source.SetSize([5,5])<br>
<br>
In [26]: source.SetSpacing([.5,.5])<br>
<br>
In [27]: source.Update()<br>
<br>
In [28]: itk.GetArrayFromImage(source)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">To answer your questions:<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">1) This filter is only wrapped over image of vectors and vector images. You can have the list of types that are available in Python with itk.PhysicalPointImageSource.GetTypes()<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">2) You may have a version of ITK Python for which VectorImage is not wrapped for PyBuffer. You can try to update your ITK Python [1]<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hope this helps,<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Francois<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><br>
[1] <a href="https://github.com/InsightSoftwareConsortium/ITKPythonPackage" target="_blank">
https://github.com/InsightSoftwareConsortium/ITKPythonPackage</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Fri, Apr 28, 2017 at 12:05 PM, D'Isidoro Fabio <<a href="mailto:fisidoro@ethz.ch" target="_blank">fisidoro@ethz.ch</a>> wrote:<o:p></o:p></p>
</div>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Thank you for your reply.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="m-869863128702153880m3566153338244404760msolistparagraph"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">1)</span><span lang="EN-US" style="font-size:7.0pt;color:#1F497D">    
</span><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">I have tried as a first step the following:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-indent:35.4pt">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">DRRPhy =
</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.PhysicalPointImageSource[</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.Image[</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.Point[</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.F,
 Dimension], Dimension]].New()</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">But I get the error:
</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-indent:35.4pt">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">KeyError: "itkTemplate : No template (<class 'itkPointPython.itkPointF3'>, 3) for the itk::Image class"
</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">So I guess I can’t generate an image with itk.Points as PixelType. Therefore I chose to
 use a VectorImage as ImageType in Input to the PhysicalPointImageSource.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">sourceImage =
</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.PhysicalPointImageSource[</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.VectorImage[</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">.F,
 Dimension]].New()</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt;text-autospace:none">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">sourceImage.SetSize(size)</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt;text-autospace:none">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">sourceImage.SetSpacing(spacing)</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt;text-autospace:none">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">sourceImage.SetOrigin(origin)</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt;text-autospace:none">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:green">#DRRPhy.SetIndex(start) it does not work, how to set the start index?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">DRRPhy.SetDirection(direction)</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black"> </span><o:p></o:p></p>
<p class="m-869863128702153880m3566153338244404760msolistparagraph"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">2)</span><span lang="EN-US" style="font-size:7.0pt;color:#1F497D">    
</span><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">However, using PyBuffer to get a numpy array form that does not work:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-indent:35.4pt">
<span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">sourceImageArray =
</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:#6F008A">itk</span><span lang="EN-US" style="font-size:9.5pt;font-family:Consolas;color:black">. PyBuffer[ImageType].GetArrayFromImage(sourceImage)</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">I get the error:
</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-indent:35.4pt">
<span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">AttributeError: 'itkPhysicalPointImageSourceVIF3' object has no attribute 'GetLargestPossibleRegion'</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Am I doing the right thing in point 1) ?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">How could I solve point 2) ?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Thank you !</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Fabio.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"> </span><o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Lowekamp,
 Bradley (NIH/NLM/LHC) [C] [mailto:<a href="mailto:blowekamp@mail.nih.gov" target="_blank">blowekamp@mail.nih.gov</a>]
<br>
<b>Sent:</b> Donnerstag, 27. April 2017 23:16<br>
<b>To:</b> D'Isidoro Fabio <<a href="mailto:fisidoro@ethz.ch" target="_blank">fisidoro@ethz.ch</a>><br>
<b>Cc:</b> <a href="mailto:insight-users@itk.org" target="_blank">insight-users@itk.org</a><br>
<b>Subject:</b> Re: [ITK] [ITK-users] ITK PyBuffer get physical point coordinates</span><o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi!
<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">You can generate an image of the physical locations of each pixel with the PhysicalPointImageSource filter:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><a href="https://itk.org/Doxygen/html/classitk_1_1PhysicalPointImageSource.html" target="_blank">https://itk.org/Doxygen/html/classitk_1_1PhysicalPointImageSource.html</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Very recently added is the SetReferenceImage, which can be use to copy the meta data from one image to the parameters of this filter. If your version is not super recent then you
 can manually set the Size, Spacing, Origin, Direction and StartIndex.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">After you generate the point image you should be able to convert to with the same method.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">HTH,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Brad<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Apr 27, 2017, at 4:58 PM, D'Isidoro Fabio <<a href="mailto:fisidoro@ethz.ch" target="_blank">fisidoro@ethz.ch</a>> wrote:<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">Hallo,</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">I know it’s possible to get a numpy array of an itk image with:</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">itk.PyBuffer[ImageType].GetArrayFromImage(Image)</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">Is it by any chance also possible to obtain a (flattended) numpy array of the physical coordinates of
 the image pixels too?</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">Thank you!</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> </span><o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif">_____________________________________<br>
Powered by<span class="m-869863128702153880m3566153338244404760apple-converted-space"> </span></span><a href="http://www.kitware.com/" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">www.kitware.com</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
<br>
Visit other Kitware open-source projects at<br>
</span><a href="http://www.kitware.com/opensource/opensource.html" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">http://www.kitware.com/opensource/opensource.html</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
<br>
Kitware offers ITK Training Courses, for more information visit:<br>
</span><a href="http://www.kitware.com/products/protraining.php" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">http://www.kitware.com/products/protraining.php</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
<br>
Please keep messages on-topic and check the ITK FAQ at:<br>
</span><a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">http://www.itk.org/Wiki/ITK_FAQ</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
</span><a href="http://public.kitware.com/mailman/listinfo/insight-users" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">http://public.kitware.com/mailman/listinfo/insight-users</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
_______________________________________________<br>
Community mailing list<br>
</span><a href="mailto:Community@itk.org" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">Community@itk.org</span></a><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif"><br>
</span><a href="http://public.kitware.com/mailman/listinfo/community" target="_blank"><span style="font-size:9.0pt;font-family:"Helvetica",sans-serif;color:#954F72">http://public.kitware.com/mailman/listinfo/community</span></a><o:p></o:p></p>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><br>
_____________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a 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 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 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 href="http://public.kitware.com/mailman/listinfo/insight-users" target="_blank">http://public.kitware.com/mailman/listinfo/insight-users</a><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>