I had the following issue in texrecon when creating a texture for a multi-channel image:
[INFO] running "/code/SuperBuild/install/bin/texrecon" "/datasets/images_proc/opensfm/undistorted/reconstruction.nvm" "/datasets/images_proc/odm_meshing/odm_mesh.ply" "/datasets/images_proc/odm_texturing/odm_textured_model_geo" -d gmi -o gauss_clamping -t none --no_intermediate_results --num_threads=20 --max_texture_size=8192
/code/SuperBuild/install/bin/texrecon (built on Jan 13 2026, 15:22:35)
Load and prepare mesh:
Reading PLY: 195369 verts... 390760 faces... done.
Generating texture views:
NVM: Loading file...
NVM: Number of views: 9
NVM: Number of features: 8485
Loading 100%... done. (Took 0.084s)
Building adjacency graph:
Adding edges 100%... done. (Took 0.379s)
586136 total edges.
View selection:
Building BVH from 390760 faces... done. (Took: 148 ms)
terminate called after throwing an instance of 'std::invalid_argument'
what(): Image must be RGB or RGBA
Aborted
This seems to come from:
https://github.com/NeoGeographyToolkit/mve/blob/9f90a016420344bd0bda85b70dfdc8d395409cdc/libs/mve/image_tools.h#L1350
I did not yet find the texrecon script, but would like to ask if it is possible to drop the other channels from the texture to only process the texture from the first 3 RGB channels.
Otherwise the calling methods (OpenDroneMap) should drop the additional channels earlier before the reco.
I had the following issue in texrecon when creating a texture for a multi-channel image:
This seems to come from:
https://github.com/NeoGeographyToolkit/mve/blob/9f90a016420344bd0bda85b70dfdc8d395409cdc/libs/mve/image_tools.h#L1350
I did not yet find the texrecon script, but would like to ask if it is possible to drop the other channels from the texture to only process the texture from the first 3 RGB channels.
Otherwise the calling methods (OpenDroneMap) should drop the additional channels earlier before the reco.