Thanks for this, it sounds like forcing them to be zero will be the best
solution then.
Ian
Mark Jenkinson wrote:
> Hi,
>
> Note that if you set the cal_min and cal_max both to 0
> then you let the display tool itself decide what is best,
> which is probably the best typically. You can actually
> do this completely with FSL tools as well. It can either
> be done interactively with fsledithd or you can use the
> following two-line script:
>
> fslhd -x MYIMAGENAME | sed "s/cal_max.*/cal_max = '0'/" | sed
> "s/cal_min.*/cal_min = '0'/" > headerinfo.txt
> fslcreatehd headerinfo.txt MYIMAGENAME
>
> You can also set the cal_min and cal_max to non-zero
> values if you like, but I personally prefer to let the
> display tool (e.g. FSLView) decide generally rather than
> prescribe what it must do, which is what cal_min and
> cal_max force it to do.
>
> We will also look at the behaviour of FIRST and stop
> it copying inappropriate values across for these fields
> from the input images.
>
> All the best,
> Mark
>
>
>
>
> On 25 Jun 2010, at 17:24, Matt Glasser wrote:
>
>> I have found the inconsistent use of cal_max and cal_min annoying as
>> well.
>> I wrote a little code that lets you easily set these values yourself
>> (depends on AFNI's nifti_tool):
>>
>> brainmappers@brainmappers-desktop1:~$ cat /usr/lib/fsl/set_window.sh
>> #!/bin/bash
>>
>> if [ $# -ne 3 ] ; then
>> echo "Incorrect Number of Paramaters Specified"
>> echo "Usage: <filename> <minimum> <maximum>"
>> else
>> echo $1 $2 $3
>> nifti_tool -mod_nim -overwrite -mod_field cal_min $2 -infiles $1
>> nifti_tool -mod_nim -overwrite -mod_field cal_max $3 -infiles $1
>> fi
>>
>> If you want to set these values automatically, you can pipe the
>> output of
>> fslstats -R (or -r), and use these to set a reasonable window for
>> FSLView.
>>
>> Peace,
>>
>> Matt.
>>
>> -----Original Message-----
>> From: FSL - FMRIB's Software Library [mailto:[log in to unmask]] On
>> Behalf
>> Of Ian Malone
>> Sent: Friday, June 25, 2010 5:32 AM
>> To: [log in to unmask]
>> Subject: [FSL] inconsistent use/not setting cal_max, cal_min headers?
>>
>> Hi,
>>
>> I've been noticing this for a while, but it was only when one of our
>> users updated their FSL to 4.1.5 and asked about it that I looked into
>> it. We use flschfiletype to convert from Analyze 7.5 to Nifti, it
>> appears that fsl 4.0.4 used to set the cal_max and cal_min fields and
>> 4.1.? no longer does. This is apparent when viewing images in fslview,
>> which uses those values to set the starting window levels (sometimes the
>> image is completely black with the initial levels, sometimes binary
>> contrast and sometimes about right). We can work around easily enough
>> with -mul 1 in fslmaths, but I was wondering whether this change was
>> intentional.
>>
>> Either way, the problem then appeared again; on running images with
>> corrected cal_min and cal_max through FIRST, those header values were
>> unchanged. Since the segmentation classes were lower intensity than the
>> segmented [0:1000], they load up in fslview very dark. Again, fslmaths
>> can be used as a workaround, or some scripting with fslcreatehd, but I
>> was a bit surprised to find fslview uses the fields if they're not set
>> by other tools.
>>
>> So, is this a known problem, a non-problem or am I missing something
>> (e.g. using fslview differently for looking at first segmentations), and
>> are there any other workarounds for cal_min and cal_max not set?
>>
>> Thanks,
>> Ian
>>
|