def atest_eval_sliver_matrics(self): import volumetry_evaluation as ve vol1 = np.zeros([20, 21, 22], dtype=np.int8) vol1[10:15, 10:15, 10:15] = 1 vol2 = np.zeros([20, 21, 22], dtype=np.int8) vol2[10:15, 10:16, 10:15] = 1 eval1 = ve.compare_volumes(vol1, vol2, [1, 1, 1]) print eval1
def sliver_compare_with_other_volume(self, segmentation_datap): """ Compares actual Lisa data with other which are given by segmentation_datap. That means segmentation_datap = { 'segmentation': 3d np.array, 'crinfo': information about crop (optional) } """ # if there is no segmentation, data can be stored in data3d. It is the # way how are data stored in sliver. if 'segmentation' in segmentation_datap.keys(): segm_key = 'segmentation' else: segm_key = 'data3d' if 'crinfo' in segmentation_datap.keys(): data3d_segmentation = qmisc.uncrop( segmentation_datap[segm_key], segmentation_datap['crinfo'], self.orig_shape) else: data3d_segmentation = segmentation_datap[segm_key] pass # now we can uncrop actual Lisa data data3d_segmentation_actual = qmisc.uncrop( self.segmentation, self.crinfo, self.orig_shape) evaluation = volumetry_evaluation.compare_volumes( data3d_segmentation_actual, data3d_segmentation, self.voxelsize_mm ) score = volumetry_evaluation.sliver_score_one_couple(evaluation) segdiff = qmisc.crop( ((data3d_segmentation) - data3d_segmentation_actual), self.crinfo) return evaluation, score, segdiff