def test_labels1(): img = load_image(funcfile) parcelmap = fromarray(np.asarray(img[0]), 'kji', 'zyx') parcelmap = (np.asarray(parcelmap) * 100).astype(np.int32) v = 0 for i, d in fmri_generator(img, parcels(parcelmap)): v += d.shape[1] assert_equal(v, parcelmap.size)
def test_parcels1(): rho = gimg parcelmap = np.asarray(rho).astype(np.int32) test = np.zeros(parcelmap.shape) v = 0 for i, d in data_generator(test, parcels(parcelmap)): v += d.shape[0] yield assert_equal, v, np.product(test.shape)
def test_parcels3(): rho = gimg[0] parcelmap = np.asarray(rho).astype(np.int32) labels = np.unique(parcelmap) test = np.zeros(rho.shape) v = 0 for i, d in data_generator(test, parcels(parcelmap, labels=labels)): v += d.shape[0] yield assert_equal, v, np.product(test.shape)
def test_labels1(): img = load_image(funcfile) data = img.get_data() parcelmap = Image(img[0].get_data(), AfT('kji', 'zyx', np.eye(4))) parcelmap = (parcelmap.get_data() * 100).astype(np.int32) v = 0 for i, d in axis0_generator(data, parcels(parcelmap)): v += d.shape[1] assert_equal(v, parcelmap.size)
def test_labels1(): img = load_image(funcfile) data = img.get_data() parcelmap = Image(img[0].get_data(), AfT("kji", "zyx", np.eye(4))) parcelmap = (parcelmap.get_data() * 100).astype(np.int32) v = 0 for i, d in axis0_generator(data, parcels(parcelmap)): v += d.shape[1] assert_equal(v, parcelmap.size)
def execute(self): iterable = parcels(self.rho, exclude=[np.inf]) def model_params(i): return (self.rho.get_data()[i].mean(), ) # Generates indexer, data, model m = model_generator(self.formula, self.data, self.volume_start_times, iterable=iterable, model_type=ARModel, model_params=model_params) # Generates indexer, data, 2D results r = results_generator(m) def reshape(i, x): """ To write output, arrays have to be reshaped -- this function does the appropriate reshaping for the two passes of fMRIstat. These passes are: i) 'slices through the z-axis' ii) 'parcels of approximately constant AR1 coefficient' """ if len(x.shape) == 2: # 2D imput matrix if type(i) is type(1): # integer indexing # reshape to ND (where N is probably 4) x.shape = (x.shape[0], ) + self.fmri_image[0].shape[1:] # Convert lists to tuples, put anything else into a tuple if type(i) not in [type([]), type(())]: i = (i, ) else: i = tuple(i) # Add : to indexing i = (slice(None, None, None), ) + tuple(i) else: # not 2D if type(i) is type(1): # integer indexing x.shape = self.fmri_image[0].shape[1:] return i, x # Put results pulled from results generator r, into outputs o = generate_output(self.outputs, r, reshape=reshape)
def execute(self): iterable = parcels(self.rho, exclude=[np.inf]) def model_params(i): return (np.asarray(self.rho)[i].mean(),) # Generates indexer, data, model m = model_generator(self.formula, self.data, self.volume_start_times, iterable=iterable, model_type=ARModel, model_params=model_params) # Generates indexer, data, 2D results r = results_generator(m) def reshape(i, x): """ To write output, arrays have to be reshaped -- this function does the appropriate reshaping for the two passes of fMRIstat. These passes are: i) 'slices through the z-axis' ii) 'parcels of approximately constant AR1 coefficient' """ if len(x.shape) == 2: # 2D imput matrix if type(i) is type(1): # integer indexing # reshape to ND (where N is probably 4) x.shape = (x.shape[0],) + self.fmri_image[0].shape[1:] # Convert lists to tuples, put anything else into a tuple if type(i) not in [type([]), type(())]: i = (i,) else: i = tuple(i) # Add : to indexing i = (slice(None,None,None),) + tuple(i) else: # not 2D if type(i) is type(1): # integer indexing x.shape = self.fmri_image[0].shape[1:] return i, x # Put results pulled from results generator r, into outputs o = generate_output(self.outputs, r, reshape=reshape)
def execute(self): iterable = parcels(self.rho, exclude=[np.inf]) def model_params(i): return (np.asarray(self.rho)[i].mean(),) m = model_generator(self.formula, self.data, self.volume_start_times, iterable=iterable, model_type=ARModel, model_params=model_params) r = results_generator(m) def reshape(i, x): """ To write output, arrays have to be reshaped -- this function does the appropriate reshaping for the two passes of fMRIstat. These passes are: i) 'slices through the z-axis' ii) 'parcels of approximately constant AR1 coefficient' """ if len(x.shape) == 2: if type(i) is type(1): x.shape = (x.shape[0],) + self.fmri_image[0].shape[1:] if type(i) not in [type([]), type(())]: i = (i,) else: i = tuple(i) i = (slice(None,None,None),) + tuple(i) else: if type(i) is type(1): x.shape = self.fmri_image[0].shape[1:] return i, x o = generate_output(self.outputs, r, reshape=reshape)