Hi,
what you can do though is create "fake" probtrack files (1 fibs, no xings) and do simple streamlining with probabilistic sampling on the output. This is what we did as one method in the diffusion book chapter. Please find Tim's matlab code below. You may, however, as well port it to R. On the output, do probtrack (again, no xing). Note, however, that interpolated streamlining like FACT usually performs better.
Cheers-
Andreas
function cart2sphvol(input,outbase)
% cart2sphvol('inbase','outbase')
% e.g. cart2sphvol('dti_V1','merged')
addpath /usr/local/fsl/etc/matlab
[V1,dims,scales]=read_avw(input);
TH=zeros(size(V1,1),size(V1,2),size(V1,3));
PH=TH;
dims
scales
for z=1:size(V1,3)
for y=1:size(V1,2)
for x=1:size(V1,1)
dir=squeeze(V1(x,y,z,:));
mag=sqrt(dir(1)*dir(1)+dir(2)*dir(2)+dir(3)*dir(3));
if(mag==0)
ph=pi/2;
th=pi/2;
else
if((dir(1)==0) & (dir(2)>=0)) ph=pi/2;
elseif(dir(1)==0 & dir(2)<0) ph=-pi/2;
elseif(dir(1)>0) ph=atan(dir(2)/dir(1));
elseif(dir(2)>0) ph=atan(dir(2)/dir(1))+pi;
else ph=atan(dir(2)/dir(1))-pi; end
if(dir(3)==0) th=pi/2;
elseif(dir(3)>0) th=atan(sqrt(dir(1)*dir(1)+dir(2)*dir(2))/dir(3));
else th=atan(sqrt(dir(1)*dir(1)+dir(2)*dir(2))/dir(3))+pi;
end
end
TH(x,y,z)=th;
PH(x,y,z)=ph;
end
end
end
outth=strcat(outbase,'_thsamples');
outph=strcat(outbase,'_phsamples');
save_avw(TH,outth,'f',scales);
save_avw(PH,outph,'f',scales);
________________________________________
Von: FSL - FMRIB's Software Library [[log in to unmask]] im Auftrag von Stamatios Sotiropoulos [[log in to unmask]]
Gesendet: Dienstag, 6. Juli 2010 19:53
An: [log in to unmask]
Betreff: Re: [FSL] using probtrackX on dtifit output
Hi,
There is no tool in FSL to perform deterministic tracking. Dtifit gives point estimates for the model parameters. Probabilistic tractography requires an estimate of the uncertainty for each parameter, which you only get from bedpostx.
Cheers,
Stam
On 6 Jul 2010, at 18:47, Tuo Peter Li wrote:
> Is there an implemented function to run probtrackX on dtifit output files?
>
|