<div dir="ltr"><div><div><div><div><div><div>Dear Mathis,<br></div>Sorry to hear about your difficulties. You use AddProjection with a matrix which, internally, converts your projection matrix to parameters that are used in the FDK reconstruction. After writing down the produced geometry, it turns out that you rotate around Z where RTK works in FDK if you rotate around Y (see <a href="http://www.openrtk.org/Doxygen/geometry.pdf">geometry.pdf)</a>. Two solutions:<br></div>- start with an iterative algorithm (conjugate gradient) for which there is no geometry constraint,<br></div>- change the projection matrix to rotate around Y.<br></div>I have done the second thing and reconstructed one slice only (on my laptop). I noticed that there is a projection offset in the geometry, so it seems that your projection matrix assumes that the coordinate (0,0) is at the corner of the projection. You don't need to set the origin then. Your reconstructed volume was also off-centered. Maybe you need to check the ITK software guide to understand the origin concept.<br></div><div>I obtained a more decent results with the enclosed scripts but I let you do some checks on a large volume. In particular, if the object size is not right, it might be because your projection matrix converts 3D positions in mm to 2D positions in pixel instead of mm. In this case, you need to multiply the projection matrix m by a 3x3 scaling matrix s (m=s*m) to convert pixel coordinates to mm coordinates.</div><div>I hope this helps,<br></div>Simon<br><br></div>PS: if you want to make FDK work with any circular trajectory, I'm interested but this is a lot more work.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 26, 2017 at 12:24 PM, <span dir="ltr"><<a href="mailto:mathis.hoffmann@fau.de" target="_blank">mathis.hoffmann@fau.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
we currently try to set up a simple FDK reconstruction pipeline using SimpleRTK for research purposes. We have projections from a simulated Forbild phantom and the corresponding projection matrices. We can reconstruct the same data trouble-free using our internal tools. However, we fail to do so using SimpleRTK. We provide the data including a minimal example that demonstrates the problem here: <a href="https://www.dropbox.com/sh/8fqhyvcnzb5u8zd/AAAYLQ50_3GIoTSMli5nmtYca?dl=0" rel="noreferrer" target="_blank">https://www.dropbox.com/sh/8fq<wbr>hyvcnzb5u8zd/AAAYLQ50_3GIoTSMl<wbr>i5nmtYca?dl=0</a><br>
<br>
Could someone please have a look on the problem? We have tried for a long time now. The relevant geometry parameters (which are also set in the script) are:<br>
Detector offset in u/v direction: 255.5/255.5<br>
Pixel sizes u/v: 0.8/0.8<br>
Size of projections: 512x512<br>
Size of volume: 512x512x512<br>
Voxel sizes x/y/z: 0.5/0.5/0.5<br>
Midpoint of volume: 0/0/0<br>
<br>
Thank you in advance for any help!<br>
<br>
Mathis Hoffmann<br>
______________________________<wbr>_________________<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="http://public.kitware.com/mailman/listinfo/rtk-users" rel="noreferrer" target="_blank">http://public.kitware.com/mail<wbr>man/listinfo/rtk-users</a><br>
</blockquote></div><br></div>