@@ -86,6 +86,31 @@ def vox_size(affine):
86
86
return np .sqrt (np .sum (affine [:3 ,:3 ] ** 2 , axis = 0 ))
87
87
88
88
89
+ def check_conversion (cmd , pr_data , out_fname ):
90
+ run_command (cmd )
91
+ img = load (out_fname )
92
+ data = img .get_data ()
93
+ assert_true (np .allclose (data , pr_data ))
94
+ assert_true (np .allclose (img .header ['cal_min' ], data .min ()))
95
+ assert_true (np .allclose (img .header ['cal_max' ], data .max ()))
96
+ # Check minmax options
97
+ run_command (cmd + ['--minmax' , '1' , '2' ])
98
+ img = load (out_fname )
99
+ assert_true (np .allclose (data , pr_data ))
100
+ assert_true (np .allclose (img .header ['cal_min' ], 1 ))
101
+ assert_true (np .allclose (img .header ['cal_max' ], 2 ))
102
+ run_command (cmd + ['--minmax' , 'parse' , '2' ])
103
+ img = load (out_fname )
104
+ assert_true (np .allclose (data , pr_data ))
105
+ assert_true (np .allclose (img .header ['cal_min' ], data .min ()))
106
+ assert_true (np .allclose (img .header ['cal_max' ], 2 ))
107
+ run_command (cmd + ['--minmax' , '1' , 'parse' ])
108
+ img = load (out_fname )
109
+ assert_true (np .allclose (data , pr_data ))
110
+ assert_true (np .allclose (img .header ['cal_min' ], 1 ))
111
+ assert_true (np .allclose (img .header ['cal_max' ], data .max ()))
112
+
113
+
89
114
@script_test
90
115
def test_parrec2nii ():
91
116
# Test parrec2nii script
@@ -104,24 +129,26 @@ def test_parrec2nii():
104
129
data = img .get_data ()
105
130
assert_data_similar (data , eg_dict )
106
131
assert_almost_equal (img .header .get_zooms (), eg_dict ['zooms' ])
107
- # Check scaling options
108
- cmd = ['parrec2nii' , '--scaling=dv' , fname ]
109
132
# Does not overwrite unless option given
110
- code , stdout , stderr = run_command (cmd , check_code = False )
133
+ code , stdout , stderr = run_command (
134
+ ['parrec2nii' , fname ], check_code = False )
111
135
assert_equal (code , 1 )
112
- cmd .append ('--overwrite' )
113
- run_command (cmd )
114
- img = load (out_froot )
115
- assert_data_similar (img .get_data (), eg_dict )
116
- # fp scaling
117
- run_command (['parrec2nii' , '--scaling=fp' , '--overwrite' , fname ])
136
+ # Default scaling is dv
137
+ pr_img = load (fname )
138
+ base_cmd = ['parrec2nii' , '--overwrite' , fname ]
139
+ check_conversion (base_cmd , pr_img .get_data (), out_froot )
140
+ check_conversion (base_cmd + ['--scaling=dv' ],
141
+ pr_img .get_data (),
142
+ out_froot )
143
+ # fp
118
144
pr_img = load (fname , scaling = 'fp' )
119
- img = load (out_froot )
120
- assert_true (np .allclose (img .get_data (), pr_img .get_data ()))
145
+ check_conversion (base_cmd + ['--scaling=fp' ],
146
+ pr_img .get_data (),
147
+ out_froot )
121
148
# no scaling
122
- run_command ([ 'parrec2nii' , ' --scaling=off', '--overwrite' , fname ])
123
- img = load ( out_froot )
124
- assert_almost_equal ( img . get_data (), pr_img . dataobj . get_unscaled () )
149
+ check_conversion ( base_cmd + [ ' --scaling=off'],
150
+ pr_img . dataobj . get_unscaled (),
151
+ out_froot )
125
152
126
153
127
154
@script_test
0 commit comments