该仓库已停止活跃开发,官方建议改用新的 OpenSfM/OpenSfM 仓库;安装与运行步骤需查阅外部文档站点,README 本身不含命令
README 未给出安装命令,仅链接到 https://opensfm.org/docs/building.html 的构建说明README 未说明
Python 编写的 Structure from Motion 库,从多张图片重建相机位姿和三维场景
开源的运动恢复结构(SfM)流水线,从多张照片自动重建三维场景和相机位姿,适合做摄影测量与三维建模。
核心能力
- 提供特征检测与匹配、最小求解器等 SfM 基础模块
- 构建稳健可扩展的重建流水线,输出相机位姿与三维点云
- 融合 GPS、加速度计等外部传感器数据做地理对齐
- 附带 JavaScript 查看器用于预览模型和调试流水线
容易踩的坑
- v0.5.1最新正式版2020-08-11 · 2020-08-11 09:59 UTC
Added
- Switch from python+OpenCV to internal C++ camera models
- Switch from python to internal C++ tracks manager
- COLMAP import script
Changed
- Docker images : Ubuntu 20.04 (python3), Ubuntu 19.10 (python2)
Improved
- Reprojection derivatives are now computed analytically instead of autodiff-ed (20%-45% speed-up on
opensfm reconstruct) - Phantom4 sensor width @pierotofy
- Fixed CLANG compilation
- v0.4.02020-04-23 · 2020-04-23 12:43 UTC
查看更新说明
Added
- Internal geometric solvers and RANSAC
Changed
- Undistorted images, masks and depthmaps are now under the undistorted folder. Use the
bin/migrate_undistort.shscript to port old datasets to the new folder structure. - Removed dependency on opengv
- Restructured c++ code
Improved
- Undistorting 16bit images now produces 16bit undistorted images. @pierotofy
- Fix bug on multiple reconstruction alignment. @linusmartensson
- v0.3.02019-12-11 · 2019-12-11 20:22 UTC
查看更新说明
Added
- Matching:
- Bag-of-words pair selection
- VLAD pair selection
- Words based matching
Changed
- Local bundle adjustment is used by default
- extract_metadata extracts exif only once
- Changed default FLANN parameters for faster, less precise matching
- Require cmake version 3 or later
Improved
- Faster local bundle adjustment by limiting the neighborhood and the number of iterations
- New GCP file format allows for GCPs without known world coordinates
- Matching:
- v0.2.02018-03-01 · 2018-03-01 22:35 UTC
查看更新说明
Added
- Python 3 support. @spease
- Brown-Conrady camera model. @bdholt1
- reporting
- docs on coordinates systems and incremental reconstruction pipeline. @jdjakub, @bryanibit
- export reconstruction in proj4 geographic coordinates
Improved
- improved initialization for planar scenes
- support for recent (1.65+) versions of boost python. @spease
- fix bug when using GCP. @jhacsonmeza
- better navigation for 360 images. @mpetroff
- use loky for better exception handling when using multi-processing. @pierotofy
- v0.1.02017-06-22 · 2017-06-22 12:53 UTC
查看更新说明
Added
- Add option
local_bundle_radiusto run bundle adjustment locally around the last added image - Add option
optimize_camera_parametersto optimize or not the internal camera parameters - Add tools to split large datasets into multiple submodels and align them a posteriori
Changed
run_allcommand is now namedopensfm_run_all- Features are now saved in the
featuresfolder. The feature type is no longer used to name the feature folder and files - The option
bundle_use_gpsis nowtrueby default. - Update openMVS exporter with current master
Interface.h
Improved
- Speed up the search for candidate matching images
- Open binary file in binary mode under Windows
- Add option
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
NOTE: This repository is no longer under active development. Please use the new OpenSfM repository instead.
OpenSfM
Overview
OpenSfM is a Structure from Motion library written in Python. The library serves as a processing pipeline for reconstructing camera poses and 3D scenes from multiple images. It consists of basic modules for Structure from Motion (feature detection/matching, minimal solvers) with a focus on building a robust and scalable reconstruction pipeline. It also integrates external sensor (e.g. GPS, accelerometer) measurements for geographical alignment and robustness. A JavaScript viewer is provided to preview the models and debug the pipeline.
Checkout this blog post with more demos
Getting Started
License
OpenSfM is BSD-style licensed, as found in the LICENSE file. See also the Facebook Open Source Terms of Use and Privacy Policy