Hi Mark
I started playing with the schedule files in the way you described to me.
I tried to allow for only one degree of freedom e.g. scaling in the
y-direction.
However, the resulting omat was:
1 0 0 0
0 0.952213 0 3.0586
0 0 1 0
0 0 0 1
In my understanding of the matrix described in technical report about FLIRT,
scaling as well as translation in y was performed in this case. I guess
I was not able
to modify the schedule file appropriately which is attatched it to this
email.
I hope, you can help me!
Thanks, Markus
Mark Jenkinson wrote:
>Dear Markus,
>
>I'm happy for people to try out their own schedule files.
>The documentation is in $FSLDIR/doc/flirt/schedule.html
>
>It doesn't really cover the paramsubset option (as it is
>the newest) but you have probably worked it out anyway.
>Basically the first number, N, represents the number of degrees
>of freedom you want, and then the other numbers are an Nx12
>matrix which specificies how these new degrees of freedom
>relate to the fixed 12 DOF. Typically you just put a one
>in the appropriate slot, although things like global scaling
>involve several of the scaling parameters being set by one
>of the "new" degrees of freedom.
>
>The order of the fixed 12 DOF are:
>rotation x, y, z, translation x, y, z, scaling x, y, z,
>skew xy, xz, yz.
>
>As for the optimise command - you shouldn't need to play with
>that too much. This is documented in the schedule.html file
>and the numbers simply represent offsets from the given point.
>Just use the schedule files I sent, but modify the paramsubset
>lines. That should give you what you want.
>
>Also note that the schedule files I sent do not include an
>initial search phase, since this cannot, at present, be
>adapted to different degrees of freedom. Hence the optimisation
>is essentially local (although multi-scale) - much like that done
>in other packages. You can add perturbations easily enough
>though, like those in the standard FLIRT schedule, contained in the
>documentation.
>
>Best of luck,
> Mark
>
>
>
# 8mm scale
setscale 8
setoption smoothing 8
setoption paramsubset 1 0 0 0 0 0 0 0 1 0 0 0 0
clear U
clear UA
setrow UA 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
optimise 12 UA:1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 4
# 4mm scale
setscale 4
setoption smoothing 4
setoption paramsubset 1 0 0 0 0 0 0 0 1 0 0 0 0
clear UB
clear UL
clear UM
# remeasure costs at this scale
clear U
measurecost 12 UA 0 0 0 0 0 0 rel
sort U
copy U UL
# optimise best 3 candidates
clear U
optimise 12 UL:1-3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 4
copy U UM
# select best 3 optimised solutions and try perturbations of these
clear U
copy UM:1-3 U
optimise 12 UM:1-3 0.0 0.0 1.0 0.0 0.0 0.0 0.0 rel 4
optimise 12 UM:1-3 0.0 0.0 -1.0 0.0 0.0 0.0 0.0 rel 4
optimise 12 UM:1-3 0.0 0.0 0.0 0.1 0.0 0.0 0.0 abs 4
optimise 12 UM:1-3 0.0 0.0 0.0 -0.1 0.0 0.0 0.0 abs 4
optimise 12 UM:1-3 0.0 0.0 0.0 0.0 0.1 0.0 0.0 abs 4
optimise 12 UM:1-3 0.0 0.0 0.0 0.0 -0.1 0.0 0.0 abs 4
sort U
clear UB
copy U UB
# 2mm scale
setscale 2
setoption smoothing 2
setoption paramsubset 1 0 0 0 0 0 0 0 1 0 0 0 0
clear U
clear UC
clear UD
clear UE
clear UF
# remeasure costs at this scale
measurecost 12 UB 0 0 0 0 0 0 rel
sort U
copy U UC
clear U
optimise 12 UC:1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 4
copy U UD
setoption boundguess 1
if MAXDOF > 7
clear U
if MAXDOF > 7
optimise 9 UD:1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 1
copy U UE
if MAXDOF > 9
clear U
if MAXDOF > 9
optimise 12 UE:1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 2
sort U
copy U UF
# 1mm scale
setscale 1
setoption smoothing 1
setoption boundguess 1
setoption paramsubset 1 0 0 0 0 0 0 0 1 0 0 0 0
clear U
optimise 12 UF:1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 rel 1
sort U
|