def build_detection_stack_image(ctx, preprocess=True, smooth=False): stack_mgr = imgutils.StackedImageManager() stack_mgr_snr = imgutils.StackedImageManager() stack_mgr_count = imgutils.StackedImageManager() for file in ctx.files: img = ctx.open_file(file) # post processing and alignwill happens there results = ctx.detection(img) stack_mgr.add(img) stack_mgr_file_snr = imgutils.StackedImageManager() stack_mgr_file_count = imgutils.StackedImageManager() for segments in results: img = segments.get_img() # img.data = img.data / segments.get_rms_noise() # img.data[segments.get_labels() == 0] = 0 stack_mgr_file_snr.add(img, action='mean') img.data = (segments.get_labels() > 0).astype(np.float) stack_mgr_file_count.add(img, action='max') stack_mgr_snr.add(stack_mgr_file_snr.get(), action='add') stack_mgr_count.add(stack_mgr_file_count.get(), action='add') stack_img = stack_mgr.get() img_snr = stack_mgr_snr.get() img_count = stack_mgr_count.get() if smooth: img_snr.data = nputils.smooth(img_snr.data, 2, mode='same') img_count.data = nputils.smooth(img_count.data, 2, mode='same') return stack_img, img_snr, img_count
def get_mean_ncc_scales(self, smooth_len=3): mean_global_ncc_scales = dict() for scale, ncc in self.get_result(): mean_global_ncc_scales[scale] = nputils.smooth(self.agg_fct( ncc, axis=0), smooth_len, mode='same') return mean_global_ncc_scales
def get_mean_ncc_scales(self, smooth_len=3): mean_global_ncc_scales = dict() for scale, ncc in self.get_result(): mean_global_ncc_scales[scale] = nputils.smooth(self.agg_fct(ncc, axis=0), smooth_len, mode='same') return mean_global_ncc_scales