Remove spatial objects module
This merge request removes the
Core/SpatialObject contains classes using the
itk::SpatialObject. In particular it contains the
otb::LineSpatialObject class inheriting from
itk::PointBasedSpatialObject that can be used to represent lines. It also contains filter to transform LineSpatialObject to binary images and vice versa.
There are different ways to represent lines and other objects in OTB, the alternatives to otb spatial objects are VectorData and the ogr geometry wrapper. The latter have several advantages over spatial object, they can take into account georeferencing, and they can be exported to shapefile via ogr drivers. Also spatial object are only used in a few class of otb:
- the hough line detection framework (in the edge module)
- the LineSpatialObjectListToRightAnglePointSetFilter (in the corner module), this filter has a vector data equivalent (vectorDataToRightAngleVectorDataFilter)
There are no otb application nor c++ examples using spatial objects.
In ITK 5, the spatial object API has changed, and we have to refactor the otb Spatial object module to make otb compatible with the new version of ITK. This is why to remove the module before the transition.
this MR removes the hough framework. I don't think anyone uses this code, but a possibility would be to create an equivalent using the ogr wrapper.
See issue #1922 (closed).
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