On 19.07.22 19:21, Jerome Lesaint wrote:
Hello all,

The question of neglecting out-of-plane offsets if less than 2 degrees is discussed in Yang et al, Med. Phys., 2006, section III.A.
Regards,
Jerome

Le mar. 19 juil. 2022 à 18:23, Simon Rit <[email protected]> a écrit :

    Hi Vincent,
    Thanks for the report. I don't believe that there is need for a
    PR. It comes down to using a different parameterization which I
    think you can always go around with one of the different versions
    of AddProjection.
    Did I mention that the out of plane angle has no effect below 2°?
    If yes, I'm not sure you can trust this information... as I don't
    know where it comes from.
    Best regards,
    Simon

    On Tue, Jul 19, 2022 at 11:34 AM Vincent Libertiaux <[email protected]>
    wrote:

        On 11.05.22 15:20, Vincent Libertiaux wrote:
        On 11.05.22 15:15, Simon Rit wrote:
        Hi,
        Yes, I think it's correct. To be sure you correctly
        understand it, you can always do test cases with the source
        and detector positions, u v vectors in the coordinate system
        of your object.
        
http://www.openrtk.org/Doxygen/classrtk_1_1ThreeDCircularProjectionGeometry.html#a0fb1475ed76a28cde24fac85eae18e1e
        and then check the resulting angles and distances.
        Simon

        On Wed, May 11, 2022 at 2:15 PM Vincent Libertiaux
        <[email protected]> wrote:

            On 10.05.22 22:54, Simon Rit wrote:
            > Hi Vincent,
            > RTK can parametrize any orientation of the detector
            with the three
            > angles GantryAngle, InPlaneAngle, OutOfPlaneAngle.
            0.025° seems very
            > small indeed! I don't know how much you know about
            software B but the
            > easiest would be to have either the projection matrix
            or the source
            > position, detector position, u axis and v axis in
            patient/object
            > coordinates to derive the RTK parameters.
            > Good luck with this!
            > Simon

            Hi Simon !

            Unfortunately, I don't have access to B projection matrices.

            As for the detector orientation in RTK, I have made this
            picture to make
            sure I understand properly how to use the gantry angle
            to achieve my
            desired geometry:

            https://ibb.co/J3H8z9M

            The cyan detector is the default configuration with a 0°
            gantry angle.
            The blue detector is at a gantry angle of alpha (largely
            exaggerated for
            the sake of clarity).  So in order to simulate an
            out-of-plane rotation
            of the detector around its vertical axis, I should
            translate this blue
            detector so that its center matches the coordinates of
            the cyan one, and
            translate the source accordingly (along the black
            vectors on the
            picture) ?  I assume that proj_iso_x/y and source_x/y
            are expressed in
            the gantry system of coordinates (local) ?


            Thank you again for your feedback,

            kindest regards,

            V.

        Thanks Simon,

        I'll investigate more and let you know.  Hopefully, it might
        be useful to someone else one day !

        V.

        Hi Simon,

        I finally got some time to investigate further this issue this
        week.  I managed to get sharp edges everywhere now and it was
        indeed the detector out-of-plane angle colinear with the
        gantry angle that was the cause.  The value given by the other
        software seems to have been in rad rather than degrees; the
        angle I found was 1.15°.  This makes me wonder what were the
        assumptions under which no effect was found for angles below
        2°.  If you know the title of the seminal paper, I'd be
        interested to read it.


        As for the mean to include this angle in the geometry, no
        extra code was indeed needed.  If we call this extra angle
        "c", the following modifications have to be made in
        rtksimulatedgeometry:

        - first angle = c

        - sdd = sdd_0 * cos(c)

        - sid = sid_0 * cos(c)

        - source_x = source_x0 - sid*sin(c)

        - proj_iso_x = proj_iso_x0 + (sdd-sid)*sin(c)

        I can't really promise I'll find time to do it, but if it is
        the case, I'll submit a PR to include that in the matrices
        computation.

        Hopefully, it will help others on the list who encountered a
        similar issue.

        Best regards,

        Vincent

    _______________________________________________
    Rtk-users mailing list
    [email protected]
    https://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users

Thank you very much for the reference Jérôme !

Best regards,

Vincent
_______________________________________________
Rtk-users mailing list
[email protected]
https://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users

Reply via email to