Print

Print


Dear Ce,

I tried that too, but I think it is not possible to adapt the scaling in the nii header using spm_write_vol. I have my own tools now that directly manipulate contents of nii files according to the nii specs from NIH, but I noticed that there is a new nifti toolbox in spm, in the folder @nifti. As it seems from the list more and more people are using that, perhaps it allows to adjust the scaling factor? Perhaps others can comment on that, I don't use these functions yet.

For example imagine you load an image with 32 bit floating point numbers in the range of 1-10 (a T-map for example), and the scaling factor to store that efficiently is 100 or so. When you do computations and your resulting image is in the range of 0-0.1, and you save it with spm_write_vol using the scaling from the old image you obtained the handle for, this scaling will awfully discretisize the contents as fysically they are stored as integers, or even clip them with different scaling factors. With the spm_vol, spm_read_vols and spm_write_vol way of handling images I did not find a way around this, so I wrote my own routines. Often this issue can be ignored as the scaling (only used to store digital data efficiently) is good for your original input image as well as your output image, but occasionally I ran into problems.

Good luck,

Bas

Op 24-11-11 02:48, [log in to unmask] schreef:
[log in to unmask]" type="cite">

Dear Bas,

 

Thank you for your insightful comments. The problem has been solved exactly the way you described. ^_^

 

However, I am quite curious about your suggestion here,

 

"Also make sure the scaling is not off when using spm_write_vol. In your
Vo handle, this is implicitely stored as the optimal intensity scaling
for your previous image, which might not be good for your new data."

 

 I noticed that there is not an explicit parameter for that in the spm_write_vol function. So how do I turn on the scaling when using spm_write_vol?

 

Many thanks and best regards,

             Ce

----- 原始邮件 -----
发件人:S.F.W. Neggers <[log in to unmask]>
收件人:[log in to unmask]
主题:Re: [SPM] How to save the calculated img and hdr files
日期:2011-11-23 18:47:15

what is 'Res'? It should be a string with full path to the image
(i.e.,something like Res='/home/ce/data/mydata.img'). Then you will find
your image in that folder.

Without a path I guess your image will end up in your current folder,
but i am not sure about that.

Also make sure the scaling is not off when using spm_write_vol. In your
Vo handle, this is implicitely stored as the optimal intensity scaling
for your previous image, which might not be good for your new data.

Otherwise your code looks good to me.


Good luck,

Bas

Op 23-11-11 11:53, Ce Mo schreef:
>
> Dear all,
>
> I have been trying to write a code to perform some calculation on two
> beta imgs, but I don't know how to save the result/calculated img.
>
> I called the function spm_write_vol as:
>
>
> out = sc.*me; % target
> Vo = spm_vol(char(Canonical));% For simplicity, apply the input elements
> Vo.fname = Res; % change name
> Vo = spm_write_vol(Vo,out); % Write output img
>
> where out is the calculated img.
>
> After that, Vo was saved in workspace but I could not save the out.img
> or out.hdr in the current folder or anywhere.
>
> Any ideas and comments would be greatly appreciated.
>
> Many thanks and best regards,
>
> Ce
>


--
--------------------------------------------------
Dr. S.F.W. Neggers
Division of Brain Research
Rudolf Magnus Institute for Neuroscience
Utrecht University Medical Center

Visiting : Heidelberglaan 100, 3584 CX Utrecht
Room B.01.1.03
Mail : Huispost B01.206, P.O. Box 85500
3508 GA Utrecht, the Netherlands
Tel : +31 (0)88 7559609
Fax : +31 (0)88 7555443
E-mail : [log in to unmask]
Web : http://www.neuromri.nl/people/bas-neggers
: http://www.neuralnavigator.com (CEO)
--------------------------------------------------


------------------------------------------------------------------------------

De informatie opgenomen in dit bericht kan vertrouwelijk zijn en is
uitsluitend bestemd voor de geadresseerde. Indien u dit bericht onterecht
ontvangt, wordt u verzocht de inhoud niet te gebruiken en de afzender direct
te informeren door het bericht te retourneren. Het Universitair Medisch
Centrum Utrecht is een publiekrechtelijke rechtspersoon in de zin van de W.H.W.
(Wet Hoger Onderwijs en Wetenschappelijk Onderzoek) en staat geregistreerd bij
de Kamer van Koophandel voor Midden-Nederland onder nr. 30244197.

Denk s.v.p aan het milieu voor u deze e-mail afdrukt.

------------------------------------------------------------------------------

This message may contain confidential information and is intended exclusively
for the addressee. If you receive this message unintentionally, please do not
use the contents but notify the sender immediately by return e-mail. University
Medical Center Utrecht is a legal person by public law and is registered at
the Chamber of Commerce for Midden-Nederland under no. 30244197.

Please consider the environment before printing this e-mail.



-- 
--------------------------------------------------
Dr. S.F.W. Neggers
Division of Brain Research
Rudolf Magnus Institute for Neuroscience
Utrecht University Medical Center

Visiting : Heidelberglaan 100, 3584 CX Utrecht
           Room B.01.1.03
Mail     : Huispost B01.206, P.O. Box 85500
           3508 GA Utrecht, the Netherlands
Tel      : +31 (0)88 7559609 
Fax      : +31 (0)88 7555443
E-mail   : [log in to unmask]  
Web      : http://www.neuromri.nl/people/bas-neggers
         : http://www.neuralnavigator.com (CEO)
--------------------------------------------------