Code Duplication    Length = 23-23 lines in 2 locations

savu/plugins/centering/centering360.py 1 location

@@ 354-376 (lines=23) @@
351
            cor = ncol - overlap / 2.0 - 1.0
352
        return [np.array([cor]), np.array([cor])]
353
354
    def post_process(self):
355
        in_datasets, out_datasets = self.get_datasets()
356
        cor_prev = out_datasets[0].data[...]
357
        cor_broad = out_datasets[1].data[...]
358
        cor_broad[:] = np.median(np.squeeze(cor_prev))
359
        self.cor_for_executive_summary = np.median(cor_broad[:])
360
        if self.broadcast_method == 'mean':
361
            cor_broad[:] = np.mean(np.squeeze(cor_prev))
362
            self.cor_for_executive_summary = np.mean(cor_broad[:])
363
        if (self.broadcast_method == 'linear_fit') and (len(cor_prev) > 1):
364
            afact, bfact = np.polyfit(self.plugin_prev, cor_prev[:, 0], 1)
365
            list_cor = self.origin_prev * afact + bfact
366
            cor_broad[:, 0] = list_cor
367
            self.cor_for_executive_summary = cor_broad[:]
368
        if (self.broadcast_method == 'nearest') and (len(cor_prev) > 1):
369
            for i, pos in enumerate(self.origin_prev):
370
                minpos = np.argmin(np.abs(pos - self.plugin_prev))
371
                cor_broad[i, 0] = cor_prev[minpos, 0]
372
            self.cor_for_executive_summary = cor_broad[:]
373
        out_datasets[1].data[:] = cor_broad[:]
374
        self.populate_meta_data('cor_preview', np.squeeze(cor_prev))
375
        self.populate_meta_data('centre_of_rotation',
376
                                out_datasets[1].data[:].squeeze(axis=1))
377
378
    def populate_meta_data(self, key, value):
379
        datasets = self.parameters['datasets_to_populate']

savu/plugins/centering/vo_centering.py 1 location

@@ 234-256 (lines=23) @@
231
            self.search_step, self.ratio, self.drop)
232
        return [np.array([cor]), np.array([cor])]
233
234
    def post_process(self):
235
        in_datasets, out_datasets = self.get_datasets()
236
        cor_prev = out_datasets[0].data[...]
237
        cor_broad = out_datasets[1].data[...]
238
        cor_broad[:] = np.median(np.squeeze(cor_prev))
239
        self.cor_for_executive_summary = np.median(cor_broad[:])
240
        if self.broadcast_method == 'mean':
241
            cor_broad[:] = np.mean(np.squeeze(cor_prev))
242
            self.cor_for_executive_summary = np.mean(cor_broad[:])
243
        if (self.broadcast_method == 'linear_fit') and (len(cor_prev) > 1):
244
            afact, bfact = np.polyfit(self.plugin_prev, cor_prev[:, 0], 1)
245
            list_cor = self.origin_prev * afact + bfact
246
            cor_broad[:, 0] = list_cor
247
            self.cor_for_executive_summary = cor_broad[:]
248
        if (self.broadcast_method == 'nearest') and (len(cor_prev) > 1):
249
            for i, pos in enumerate(self.origin_prev):
250
                minpos = np.argmin(np.abs(pos - self.plugin_prev))
251
                cor_broad[i, 0] = cor_prev[minpos, 0]
252
            self.cor_for_executive_summary = cor_broad[:]
253
        out_datasets[1].data[:] = cor_broad[:]
254
        self.populate_meta_data('cor_preview', np.squeeze(cor_prev))
255
        self.populate_meta_data('centre_of_rotation',
256
                                out_datasets[1].data[:].squeeze(axis=1))
257
258
    def populate_meta_data(self, key, value):
259
        datasets = self.parameters['datasets_to_populate']