Smoothing application enhancement
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 thantype.gaussian.maxerror - new parameter
type.gaussian.maxwidth: Set the kernel to be no wider than maxwidth pixels, even iftype.gaussian.maxerrordemands 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_InXMLnow depends on theapTvUtSmoothingTest_OutXMLtest, instead of using a stored baseline. - The
apTvUtSmoothingTesthas been removed, there is no need to test 3 times themeanmode 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 -ion latest changes and commit
Edited by Cédric Traizet