Hi, Looking at the CPU code (which is more recent), it's because the width of the detector is computed at the isocenter. You can have a look at function ToUntiltedCoordinateAtIsocenter <https://github.com/SimonRit/RTK/blob/master/code/rtkThreeDCircularProjectionGeometry.cxx#L519> (in the standard case, you have sx=px=cosa=0). This complication comes to deal with tilted detector, see this paper <http://dx.doi.org/10.1118/1.4945418>. There seems to be a bug in the GPU code, I'll submit an issue that it should be fixed by making the two codes similar. Simon
On Mon, Sep 25, 2017 at 2:01 PM, Fredrik Hellman <[email protected]> wrote: > Hi, > > In rtkParkerShortScanFilter.hxx (line 113) and > rtkCudaParkerShortScanFilter.cxx (line 95), the overscan angle is checked > to be large enough for the used beam fan angle. (There is a difference > between how this check is performed in the two cases. It seems like the > CUDA-version assumes that the piercing point is in the middle of the > detector. That's not what this question is about though.) > > The beam fan angle seems to be computed as > > arctan( halfDetectorWidth / sourceToIsocenterDistance ) > > Why sourceToIsocenterDistance? Shouldn't it be sourceToDetectorDistance? > If the detector is far away from the isocenter, the beam fan angle should > also be small as far as I understand. This is not reflected in this > computation. > > Best regards, > Fredrik Hellman > > _______________________________________________ > Rtk-users mailing list > [email protected] > http://public.kitware.com/mailman/listinfo/rtk-users > >
_______________________________________________ Rtk-users mailing list [email protected] http://public.kitware.com/mailman/listinfo/rtk-users
