C++ source code from my PhD research is now onlineLicense - Download - Browse Source - Pre-requisites - Features - Install - Binaries - Datasets - Parameter documentation - Coming Soon - Known issues - Associated publicationsLicenseLicense: my code is free for any use. 5-point essential matrix code is for academic use only (based on MATLAB and C code from from Henrik Stewenius), also includes code based on Edward Rosten's FAST code with BSD license. Please email ( ) and let me know if you find it useful or find any bugs or can't get something working.DownloadWorks in Windows and Linux. You need svn to get the latest version (or TortoiseSVN in Windows). svn might need to be told if you use a proxy. BoWSLAM only works in Linux at the moment (wouldn't be too hard to port). Additional instructions here. Linux: Use this command to check out a copy into a folder called workspace. Hit enter if asked for a password. svn co https://open.grcnz.com/svn/point-stereo/trunk/workspace workspace Windows: Right-click in explorer, select SVN Checkout... Enter this url and hit ok: https://open.grcnz.com/svn/point-stereo/trunk/workspace Try the latest revision first, revision 955 is fairly stable if anything is broken in the latest one. Browse Sourcehttps://open.grcnz.com/svn/point-stereo/trunk/workspace/ Or download revision 958 including all code, libraries and binaries (gcc 4.4, some bugs in BaySAC fixed since then) Pre-requisites:boost (any recent version, compiled), Eigen (matrix library--version 2.x). Some functions require OpenCV (preferably version 2.0)Features(more details here)BaySAC (and RANSAC and PROSAC and SimSAC) for Essential Matrix estimation and Homography estimation. Topdown refinement of solution. Gold-standard refinement of E (experimental). Fast 5-point Essential Matrix estimation and Levenberg-Marquardt refinement. Estimate Homography and decompose into translation, rotation, plane-normal (Levenberg-Marquardt) Bag-of-Words library: Real-time performance and dynamic retraining. Supports 10k+ images. Fast pairwise correspondences. K-medoids clustering. InstallSee License_and_Installation_Readme.txt. To use one simple function just copy the relevent code. To build libraries: Install in Linux (sorry no proper make system yet) Make three symlinks to the boost, opencv and Eigen in the directory you checked-out into: ln -s PATH_TO_YOUR_OPENCV_DIR opencv; ln -s PATH_TO_YOUR_EIGEN_DIR Eigen; ln -s PATH_TO_YOUR_BOOST_DIR boost Either:
or
Otherwise can be built with GCC. Consistency checks are added when using -O0. Install in Windows Visual Studio 2008 (open ransac_bow_vision_lib.sln) Make sure OpenCV, boost, Eigen header and library paths are set in the VC++ Directories BinariesThe repository is not stable as I keep fixing bugs--it is easiest to get bug fixes using svn. You can use the Bag-of-Words code from any programming language under Windows DatasetsAnyone interested in using datasets should email me ( ). They're mostly too big to put online at the moment but I could post a DVD. Most are low framerate, fairly high resolution and from a single camera, and some have GPS ground truth. Parameter documentationDocumentation for all parameters is online here. Some headers are documented, e.g. ransac.h for BaySAC, E estimation, H estimation. Coming soon1) Proper make system 2) Seperate out clustering functionality (CLARA k-medoids) 3) More examples and documentation :-) K-medoids has hard-coded limit of 450 data-points in Windows, and stack allocation will fail with more than about 1000 in Linux.
|
| Home - Photos & Trip Reports - Tom's research - Hil's Hydrology research - Contact us - Links |