aibluefisher / egsfm Goto Github PK
View Code? Open in Web Editor NEWThe old implementation of GraphSfM based on openMVG.
License: BSD 3-Clause "New" or "Revised" License
The old implementation of GraphSfM based on openMVG.
License: BSD 3-Clause "New" or "Revised" License
Hi, I compiled this project and I couldn't run script sfm_divide_and_conquer_pipeline.py
. So I read this script that there have code I23DSFM_SFM_BIN = "EGSfM/i23dSFM/build/Linux-x86_64-Release"
. In my project file,I couldn't found this path. How to solve this problem?
dh@dh-pc:~/Downloads/EGSfM$ ls
app build CMakeLists.txt lib README.md src
bin cmake ext LICENSE scripts
dh@dh-pc:~/Downloads/EGSfM/build$ ls
app CTestTestfile.cmake yaml-cpp-config.cmake
bin ext yaml-cpp-config-version.cmake
CMakeCache.txt lib yaml-cpp.pc
CMakeFiles Makefile yaml-cpp-targets.cmake
cmake_install.cmake src
dh@dh-pc:~/Downloads/EGSfM/build/bin$ ls
compute_stats graph_partition oxford5k_benchmark sequence_match
euclidean_matrix image_search query_expansion svt
dh@dh-pc:~/Downloads/EGSfM/build/bin$
Hi @AIBluefisher,
I'm so interested in your project and now setting up Docker environment to run sample reconstruction.
could you please tell me the working version of ext libraries (eigen, ceres-solver)?
regards,
在windows下编译
cmake成功,boost也有相应路径,但是用VS编译时,还是有大量错误,目前主要的两个错误是
1 boost库的头文件找不到
2 没有头文件strings.h
0224 05:38:12.143676 839 image_cluster.cpp:444] Discarded Edges: 325, 368: 0.00389105
I0224 05:38:12.155125 839 image_cluster.cpp:444] Discarded Edges: 318, 368: 0.00403226
I0224 05:38:12.160722 839 image_cluster.cpp:444] Discarded Edges: 386, 436: 0.00458716
I0224 05:38:12.167448 839 image_cluster.cpp:444] Discarded Edges: 374, 436: 0.00483092
I0224 05:38:12.179388 839 image_cluster.cpp:444] Discarded Edges: 313, 368: 0.00546448
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
……
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
Save sfm_data failed!
I0224 05:38:12.802875 839 sfm_reconstructor.cpp:907]
Performing 0-th reconstruction
Track building
Track filtering
Track export to internal struct
TrackLength, Occurrence
2 5372
3 3103
4 1863
5 1234
6 987
7 782
8 444
9 326
10 64
Automatic selection of an initial pair:
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
A-Contrario initial pair residual: 2.47926
Bundle Adjustment statistics (approximated RMSE):
#views: 2
#poses: 2
#intrinsics: 1
#tracks: 3042
#residuals: 12168
Initial RMSE: 0.174794
Final RMSE: 0.162927
Time (s): 0.061012
=========================
MSE Residual InitialPair Inlier:
-- Robust Resection of view: 1055
nfa=-4880.65 inliers=2157/2180 precisionNormalized=0.0016056 precision=95.3256 (iter=0 ,sample=1776,296,1974,)
nfa=-5117.7 inliers=2172/2180 precisionNormalized=0.00133991 precision=87.0821 (iter=1 ,sample=288,1137,1581,)
nfa=-10718.7 inliers=2134/2180 precisionNormalized=2.52261e-06 precision=3.77847 (iter=3 ,sample=1981,995,713,)
nfa=-10828.1 inliers=2137/2180 precisionNormalized=2.28039e-06 precision=3.5925 (iter=17 ,sample=818,2063,96,)
nfa=-11017.8 inliers=2133/2180 precisionNormalized=1.77891e-06 precision=3.17299 (iter=58 ,sample=789,1450,582,)
nfa=-11402.1 inliers=2149/2180 precisionNormalized=1.29703e-06 precision=2.70936 (iter=291 ,sample=2161,1041,397,)
*** Error in `./bin/sfm_reconstruction': free(): invalid next size (normal): 0x0000000006432040 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f01837847e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7f018378d37a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f018379153c]
……
7f01861eb000-7f01861fb000 rw-p 00000000 00:00 0
7f01861fb000-7f0186221000 r-xp 00000000 08:01 25826120 /lib/x86_64-linux-gnu/ld-2.23.so
7f01863f2000-7f0186404000 rw-p 00000000 00:00 0
7f018641f000-7f0186420000 rw-p 00000000 00:00 0
7f0186420000-7f0186421000 r--p 00025000 08:01 25826120 /lib/x86_64-linux-gnu/ld-2.23.so
7f0186421000-7f0186422000 rw-p 00026000 08:01 25826120 /lib/x86_64-linux-gnu/ld-2.23.so
7f0186422000-7f0186423000 rw-p 00000000 00:00 0
7ffc95590000-7ffc955b1000 rw-p 00000000 00:00 0 [stack]
7ffc955d9000-7ffc955dc000 r--p 00000000 00:00 0 [vvar]
7ffc955dc000-7ffc955de000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Aborted (core dumped)
Thanks for your great works! I meet some bug, any suggestion?
Hello, I am installing EGsfm when compiling error, error code below, can you help me solve it
In file included from /usr/include/c++/7/algorithm:62:0,
from /home/lab218/EGSfM/ext/libvot/src/vocab_tree/clustering.cpp:43:
/usr/include/c++/7/bits/stl_algo.h: In instantiation of ‘_Funct std::for_each(_IIter, _IIter, _Funct) [with _IIter = __gnu_cxx::__normal_iterator<std::thread*, std::vectorstd::thread >; _Funct = std::mem_fun_t<void, std::thread>]’:
/home/lab218/EGSfM/ext/libvot/src/vocab_tree/clustering.cpp:161:81: required from here
/usr/include/c++/7/bits/stl_algo.h:3884:5: error: no match for call to ‘(std::mem_fun_t<void, std::thread>) (std::thread&)’
__f(*__first);
In file included from /usr/include/c++/7/string:48:0,
from /usr/include/c++/7/bits/locale_classes.h:40,
from /usr/include/c++/7/bits/ios_base.h:41,
from /usr/include/c++/7/ios:42,
from /usr/include/c++/7/ostream:38,
from /usr/include/c++/7/iostream:39,
from /home/lab218/EGSfM/ext/libvot/src/vocab_tree/clustering.cpp:35:
/usr/include/c++/7/bits/stl_function.h:946:7: note: candidate: _Ret std::mem_fun_t<_Ret, _Tp>::operator()(_Tp*) const [with _Ret = void; _Tp = std::thread]
operator()(_Tp* __p) const
^~~~~~~~
/usr/include/c++/7/bits/stl_function.h:946:7: note: no known conversion for argument 1 from ‘std::thread’ to ‘std::thread*’
When all the nodes degrees are zero, the sfm_aligner::computePath is giving segmentation error ?
I1021 17:25:22.987895 15644 sfm_aligner.cpp:243] Constructing Minimum Spanning Tree
I1021 17:25:22.987913 15644 sfm_aligner.cpp:245] Construct Minimum Spanning Tree complete
[Graph Info]
Total nodes: 9
Total edges: 0
[Node]:
0 1 2 3 4 5 6 7 8
[Edge]:
I1021 17:25:22.989061 15644 sfm_aligner.cpp:286] Merge the 1-th layer leaf nodes
I1021 17:25:22.989076 15644 sfm_aligner.cpp:292] node: 5, degree: 0
I1021 17:25:22.989084 15644 sfm_aligner.cpp:292] node: 4, degree: 0
I1021 17:25:22.989092 15644 sfm_aligner.cpp:292] node: 3, degree: 0
I1021 17:25:22.989099 15644 sfm_aligner.cpp:292] node: 7, degree: 0
I1021 17:25:22.989107 15644 sfm_aligner.cpp:292] node: 0, degree: 0
I1021 17:25:22.989115 15644 sfm_aligner.cpp:292] node: 8, degree: 0
I1021 17:25:22.989122 15644 sfm_aligner.cpp:292] node: 1, degree: 0
I1021 17:25:22.989130 15644 sfm_aligner.cpp:292] node: 6, degree: 0
I1021 17:25:22.989137 15644 sfm_aligner.cpp:292] node: 2, degree: 0
I1021 17:25:22.989147 15644 sfm_aligner.cpp:549] Computing Path: 1->0
I1021 17:25:22.989174 15644 sfm_aligner.cpp:558] v: 1
Segmentation fault (core dumped)
But image_cluster.txt is showing different graph information with non-zero edges
There are paper about you work? I want know some detail about you work。
By ground control points I mean ground control points with known georeferenced location and pixel locations in various images for model alignment and also to include them as constraints in the bundle adjustments.
Hello! Thank you for your open source! And I have some problems when I built the EGSfM:
In function ‘int main(int, char**)’:
/home/**/EGSfM/ext/libvot/src/examples/image_search.cpp:61:2: error: ‘gflags’ has not been declared gflags::ParseCommandLineFlags(&argc, &argv, true);
and
/home//EGSfM/app/fisher_vector_similarity.cpp:101:5: error: ‘gflags’ has not been declared
gflags::ParseCommandLineFlags(&argc, &argv, false);
/home//EGSfM/app/fisher_vector_trainer.cpp:76:5: error: ‘gflags’ has not been declared
gflags::ParseCommandLineFlags(&argc, &argv, false);
I have already installed the gflags and some paths are shown below.
GFLAGS_INCLUDE_DIR:PATH=/usr/include
GFLAGS_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libgflags.so
// gflags namespace (google or gflags)
GFLAGS_NAMESPACE:STRING=google
So could you please give me some advice on how to deal with this problem? Thank you so much!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.