Hi, Mark
Thank you very much for the information
I tried it again using the command line:
invwarp -w A2B_warp -o B2A_warp -r A
Unfortunately, it is still not working. My A2B_warp looks like a vector warp
field with dimension of 22*22*19*3. My original image (A) has dimension of
256*256*192*1. If I am right, I should get a B2A_warp with the dimension of
22*22*19*3 also, but my B2A_warp is a matrix with the size of 256*256*192*1
and all zero values in them.
Thank you very much for your help
Longchuan
----- Original Message -----
From: "Mark Jenkinson" <[log in to unmask]>
To: <[log in to unmask]>
Sent: Friday, September 05, 2008 1:36 PM
Subject: Re: [FSL] It is possible to get the inversed warp field from fnirt
using "invwarp" ?
> Hi,
>
> The invwarp utility creates an inverse warp field regardless of what
> program
> has been used to create the warpfield. The new version though will read
> in
> native fnirt coef files as well as more standard warp (vector) fields,
> plus has
> been substantially improved.
>
> Your usage of invwarp is correct. If you ran fnirt with A=in and B=ref
> and
> got out a warp A2B_warp then the call to invwarp is as you have it:
> invwarp -w A2B_warp -o B2A_warp -r A
> Note that it needs to be either "-r A" or "--ref=A" and *not* "-ref A".
> This is in keeping with the general FSL command line syntax.
>
> If the problem is not the syntax, can you please describe in what way
> invwarp is "not working" as I need more information to be able to help.
>
> All the best,
> Mark
>
>
>
> On 5 Sep 2008, at 15:58, Longchuan Li wrote:
>
>> Hi, Mark
>>
>> Thank you very much for the information.
>> No, I am using the invwarp in FSL 4.1. What I was trying to say was that
>> I found that invwarp function was released in FSL4.0, while fnirt was
>> released in FSL4.1, making me think that maybe invwarp was not for
>> transforming the warp fields obtained by fnirt.
>>
>> I am a little confused about the compulsory options in invwarp. Suppose
>> that I transformed an image A to B (my template) and get a warp field
>> "A2B_warp". Now, I want to draw a mask on template B and then transform
>> this back to A using fnirt. Could you let me know what the command line
>> should look like?
>> I tried the following, but it was not working:
>>
>> invwarp -w A2B_warp -o A_inv -ref A
>>
>> Your help is greatly appreciated
>>
>> Longchuan Li
>>
>>
>> ----- Original Message ----- From: "Mark Jenkinson" <[log in to unmask]
>> >
>> To: <[log in to unmask]>
>> Sent: Friday, September 05, 2008 2:57 AM
>> Subject: Re: [FSL] It is possible to get the inversed warp field from
>> fnirt using "invwarp" ?
>>
>>
>>> Hi,
>>>
>>> Using invwarp is the correct way to get inverse warpfields.
>>> I don't quite understand what you mean by (it was released earlier
>>> than fnirt). Are you using the version of invwarp that is in the
>>> latest
>>> release? It is important to do so as it is substantially different
>>> from
>>> the old one.
>>>
>>> If you are using the latest version and having trouble then please let
>>> us know more about what the problem is and we can hopefully fix it
>>> easily.
>>>
>>> All the best,
>>> Mark
>>>
>>>
>>> On 4 Sep 2008, at 20:40, Longchuan Li wrote:
>>>
>>>> Hi, FSL users
>>>>
>>>> I am trying to draw a subcortical mask on a population-specific
>>>> template (non-human primates) and then transform this mask to each
>>>> individual's T1 image that were used to derive the template. Since I
>>>> have got the warp fields from each subject to the template using
>>>> fnirt, I am wondering if there is a simple way to get the inversed
>>>> warp field using a certain function in FSL.
>>>>
>>>> I tried the "invwarp" and did not get what I want ( it was released
>>>> earlier than fnirt). Is there any easy way to get such an inversed
>>>> warp field or I will have to registered the warped image back to the
>>>> original image using fnirt to get them?
>>>>
>>>> Your help is greatly appreciated.
>>>>
>>>>
>>>> Longchuan Li
>>>>
>>>
>>>
>>
>
>
>
|