def setUp(self): wd = os.path.dirname(os.path.abspath(__file__)) self.data_dir = os.path.join(wd, 'test_data', 'images') self.mask_dir = os.path.join(wd, 'test_data', 'masks') self.img = io.open_nii(os.path.join(self.data_dir, 'test.nii.gz')) self.brain_mask = io.open_nii( os.path.join(self.mask_dir, 'mask.nii.gz')) self.template_mask = os.path.join(self.mask_dir, 'mask.nii.gz') self.wm_mask = fcm.find_wm_mask(self.img, self.brain_mask) self.norm_val = 1000
def process(image_fn, brain_mask_fn, wm_mask_fn, output_dir, args, logger): img = io.open_nii(image_fn) dirname, base, _ = io.split_filename(image_fn) if output_dir is not None: dirname = output_dir if not os.path.exists(dirname): logger.info('Making output directory: {}'.format(dirname)) os.mkdir(dirname) if brain_mask_fn is not None: mask = io.open_nii(brain_mask_fn) wm_mask = fcm.find_wm_mask(img, mask) outfile = os.path.join(dirname, base + '_wmmask.nii.gz') io.save_nii(wm_mask, outfile, is_nii=True) if wm_mask_fn is not None: wm_mask = io.open_nii(wm_mask_fn) normalized = fcm.fcm_normalize(img, wm_mask, args.norm_value) outfile = os.path.join(dirname, base + '_fcm.nii.gz') logger.info('Normalized image saved: {}'.format(outfile)) io.save_nii(normalized, outfile, is_nii=True)