-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Errors in python setup.py develop #13
Comments
Hi @Toanl-H, I suspect the issue is coming from COLMAP API change (I think it came with version 3.9). I'll try to test the hypothesis and update the code in the next days. |
@Toanl-H did you run into any cmake errors? |
Hey @v-pnk, did you manage to get the setup working? My team and I are having several issues pertaining to CMake, setuptools, colmap, and a bunch of other dependencies. Do you have any insight into how we can get this thing working? The farthest I've gotten is that I've successfully run the image-matching-toolbox /home/cd-linux/git-projects/meshloc_release/src/pose_estimation.cc:50:10: fatal error: colmap/base/camera.h: No such file or directory
50 | #include <colmap/base/camera.h> We've followed the official instructions to install colmap on our systems (WSL and MacOS), but we're still having issues. After looking into it, it seems that the I wonder if using an old version of colmap would resolve this issue temporarily. |
Hi, I did not run into any issues with COLMAP 3.8. I'll install the latest COLMAP version and change the code to be compatible. |
Hey, sounds good. I'll keep an eye out for the update. Please do let us know if there are any other concerns we should be aware of during installation. |
Hello @v-pnk, our team is still hoping to implement the algorithm into our pipeline, are there any updates to this issue? |
Hi @AlainAmbrose, I changed the code to work with the new PyCOLMAP version, but encountered some segmentation faults during testing, which need to be fixed before updating the repo. Hopefully it will be ready withing the next few days. Sorry that it takes so long and thanks for your patience. |
Sounds great, thanks for the quick response. |
The repository is now updated and tested with COLMAP 3.11. I also encountered some issues with Image Matching Toolbox installation (as mentioned by @christiandur4nt), but the updated installation instructions in README are working on my machine. Check if it works for you too and let me know if you encounter any issues. |
Hey @v-pnk. thanks for letting us know about those updates. We're going to test the install as soon as we can, and we'll let you know how it goes. I'm curious, how did you get the Image Matching Toolbox to work? Did you also have to manually update dependencies? |
Yes, there is now a pip command in README which installs a minimal set of compatible packages (determined by trial and error) instead of creating the environment using the yaml file from the Image Matching Toolbox repository. |
Hey @v-pnk, I tried the new installation steps, and this time it seems MeshLoc was successfully installed. However, when I try to execute the example commands for localization, I get the following error: Can not import sparsencnet: No module named 'MinkowskiEngine'
Namespace(all_matches_ransac=False, bias_x=0.0, bias_y=0.0, cluster_keypoints=True, colmap_model_dir='../meshloc_release/datasets/aachen_day_night_v11/db_colmap_models/800_undist', covisibility_filtering=False, db_depth_image_dir='../meshloc_release/datasets/aachen_day_night_v11/db_renderings/AC14_depth_800_undist', db_image_dir='../meshloc_release/datasets/aachen_day_night_v11/images/images_db_undist_800', match_prefix='../meshloc_release/experiment_matches', max_ransac_iterations=100000, max_side_length=-1, merge_3D_points=False, method_config='aachen_v1_1', method_name='patch2pix', method_string='patch2pix_aachen_v1_1_', min_ransac_iterations=10000, out_prefix='../meshloc_release/experiment_outputs', query_dir='../meshloc_release/datasets/aachen_day_night_v11/images/images_q_night_800', query_list='../meshloc_release/datasets/aachen_day_night_v11/night_time_queries_with_intrinsics_800_basenames.txt', ransac_type='POSELIB+REF', refinement_range=1.0, refinement_step=0.25, rendering_postfix=None, reproj_error=20.0, retrieval_pairs='../meshloc_release/datasets/aachen_day_night_v11/retrieval_pairs/NetVLAD_top50_underscores.txt', top_k=50, triangulate=False, use_orig_db_images=True)
191
Loading the reference poses
Detected model format: '.txt'
Found 6697 images and 5232 cameras
Using the 50 top-ranked images
configs/patch2pix.yml
aachen_v1_1
Traceback (most recent call last):
File "../meshloc_release/localize.py", line 624, in <module>
main()
File "../meshloc_release/localize.py", line 366, in main
imm_args = yaml.load(f, Loader=yaml.FullLoader)[args.method_config]
KeyError: 'aachen_v1_1' I followed the new instructions you provided and did not refer to the image-matching-toolbox instructions this time, but is there more I have to do to install this 'MinkowskiEngine'? Is this the source of the issue? I am aware that the instructions for setting up SparseNCNet exist here, but I would like to know how you got it working on your end. Also, for more context, once I am able to get MeshLoc working, I'd like to try deploying it on new 3D meshes for a project I'm working on to perform localization on new query images. I'd appreciate any insight you could provide. |
Hi @christiandur4nt, I am getting The actual error which stops your script is because of the |
- Change method_config parameter in Aachen localization example to conform with immatch Patch2Pix config as mentioned in #13
Thanks @v-pnk. I made the change and it fixed that issue. I then ran into the issue with the Image Matching Toolbox failing to download the pretrained models but your suggested fix of switching to a more recent branch in Patch2Pix fixed that too. With these fixes I manually downloaded each of the directories/files required for the Aachen v1.1 dataset example command from here (using the included download script to download everything was taking too long), then I ran the example command and got the following: EDIT: @colintle also ran into this issue below. Trying to localize query image IMG_20161227_172439.jpg
Matching against ../meshloc_release/datasets/aachen_day_night_v11/images/images_db_undist_800/db_1883.jpg
0%| | 0/191 [00:00<?, ?it/s]
Traceback (most recent call last):
File "../meshloc_release/localize.py", line 624, in <module>
main()
File "../meshloc_release/localize.py", line 450, in main
img2_id = map_db_name_to_id[retrieved_db[j].strip()]
KeyError: 'db_1883.jpg' I checked, and this python3 ../meshloc_release/localize.py \
--db_image_dir ../meshloc_release/datasets/aachen_day_night_v11/images/images_db_undist_800 \
--db_depth_image_dir ../meshloc_release/datasets/aachen_day_night_v11/db_renderings/AC14_depth_800_undist \
--colmap_model_dir ../meshloc_release/datasets/aachen_day_night_v11/db_colmap_models/800_undist \
--query_dir ../meshloc_release/datasets/aachen_day_night_v11/images/images_q_night_800 \
--query_list ../meshloc_release/datasets/aachen_day_night_v11/night_time_queries_with_intrinsics_800_basenames.txt \
--out_prefix ../meshloc_release/experiment_outputs \
--match_prefix ../meshloc_release/experiment_matches \
--method_name patch2pix \
--method_config aachen_v1.1 \
--method_string patch2pix_aachen_v1_1_ \
--retrieval_pairs ../meshloc_release/datasets/aachen_day_night_v11/retrieval_pairs/NetVLAD_top50_underscores.txt \
--top_k 50 \
--max_side_length -1 \
--ransac_type POSELIB+REF \
--min_ransac_iterations 10000 \
--max_ransac_iterations 100000 \
--reproj_error 20.0 \
--use_orig_db_images \
--cluster_keypoints FYI, the installation README currently says to run |
Hi @v-pnk, I also ran into the same issue as @christiandur4nt with the invalid KeyError for |
Hi @christiandur4nt, @colintle, thanks for reporting that. There are two ways how to store the images - in the original directory structure ( Try to change
to
In the repository, there are both options for undistorted database COLMAP models at 800 px ( Sorry for confusion, I have to fix that and make the description in the README more detailed. |
- Fix the Aachen v1.1 recipe and add more details to the image directory structure used in the data repository as discussed in #13
Hey @v-pnk. Thanks a ton for helping us out. It seems that it worked and we've finally gotten things running on our ends 😄. I'll be sure to keep in touch in case we run into any other issues. On a final note, since my team and I are interested in using MeshLoc for a project, would it be okay to stay in contact with you? I'm sure we'll have questions down the line, and we'd appreciate having a point of contact along the way. Otherwise, we can create issues instead if you prefer. Thanks again! |
Hi @christiandur4nt, sure, either write to me at vojtech.panek(at)cvut.cz or create an issue as you want. |
Dear Author, l followed your steps to configure, but l get the following error when cd python setup.py develop. l really can't find the reason for this. Perhaps you have encountered a similar problem? The error are as follows.
(immatchlsk) lsk@lsk-B760M-GAMING-AC-DDR4:~/lsk/code/image-matching-toolbox/meshloc_release$ python setup.py develop
running develop
/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
!!
easy_install.initialize_options(self)
/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
!!
self.initialize_options()
running egg_info
writing meshloc.egg-info/PKG-INFO
writing dependency_links to meshloc.egg-info/dependency_links.txt
writing top-level names to meshloc.egg-info/top_level.txt
reading manifest file 'meshloc.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'meshloc.egg-info/SOURCES.txt'
running build_ext
['cmake', '/home/lsk/lsk/code/image-matching-toolbox/meshloc_release', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/lsk/lsk/code/image-matching-toolbox/meshloc_release', '-DPYTHON_EXECUTABLE=/home/lsk/anaconda3/envs/immatchlsk/bin/python', '-DCMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc', '-DCMAKE_BUILD_TYPE=Release']
-- pybind11 v2.14.0 dev1
-- Found installed version of Eigen: /usr/lib/cmake/eigen3
-- Found required Ceres dependency: Eigen version 3.3.7 in /usr/include/eigen3
-- Found required Ceres dependency: glog
-- Found installed version of gflags: /usr/lib/x86_64-linux-gnu/cmake/gflags
-- Detected gflags version: 2.2.2
-- Found required Ceres dependency: gflags
-- Found Ceres version: 1.14.0 installed in: /usr with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, CXSparse, SchurSpecializations, OpenMP, Multithreading]
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: filesystem graph program_options system
-- Found FreeImage
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/libfreeimage.so
-- Found FLANN
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/libflann.so
-- Found LZ4
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/liblz4.so
-- Found Metis
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/libmetis.so
-- Found Glog
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/libglog.so
-- Found Glew
-- Includes : /usr/include
-- Libraries : /usr/lib/x86_64-linux-gnu/libGLEW.so
-- Found installed version of Eigen: /usr/lib/cmake/eigen3
-- Found required Ceres dependency: Eigen version 3.3.7 in /usr/include/eigen3
-- Found required Ceres dependency: glog
-- Found installed version of gflags: /usr/lib/x86_64-linux-gnu/cmake/gflags
-- Detected gflags version: 2.2.2
-- Found required Ceres dependency: gflags
-- Found Ceres version: 1.14.0 installed in: /usr with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, CXSparse, SchurSpecializations, OpenMP, Multithreading]
-- Enabling OpenMP support
-- Using header-only CGAL
-- Targetting Unix Makefiles
-- Using /usr/bin/c++ compiler.
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.48")
-- Boost include dirs: /usr/include
-- Boost libraries:
-- Using gcc version 4 or later. Adding -frounding-math
-- Found CGAL
-- Includes : /usr/include
-- Libraries : CGAL
-- Enabling CUDA support (version: 11.8.89, archs: native)
-- Found Qt
-- Module : /home/lsk/anaconda3/envs/immatchlsk/lib/cmake/Qt5Core
-- Module : /home/lsk/anaconda3/envs/immatchlsk/lib/cmake/Qt5OpenGL
-- Module : /home/lsk/anaconda3/envs/immatchlsk/lib/cmake/Qt5Widgets
-- Enabling GUI support
-- Disabling OpenGL support
-- Enabling GPU support (OpenGL: , CUDA: ON)
-- Configuring done (0.2s)
-- Generating done (0.0s)
-- Build files have been written to: /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/build/temp.linux-x86_64-cpython-38
[ 2%] Building CXX object src/CMakeFiles/meshloc.dir/main.cc.o
[ 4%] Building CXX object src/CMakeFiles/meshloc.dir//PoseLib/PoseLib/misc/essential.cc.o
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:61: warning: "EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM" redefined
61 | #define EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(...)
|
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:56: note: this is the location of the previous definition
56 | #define EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(...)
|
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:89:1: note: previous definition of ‘class std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >’
89 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Vector2d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<double, 4, 1>, std::allocator<Eigen::Matrix<double, 4, 1> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:90:1: note: previous definition of ‘class std::vector<Eigen::Matrix<double, 4, 1>, std::allocator<Eigen::Matrix<double, 4, 1> > >’
90 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Vector4d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<float, 4, 1>, std::allocator<Eigen::Matrix<float, 4, 1> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:91:1: note: previous definition of ‘class std::vector<Eigen::Matrix<float, 4, 1>, std::allocator<Eigen::Matrix<float, 4, 1> > >’
91 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Vector4f)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<double, 2, 2>, std::allocator<Eigen::Matrix<double, 2, 2> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:92:1: note: previous definition of ‘class std::vector<Eigen::Matrix<double, 2, 2>, std::allocator<Eigen::Matrix<double, 2, 2> > >’
92 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix2d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<float, 2, 2>, std::allocator<Eigen::Matrix<float, 2, 2> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:93:1: note: previous definition of ‘class std::vector<Eigen::Matrix<float, 2, 2>, std::allocator<Eigen::Matrix<float, 2, 2> > >’
93 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix2f)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<double, 4, 4>, std::allocator<Eigen::Matrix<double, 4, 4> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:94:1: note: previous definition of ‘class std::vector<Eigen::Matrix<double, 4, 4>, std::allocator<Eigen::Matrix<double, 4, 4> > >’
94 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix4d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<float, 4, 4>, std::allocator<Eigen::Matrix<float, 4, 4> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:95:1: note: previous definition of ‘class std::vector<Eigen::Matrix<float, 4, 4>, std::allocator<Eigen::Matrix<float, 4, 4> > >’
95 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix4f)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Transform<double, 3, 2>, std::allocator<Eigen::Transform<double, 3, 2> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:96:1: note: previous definition of ‘class std::vector<Eigen::Transform<double, 3, 2>, std::allocator<Eigen::Transform<double, 3, 2> > >’
96 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Affine3d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Transform<float, 3, 2>, std::allocator<Eigen::Transform<float, 3, 2> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:97:1: note: previous definition of ‘class std::vector<Eigen::Transform<float, 3, 2>, std::allocator<Eigen::Transform<float, 3, 2> > >’
97 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Affine3f)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Quaternion, std::allocator<Eigen::Quaternion > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:98:1: note: previous definition of ‘class std::vector<Eigen::Quaternion, std::allocator<Eigen::Quaternion > >’
98 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Quaterniond)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Quaternion, std::allocator<Eigen::Quaternion > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:99:1: note: previous definition of ‘class std::vector<Eigen::Quaternion, std::allocator<Eigen::Quaternion > >’
99 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Quaternionf)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<float, 3, 4>, std::allocator<Eigen::Matrix<float, 3, 4> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:100:1: note: previous definition of ‘class std::vector<Eigen::Matrix<float, 3, 4>, std::allocator<Eigen::Matrix<float, 3, 4> > >’
100 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix<float, 3, 4>)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/camera_pose.h:33,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:55,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: error: redefinition of ‘class std::vector<Eigen::Matrix<double, 3, 4>, std::allocator<Eigen::Matrix<double, 3, 4> > >’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/PoseLib/PoseLib/alignment.h:64:11: note: in definition of macro ‘EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM’
64 | class vector<VA_ARGS, std::allocator<VA_ARGS>>
| ^~~~~~
In file included from /usr/local/include/colmap/sensor/models.h:33,
from /usr/local/include/colmap/scene/camera.h:32,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:51,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/util/eigen_alignment.h:101:1: note: previous definition of ‘class std::vector<Eigen::Matrix<double, 3, 4>, std::allocator<Eigen::Matrix<double, 3, 4> > >’
101 | EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION_CUSTOM(Eigen::Matrix<double, 3, 4>)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc: In function ‘pybind11::dict pose_estimation(pybind11::dict, std::vectorpybind11::dict, std::vectorpybind11::dict, pybind11::dict)’:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:470:19: error: ‘struct colmap::Camera’ has no member named ‘SetModelIdFromName’
470 | colmap_camera.SetModelIdFromName("PINHOLE");
| ^~~~~~~~~~~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:471:19: error: ‘struct colmap::Camera’ has no member named ‘SetWidth’
471 | colmap_camera.SetWidth(kWidth);
| ^~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:472:19: error: ‘struct colmap::Camera’ has no member named ‘SetHeight’
472 | colmap_camera.SetHeight(kHeight);
| ^~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:475:19: error: ‘struct colmap::Camera’ has no member named ‘SetParams’
475 | colmap_camera.SetParams(colmap_cam_params);
| ^~~~~~~~~
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:524:41: error: cannot convert ‘Eigen::Vector4d*’ {aka ‘Eigen::Matrix<double, 4, 1>’} to ‘colmap::Rigid3d’
524 | &q_vec, &t_vec, &colmap_camera,
| ^~~~~~
| |
| Eigen::Vector4d* {aka Eigen::Matrix<double, 4, 1>}
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:52,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/estimators/pose.h:132:36: note: initializing argument 4 of ‘bool colmap::EstimateAbsolutePose(const colmap::AbsolutePoseEstimationOptions&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, colmap::Rigid3d, colmap::Camera*, size_t*, std::vector)’
132 | Rigid3d cam_from_world,
| ~~~~~~~~~^~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:533:41: error: cannot convert ‘Eigen::Vector4d*’ {aka ‘Eigen::Matrix<double, 4, 1>’} to ‘colmap::Rigid3d’
533 | &q_vec, &t_vec, &colmap_camera)) {
| ^~~~~~
| |
| Eigen::Vector4d* {aka Eigen::Matrix<double, 4, 1>}
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:52,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/estimators/pose.h:172:34: note: initializing argument 5 of ‘bool colmap::RefineAbsolutePose(const colmap::AbsolutePoseRefinementOptions&, const std::vector&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, colmap::Rigid3d, colmap::Camera*, Eigen::Matrix6d*)’
172 | Rigid3d* cam_from_world,
| ~~~~~~~~~^~~~~~~~~~~~~~
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:620:38: error: cannot convert ‘Eigen::Vector4d*’ {aka ‘Eigen::Matrix<double, 4, 1>’} to ‘colmap::Rigid3d’
620 | &q_vec, &t_vec, &colmap_camera)) {
| ^~~~~~
| |
| Eigen::Vector4d* {aka Eigen::Matrix<double, 4, 1>}
In file included from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/pose_estimation.cc:52,
from /home/lsk/lsk/code/image-matching-toolbox/meshloc_release/src/main.cc:33:
/usr/local/include/colmap/estimators/pose.h:172:34: note: initializing argument 5 of ‘bool colmap::RefineAbsolutePose(const colmap::AbsolutePoseRefinementOptions&, const std::vector&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, colmap::Rigid3d, colmap::Camera*, Eigen::Matrix6d*)’
172 | Rigid3d* cam_from_world,
| ~~~~~~~~~^~~~~~~~~~~~~~
[ 6%] Building CXX object src/CMakeFiles/meshloc.dir//PoseLib/PoseLib/robust.cc.o
[ 8%] Building CXX object src/CMakeFiles/meshloc.dir/__/PoseLib/PoseLib/robust/bundle.cc.o
make[2]: *** [src/CMakeFiles/meshloc.dir/build.make:76:src/CMakeFiles/meshloc.dir/main.cc.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[1]: *** [CMakeFiles/Makefile2:116:src/CMakeFiles/meshloc.dir/all] 错误 2
make: *** [Makefile:91:all] 错误 2
Traceback (most recent call last):
File "setup.py", line 86, in
setup(
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/init.py", line 117, in setup
return distutils.core.setup(**attrs)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 183, in setup
return run_commands(dist)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 199, in run_commands
dist.run_commands()
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 954, in run_commands
self.run_command(cmd)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/dist.py", line 950, in run_command
super().run_command(command)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 973, in run_command
cmd_obj.run()
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/command/develop.py", line 35, in run
self.install_for_development()
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/command/develop.py", line 112, in install_for_development
self.run_command('build_ext')
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
self.distribution.run_command(command)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/dist.py", line 950, in run_command
super().run_command(command)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 973, in run_command
cmd_obj.run()
File "setup.py", line 39, in run
self.build_extension(ext)
File "setup.py", line 84, in build_extension
subprocess.check_call(['cmake', '--build', '.'] + build_args, cwd=self.build_temp)
File "/home/lsk/anaconda3/envs/immatchlsk/lib/python3.8/subprocess.py", line 364, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j2']' returned non-zero exit status 2.
The text was updated successfully, but these errors were encountered: