otb merge requestshttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests2020-12-02T16:49:37Zhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/752Fix output image from orthorectification having no projection2020-12-02T16:49:37ZCédric TraizetFix output image from orthorectification having no projection#### Summary
After !707, the projection is written as a string in the `ImageMetadata` object attribute of `otb::Image` (and `otb::VectorImage`). This metadata is copied from source to destination in pipelines. However when a new image i...#### Summary
After !707, the projection is written as a string in the `ImageMetadata` object attribute of `otb::Image` (and `otb::VectorImage`). This metadata is copied from source to destination in pipelines. However when a new image is created with another projection, the projection should be manually written (it was already the case with the old metadata framework, with another API). This is the case in the `GenericRSTransformFilter`, used in `Orthorectifiaction`.
This MR set the projection in the output of `GenericRSTransformFilter`.
#### Implementation Details
<!---
##### Classes and files
Give an overview of the implementation: main changes made to classes, files and modules. Do not paste complete diff, as it is available in the merge request already.
-->
<!---
##### Applications
Describe any changes made to existing applications, or new applications that have been added.
-->
##### Tests
The `GenericRSResampleImageFilter` test has been updated to verify that the projection of the output image is correct. This is done by comparing a otb::SpatialReference initialized from the output projection string of the output to the otb::SpatialReference corresponding to the required UTM and hemisphere zone (input of the test). The comparison invokes the `IsSame` method of OGRSpatialReference on the two projections
This test is used with different inputs :
```
prTvOrthoRectification_qb-1_DEMGTIFF
prTvOrthoRectification_qb-1_noDEM
prTvOrthoRectification_qb-1_DEMSRTM
prTvOrthoRectification_rapideye-1_DEMGTIFF
prTvOrthoRectification_sentinel1_noDEM
prTvOrthoRectification_rapideye-1_DEMSRTM
prTvOrthoRectification_pleiades-1_noDEM
prTvOrthoRectification_rapideye-1_noDEM
prTvOrthoRectification_wv2-1_noDEM
prTvOrthoRectification_wv2-1_DEMGTIFF
prTvOrthoRectification_sentinel1_DEMSRTM
prTvOrthoRectification_sentinel1_DEMGTIFF
prTvOrthoRectification_wv2-1_DEMSRTM
prTvOrthoRectification_pleiades-1_DEMGTIFF
prTvOrthoRectification_pleiades-1_DEMSRTM
prTvOrthoRectification_ikonos-1_DEMSRTM
prTvOrthoRectification_ikonos-1_DEMGTIFF
prTvOrthoRectification_spot6-1_noDEM
prTvOrthoRectification_ikonos-1_noDEM
prTvOrthoRectification_spot6-1_DEMGTIFF
prTvOrthoRectification_spot6-1_DEMSRTM
```
<!---
##### Documentation
List or link documentation modifications that were made (doxygen, example, Software Guide, application documentation, CookBook).
-->
#### Additional notes
<!--- List remaining open issues if any, and additional notes. -->
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: 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 commit8.0.0Cédric TraizetCédric Traizethttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/495Fix BandMathX documentation2019-06-07T12:25:42ZCédric TraizetFix BandMathX documentation#### Summary
This MR replaces min and max by vmin and vmax in the BandMathX application documentation
#### Rationale
in BandMathX syntax, `min(arg1, arg2, ..., argN)` return the minimum value in scalar list `[arg1,arg2, ... argN...#### Summary
This MR replaces min and max by vmin and vmax in the BandMathX application documentation
#### Rationale
in BandMathX syntax, `min(arg1, arg2, ..., argN)` return the minimum value in scalar list `[arg1,arg2, ... argN]` while `vmin(arg)` return the minimum value of the vector `arg` (this vector can be a neighborhood, e.g. `vmin(im1b1N5x5)` or a pixel e.g. `vmin(im1)`).
#### Additional notes
Maybe we should refactor the `BandMathX` documentation. Today we have the application [documentation](https://www.orfeo-toolbox.org/packages/nightly/latest/CookBook-6.7/Applications/app_BandMathX.html) which is quite long but non exhaustive, and the `About BandMathX` C++ [section](https://www.orfeo-toolbox.org/packages/nightly/latest/CookBook-6.7/C++/AboutBandMathX.html), with more details about the syntax of BandMathX expressions and C++ examples of the
`BandMathImageFilterX`. I think we should remove this section and make a BandMathX recipe with the informations on BandMathX syntax and a few application example because:
- Most users of MuParserX are using applications
- There is already an example using the C++ filter
- in most case, in the C++ API, using functor filters instead of BandMath filters is more efficient: the only advantage of BandMathX is to provide the expression at run time.
This can be done in this MR or another.
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: 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 commit7.0.0Cédric TraizetCédric Traizethttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/411DOC: remove the OTB-Data-Examples step from how-to-release2019-09-19T07:18:51ZGuillaume PaseroDOC: remove the OTB-Data-Examples step from how-to-releaseThe nightly script generating the archive has been already updated.
Last step was the related action in the how-to-release.
Closes #1847The nightly script generating the archive has been already updated.
Last step was the related action in the how-to-release.
Closes #18477.0.0Guillaume PaseroGuillaume Paserohttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/324Remove convert app2019-09-19T07:28:49ZCédric TraizetRemove convert app#### Summary
This merge request removes the `Convert` application.
#### Rationale
`Convert` is deprecated and will be removed in OTB 7.0.
#### Implementation Details
The following modifications have been made :
* The `...#### Summary
This merge request removes the `Convert` application.
#### Rationale
`Convert` is deprecated and will be removed in OTB 7.0.
#### Implementation Details
The following modifications have been made :
* The `Convert` application has been removed from the `AppImageUtils/app` CMakeLists and the `otbConvert.cxx` has been deleted
* The extended filename tests `apTuUtConvertExtendedFilename_writer` and `apTvUtConvertExtendedFilename_readerGEOM` now use `DynamicConvert` instead of `Convert`. They have been renamed in `apTuUtDynamicConvertExtendedFilename_writer` and `apTvUtDynamicConvertExtendedFilename_readerGEOM`. The baseline is unchanged. Note that those are the only test in OTB using the extended filename mechanism in an application.
* The other tests using `Convert` have been removed, along with their baseline.
* `Convert` was used in the cookbook as an example application (for `otbcli`, `otbgui` and extended filenames). It has been replaced by `DynamicConvert`.
* Convert has been removed from the `SetDocSeeAlso` method of applications `ConcatenateImages` and `DynamicConvert`
* The python test `Bug440` has been removed, as it tests the same thing as, for instance, PythonRescaleTest. This test was using the `Convert` application.
#### Additional notes
`Convert` is replaced by `DynamicConvert` (https://www.orfeo-toolbox.org/CookBook/Applications/app_DynamicConvert.html)
#### Copyright
The copyright owner is CNES and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: 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 Agreement7.0.0Cédric TraizetCédric Traizet