Skip to content

Implementing an interface for sensor models and the RPC model

Julien Osman requested to merge 2040-RPC_model into develop

Summary

Implementation of the new sensor model mechanism, together with the new RPC model based on GDAL.

Rationale

This Merge Request is part of the Remove OSSIM story (#1506 (closed)). It addresses the definition of new classes for sensor models, and focuses on the first 2 points of #2040 (closed): implementing an interface for sensor models and implementing the RPC model.

Implementation Details

Classes and files
  • Create a new GDAL adapter to access RPC functionalities
  • Remove old Sensor Model classes based on OSSIM's Keywordlist
  • Implement new Sensor Model classes based on ImageMetadata class
  • Implement RPC model for forward and inverse transformations
  • Refactor the class otb::GenericRSTransform so that it uses ImageMetadata instead of ImageKeywordlist
  • Update class otb::DEMHandler with the capability to put the DEM to memory (MEM), so the RPC model can use it.
  • Update tests
RPC Solver (5pts)

Ossim provide an algorithm to generate a RPC model from a set of GCPs. This class is wrapped in OTB with the OssimRPCSolverAdapter class. There is no equivalent functionality in GDAL, and a new class RPCSolver has been developed. It uses the same algorithm as Ossim.

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