computed-axial-lithography / CAL-software-Matlab

Software to support volumetric additive manufacturing by tomographic reconstruction (education, research and not-for-profit use)
GNU General Public License v3.0
59 stars 14 forks source link

Zero dose constraint/Projection masking for 2D targets #11

Closed jttoombs closed 3 years ago

jttoombs commented 3 years ago

This feature allows the user to specify a region where the reconstruction dose should be identically zero. This equates to clamping the regions in projection space to zero. The user can specify that masking is desired or specify the region directly in object space.

Specifying desire to apply a zero dose constraint:

At the beginning of optimization, a figure showing the target and the prompt "Select fill locations, then press enter" appears. The user should use their mouse to select inside regions where the zero dose constraint should be applied. Then the code will autofill the regions, which means they must be inside closed boundaries.

proj_params.zero_constraint = true;

Specifying zero constraint region directly:

The zero constraint region should be a 2D logical matrix where elements that should remain at zero are equal to 1 or true

proj_params.zero_constraint = 
logical([0, 0, 0;
      0, 1, 0;
      0, 0, 0;]);