<div dir="ltr"><div>Hi Sean,</div><div>Interesting! Briefly,</div><div>- for rtkfdk, there is nothing ready out of the box. The displaced detector only works for truncated projections on one side only. One should be able to calculate weights for your case, weighting both sides of the projections except except for the furthest one from the center (which should not be truncated on one side).</div><div>- for iterative algorithms, we have implemented the use of the displaced weights following e.g. <a href="http://dx.doi.org/10.1088/0031-9155/58/2/205">http://dx.doi.org/10.1088/0031-9155/58/2/205</a> but you can disable them with the --nodisplaced option. There is no theoretical ground for having them except avoiding creating discontinuities so that the algorithm converges to a smooth result in the central overlap region.</div><div>I hope it helps,</div><div>Simon</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, Jun 24, 2025 at 7:26 AM Sean Phillip Hood <<a href="mailto:sph864@uowmail.edu.au">sph864@uowmail.edu.au</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg8901815284659636462">
<div dir="ltr">
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Hi,</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
I am using RTK to reconstruct spectral CBCT images from projections obtained with a photon counting detector (PCD) mounted on an Elekta linac. </div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
The main challenge is the size of the PCD (at isocentre the FOV is approximately 80 mm x 10 mm). To address this we repeat CBCT acquisitions with the detector offset by multiples of its width for each gantry rotation.</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Unfortunately, the sampling of gantry angles varies between acquisitions, and so the projections cannot be simply stitched together. Furthermore, obtaining projections by scanning across the FOV at a series of gantry angles is far too slow.</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Therefore, I wanted to see if there was a solution using RTK. The first thing I have tried is to feed the command line applications all of the sorted PCD projections from separate acquisitions as well as a concatenated geometry file. The concatenation involves
extracting the geometry information from each Elekta XML file and appending it to a single geometry file. The translation is added to the projection offset in the x-direction.</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
For RTK v2.5.0, this results in the following exception thrown by rtkDisplacedDetectorImageFilter when using rtkadmmtotalvariation:</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Description: ITK ERROR: Cannot account for detector displacement larger than 50% of panel size. Corner inf=59.661 and corner sup=682.68</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
A similar error is returned by rtkfdk. It seems that projection offsets larger than 50% of the detector cannot be used. Would it be possible to add support for this, or for translate-rotate geometries in general? </div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
I only ask because I have also tried this method with an older version of RTK (I do not know the exact version since I was provided with pre-compiled executables). These errors did not occur and I was able to at least produce an output from rtkadmmtotalvariation,
albeit one that had clear geometry issues (I suspect there are differences in definitions that I'm not accounting for between RTKThreeDCircularGeometry versions 2 and 3, the former being used by the older version of RTK).</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Please let me know if I can provide any more info, and I would be grateful for any assistance. Thanks!</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif;font-size:11pt;color:rgb(0,0,0)">
Kind regards,</div>
<div id="m_8901815284659636462Signature">
<div style="text-align:left;font-family:"Times New Roman",Times,serif;font-size:11pt;color:rgb(23,78,134)">
<b>Sean Hood</b></div>
<div style="text-align:left;font-family:"Times New Roman",Times,serif;font-size:11pt;color:rgb(23,78,134)">
School of Physics, Faculty of Engineering and Information Sciences</div>
<div style="text-align:left;font-family:"Times New Roman",Times,serif;font-size:11pt;color:rgb(23,78,134)">
University of Wollongong, Australia</div>
</div>
</div>
_______________________________________________<br>
Rtk-users mailing list<br>
<a href="mailto:rtk-users@openrtk.org" target="_blank">rtk-users@openrtk.org</a><br>
<a href="https://www.creatis.insa-lyon.fr/mailman/listinfo/rtk-users" rel="noreferrer" target="_blank">https://www.creatis.insa-lyon.fr/mailman/listinfo/rtk-users</a><br>
</div></blockquote></div>