OpenDroneMap / ODM

A command line toolkit to generate maps, point clouds, 3D models and DEMs from drone, balloon or kite images. 📷
https://opendronemap.org
GNU Affero General Public License v3.0
4.81k stars 1.09k forks source link

Clean install with opensfm problem #282

Closed w0rcy closed 7 years ago

w0rcy commented 8 years ago

I have a clean install of 14.04.4 Trusty that I have a clean install of ODM, that when I run, it goes through all of the photos a few times, then it gives the following error and stops:

Traceback (most recent call last): File "/home/rick/OpenDroneMap/src/OpenSfM/bin/detect_features", line 11, in from opensfm import features File "/home/rick/OpenDroneMap/src/OpenSfM/opensfm/features.py", line 12, in import csfm ImportError: No module named csfm b

quitting cause: PYTHONPATH=/home/rick/OpenDroneMap/lib/python2.7/dist-packages "/home/rick/OpenDroneMap/src/OpenSfM/bin/run_all" opensfm returned with code 256.

If you would like me to post logs, please let me know where they should be located in the normal user installation. If you would like for me to reinstall something, please let me know how to do that. I have been a unix/linux user for decades, but I am not a good administrator. Also, I have successfully used ODM, but it has been a while and on a different Linux install on the same computer. Thanks

smathermather commented 8 years ago

Hi @w0rcy -- what was your install process?

w0rcy commented 8 years ago

I should have said fresh install of each. New hard drive, fresh Ubuntu 14.04.4, fresh ODM. This is the normal git clone and install as described in the wiki/1.-Installation page, word for word, but nothing more. No vagrant or docker, just straight Linux. It looks to me as if csfm is installed in the ODM directory, though it reports that it is not.

I have also tried the edgarriba method, but that didn't work for me, either, so I went back to the "main" branch.

dakotabenjamin commented 8 years ago

Ok the installation logs for gh-pages (the main branch) are found in the logs/ directory. You'll probably want to look at the ceres logs first.

w0rcy commented 8 years ago

The ceres_1_build.log doesn't have any errors or warnings, but here is the ceres_1_config.log, renamed ceres_1_config.txt so that I can attach it, which might show something. I also include the sysinfo.txt as more info.

dakotabenjamin commented 8 years ago

Nope, no errors there. Possible errors and solutions:

  1. csfm isn't in the PYTHONPATH. Check this with echo $PYTHONPATH
  2. Opensfm didn't install correctly. Try deleting opensfm/build and opensfm/cmake_build before rebuilding using python setup.py build
w0rcy commented 8 years ago
  1. There was nothing in the main branch instructions about setting PYTHONPATH, only the edgarriba branch, which has paths that do not apply to the main branch, so I have none specified. What should the PYTHONPATH be? Should that be in the instructions?
  2. I have to assume you mean ~/OpenDroneMap/src/OpenSfM/cmake_build. There is not a build directory in that path, though. I deleted that cmake_build and ran python setup.py build and in the output were a lot of this:

/home/rick/OpenDroneMap/src/OpenSfM/opensfm/src/third_party/vlfeat/vl/imopv_sse2.c:15:2: error: #error "Compiling with SSE2 enabled, but no SSE2 defined"

error "Compiling with SSE2 enabled, but no SSE2 defined"

^ In file included from /home/rick/OpenDroneMap/src/OpenSfM/opensfm/src/third_party/vlfeat/vl/imopv_sse2.c:22:0: /usr/lib/gcc/i686-linux-gnu/4.8/include/emmintrin.h:31:3: error: #error "SSE2 instruction set not enabled"

error "SSE2 instruction set not enabled"

^

I hope this discussion is not just "fixing" my install, but to figure out what is not working with the normal installation process. If it would be better to work with the edgarriba branch, I can switch back to that.

Thanks

dakotabenjamin commented 8 years ago

@paulinus may be better able to make sense of this...

I see one issue in mapillary/OpenSfM: https://github.com/mapillary/OpenSfM/issues/68

maybe try that?

dakotabenjamin commented 8 years ago

If you're looking for a better install process, dev branch is where to go. It is what culminated from the edgarriba branch (and seems to be much more stable than the main branch).

I'm hoping to merge that once we figure out how to properly link the shared libraries and remove the need to set environment variables manually.

w0rcy commented 8 years ago

Are there other dependencies I should install first? Thanks On Mar 30, 2016 10:40 AM, "Dakota Benjamin" notifications@github.com wrote:

If you're looking for a better install process, dev branch is where to go. It is what culminated from the edgarriba branch (and seems to be much more stable).

I'm hoping to merge that once we figure out how to properly link the shared libraries and remove the need to set environment variables manually.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/OpenDroneMap/OpenDroneMap/issues/282#issuecomment-203517979

