Skip to content

Clean-up of unused or low quality modules and filters

Julien Michel requested to merge cleanup into develop

Summary

Closes #1763 (closed) Closes #1765 (closed)

This MR delete the following Modules: DisplacementField, RCC8, UrbanArea, RoadExtraction, ObjectDetection, MorphologicalPyramid, SeamCarving

It also removes the Dempster-Shafer based classification of vectors framework, an orphaned class for GIS connexion and the OrthoRectificationFilter.

Each removal is made in a separate commit, so that it will be easier to revert if needed.

Rationale

Those modules and code have been removed because they are not really used or useful. In #1765 (closed) I suggested to move code to remote modules, but this does not make any sense: if we are not maintaining them, they will break at some point. If someone need them, they are up and working until OTB 6.6.1.

The overall goal is to make OTB lighter to build, test and package. Less classes also means a clearer API for users.

Here is the rationale for each change:

  • RCC8 and MorphologicalPyramid is the code for the following paper. It does not perform well enough for any practical application.
  • DisplacementField was merely a proof of concept. It has no real practical application.
  • RoadExtractionis the code for the following paper. It does not perform well enough for any practical application.
  • UrbanArea: Module designed back before Pleiades launch. It does not perform well enough for any practical application.
  • ObjectDetection is the code for the following paper. It does not perform well enough for any practical application (and today the state of the art for object detection is using deep learning)
  • SeamCarving is an implementation of the following paper. To my best knowledge, there is no application to this algorithm in remote sensing field.
  • Dempster-Shafer based classification of vectors framework is an implementation of the following phd work. It does not perform well enough for any practical application.
  • The GIS connexion class was orphan. If we were to connect to a GIS database, we would rely on Gdal backend.
  • The OrthoRectificationFilter was deriving from GenericRSResampleImageFilter without adding any additional feature. The latter is now used throughout OTB.

Implementation Details

All classes, CMake Files, examples, baselines and input data have been removed.

Additional notes

There are a few more modules that we may want to remove:

  • LandSatClassifier: @jinglada suggested to remove it, but I am not sure.

Any other suggestions ?

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
Edited by Julien Michel

Merge request reports