Skip to content
Snippets Groups Projects
Commit 3b4cf470 authored by Nicola Vigano's avatar Nicola Vigano
Browse files

6D-reconstruction: added few more statistics

parent c33aad56
No related branches found
No related tags found
No related merge requests found
......@@ -43,6 +43,8 @@ classdef Gt6DBlobReconstructor < Gt6DVolumeToBlobProjector
self.statistics.add_task('cp_dual_update_l1', 'CP Dual variable (l1) update');
self.statistics.add_task('cp_dual_update_tv', 'CP Dual variable (TV) update');
self.statistics.add_task_partial('cp_dual_update_tv', 'cp_dual_tv_reduction', 'Volumes reduction');
self.statistics.add_task_partial('cp_dual_update_tv', 'cp_dual_tv_gradient', 'Gradient');
self.statistics.add_task_partial('cp_dual_update_tv', 'cp_dual_tv_divergence', 'Divergence');
self.statistics.add_task('cp_dual_update_ODF', 'CP Dual variable (ODF) update');
self.statistics.add_task_partial('cp_dual_update_ODF', 'cp_dual_ODF_compute', 'Compute Reconstructed ODF');
self.statistics.add_task('cp_primal_update', 'CP Primal variable update');
......@@ -304,7 +306,9 @@ classdef Gt6DBlobReconstructor < Gt6DVolumeToBlobProjector
sES = sigma * gtMathsSumCellVolumes(new_enh_sol);
self.statistics.add_timestamp(toc(c), 'cp_dual_update_tv', 'cp_dual_tv_reduction');
c = tic();
dsES = gtMathsGradient(sES);
self.statistics.add_timestamp(toc(c), 'cp_dual_update_tv', 'cp_dual_tv_gradient');
if (self.algo_ops_c_functions)
q = gt6DUpdateDualTV_c(q, dsES, lambda, self.num_threads);
......@@ -315,7 +319,9 @@ classdef Gt6DBlobReconstructor < Gt6DVolumeToBlobProjector
end
end
c = tic();
mdivq = -gtMathsDivergence(q);
self.statistics.add_timestamp(toc(c), 'cp_dual_update_tv', 'cp_dual_tv_divergence');
end
function p = update_dual_detector(self, p, proj_bls, sigma, sigma_1)
......@@ -360,8 +366,9 @@ classdef Gt6DBlobReconstructor < Gt6DVolumeToBlobProjector
function [curr_sol, curr_enh_sol, app_time] = update_primal(self, curr_sol, curr_enh_sol, corr_tomo, corr_l1, tau)
c = tic();
if (self.algo_ops_c_functions)
% We actually re-use the same allocated volumes, saving time and
% reducing problems with matlab's garbage collection
% We actually re-use the same allocated volumes, saving
% time and reducing problems with matlab's garbage
% collection
[curr_sol, curr_enh_sol] = gt6DUpdatePrimal_c(curr_sol, curr_enh_sol, corr_tomo, corr_l1, tau, self.num_threads);
else
theta = 1;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment