def test_sd_from_ball(): dom = domain_from_array(np.ones((10, 10))) radii = np.array([2, 2, 2]) positions = np.array([[3, 3], [3, 7], [7, 7]]) subdomain = subdomain_from_balls(dom, positions, radii) assert subdomain.k == 3 assert (subdomain.size == np.array([9, 9, 9])).all()
# paths data_dir = os.path.expanduser(os.path.join('~', '.nipy', 'tests', 'data')) input_image = os.path.join(data_dir,'spmT_0029.nii.gz') mask_image = os.path.join(data_dir,'mask.nii.gz') #get_data_light.get_it() # write dir swd = tempfile.mkdtemp() # ----------------------------------------------------- # example 1: create the ROI froma a given position # ----------------------------------------------------- position = np.array([[0, 0, 0]]) domain = grid_domain_from_image(mask_image) roi = mroi.subdomain_from_balls(domain, position, np.array([5.0])) roi_domain = domain.mask(roi.label>-1) roi_domain.to_image(os.path.join(swd, "myroi.nii")) print 'Wrote an ROI mask image in %s' %os.path.join(swd, "myroi.nii") # fixme: pot roi feature ... # ---------------------------------------------------- # ---- example 2: create ROIs from a blob image ------ # ---------------------------------------------------- # --- 2.a create the blob image # parameters threshold = 3.0 # blob-forming threshold smin = 5 # size threshold on bblobs
contrast_image = Nifti1Image(zmap, mask.get_affine()) # if you want to save the contrast as an image # contrast_path = op.join(swd, 'zmap.nii') # save(contrast_image, contrast_path) ######################################## # Create ROIs ######################################## positions = np.array([[60, -30, 5], [50, 27, 5]]) # in mm (here in the MNI space) radii = np.array([8, 6]) domain = grid_domain_from_image(mask) my_roi = mroi.subdomain_from_balls(domain, positions, radii) # to save an image of the ROIs my_roi.to_image(op.join(swd, "roi.nii")) # exact the time courses with ROIs my_roi.make_feature("signal", fmri_data.get_data()[mask.get_data() > 0]) # ROI average time courses avg_signal = my_roi.representative_feature("signal") my_roi.set_roi_feature("signal", avg_signal) # roi-level contrast average my_roi.make_feature("contrast", contrast_image.get_data()[mask.get_data() > 0]) my_roi.set_roi_feature("contrast", my_roi.representative_feature("contrast"))