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

6D-Volume Downsampling: implemented in the algorithm factory

parent 6d96227a
No related branches found
No related tags found
No related merge requests found
......@@ -11,8 +11,11 @@ function par_rec = gtRecGrainsDefaultParameters(algo)
'options', []);
case {'6DL1', '6DTV', '6DTVL1'}
par_6D_rec_opts = struct( ...
'grid_edge', 7, 'super_sampling', 1, 'num_interp', 1, ...
'lambda', 1e-1, 'volume_downscaling', 1);
par_rec = struct(...
'algorithm', upper(algo), 'num_iter', 50, 'list', [], ...
'options', struct('grid_edge', 7, 'super_sampling', 1, 'num_interp', 1, 'lambda', 1e-3) );
'options', par_6D_rec_opts);
end
end
......@@ -6,6 +6,8 @@ classdef Gt6DReconstructionAlgorithmFactory < handle
det_index = 1;
volume_downscaling = 1;
parameters;
end
......@@ -211,6 +213,22 @@ classdef Gt6DReconstructionAlgorithmFactory < handle
volume_size = self.getVolSize(blob_size, self.vol_type);
end
if (self.volume_downscaling > 1)
volume_size = round(volume_size / self.volume_downscaling);
for ii = 1:num_geoms
geometries{ii}(:, 4:12) = geometries{ii}(:, 4:12) / self.volume_downscaling;
end
if (~isempty(geometries_ss))
for ii = 1:num_geoms
geom_ss = geometries_ss{ii};
for ii_ss = 1:numel(geom_ss)
geom_ss{ii_ss}(:, 4:12) = geometries{ii}(:, 4:12) / self.volume_downscaling;
end
geometries_ss{ii} = geom_ss;
end
end
end
fprintf('Creating initial volumes: ')
c = tic();
zero_volumes = cell(num_geoms, 1);
......@@ -227,6 +245,7 @@ classdef Gt6DReconstructionAlgorithmFactory < handle
'ss_geometries', geometries_ss, ...
'ss_offsets', offsets_ss, ...
'use_astra_projectors', true, ...
'volume_ss', self.volume_downscaling, ...
varargin{:} );
end
end
......
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