Implements Deburst algorithms
Summary
Part of #2160 (closed)
This merge request implements a date time framework and the deburst
, burstExtraction
and deburstAndConcatenate
algorithms in the otb::SarSensorModel
class. The corresponding applications now use SarSensorModel
instead of SarSensorModelAdapter
(the adapter of ossimSarSensorModel in ossimPlugins).
OTB Date Time framework
A new date time framework has been implemented to replace the functionalities provided by ossimTimeUtilities
from ossimPlugins. The framework adds two classes:
- otb::MetaData::TimePoint that represents a point in time
- otb::MetaData::Duration that represents a duration
These classes are adapters built around boost::posix_time::ptime and boost::posix_time::time_duration respectively. The classes are compiled with a nanosecond precision to match the precision requirement of SAR algorithms. The API also provide utility methods:
- arithmetic: addition and difference of two durations, product and ratio of a duration by a scalar, ratio of two duration, difference between two dates, sum of a date and a duration.
- io: operators
<<
and>>
based onboost::posix_time
io functionalities
Deburst algorithms
The code has been adapted from ossim plugins, the main differences between the two implementations is the use of otb::ImageMetadata
instead of ossim keywordlists, and the use of the new date time framework instead of ossim time utilites.
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