Re: 3D Registration [message #56239 is a reply to message #53222] |
Wed, 10 October 2007 07:49  |
Mike[2]
Messages: 99 Registered: December 2005
|
Member |
|
|
On Oct 9, 11:48 am, Bita <rahm...@sbox.tugraz.at> wrote:
> I am looking for examples of the implementation of 3D registration by
> Roger Woods.
> I would like to implement it with Ratio Image Uniformity (RIU Cost
> Function) of woods in IDL.
>
> So far I have tried it with other methods but it didn't work out.
> Could you please check where the fault lies and eventually suggest a
> solution?
Could you be more specific about what didn't "work out"?
I use that objective function often for registering neuroimaging data,
but I do it by writing out my data and running AIR on it, rather than
reimplementing AIR in IDL. I've fiddled with using it for
registration with IDL, using tnmin (from mpfit) to minimize a number
of different cost functions, including Woods and mutual information,
but I still haven't put much effort into it. The complex part is not
the objective function, but the minimization.
My experience with the C version of AIR is that it can be quite
sensitive to the choice of thresholds and number of partitions - plus
you'll need good starting values for your registration parameters.
Here's how I'd code the objective function for a single partition in
each data set:
v1 = data set one, calculated using registration parameters
v2 = data set two, calculated using registration parameters
t1 = data set one threshold
t2 = data set two threshold
indeces = where((v1 gt t1) and (v2 gt t2), count)
if count gt 1 then begin
ratio = v1[indeces]/v2[indeces]
result = stdev(ratio)
endif else begin
ratio = 0
endelse
Mike
|
|
|