Meshroom icon indicating copy to clipboard operation
Meshroom copied to clipboard

I probably DON'T have a corrupted image within the images that I am trying to import

Open bobboau opened this issue 1 year ago • 3 comments

I'm getting the error message You probably have a corrupted image within the images that you are trying to import. I probably have some other problem, this error message is unhelpful, and probably misleading.

I DID spend quite some time messing with my images. Running them through a few things. making a single pixel change and saving from gimp. saving as png. running through the BadPeggy utility mentioned https://github.com/alicevision/meshroom/wiki/Images-cannot-be-imported

Then I noticed running meshroom ui from the command line I see a (probably) slightly better error message (unless THIS is a misleading error message)

WARNING:root:== The following "submitters" plugins could not be loaded ==
  * rippleSubmitter: No module named 'mpc'
  * simpleFarmSubmitter: No module named 'simpleFarm'

qml: Missing plugin qtAliceVision.
/bin/sh: 1: aliceVision_cameraInit: not found
ERROR:root:Error while building intrinsics: CameraInit failed with error code 127.
Command was: "aliceVision_cameraInit  --sensorDatabase "${ALICEVISION_SENSOR_DB}" --lensCorrectionProfileInfo "${ALICEVISION_LENS_PROFILE_INFO}" --lensCorrectionProfileSearchIgnoreCameraModel True --defaultFieldOfView 45.0 --groupCameraFallback folder --allowedCameraModels pinhole,radial1,radial3,brown,fisheye4,fisheye1,3deanamorphic4,3deradial4,3declassicld --rawColorInterpretation LibRawWhiteBalancing --viewIdMethod metadata --verboseLevel info --output "/tmp/tmpcxdfjbqf/CameraInit/961e54591174ec5a2457c66da8eadc0cb03d89ba/cameraInit.sfm" --allowSingleView 1 --input "/tmp/tmpcxdfjbqf/CameraInit/961e54591174ec5a2457c66da8eadc0cb03d89ba/viewpoints.sfm"".

QQmlComponent: Created graphical object was not placed in the graphics scene.

Looks like this error message has absolutely nothing to do with my images. I probably have some sort of dependency problem. An error message sending me in that direction would have been more helpful. But then again I still don't know what my problem is yet.

From the alicevision installation document https://github.com/alicevision/AliceVision/blob/develop/INSTALL.md an environment variable named ALICEVISION_ROOT must be created and set with the local installation directory That DOES tell me that I need to have an environment variable and what it needs to be named. It doesn't actually tell me what the value of that variable needs to be. At first I tried /home/<usernamehere>/AliceVision a little more looking made me think /home/<usernamehere>/AliceVision/install/bin was the way to go, but I'm still guessing at this point. This part of the documentation is critical to getting this application running and needs to be less ambiguous. I still have no idea if this is the actual source of my problem or not though.

bobboau avatar Sep 21 '23 06:09 bobboau

Did you build the binaries yourself or did you use the released binaries? Are you on Linux? Looks like qtAliceVision is missing or can not be found. When building from source, best use the code attached to the latest release.

natowi avatar Sep 21 '23 18:09 natowi

Hi @bobboau,

The error message you got from the UI is a generic (and in this case, misleading) one: there is indeed probably nothing wrong with your images, but this message is thrown whenever something goes wrong with the images import.

What you're getting from the command line does come from the fact that the environment variables are not set properly: Meshroom cannot find the executable it needs, as indicated by the log /bin/sh: 1: aliceVision_cameraInit: not found.

To fix this issue, you need to set the following:

  • ALICEVISION_ROOT=/home/<username>/AliceVision/install
  • PATH=$PATH:${ALICEVISION_ROOT}/bin

That way, the AliceVision executables you built should be found by Meshroom, and you should be able to run any node. For your information, there are scripts in Meshroom (start.sh for Linux, start.bat for Windows) that can help you set those variables once and for all. We should improve the documentation nevertheless.

cbentejac avatar Oct 03 '23 09:10 cbentejac

ok, tried that. got the same error and this on my terminal:

bobboau@Asgard:~/meshroom$ ALICEVISION_ROOT=/home/bobboau/AliceVision/install
bobboau@Asgard:~/meshroom$ PATH=$PATH:${ALICEVISION_ROOT}/bin
bobboau@Asgard:~/meshroom$ PYTHONPATH=$PWD python3 meshroom/ui
WARNING:root:== The following "submitters" plugins could not be loaded ==
  * rippleSubmitter: No module named 'mpc'
  * simpleFarmSubmitter: No module named 'simpleFarm'

qml: Missing plugin qtAliceVision.
/bin/sh: 1: aliceVision_cameraInit: not found
ERROR:root:Error while building intrinsics: CameraInit failed with error code 127.
Command was: "aliceVision_cameraInit  --sensorDatabase "${ALICEVISION_SENSOR_DB}" --lensCorrectionProfileInfo "${ALICEVISION_LENS_PROFILE_INFO}" --lensCorrectionProfileSearchIgnoreCameraModel True --defaultFieldOfView 45.0 --groupCameraFallback folder --allowedCameraModels pinhole,radial1,radial3,brown,fisheye4,fisheye1,3deanamorphic4,3deradial4,3declassicld --rawColorInterpretation LibRawWhiteBalancing --viewIdMethod metadata --verboseLevel info --output "/tmp/tmp1keuctwt/CameraInit/961e54591174ec5a2457c66da8eadc0cb03d89ba/cameraInit.sfm" --allowSingleView 1 --input "/tmp/tmp1keuctwt/CameraInit/961e54591174ec5a2457c66da8eadc0cb03d89ba/viewpoints.sfm"".

QQmlComponent: Created graphical object was not placed in the graphics scene.

also tried the start.sh and got ./start.sh: line 12: python: command not found changing line 12 to python3 worked a bit better, but not much better than manually setting the environment variables.

I decided to re-build AlaceVision and after dumping way more text than can fit into a pastebin it ended with this https://pastebin.com/u7W0T0Lu make: *** [Makefile:91: all] Error 2

maybe my problem is it never built properly? looking through the output I do see

Neither yasm nor nasm have been found. See the prerequisites section in the README for more info.

Configuration failed. This could reflect a misconfiguration of your
toolchains, improper options selected, or another problem. If you
don't see any useful error messages above, the next step is to look
at the configure error log file (config.log) to determine what
configure was trying to do when it died.

That config.log doesn't seem to exist anywhere. No idea how relevant this error message is. But that is the only thing that looks like an actual error message in the 9000ish lines of output. The AlaceVision readme has nothing about nasm or yasm.

bobboau avatar Oct 10 '23 02:10 bobboau