<html 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=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@DengXian";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi,</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">First, thank you for your reply. I am following the rtkfourdfdk to do the phase-correlated recon now. However, the result is not desirable and I am wondering whether the bad results result from too few projections for each phase.</p>
<p class="MsoNormal">If I understand the rtk::SelectOneProjectionPerCycleImageFilter correctly, it only select one projection from per respiratory cycle for each phase. So if 20 projections were acquired per respiratory cycle and I want to reconstruct 10 phases,
 only half projections will be used, right? I don’t know why we abandon some projections and is there some way I can use all the data? That’s to say, select 2 projections for each one of total 10 phases per respiratory cycle.</p>
<p class="MsoNormal">I also put my Python code and used data here( <span style="font-family:"Calibri",sans-serif">
<a href="https://drive.google.com/drive/folders/1SFXr4ehI1N8Wh0BAMlRqIah9cXwukRYJ">https://drive.google.com/drive/folders/1SFXr4ehI1N8Wh0BAMlRqIah9cXwukRYJ</a></span><span style="font-family:DengXian">
</span>). </p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thank you again.</p>
<p class="MsoNormal">Zhehao</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:simon.rit@creatis.insa-lyon.fr">Simon Rit</a><br>
<b>Sent: </b>Wednesday, May 13, 2020 3:59 AM<br>
<b>To: </b><a href="mailto:zhehao.zhang@wustl.edu">Zhang, Zhehao</a><br>
<b>Cc: </b><a href="mailto:rtk-users@public.kitware.com">rtk-users@public.kitware.com</a><br>
<b>Subject: </b>Re: [Rtk-users] 4D Phase-correlated Reconstruction</p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Hi,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I think you should look at <a href="https://github.com/SimonRit/RTK/blob/master/applications/rtkfourdfdk/rtkfourdfdk.cxx">
rtkfourdfdk</a> which does what you want. rtk::SelectOneProjectionPerCycleImageFilter will select the projections for you. Can you try to reimplement this in Python? We'll help if you're stuck but this is the right file to use as a basis for your dev.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Simon<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Wed, May 13, 2020 at 8:07 AM Zhang, Zhehao <<a href="mailto:zhehao.zhang@wustl.edu">zhehao.zhang@wustl.edu</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Dear all,
</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I am trying to do the 4D phase-correlated CBCT reconstruction under Python environment. What I have are the projection data(.mha), geometry info(.xml) and the repiratory info(.txt).
 You can check the attachment for the phase file. I want just to simply ‘divide’ the projections and geometry into different bins according to the phase information and perform FDK recon separately, to get several different 3D images with streaks artifacts
 of course. The Rooster is not necessary for me.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I have spent lot of time on the given ‘4DROOSTERReconstruction’ example. I think it used the ReorderProjectionsImageFilter order to do the separation. However, I am stuck on how
 to perform it for Python since I didn’t figure out how to read the phase.txt. Could you please give me some hints and is it correct to call this order to achieve my goals?</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Additionally, I also saw another test example(<a href="https://github.com/SimonRit/RTK/blob/master/test/rtkwarpprojectionstacktofourdtest.cxx" target="_blank">https://github.com/SimonRit/RTK/blob/master/test/rtkwarpprojectionstacktofourdtest.cxx</a>)
 which seems using ‘PhasesToInterpolationWeights’ ,  ‘BackProjectionImageFilter’ and ‘DivideImageFilter ‘ to do this. I am confused I should follow which way. And I also want to make sure why here using BackProjectionImageFilter rather than FDKConeBeamReconstructionFilter.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Sorry for these cumbersome questions. Really hope to get some help, which means a lot for me. Thank you very much.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Sincerely,</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Zhehao</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="margin-left:4.8pt">_______________________________________________<br>
Rtk-users mailing list<br>
<a href="mailto:Rtk-users@public.kitware.com" target="_blank">Rtk-users@public.kitware.com</a><br>
<a href="https://public.kitware.com/mailman/listinfo/rtk-users" target="_blank">https://public.kitware.com/mailman/listinfo/rtk-users</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>