[Camino-users] Difference between tensor fitting models
Philip A Cook
cookpa at mail.med.upenn.edu
Thu Feb 9 13:38:04 PST 2012
Hi,
Thanks, you make a good point - the SD is set according to the user value in restore - and then reset in later iterations according to the restore algorithm. This could cause different results.
I don't think there is a way to do the same thing for nldt, perhaps this is something we should add.
Phil
On Feb 9, 2012, at 3:06 AM, Ed Gronenschild wrote:
> Hi Phil,
>
> Yesterday I wrote a reply e-mail to Danny. Unfortunately, I forgot to sent
> it to the user list. So I repeat it here.
>
> -----------
> Dear Danny,
>
> I'm somewhat confused now: according to the flow diagram in Fig 1
> in the publication on RESTORE (Chang et al, Magn. Reson. Med, 53 ,
> 1088-1095 (2005)) the final tensor fit is a non-linear least-squares
> fit with constant weight 1/sd**2. When using modelfit the sd is
> supplied as argument in case of model = restore. But what about
> model = nldt? I have not supplied sd as argument in that case.
> Should I have done?
> May that possibly explain the large differences in the results?
> --------------
>
> If have used modelfit with model = nldt which is also unconstrained
> just like RESTORE. The contrained one you are referring to is
> model = nldt_pos. So that will not explain the differences I observe.
> That brings me back to the reply to Danny: should I supply sd as
> option with model = nldt because RESTORE uses the sd in the final fit?
>
> Ed
>
>
> On 8 Feb 2012, at 18:43, Philip A Cook wrote:
>
>> Hi,
>>
>> There's one other difference - restore uses an unconstrained nonlinear fitting algorithm, whereas nldt will use an optimization constrained such that the eigenvalues must be positive. This might cause small differences in the result, but I would expect restore and nldt to be very similar when the number of outliers is zero.
>>
>> You can check what restore is doing by looking at the exit code. If you run dt2nii on your tensor data, it will produce an exit code image. The code will be 0 if no outliers were removed, and 1000+ where outliers (code - 1000) outliers have been removed.
>>
>>
>> Phil
>>
>> On Feb 8, 2012, at 10:17 AM, Daniel Alexander wrote:
>>
>>> That sounds right. Although restore will often decide that one or two data points are outliers, so results won't be exactly the same.
>>>
>>> Danny
>>>
>>>
>>> On 7 Feb 2012, at 13:45, Ed Gronenschild wrote:
>>>
>>>> Hi,
>>>>
>>>> I'm using modelfit to estimate the single tensor in the DWI images.
>>>> Three options for the model were used:
>>>>
>>>> 1. model = ldt
>>>> 2. model = nldt
>>>> 3. model = restore
>>>>
>>>> I noticed differences between all results. My question concerns
>>>> the difference between nldt en restore. To my opinion, restore is
>>>> based on a non-lineair least squares technique to estimate the
>>>> tensor and should be the same as nldt in the absence of outliers.
>>>> Is that right?
>>>>
>>>> Kind regards,
>>>> Ed
>>>>
>>>> _______________________________________________
>>>> Camino-users mailing list
>>>> Camino-users at www.nitrc.org
>>>> http://www.nitrc.org/mailman/listinfo/camino-users
>>>
>>> _______________________________________________
>>> Camino-users mailing list
>>> Camino-users at www.nitrc.org
>>> http://www.nitrc.org/mailman/listinfo/camino-users
>>
>
More information about the Camino-users
mailing list