@@ -355,33 +355,36 @@ def XCAT_to_MR_DCE(XCAT, TR, TE, bvalue, D, f, Ds, b0=3, ivim_cont = True):
355
355
Dtemp = 5e-4 + np .random .rand (1 )* 3e-3
356
356
ftemp = np .random .rand (1 )* 0.5
357
357
Dstemp = 5e-3 + np .random .rand (1 )* 1e-1
358
- #S0 = np.zeros(len(bvalue))
359
358
S0 = ivim (bvalue ,Dtemp ,ftemp ,Dstemp )
360
359
if T1 > 0 or T2 > 0 :
361
- MR = MR + np .tile (np .expand_dims (XCAT == iTissue ,3 ),len (S0 )) * S0 * (1 - 2 * np .exp (- (TR - TE / 2 ) / T1 ) + np .exp (- TR / T1 )) * np .exp (
362
- - TE / T2 )
360
+ MR = MR + np .tile (np .expand_dims (XCAT == iTissue ,3 ),len (S0 )) * S0 * (1 - 2 * np .exp (- (TR - TE / 2 ) / T1 ) + np .exp (- TR / T1 )) * np .exp (- TE / T2 )
363
361
Dim = Dim + (XCAT == iTissue ) * Dtemp
364
362
fim = fim + (XCAT == iTissue ) * ftemp
365
363
Dpim = Dpim + (XCAT == iTissue ) * Dstemp
366
364
return MR , Dim , fim , Dpim , legend
367
365
368
366
if __name__ == '__main__' :
369
367
bvalue = np .array ([0. , 1 , 2 , 5 , 10 , 20 , 30 , 50 , 75 , 100 , 150 , 250 , 350 , 400 , 550 , 700 , 850 , 1000 ])
370
- noise = 0.005
368
+ noise = 0.0 # 0. 005
371
369
motion = False
372
370
sig , XCAT , Dim , fim , Dpim , legend = phantom (bvalue , noise ,motion = motion ,interleaved = False )
373
- sig = np .flip (sig ,axis = 0 )
374
- sig = np .flip (sig ,axis = 1 )
371
+ # sig = np.flip(sig,axis=0)
372
+ # sig = np.flip(sig,axis=1)
375
373
res = np .eye (4 )
376
374
res [2 ]= 2
377
375
376
+ D , f , Ds = contrast_curve_calc ()
377
+ ignore = np .isnan (D )
378
378
generic_data = {}
379
379
for level , name in legend .items ():
380
+ if len (ignore ) > level and ignore [level ]:
381
+ continue
380
382
selector = XCAT == level
381
383
voxels = sig [selector ]
382
384
if len (voxels ) < 1 :
383
385
continue
384
386
signals = np .mean (voxels , axis = 0 ).tolist ()
387
+ std = np .std (XCAT [selector ], axis = 0 ).tolist ()
385
388
generic_data [name ] = {
386
389
'D' : np .mean (Dim [selector ], axis = 0 ),
387
390
'f' : np .mean (fim [selector ], axis = 0 ),
0 commit comments