Skip to content

Smoothing application enhancement

Cédric Traizet requested to merge smoothing_app_enhancement into develop

Summary

Some modifications of the Smoothing application. In particular the Gaussian mode now has two additional parameters : type.gaussian.maxerror and type.gaussian.maxwidth. These parameters were available in the ITK filter, but were not exposed in the application

Closes #1961 (closed)

Implementation Details

Applications

Smoothing :

  • new parameter type.gaussian.maxerror : The algorithm will size the discrete kernel so that the error resulting from truncation of the kernel is no greater than type.gaussian.maxerror
  • new parameter type.gaussian.maxwidth : Set the kernel to be no wider than maxwidth pixels, even if type.gaussian.maxerror demands it.
  • the radius parameter has been renamed into stdev (because this is what it is, see the TODO in code)
  • Some modernization (auto, RegisterPipeline())

FastNLMeans :

  • Some modernization (auto, RegisterPipeline())
Tests

The tests for the Smoothing application have been updated:

  • New test for the Gaussian mode (there was no test for this mode)
  • New test for the Anisotropic mode (there was no test for this mode). Note that I needed to set a tolerance value for this test (1e-6), because the result were different on windows 8 (x86). The differences are probably caused by numerical error, and we can't do much about it anyway because we are using an ITK filter.
  • The apTvUtSmoothingTest_InXML now depends on the apTvUtSmoothingTest_OutXML test, instead of using a stored baseline.
  • The apTvUtSmoothingTest has been removed, there is no need to test 3 times the mean mode with the same parameters. (see InXML and OUTXML tests).

Copyright

The copyright owner is CNES and has signed the ORFEO ToolBox Contributor License Agreement.


Check before merging:

  • All discussions are resolved
  • At least 2 👍 votes from core developers, no 👎 vote.
  • The feature branch is (reasonably) up-to-date with the base branch
  • Dashboard is green
  • Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
  • Optionally, run git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i on latest changes and commit
Edited by Cédric Traizet

Merge request reports