otb issueshttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues2024-03-20T14:29:26Zhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2372can not run pipeline.exe properly2024-03-20T14:29:26Zjiayuew1can not run pipeline.exe properlyI attempted to replicate the Pipeline.exe application based on the tutorial available at https://www.orfeo-toolbox.org/CookBook/C%2B%2B/Examples/Tutorials/Pipeline.html#pipeline-cxx. The application is designed to read an input image fil...I attempted to replicate the Pipeline.exe application based on the tutorial available at https://www.orfeo-toolbox.org/CookBook/C%2B%2B/Examples/Tutorials/Pipeline.html#pipeline-cxx. The application is designed to read an input image file, perform a simple processing pipeline, and write the result to an output image file. However, I encountered issues with setting the input and output filenames in the code.
I followed the tutorial's instructions and used the provided CMake configuration to build the application. Unfortunately, I received error messages indicating that the reader and writer filenames were not set correctly after calling SetFileName.
I performed various debugging steps, including checking file paths, verifying file existence, and updating output information. Despite these efforts, the issue persisted, and the filenames were not being set as expected.
I'm seeking assistance in refining the code to correctly set the input and output filenames, ensuring the successful execution of the OTB pipeline as demonstrated in the tutorial.
here is my pipeline.cxx
`#include "otbImage.h"
#include "otbImageFileReader.h"
#include "otbImageFileWriter.h"
#include <iostream>
#include <fstream>
#include <string>
#include "itkIndent.h"
int main(int argc, char* argv[])
{
// First, check the number of arguments
if (argc != 3)
{
std::cerr << "Usage: " << argv[0] << " <input_filename> <output_filename>" << std::endl;
return EXIT_FAILURE;
}
try
{
// Declare the image types and reader/writer types
using ImageType = otb::Image<unsigned char, 2>;
using ReaderType = otb::ImageFileReader<ImageType>;
using WriterType = otb::ImageFileWriter<ImageType>;
// Create the reader and writer objects
ReaderType::Pointer reader = ReaderType::New();
WriterType::Pointer writer = WriterType::New();
// Check if the input file exists
std::ifstream infile(argv[1]);
if (!infile.good())
{
std::cerr << "Error: Input file does not exist or is inaccessible: " << argv[1] << std::endl;
return EXIT_FAILURE;
}
infile.close();
// Output the file names for debugging
std::cout << "Input file: " << argv[1] << std::endl;
std::cout << "Output file: " << argv[2] << std::endl;
reader->SetFileName(argv[1]);
writer->SetFileName(argv[2]);
// Debugging: Check if filenames are set correctly
if (reader->GetFileName() == nullptr || std::string(reader->GetFileName()).empty())
{
std::cerr << "Error: Reader filename not set correctly after setting: " << argv[1] << std::endl;
return EXIT_FAILURE;
}
if (writer->GetFileName() == nullptr || std::string(writer->GetFileName()).empty())
{
std::cerr << "Error: Writer filename not set correctly after setting: " << argv[2] << std::endl;
return EXIT_FAILURE;
}
// Connect the reader to the writer
writer->SetInput(reader->GetOutput());
// Trigger the pipeline execution
writer->Update();
}
catch (const std::exception& e)
{
std::cerr << "An error occurred: " << e.what() << std::endl;
return EXIT_FAILURE;
}
return EXIT_SUCCESS;
}
`
and here are my outputs
`PS C:\Users\zoech\Desktop\example\build\Debug> ./Pipeline.exe "C:\Users\zoech\Downloads\OTB-Data-Examples\Examples\QB_Suburb.png" C:\Users\zoech\Downloads\OTB-Data-ExTB-Data-Examples\Examples\Outpu\output_image.png
Input file: C:\Users\zoech\Downloads\OTB-Data-Examples\Examples\QB_Suburb.png
Output file: C:\Users\zoech\Downloads\OTB-Data-ExTB-Data-Examples\Examples\Outpu\output_image.png
Error: Reader filename not set correctly after setting: C:\Users\zoech\Downloads\OTB-Data-Examples\Examples\QB_Suburb.png`
here is my CMakeLists.text
cmake_minimum_required(VERSION 3.5)
set(CMAKE_BUILD_TYPE Debug) # You can change 'Debug' to 'Release' or other build types
project(Tutorials)
find_package(OTB REQUIRED)
if(OTB_FOUND)
include(${OTB_USE_FILE})
message(STATUS "OTB_USE_FILE: ${OTB_USE_FILE}")
else(OTB_FOUND)
message(FATAL_ERROR "Cannot build OTB project without OTB. Please set OTB_DIR.")
endif(OTB_FOUND)
add_executable(HelloWorldOTB HelloWorldOTB.cxx )
target_link_libraries(HelloWorldOTB ${OTB_LIBRARIES})
add_executable(Pipeline Pipeline.cxx )
target_link_libraries(Pipeline ${OTB_LIBRARIES}).
I wonder whether is there a problem related to my OTB setuphttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2371Release 9.0.02024-03-01T15:30:31ZThibaut ROMAINRelease 9.0.0We are ready to release OTB version 9.0.0. The following steps need to be done:
## Release Candidate
### 1. Branches
* [x] **(if major or minor release)** Feature freeze: [create the new release branch](https://gitlab.orfeo-toolbox.or...We are ready to release OTB version 9.0.0. The following steps need to be done:
## Release Candidate
### 1. Branches
* [x] **(if major or minor release)** Feature freeze: [create the new release branch](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#create-release-branch)
* [ ] **(if patch release)** Work on the already existing branch `release-MAJOR-MINOR`
* [x] Make sure the version number in `CMakeLists.txt` is MAJOR.MINOR.PATCH
### 2. Housekeeping
* [x] In this story, make a list of blocking issues for the release (if any)
* [x] Update release notes (walk the GitLab MR merged history and log all improvements)
* [x] Update the date in RELEASE_NOTES.txt
* [x] Check [SonarQube](https://sonar.orfeo-toolbox.org/dashboard?id=orfeotoolbox-otb)
* [x] Run Debian [spelling](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#spelling-check) checker
* [x] Run shellcheck script from [OTB-Devutils/Scripts/](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb-devutils/blob/master/Scripts/run_shellcheck.sh)
* [x] [Update translation](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#translation-for-monteverdi-mapla) for Monteverdi and Mapla
* [x] [Sanity check the binary packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#standalone-packages-sanity-check)
* [x] Windows
* [x] Linux
* [x] Docker image
### 3. Actual release
Once all blocking issues are closed, and the previous steps are done:
* [x] [Tag the release candidate](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#release-tag)
* [x] Update GIT_TAG for all official remote modules (if needed)
### 4. Publish and plan next release
* [x] [Prepare and upload source packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#prepare-and-upload-source-packages)
* [x] [Promote staging packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#promote-staging-packages)
* [x] [Update documentation](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#update-documentation)
* [x] Cookbook
* [x] Doxygen
* [x] [Update the SuperBuild archive](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#superbuild-archive)
* [x] Release Candidate announcement on the forum
## Release
### 1. Branches
* [x] Make sure the version number in `CMakeLists.txt` is MAJOR.MINOR.PATCH
### 2. Housekeeping
* [x] In this story, make a list of blocking issues for the release (if any)
* [x] Fix compilation warnings on CI
* [x] Update release notes (walk the GitLab MR merged history and log all improvements)
* [x] Update the date in RELEASE_NOTES.txt
* [x] Check [SonarQube](https://sonar.orfeo-toolbox.org/dashboard?id=orfeotoolbox-otb)
* [x] Run Debian [spelling](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#spelling-check) checker
* [x] Run shellcheck script from [OTB-Devutils/Scripts/](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb-devutils/blob/master/Scripts/run_shellcheck.sh)
* [x] [Update translation](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#translation-for-monteverdi-mapla) for Monteverdi and Mapla
* [x] [Sanity check the binary packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#standalone-packages-sanity-check)
* [x] Windows
* [x] Linux
* [x] Docker image
### 3. Actual release
Once all blocking issues are closed, and the previous steps are done:
* [x] [Tag the release](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#release-tag)
* [x] **(if major or minor release)**: Merge the release into develop
* [x] **(if it's the latest release)**: Merge the release into master
* [x] **(if patch release)**: Backport fixes
* [x] Update GIT_TAG for all official remote modules (if needed)
### 4. Publish and plan next release
* [x] [Prepare and upload source packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#prepare-and-upload-source-packages)
* [x] [Promote staging packages](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#promote-staging-packages)
* [x] [Update documentation](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#update-documentation)
* [x] Cookbook
* [x] Doxygen
* [x] WordPress page "Home" and "Download" pages
* [x] Upload OTB source archive to [Zenodo](https://zenodo.org/) to create a unique Digital Object Identifier (DOI)
* [x] [Update the SuperBuild archive](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/wikis/Help-for-release-actions#superbuild-archive)
* [x] Release announcement
* [x] On the [forum](https://forum.orfeo-toolbox.org/)
* [x] On the [blog](https://www.orfeo-toolbox.org/blog/)
* [x] On [Twitter](https://twitter.com/orfeotoolbox)
* [x] Forward announcement to news_item@osgeo.org ([OSGeo news](https://www.osgeo.org/foundation-news/))
* [x] Remove public branches related to MR or bugfix merged before the release9.0.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2370Undefined references to boost2024-03-21T12:03:28ZLoris LizziUndefined references to boostHi, i tried to compile OTB from 8.1.2 tag and from develop branch on Ubuntu 22.04, but i've always this cmake error:
``/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbTerraSarXSarImageMetadataInterface.cxx.o: in function otb::ExtractXMLFiles...Hi, i tried to compile OTB from 8.1.2 tag and from develop branch on Ubuntu 22.04, but i've always this cmake error:
``/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbTerraSarXSarImageMetadataInterface.cxx.o: in function otb::ExtractXMLFiles::GetXMLFilesInDirectory(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) [clone .localalias]': otbTerraSarXSarImageMetadataInterface.cxx:(.text+0x29ec): undefined reference to boost::filesystem::detail::directory_iterator_construct(boost::filesystem::directory_iterator&, boost::filesystem::path const&, unsigned int, boost::filesystem::detail::directory_iterator_params*, boost::system::error_code*)'
/usr/bin/ld: otbTerraSarXSarImageMetadataInterface.cxx:(.text+0x2ade): undefined reference to `boost::filesystem::detail::path_algorithms::extension_v3(boost::filesystem::path const&)'
/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbTerraSarXSarImageMetadataInterface.cxx.o: in function `otb::ExtractXMLFiles::GetResourceFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)':
otbTerraSarXSarImageMetadataInterface.cxx:(.text+0x308e): undefined reference to `boost::filesystem::detail::path_algorithms::filename_v3(boost::filesystem::path const&)'
/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbTerraSarXSarImageMetadataInterface.cxx.o: in function `boost::iterator_range_detail::iterator_range_base<boost::filesystem::directory_iterator, boost::iterators::incrementable_traversal_tag>::~iterator_range_base()':
otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED2Ev[_ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED5Ev]+0x30): undefined reference to `boost::filesystem::detail::dir_itr_imp::~dir_itr_imp()'
/usr/bin/ld: otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED2Ev[_ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED5Ev]+0x54): undefined reference to `boost::filesystem::detail::dir_itr_imp::~dir_itr_imp()'
/usr/bin/ld: otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED2Ev[_ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED5Ev]+0x5c): undefined reference to `boost::filesystem::detail::dir_itr_imp::operator delete(void*)'
/usr/bin/ld: otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED2Ev[_ZN5boost21iterator_range_detail19iterator_range_baseINS_10filesystem18directory_iteratorENS_9iterators27incrementable_traversal_tagEED5Ev]+0x3e): undefined reference to `boost::filesystem::detail::dir_itr_imp::operator delete(void*)'
/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbTerraSarXSarImageMetadataInterface.cxx.o: in function `void boost::sp_adl_block::intrusive_ptr_release<boost::filesystem::detail::dir_itr_imp, boost::sp_adl_block::thread_safe_counter>(boost::sp_adl_block::intrusive_ref_counter<boost::filesystem::detail::dir_itr_imp, boost::sp_adl_block::thread_safe_counter> const*)':
otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost12sp_adl_block21intrusive_ptr_releaseINS_10filesystem6detail11dir_itr_impENS0_19thread_safe_counterEEEvPKNS0_21intrusive_ref_counterIT_T0_EE[_ZN5boost12sp_adl_block21intrusive_ptr_releaseINS_10filesystem6detail11dir_itr_impENS0_19thread_safe_counterEEEvPKNS0_21intrusive_ref_counterIT_T0_EE]+0x25): undefined reference to `boost::filesystem::detail::dir_itr_imp::~dir_itr_imp()'
/usr/bin/ld: otbTerraSarXSarImageMetadataInterface.cxx:(.text._ZN5boost12sp_adl_block21intrusive_ptr_releaseINS_10filesystem6detail11dir_itr_impENS0_19thread_safe_counterEEEvPKNS0_21intrusive_ref_counterIT_T0_EE[_ZN5boost12sp_adl_block21intrusive_ptr_releaseINS_10filesystem6detail11dir_itr_impENS0_19thread_safe_counterEEEvPKNS0_21intrusive_ref_counterIT_T0_EE]+0x2e): undefined reference to `boost::filesystem::detail::dir_itr_imp::operator delete(void*)'
/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbRadarsat2ImageMetadataInterface.cxx.o: in function `otb::Radarsat2ImageMetadataInterface::CreateCalibrationLookupData(otb::SARCalib&, otb::ImageMetadata const&, otb::MetadataSupplierInterface const&, bool) const':
otbRadarsat2ImageMetadataInterface.cxx:(.text+0x29e6): undefined reference to `boost::filesystem::detail::path_algorithms::remove_filename_v3(boost::filesystem::path&)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x29f9): undefined reference to `boost::filesystem::detail::path_algorithms::append_v3(boost::filesystem::path&, char const*, char const*)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x2b21): undefined reference to `boost::filesystem::detail::path_algorithms::remove_filename_v3(boost::filesystem::path&)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x2b34): undefined reference to `boost::filesystem::detail::path_algorithms::append_v3(boost::filesystem::path&, char const*, char const*)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x2cd5): undefined reference to `boost::filesystem::detail::path_algorithms::remove_filename_v3(boost::filesystem::path&)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x2ce8): undefined reference to `boost::filesystem::detail::path_algorithms::append_v3(boost::filesystem::path&, char const*, char const*)'
/usr/bin/ld: CMakeFiles/OTBMetadata.dir/otbRadarsat2ImageMetadataInterface.cxx.o: in function `otb::Radarsat2ImageMetadataInterface::ParseGeom(otb::ImageMetadata&)':
otbRadarsat2ImageMetadataInterface.cxx:(.text+0x51c0): undefined reference to `boost::filesystem::detail::path_algorithms::remove_filename_v3(boost::filesystem::path&)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x51d6): undefined reference to `boost::filesystem::detail::path_algorithms::append_v3(boost::filesystem::path&, char const*, char const*)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x5201): undefined reference to `boost::filesystem::detail::path_algorithms::remove_filename_v3(boost::filesystem::path&)'
/usr/bin/ld: otbRadarsat2ImageMetadataInterface.cxx:(.text+0x5210): undefined reference to `boost::filesystem::detail::path_algorithms::append_v3(boost::filesystem::path&, char const*, char const*)'
collect2: error: ld returned 1 exit status
make[2]: *** [Modules/Core/Metadata/src/CMakeFiles/OTBMetadata.dir/build.make:837: lib/libOTBMetadata-8.1.so.1] Errore 1
make[1]: *** [CMakeFiles/Makefile2:4991: Modules/Core/Metadata/src/CMakeFiles/OTBMetadata.dir/all] Errore 2
make: *** [Makefile:136: all] Errore 2``
What could it be?https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2369Difficulty setting up OTB version 8.12 on QGIS 3.342024-03-20T14:26:35ZSeno337Difficulty setting up OTB version 8.12 on QGIS 3.34### Description
An error message “an error has occurred while executing Python code” keeps coming up when I try to set up
### Steps to reproduce
It happens after setting the directories (OTB folder and applications folder)
### Confi...### Description
An error message “an error has occurred while executing Python code” keeps coming up when I try to set up
### Steps to reproduce
It happens after setting the directories (OTB folder and applications folder)
### Configuration information
Windows 11, OTB version 8.1.2-win64, information related to build (binaries, superbuild, system libs ...)https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2363OTB repository git flow?2023-11-02T15:31:01ZRémi CressonOTB repository git flow?Hello,
I don't understand our git flow.
One year ago I did this [MR](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/blob/develop/Modules/Core/Common/src/otbExtendedFilenameHelper.cxx) that fixes an important bug.
OTB version 8.1.2 ...Hello,
I don't understand our git flow.
One year ago I did this [MR](https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/blob/develop/Modules/Core/Common/src/otbExtendedFilenameHelper.cxx) that fixes an important bug.
OTB version 8.1.2 was released two months ago. It does not include plenty of MRs for a reason that I don't undersand.
I am afraid that the new version has many bugs corrected during the last year, merged in develop, but not in the packages.
I believed we enforced the git flow, something like one MR -> develop branch -> stable branch -> release tag.
Can someone please freshen my mind me about our git flow and release process?
Thanks,
Rémihttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2353Add OTB Modules packaging with CPack on the CI2024-02-07T15:07:44ZThibaut ROMAINAdd OTB Modules packaging with CPack on the CICurrently the CI builds a Core and a Full package with Makeself. The idea is to keep makeself for the Superbuild packaging (otb-depends) and use Cpack for packaging the OTB modulesCurrently the CI builds a Core and a Full package with Makeself. The idea is to keep makeself for the Superbuild packaging (otb-depends) and use Cpack for packaging the OTB modules9.0.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2352Documentation of the new install method for OTB 9.02024-02-07T15:08:18ZThibaut ROMAINDocumentation of the new install method for OTB 9.0Modify README and Cookbook for the new method of installation depends / modulesModify README and Cookbook for the new method of installation depends / modules9.0.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2351Dependencies Packaging with Makeself for OTB 92024-02-07T15:08:34ZThibaut ROMAINDependencies Packaging with Makeself for OTB 9The new method of packaging for OTB 9 will be to split otb modules packages and otb-depends package, which includes all the libs from the SuperBuild. CPack cannot build a standalone package alone because of some dependencies in the super...The new method of packaging for OTB 9 will be to split otb modules packages and otb-depends package, which includes all the libs from the SuperBuild. CPack cannot build a standalone package alone because of some dependencies in the superbuild does not have some CMake routines support to allow CPack to know what to install in the pkg. Therefore, for the superbuild part, we build it in another folder, and install its content when building OTB. this allows to package OTB modules and have a separate Depends package.
This task can be split :
- [x] Create package "Core-depends" containing OTB Core SuperBuild libs
- [x] Build only the superbuild part in a side folder
- [x] Create CPack package from this folder
- [x] Test with a core OTB package generated from CPack
- [x] Create package "full-depends" containing all SuperBuild libs
- [x] Build the superbuild part in a side folder
- [x] Create CPack package from this folder
- [x] Test with a full OTB package generated from CPack
- [ ] Test different scenarios9.0.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2350Inputs do not occupy the same physical space2024-02-05T16:38:50ZPierre HERMANInputs do not occupy the same physical spaceHello, I am working with multiples .tif. My code on my server works with the 6.6.1 version of OTB. On local I'm on the 8.8.1 version and I get the error "Inputs do not occupy the same physical space!"
### Description
Here are my two .t...Hello, I am working with multiples .tif. My code on my server works with the 6.6.1 version of OTB. On local I'm on the 8.8.1 version and I get the error "Inputs do not occupy the same physical space!"
### Description
Here are my two .tif files with gdalinfo command:
`Driver: GTiff/GeoTIFF`\
`Files: /var/www/cartestif/A18/P1Z175_BRc.tif`\
`Size is 29, 37`\
`Coordinate System is:`\
`PROJCRS["WGS 84 / UTM zone 31N",`\
`BASEGEOGCRS["WGS 84",`\
`DATUM["World Geodetic System 1984",`\
`ELLIPSOID["WGS 84",6378137,298.257223563,`\
`LENGTHUNIT["metre",1]]],`\
`PRIMEM["Greenwich",0,`\
`ANGLEUNIT["degree",0.0174532925199433]],`\
`ID["EPSG",4326]],`\
`CONVERSION["UTM zone 31N",`\
`METHOD["Transverse Mercator",`\
`ID["EPSG",9807]],`\
`PARAMETER["Latitude of natural origin",0,`\
`ANGLEUNIT["degree",0.0174532925199433],`\
`ID["EPSG",8801]],`\
`PARAMETER["Longitude of natural origin",3,`\
`ANGLEUNIT["degree",0.0174532925199433],`\
`ID["EPSG",8802]],`\
`PARAMETER["Scale factor at natural origin",0.9996,`\
`SCALEUNIT["unity",1],`\
`ID["EPSG",8805]],`\
`PARAMETER["False easting",500000,`\
`LENGTHUNIT["metre",1],`\
`ID["EPSG",8806]],`\
`PARAMETER["False northing",0,`\
`LENGTHUNIT["metre",1],`\
`ID["EPSG",8807]]],`\
`CS[Cartesian,2],`\
`AXIS["(E)",east,`\
`ORDER[1],`\
`LENGTHUNIT["metre",1]],`\
`AXIS["(N)",north,`\
`ORDER[2],`\
`LENGTHUNIT["metre",1]],`\
`USAGE[`\
`SCOPE["Engineering survey, topographic mapping."],`\
`AREA["Between 0°E and 6°E, northern hemisphere between equator and 84°N, onshore and offshore. Algeria. Andorra. Belgium. Benin. Burkina Faso. Denmark - North Sea. France. Germany - North Sea. Ghana. Luxembourg. Mali. Netherlands. Niger. Nigeria. Norway. Spain. Togo. United Kingdom (UK) - North Sea."],`\
`BBOX[0,0,84,6]],`\
`ID["EPSG",32631]]`\
`Data axis to CRS axis mapping: 1,2`\
`Origin = (340349.066190032404847,4830673.628928044810891)`\
`Pixel Size = (10.000000000000000,-10.000000000000000)`\
`Metadata:`\
`AREA_OR_POINT=Area`\
`DataType=1`\
`METADATATYPE=OTB`\
`OTB_VERSION=8.1.1`\
`TileHintX=29`\
`TileHintY=37`\
`Image Structure Metadata:`\
`INTERLEAVE=BAND`\
`Corner Coordinates:`\
`Upper Left ( 340349.066, 4830673.629) ( 1d 1'17.64"E, 43d36'42.94"N)`\
`Lower Left ( 340349.066, 4830303.629) ( 1d 1'18.03"E, 43d36'30.95"N)`\
`Upper Right ( 340639.066, 4830673.629) ( 1d 1'30.57"E, 43d36'43.16"N)`\
`Lower Right ( 340639.066, 4830303.629) ( 1d 1'30.96"E, 43d36'31.18"N)`\
`Center ( 340494.066, 4830488.629) ( 1d 1'24.30"E, 43d36'37.06"N)`\
`Band 1 Block=29x37 Type=Float32, ColorInterp=Gray`
And my second file:
`Driver: GTiff/GeoTIFF`\
`Files: /var/www/cartestif/A18/P1Z175_ori.tif`\
`Size is 29, 37`\
`Coordinate System is:`\
`PROJCRS["WGS 84 / UTM zone 31N",`\
`BASEGEOGCRS["WGS 84",`\
`DATUM["World Geodetic System 1984",`\
`ELLIPSOID["WGS 84",6378137,298.257223563,`\
`LENGTHUNIT["metre",1]]],`\
`PRIMEM["Greenwich",0,`\
`ANGLEUNIT["degree",0.0174532925199433]],`\
`ID["EPSG",4326]],`\
`CONVERSION["UTM zone 31N",`\
`METHOD["Transverse Mercator",`\
`ID["EPSG",9807]],`\
`PARAMETER["Latitude of natural origin",0,`\
`ANGLEUNIT["degree",0.0174532925199433],`\
`ID["EPSG",8801]],`\
`PARAMETER["Longitude of natural origin",3,`\
`ANGLEUNIT["degree",0.0174532925199433],`\
`ID["EPSG",8802]],`\
`PARAMETER["Scale factor at natural origin",0.9996,`\
`SCALEUNIT["unity",1],`\
`ID["EPSG",8805]],`\
`PARAMETER["False easting",500000,`\
`LENGTHUNIT["metre",1],`\
`ID["EPSG",8806]],`\
`PARAMETER["False northing",0,`\
`LENGTHUNIT["metre",1],`\
`ID["EPSG",8807]]],`\
`CS[Cartesian,2],`\
`AXIS["(E)",east,`\
`ORDER[1],`\
`LENGTHUNIT["metre",1]],`\
`AXIS["(N)",north,`\
`ORDER[2],`\
`LENGTHUNIT["metre",1]],`\
`USAGE[`\
`SCOPE["Engineering survey, topographic mapping."],`\
`AREA["Between 0°E and 6°E, northern hemisphere between equator and 84°N, onshore and offshore. Algeria. Andorra. Belgium. Benin. Burkina Faso. Denmark - North Sea. France. Germany - North Sea. Ghana. Luxembourg. Mali. Netherlands. Niger. Nigeria. Norway. Spain. Togo. United Kingdom (UK) - North Sea."],`\
`BBOX[0,0,84,6]],`\
`ID["EPSG",32631]]`\
`Data axis to CRS axis mapping: 1,2`\
`Origin = (340349.065999999991618,4830673.628999999724329)`\
`Pixel Size = (10.000000000000000,-10.000000000000000)`\
`Metadata:`\
`AREA_OR_POINT=Area`\
`DataType=1`\
`METADATATYPE=OTB`\
`OTB_VERSION=8.1.1`\
`TileHintX=29`\
`TileHintY=37`\
`Image Structure Metadata:`\
`INTERLEAVE=BAND`\
`Corner Coordinates:`\
`Upper Left ( 340349.066, 4830673.629) ( 1d 1'17.64"E, 43d36'42.94"N)`\
`Lower Left ( 340349.066, 4830303.629) ( 1d 1'18.03"E, 43d36'30.95"N)`\
`Upper Right ( 340639.066, 4830673.629) ( 1d 1'30.57"E, 43d36'43.16"N)`\
`Lower Right ( 340639.066, 4830303.629) ( 1d 1'30.96"E, 43d36'31.18"N)`\
`Center ( 340494.066, 4830488.629) ( 1d 1'24.30"E, 43d36'37.06"N)`\
`Band 1 Block=29x37 Type=Float32, ColorInterp=Gray`\
`NoData Value=0`
### Steps to reproduce
When I run the command: `otbcli_BandMath -il /var/www/cartestif/A18/P1Z175_BRc.tif /var/www/cartestif/A18/P1Z175_ori.tif -out /var/www/cartestif/A18/P1Z175_PZ.tif -exp "im2b1 == 0 ? (im1b1) : im2b1"`
I get the error:
`array(13) {`\
`[0]=>`\
`string(66) "2023-08-18 17:25:44 (INFO): Loading metadata from official product"`\
`[1]=>`\
`string(66) "2023-08-18 17:25:44 (INFO): Loading metadata from official product"`\
`[2]=>`\
`string(72) "2023-08-18 17:25:44 (INFO) BandMath: Default RAM limit for OTB is 256 MB"`\
`[3]=>`\
`string(70) "2023-08-18 17:25:44 (INFO) BandMath: GDAL maximum cache size is 297 MB"`\
`[4]=>`\
`string(67) "2023-08-18 17:25:44 (INFO) BandMath: OTB will use at most 8 threads"`\
`[5]=>`\
`string(62) "2023-08-18 17:25:44 (INFO) BandMath: Image #1 has 1 components"`\
`[6]=>`\
`string(0) ""`\
`[7]=>`\
`string(62) "2023-08-18 17:25:44 (INFO) BandMath: Image #2 has 1 components"`\
`[8]=>`\
`string(0) ""`\
`[9]=>`\
`string(132) "2023-08-18 17:25:44 (FATAL) BandMath: itk::ERROR: BandMathImageFilter(0x558b0fa9fa40): Inputs do not occupy the same physical space!"`\
`[10]=>`\
`string(102) "InputImage Origin: [3.4035407e+05, 4.8306686e+06], InputImage_1 Origin: [3.4035407e+05, 4.8306686e+06]"`\
`[11]=>`\
`string(25) " Tolerance: 1.0000000e-05"`\
`[12]=>`\
`string(0) ""`
as you can see the origins are the same. I don't understand why it thinks their is an offset. And my two .tif files are generated from the same .tif file with
`gdalwarp -q -dstnodata 0 -tr 10.0 10.0 -te 340349.066 4830303.629 340639.066 4830673.629 -of GTiff -overwrite /var/www/cartestif/A18/P1Z181.tif /var/www/cartestif/A18/P1Z181_ori.tif`
### Configuration information
My code is running on a PHP docker, with last OTB-bin stable version 8.1.1
Thanks :smile:https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2348Loss of precision within applications when a cast to float is made2023-07-10T12:21:56ZDamiano MissoniLoss of precision within applications when a cast to float is madeHi everyone.
I take as an example the application I analyzed: otbcli_OrthoRectification. The issue could be present also in other applications.
The code makes multiple casts to float, using for example SetParameterFloat() or GetParamet...Hi everyone.
I take as an example the application I analyzed: otbcli_OrthoRectification. The issue could be present also in other applications.
The code makes multiple casts to float, using for example SetParameterFloat() or GetParameterFloat(). There is no reason to cast to float when double can be used (and the library actually gives results as double). This type of cast can lead to approximations, with correlated loss of precision. In my testing actually there is a difference, about some pixels of discrepancy.
This issue can be solved simply changing every function named with "Float" with the same function named "Double" (SetParameterFloat() -> SetParameterDouble()). I made a test with otbcli_OrthoRectification and it works.
This post follows the chat from Orfeo forum: [link](https://forum.orfeo-toolbox.org/t/small-differences-between-command-line-and-c-library/1596)https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2346OTB webstite theme2023-06-01T13:43:19ZRémi CressonOTB webstite themeHi guys,
Is there something wrong with the main page of the website?
The new "Responsive Business & Ecommerce Theme" of the otb website is nice and all, but it looks a bit like a template !Hi guys,
Is there something wrong with the main page of the website?
The new "Responsive Business & Ecommerce Theme" of the otb website is nice and all, but it looks a bit like a template !https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2345Unable to configure OTB plugin in QIGS 3.282023-07-26T09:24:33Zmia shenUnable to configure OTB plugin in QIGS 3.28I am using the Win10 system and following the [https://docs.qgis.org/testing/en/docs/user_manual/processing/3rdParty.html#otb-applications](url) step prompt, after enabling the OTB plugin in QGIS, I am unable to perform the next step of ...I am using the Win10 system and following the [https://docs.qgis.org/testing/en/docs/user_manual/processing/3rdParty.html#otb-applications](url) step prompt, after enabling the OTB plugin in QGIS, I am unable to perform the next step of specifying the path for the OTB plugin. Additionally, the prompt “Problem with OTB installation: does not exist.”
![111](/uploads/e66f3c63c6c973ab1c9a46d71b1a6746/111.png)![222](/uploads/9b635d75399020925e7c2cf06d44eb76/222.png)
Windows 10 , OTB 8.1.1 Win64, QGIS 3.28.0https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2344OTB algorithms don't run in QGIS2023-05-28T15:08:35ZLoris LizziOTB algorithms don't run in QGISHi everyone. I tried to use OTB in QGIS which is installed on my UBUNTU 22.04 machine. I compiled and installed OTB from source code with cmake on usr folder, because with the .run file, QGIS isn't able to locate the OTB libraries in OTB...Hi everyone. I tried to use OTB in QGIS which is installed on my UBUNTU 22.04 machine. I compiled and installed OTB from source code with cmake on usr folder, because with the .run file, QGIS isn't able to locate the OTB libraries in OTB folder. In this way, OTB algorithms seem to start in QGIS, but there's a problem that stop the algorithms execution, due to a MCA parameter of OpenMPI library: "plm_rsh_agent".
This is the log on QGIS:
`Versione di QGIS: 3.28.6-Firenze
Revisione codice QGIS: 868c9fa03b
Versione di Qt: 5.15.3
Versione Python: 3.10.6
Versione di GDAL: 3.4.1
Versione di GEOS: 3.10.2-CAPI-1.16.0
Versione di PROJ: Rel. 8.2.1, January 1st, 2022
versione di PDAL: 2.3.0 (git-version: Release)
Algoritmo iniziato alle: 2023-05-20T12:13:03
In avvio l'algoritmo 'Superimpose' …
Parametri in ingresso:
{ 'inr' : '../Outputs/L8_B2_Superimpose15m.tif', 'elev.dem' : '', 'elev.geoid' : '', 'elev.default' : 0, 'lms' : 4, 'fv' : 0, 'mode' : 'default', 'interpolator' : 'linear', 'outputpixeltype' : 5 }
hwloc/linux: Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
The value of the MCA parameter "plm_rsh_agent" was set to a path
that could not be found:
plm_rsh_agent: ssh : rsh.
Please either unset the parameter, or check that the path is correct
[loris-Inspiron-15-5510:09050] [[INVALID],INVALID] FORCE-TERMINATE AT Not found:-13 - error ../../../../../../orte/mca/plm/rsh/plm_rsh_component.c(335)
[loris-Inspiron-15-5510:09049] [[INVALID],INVALID] ORTE_ERROR_LOG: Unable to start a daemon on the local node in file ../../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 716
[loris-Inspiron-15-5510:09049] [[INVALID],INVALID] ORTE_ERROR_LOG: Unable to start a daemon on the local node in file ../../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 172
It looks like orte_init failed for some reason; your parallel process is
likely to abort. There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems. This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer): orte_ess_init failed
--> Returned value Unable to start a daemon on the local node (-127) instead of ORTE_SUCCESSI.
It looks like MPI_INIT failed for some reason; your parallel process is
likely to abort. There are many reasons that a parallel process can
fail during MPI_INIT; some of which are due to configuration or environment
problems. This failure appears to be an internal failure; here's some
additional information (which may only be relevant to an Open MPI
developer): ompi_mpi_init: ompi_rte_init failed
--> Returned "Unable to start a daemon on the local node" (-127) instead of "Success" (0)
*** An error occurred in MPI_Init
*** on a NULL communicator
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
*** and potentially your MPI job)
[loris-Inspiron-15-5510:09049] Local abort before MPI_INIT completed completed successfully, but am not able to aggregate error messages, and not able to guarantee that all other processes were killed!
Execution completed in 0.60 secondi
Risultati:
{'out': '../Outputs/L8_B2_Superimpose15m.tif'}
Caricamento layer
I seguenti layer non sono stati generati correttamente
• ../Outputs/L8_B2_Superimpose15m.tif
Puoi verificare il "Pannello dei messaggi" nella finestra principale di QGIS per trovare maggiori informazioni circa l'esecuzione dell'algoritmo`
I modified the OpenMPI config file (openmpi-mca-params.config in etc folder) adding `plm_rsh_agent=` without anything (possible parameters are `ssh`, `rsh`,`ssh : rsh` or `rsh : ssh`), because in config file there isn't such MCA parameter and by default OTB and UBUNTU in general use `ssh : rsh` parameter that stop OTB algorithms in QGIS.
OTB algorithms start and are executed in Monteverdi with default plm_rsh_agent parameter, so this is a OTB problem in QGIS.
I don't know if this modify of OpenMPI config will affect others libraries in my OS.
### Steps to reproduce
You have to install OTB from source code or .run file, set OTB paths in QGIS and start an OTB algorithm.
### Configuration information
OS: UBUNTU 22.04.2 LTS;
QGIS version: 3.28.6 LTS;
OTB version: 8.1.1;
OpenMPI version: 4.1.2https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2343installation paths aren't correctly escaped in command line2024-02-05T16:37:35ZTodd Westinstallation paths aren't correctly escaped in command line### Description
Lack of support for spaces in paths means QGIS's Orfeo plugin behaves poorly on Windows. Protecting against spaces by quoting the OTB application folder and OTB folder in QGIS's Settings -> Options -> Processing -> Provid...### Description
Lack of support for spaces in paths means QGIS's Orfeo plugin behaves poorly on Windows. Protecting against spaces by quoting the OTB application folder and OTB folder in QGIS's Settings -> Options -> Processing -> Providers -> OTB is rejected as invalid.
Workaround is to place Orfeo in a path without spaces (_e.g._ C:\ProgramData) but this is unnatural on Windows as %ProgramFiles% defaults to C:\Program Files (and thus nearly all applications, including ones sharing Orfeo's unzip installation model, correctly handle a space in their installation path).
### Steps to reproduce
Follow [the installation instructions](https://www.orfeo-toolbox.org/CookBook/QGISInterface.html) and then run any Orfeo tool.
```
2023-05-24T10:08:10 CRITICAL C:\Program Files\OTB-8.1.1-Win64\bin\otbQgisDescriptor.exe MultitempFilteringOutcore C:\Program Files\OTB-8.1.1-Win64\lib\otb\applications C:\Program Files\OTB-8.1.1-Win64\share\otb\description/
2023-05-24T10:08:10 INFO {'env': {'LC_NUMERIC': 'C', 'GDAL_DRIVER_PATH': 'disable', 'GDAL_DATA': 'C:\\Program Files\\OTB-8.1.1-Win64\\share\\data', 'PROJ_LIB': 'C:\\Program Files\\OTB-8.1.1-Win64\\share\\proj', 'OTB_LOGGER_LEVEL': 'INFO'}, 'encoding': 'cp1252'}
2023-05-24T10:08:10 INFO cmd=C:\Program Files\OTB-8.1.1-Win64\bin\otbQgisDescriptor.exe MultitempFilteringOutcore C:\Program Files\OTB-8.1.1-Win64\lib\otb\applications C:\Program Files\OTB-8.1.1-Win64\share\otb\description/
2023-05-24T10:08:10 INFO 'C:\Program' is not recognized as an internal or external command,
2023-05-24T10:08:10 INFO operable program or batch file.
```
I'm surprised this hasn't already been noted but several different searches failed to find an existing issue. Apologies if it's duplicate.
### Configuration information
Windows 10 22H2, OTB 8.1.1 Win64, QGIS 3.22.14https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2342How to Residual registration in python by Otb8.12023-07-26T09:25:53Zyang162132How to Residual registration in python by Otb8.1I want to do Residual registration like https://www.orfeo-toolbox.org/CookBook/recipes/residual_registration.html by otb8.1 and python 3.8,but it's seem that no module RefineSensorModel.IS there a new way to do residual registration?I want to do Residual registration like https://www.orfeo-toolbox.org/CookBook/recipes/residual_registration.html by otb8.1 and python 3.8,but it's seem that no module RefineSensorModel.IS there a new way to do residual registration?https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2340PanSharpening RCS method output looks "granular"2023-07-11T08:35:05ZThibaut ROMAINPanSharpening RCS method output looks "granular"When doing a pansharpening on Pleiades products, the default RCS method with default parameters outputs a result which seems blurry with grain
Both reproduced with OTB 7.4.1 and 8.1.1
PanSharpening with RCS default parameters :
![Capt...When doing a pansharpening on Pleiades products, the default RCS method with default parameters outputs a result which seems blurry with grain
Both reproduced with OTB 7.4.1 and 8.1.1
PanSharpening with RCS default parameters :
![Capture_d_écran_du_2023-04-18_15-59-41](/uploads/46fb3fadfbf8ea1aaaa5b9c41ccd55e7/Capture_d_écran_du_2023-04-18_15-59-41.png)
PanSharpening with Bayes method :
![Capture_d_écran_du_2023-04-18_15-59-51](/uploads/c74130aae7feb0f156983a826629c9f8/Capture_d_écran_du_2023-04-18_15-59-51.png)8.2.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2337BandMathX vmax for negative values2023-05-02T08:08:16ZFerrant SylvainBandMathX vmax for negative values### Description
Using Sentinel-1 backscatter in decibel, I was looking for the VH max. BandMathX vmax function return zero for all pixels, whereas vmin return the min value. To be sure that it is a bug, I did the following
### Steps to...### Description
Using Sentinel-1 backscatter in decibel, I was looking for the VH max. BandMathX vmax function return zero for all pixels, whereas vmin return the min value. To be sure that it is a bug, I did the following
### Steps to reproduce
gdal_create -outsize 20 20 -bands 3 -a_ullr 0 20 20 0 -a_nodata -10000 /work/CESBIO/users/ferrants/toto.tif
otbcli_BandMathX -il /work/CESBIO/users/ferrants/toto.tif -out /work/CESBIO/users/ferrants/toto.tif -exp "im1b1 - 10; im1b2 -5; im1b3 -3"
otbcli_PixelValue -in /work/CESBIO/users/ferrants/toto.tif -coordx 10 -coordy 10
2023-03-27 15:29:59 (INFO) PixelValue: Default RAM limit for OTB is 256 MB
2023-03-27 15:29:59 (INFO) PixelValue: GDAL maximum cache size is 19314 MB
2023-03-27 15:29:59 (INFO) PixelValue: OTB will use at most 80 threads
2023-03-27 15:29:59 (INFO) PixelValue: [-10, -5, -3]
Output parameters value:
value: [-10, -5, -3]
otbcli_BandMathX -il /work/CESBIO/users/ferrants/toto.tif -out /work/CESBIO/users/ferrants/totomax.tif -exp "vmax(im1)"
otbcli_PixelValue -in /work/CESBIO/users/ferrants/totomax.tif -coordx 10 -coordy 10
2023-03-27 15:30:55 (INFO) PixelValue: Default RAM limit for OTB is 256 MB
2023-03-27 15:30:55 (INFO) PixelValue: GDAL maximum cache size is 19314 MB
2023-03-27 15:30:55 (INFO) PixelValue: OTB will use at most 80 threads
2023-03-27 15:30:55 (INFO) PixelValue: [0]
**Output parameters value:
value: [0]**
otbcli_BandMathX -il /work/CESBIO/users/ferrants/toto.tif -out /work/CESBIO/users/ferrants/totomin.tif -exp "vmin(im1)"
otbcli_PixelValue -in /work/CESBIO/users/ferrants/totomin.tif -coordx 10 -coordy 10
2023-03-27 15:31:36 (INFO) PixelValue: Default RAM limit for OTB is 256 MB
2023-03-27 15:31:36 (INFO) PixelValue: GDAL maximum cache size is 19314 MB
2023-03-27 15:31:36 (INFO) PixelValue: OTB will use at most 80 threads
2023-03-27 15:31:36 (INFO) PixelValue: [-10]
Output parameters value:
value: [-10]
### Configuration information
Hal.cnes.fr cluster, with module load otb8.2.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2336Cannot activate OTB in QGIS 3.28.42023-07-26T09:37:14ZcstraffonCannot activate OTB in QGIS 3.28.4### Description
I have been trying to properly install OTB 8.1.1 in QGIS for Windows 10 Pro to no avail. It seems it is installed, but when I try to activate it in Process Toolbox settings there is no checkbox to activate the module and...### Description
I have been trying to properly install OTB 8.1.1 in QGIS for Windows 10 Pro to no avail. It seems it is installed, but when I try to activate it in Process Toolbox settings there is no checkbox to activate the module and when I enable the plugin I get an error message.
### Steps to reproduce
I installed QGIS 3.28.4 using OSGeo4W. I downloaded OTB 8.1.1. installation files and followed the instructions found here: https://docs.qgis.org/3.28/en/docs/user_manual/processing/3rdParty.html
I made sure the paths are correct in Process Toolbox settings, and I still cannot see the checkbox to activate.
![Process_Toolbox_settings](/uploads/218c5b8fb53e890cabf9c55dd87cf4a4/Process_Toolbox_settings.png)
When I try to enable the plugin in the installed complements window, I get the following message:
CRITICAL Traceback (most recent call last):
File "C:\OSGeo4W/apps/qgis-ltr/./python\qgis\utils.py", line 423, in _startPlugin
plugins[packageName] = package.classFactory(iface)
File "C:\qgis-plugins\qgis-otb-plugin\otb\__init__.py", line 37, in classFactory
from .OTBPlugin import OTBPlugin
File "C:\OSGeo4W/apps/qgis-ltr/./python\qgis\utils.py", line 888, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\qgis-plugins\qgis-otb-plugin\otb\OTBPlugin.py", line 26, in
from .OTBAlgorithmProvider import OTBAlgorithmProvider
File "C:\OSGeo4W/apps/qgis-ltr/./python\qgis\utils.py", line 888, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\qgis-plugins\qgis-otb-plugin\otb\OTBAlgorithmProvider.py", line 39, in
from otb import OTBUtils
File "C:\OSGeo4W/apps/qgis-ltr/./python\qgis\utils.py", line 888, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\qgis-plugins\qgis-otb-plugin\otb\OTBUtils.py", line 37, in
from processing.core.ProcessingLog import ProcessingLog
File "C:\OSGeo4W/apps/qgis-ltr/./python\qgis\utils.py", line 888, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
ModuleNotFoundError: No module named 'processing.core.ProcessingLog'
I have reinstalled QGIS, python libraries at least twice; tried to install OTB files directly to C: directory and changed paths accordingly, and even tried OTB 7.0.0 and still get the same error.
### Configuration information
Windows 10 Pro version 2009, OTB 8.1.1., QGIS 3.28.4, Anaconda prompt, Python 3.9.5, OTB Provider 2.12.99https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2335Boost 1.72 in Docker image makes it hard to build code that requires Boost li...2023-03-20T15:17:55ZLaurențiu NicolaBoost 1.72 in Docker image makes it hard to build code that requires Boost librariesThe Docker image has a custom build of Boost 1.72, while the distro repo has 1.71. This makes it hard to install and link to other Boost libraries, like Boost.Regex.
I'm not sure what a good solution would be, though. Probably not using...The Docker image has a custom build of Boost 1.72, while the distro repo has 1.71. This makes it hard to install and link to other Boost libraries, like Boost.Regex.
I'm not sure what a good solution would be, though. Probably not using Boost.Regex.https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/issues/2333Output of `otbcli_Segmentation -filter meanshift` and `otbcli_LargeScaleMe...2023-07-26T09:24:58ZaloboaOutput of `otbcli_Segmentation -filter meanshift` and `otbcli_LargeScaleMeanShift` are differentAs far as I understand:
`otbcli_Segmentation -filter meanshift`
should be identical to
`otbcli_LargeScaleMeanShift`
as both chain the 4 steps with ranger and spatialr values refering to the Meanshift smoothing and halved
for the LM...As far as I understand:
`otbcli_Segmentation -filter meanshift`
should be identical to
`otbcli_LargeScaleMeanShift`
as both chain the 4 steps with ranger and spatialr values refering to the Meanshift smoothing and halved
for the LMSS step.
Nevertheless, given:
```
otbcli_LargeScaleMeanShift -in QB_1_ortho.tif -spatialr 4 -ranger 80 -minsize 100 -mode.vector.out regionsLSMS_100.shp
otbcli_Segmentation -in QB_1_ortho.tif -filter meanshift -filter.meanshift.spatialr 4 -filter.meanshift.ranger 80 -filter.meanshift.minsize 100 -mode.vector.out regionsSEG100.shp
```
the respective ouptuts regionsLSMS_100.shp and regionsSEG100.shp are different.
Am I misunderstanding or is there a bug?