dakotabenjamin commented 8 years ago

The dev readme has complete build instructions

w0rcy commented 8 years ago

OK, I'm going through the dev flow. What does the line

bash configure.sh

do? I get:

bash: configure.sh: No such file or directory

Is that a file that should be in the odm directory, or should that be found elsewhere? All I have done so far is the git and set the env variables.

On Wed, Mar 30, 2016 at 12:10 PM, Dakota Benjamin notifications@github.com wrote:

The dev readme https://github.com/OpenDroneMap/OpenDroneMap/blob/dev/README.md has complete build instructions

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/OpenDroneMap/OpenDroneMap/issues/282#issuecomment-203560581

Cheers, Rick -iii-<

w0rcy commented 8 years ago

Oh, I see it in the dev branch on the web page. I need to get it to download the proper branch, not what it says in the instructions.

On Wed, Mar 30, 2016 at 1:42 PM, Richard Huebner ricky@hueb.net wrote:

OK, I'm going through the dev flow. What does the line

bash configure.sh

do? I get:

bash: configure.sh: No such file or directory

Is that a file that should be in the odm directory, or should that be found elsewhere? All I have done so far is the git and set the env variables.

On Wed, Mar 30, 2016 at 12:10 PM, Dakota Benjamin < notifications@github.com> wrote:

The dev readme https://github.com/OpenDroneMap/OpenDroneMap/blob/dev/README.md has complete build instructions

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/OpenDroneMap/OpenDroneMap/issues/282#issuecomment-203560581

Cheers, Rick -iii-<

Cheers, Rick -iii-<

w0rcy commented 8 years ago

So the instructions should also have

git checkout dev

after the git command.

On Wed, Mar 30, 2016 at 1:43 PM, Richard Huebner ricky@hueb.net wrote:

Oh, I see it in the dev branch on the web page. I need to get it to download the proper branch, not what it says in the instructions.

On Wed, Mar 30, 2016 at 1:42 PM, Richard Huebner ricky@hueb.net wrote:

OK, I'm going through the dev flow. What does the line

bash configure.sh

do? I get:

bash: configure.sh: No such file or directory

Is that a file that should be in the odm directory, or should that be found elsewhere? All I have done so far is the git and set the env variables.

On Wed, Mar 30, 2016 at 12:10 PM, Dakota Benjamin < notifications@github.com> wrote:

The dev readme https://github.com/OpenDroneMap/OpenDroneMap/blob/dev/README.md has complete build instructions

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/OpenDroneMap/OpenDroneMap/issues/282#issuecomment-203560581

Cheers, Rick -iii-<

Cheers, Rick -iii-<

Cheers, Rick -iii-<

w0rcy commented 8 years ago

In the dev branch, I still get the SSE2 problems as above. I did what he said in mapillary/OpenSfM#68, in the file is that he calls "CMakeLists.txt in ../opensfm/src" which is called: ~/odm/SuperBuild/src/opensfm/opensfm/src/CMakeLists.txt. Is that right?

Then it was able to finish the configure.sh script without errors that I saw. Then, when running this line:

mkdir build && cd build && cmake .. && make && cd ..

I saw the following errors go by. There were several of these:

/home/rick/odm/modules/odm_georef/src/Georef.cpp:142:21: warning: conversion to ‘Eigen::Transform<float, 3, 2>::Scalar {aka float}’ from ‘double’ may alter its value [-Wconversion] pose(0,1) = -1.0*pose(0,1); ^

and one of these:

/home/rick/odm/SuperBuild/install/include/pcl-1.7/pcl/octree/octree_key.h:147:9: warning: ISO C++ prohibits anonymous structs [-Wpedantic] }; ^ I also just realized that I'm not running as su. Would that help?

w0rcy commented 8 years ago

I'll check back with you all in a few months and see how it is coming along. Please do a fresh install on a test machine now and then, just to see if it is relying on other things that you already have that aren't included in the git data. Thanks

dakotabenjamin commented 8 years ago

Sorry for the delayed response- it looks like you had a successful build, those errors in the make are just warnings. Let us know how it goes! :+1:

dakotabenjamin commented 8 years ago

@w0rcy any update?

w0rcy commented 8 years ago

I have not revisited this. I have been thinking, though, could my problem be caused by my old AMD architecture causing something to not install correctly? Maybe if I try Ubuntu 16.04LTS. I could not get 14.04, just 14.04.4. Have you tried it with this version? On May 16, 2016 2:00 PM, "Dakota Benjamin" notifications@github.com wrote:

@w0rcy https://github.com/w0rcy any update?

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/OpenDroneMap/OpenDroneMap/issues/282#issuecomment-219529979

dakotabenjamin commented 8 years ago

I recently pushed an update to get 16.04 compatible. Another option, if you have any experience with docker it will work in any architecture.