()
| 152 | print('the segmentation has been saved to {0:}'.format(save_name)) |
| 153 | |
| 154 | def test_interactive_max_flow3d(): |
| 155 | img_name = "../data/2013_12_1_img.nii.gz" |
| 156 | prob_name = "../data/2013_12_1_init.nii.gz" |
| 157 | seed_name = "../data/2013_12_1_scrb.nii.gz" |
| 158 | save_name = "../data/seg_interact.nii.gz" |
| 159 | img_obj = sitk.ReadImage(img_name) |
| 160 | img_data = sitk.GetArrayFromImage(img_obj) |
| 161 | img_data = np.asarray(img_data, np.float32) |
| 162 | prob_obj = sitk.ReadImage(prob_name) |
| 163 | prob_data = sitk.GetArrayFromImage(prob_obj) |
| 164 | prob_data = np.asarray(prob_data, np.float32) |
| 165 | |
| 166 | fP = 0.5 + (prob_data - 0.5) * 0.8 |
| 167 | bP = 1.0 - fP |
| 168 | Prob = np.asarray([bP, fP]) |
| 169 | Prob = np.transpose(Prob, [1, 2, 3, 0]) |
| 170 | |
| 171 | seed_obj = sitk.ReadImage(seed_name) |
| 172 | seed_data = sitk.GetArrayFromImage(seed_obj) |
| 173 | Seed = np.asarray([seed_data == 2, seed_data == 3], np.uint8) |
| 174 | Seed = np.transpose(Seed, [1, 2, 3, 0]) |
| 175 | |
| 176 | lamda = 10.0 |
| 177 | sigma = 15.0 |
| 178 | param = (lamda, sigma) |
| 179 | lab = interactive_maxflow3d(img_data, Prob, Seed, param) |
| 180 | lab_obj = sitk.GetImageFromArray(lab) |
| 181 | lab_obj.CopyInformation(img_obj) |
| 182 | sitk.WriteImage(lab_obj, save_name) |
| 183 | print('the segmentation has been saved to {0:}'.format(save_name)) |
| 184 | |
| 185 | if __name__ == '__main__': |
| 186 | print("example list") |
no test coverage detected