[MINC-users] xfmavg and lsq6 transforms

Vladimir S. FONOV vladimir.fonov at gmail.com
Thu Feb 11 13:15:33 EST 2016


Ok, here it is :
https://github.com/BIC-MNI/pyezminc/blob/develop/examples/xfmavg_scipy.py

Note - it needs to have develop branch of pyezminc to be installed.

On Thu, Feb 11, 2016 at 12:00 PM, Gabriel A. Devenyi <gdevenyi at gmail.com>
wrote:

> This is good to know, CCing in pydpiper guys as this may impact them.
>
> Vlad, would you be willing to share your alternate implementation script?
>
> --
> Gabriel A. Devenyi B.Eng. Ph.D.
> Research Computing Associate
> Computational Brain Anatomy Laboratory
> Cerebral Imaging Center
> Douglas Mental Health University Institute
> McGill University
> t: 514.761.6131x4781
> e: gdevenyi at gmail.com
>
> On Thu, Feb 11, 2016 at 11:55 AM, Vladimir S. FONOV <
> vladimir.fonov at gmail.com> wrote:
>
> > So, looks like something is broken in octave, or the way how xfmavg reads
> > matrices.
> >
> > I run standard xfmavg and got result
> > -center         0.00000    0.00000    0.00000
> > -translation    0.38288    0.50712    0.52295
> > -rotation      -0.04862    0.66666   -0.63100
> > -scale          1.00000    1.00000    1.00000
> > -shear         -0.00000   -0.00000    0.00000
> >
> > And then run my SciPy based re-implimentation and got following:
> > -center         0.00000    0.00000    0.00000
> > -translation    0.37409    0.75399    0.28905
> > -rotation     -86.85079    2.70359    1.51978
> > -scale          1.00000    1.00000    1.00000
> > -shear          0.00000    0.00000    0.00000
> >
> >
> >
> > The algorithm is the same as in xfmavg - apply matrix logarithm to all
> > transforms, perform element-wise averaging, then apply matrix exponent.
> >
> >
> >
> > On 16-02-11 11:41 AM, Gabriel A. Devenyi wrote:
> >
> >> And the average I get, cause I forgot to include it:
> >>
> >> MNI Transform File
> >> %
> >> % Created by xfmavg with a bit of help from octave
> >> %    http://www.octave.org/
> >> %
> >> % Thu Feb 11 10:47:59 EST 2016>>>> xfmavg scan1_01a0_GenericAffine.xfm
> >> scan1_02a0_GenericAffine.xfm scan1_02b0_GenericAffine.xfm
> >> scan1_03a0_GenericAffine.xfm scan1_04a0_GenericAffine.xfm
> >> scan1_05a0_GenericAffine.xfm scan1_05b0_GenericAffine.xfm
> >> scan1_06a0_GenericAffine.xfm scan1_07a0_GenericAffine.xfm
> >> scan1_07b0_GenericAffine.xfm scan1_08b0_GenericAffine.xfm
> >> scan1_10b0_GenericAffine.xfm scan1_11b0_GenericAffine.xfm
> >> scan1_12a0_GenericAffine.xfm scan1_13a0_GenericAffine.xfm
> >> scan1_14a0_GenericAffine.xfm scan1_14b0_GenericAffine.xfm
> >> scan1_16b0_GenericAffine.xfm scan2_01a0_GenericAffine.xfm
> >> scan2_01b0_GenericAffine.xfm scan2_02a0_GenericAffine.xfm
> >> scan2_03a0_GenericAffine.xfm scan2_06a0_GenericAffine.xfm
> >> scan2_06b0_GenericAffine.xfm scan2_08a0_GenericAffine.xfm
> >> scan2_09a0_GenericAffine.xfm scan2_11a0_GenericAffine.xfm
> >> scan3_02a0_GenericAffine.xfm scan3_03a0_GenericAffine.xfm
> >> scan3_07a0_GenericAffine.xfm scan3_09a0_GenericAffine.xfm
> >> scan3_09b0_GenericAffine.xfm average/average.xfm
> >>
> >> Transform_Type = Linear;
> >> Linear_Transform =
> >>   9.99871671e-01 1.10030065e-02 1.16437239e-02 3.82880856e-01
> >>   -1.10121374e-02 9.99939105e-01 7.20365393e-04 5.07116829e-01
> >>   -1.16350887e-02 -8.48495237e-04 9.99931950e-01 5.22949707e-01;
> >>
> >> ​
> >>
> >>
> >
> > --
> > Best regards,
> >
> >  Vladimir S. FONOV ~ vladimir.fonov <at> gmail.com
> > _______________________________________________
> > MINC-users at bic.mni.mcgill.ca
> > http://www.bic.mni.mcgill.ca/mailman/listinfo/minc-users
> >
> _______________________________________________
> MINC-users at bic.mni.mcgill.ca
> http://www.bic.mni.mcgill.ca/mailman/listinfo/minc-users
>



-- 
Best regards,

 Vladimir S. Fonov ~ vladimir <dot> fonov <at> gmail <dot> com


More information about the MINC-users mailing list