Releases: cdcseacave/openMVS
Add multi-texture support to mesh texturing
- store all stages in Interface MVS format by default
- store dense point-cloud as PLY, including all point-views information, etc
- add max-texture-size and multi-texture support to mesh texturing stage
- speedup/improve fix non-manifold mesh algorithm
- unify library/application initialization/destroying
- add python support for reading DMAP and Interface MVS file formats
- account for different pixel center conventions when importing/exporting COLMAP which uses pixel center at (0.5,0.5) instead of (0, 0) as OpenMVS
- add interface to MVSNet, Nerfstudio and RTMV scene formats
- improve interface to Polycam scene format
- speedup PLY load/save
- speedup/improve ray-triangle intersection
- add support for UV coordinates agnostic about orientation
- add support for storing neighbor views information in Interface MVS format
- add support for C++20
- various other fixes
Add Python API
- add Python API
- COLMAP support in MvgMvsPipeline.py
- interface for binary COLMAP
- interface for Polycam scenes
- tower mode #1017
- estimate 3D points scale
- transform scene by a given transform matrix
- unify Docker scripts and add support for GUI
- fix incorrect comparison in BufferedOutputStream #1010
- add lines structure
- compute the focus of attention of a set of cameras
- add image mask support in mesh texturing
Improved densification of textureless areas
- Improve depth-map estimation in textureless areas using multi-resolution
- Add texture sharpening
- Ground plane estimation
- Estimate volume from the reconstructed mesh
- Texture transfer between two meshes
- Automatic Region-Of-Interest estimation
- Simplify build with vcpkg
- Add tests
- Add Continuous Integration action
- Various bug fixes
Various bug-fixes and algorithm fine-tuning
Most important changes:
- fix various bugs and fine-tune Patch-Match CUDA
- update
MvgMvsPipeline.py
to match the latest OpenMVG and OpenMVS - add support to rescale a scene, including the images, in
InterfaceCOLMAP
- add support to remesh a reconstruction to the mesh cleaning step
- add support to center the scene and set the bounding box to
Viewer
- improve view neighbors selection
- generate depth-maps by rendering a given mesh in each view
- simplify view selection in mesh texturing
Faster & more accurate densification
Most important changes:
- new Patch-Match algorithm with improved accuracy and speed (CUDA)
- add geometric-consistency during depth-map estimation
- cluster large scenes to be processed individually (
--sub-scene-area
) - Region-Of-Interest (ROI) import and scene trim
- GLTF/GLB exporter
Expose depth-maps
Depth-maps stored as DMAP
files can now be exported/imported/visualized. Full changes:
- add DMAP visualization support to Viewer
- expose depth-map file format in Interface.h
- script MvgMvsPipeline.py improvement
- build scripts improvements
- small depth-map estimation improvement
- add option to decimate the input mesh before texturing
- add support for binary COLMAP projects
- add support for Bundle OUT projects (only undistorted cameras)
Implement Semi-Global Matching
Main changes:
- add Semi-Global Matching as a method to estimate a dense point-cloud; this method is still experimental, thus sometimes the speed and completeness might not be as good as the Path-Match approach, though the accuracy could be better; as always any contribution in improving any of these algorithms is welcome
v1.0.1: Merge branch 'develop' into master (#512)
Main changes:
- open depth-map
DMAP
file format for easy utilization outsideOpenMVS
(seeExportDepthDataRaw()
andImportDepthDataRaw()
) - expose some depth-map functions in
SceneDensify.h
- add global
ID
support to image structure to allow processing large scenes by splitting them into multiple sub-scenes to be processed individually
v1.0
First mature version of OpenMVS.
The quality of the dense point-cloud is much improved. Tested on the two most representative benchmarks in this field, OpenMVS obtains a decent position in the leader-board at only a fraction of run-time compared to the other methods, even though using only a CPU implementation:
- ETH3D Benchmark (created by the COLMAP authors)
- Tanks and Temples Benchmark (created by Intel)
Even better results can be obtained by using also the mesh reconstruction
and mesh refinement
modules on top of the dense-point cloud and submit a point-cloud sampled from the more accurate mesh.
The support for the OpenMVG SfM solution was extended with an interface to/from the COLMAP solution, supporting both SfM import and dense point-cloud import/export in order for you to experiment with combining different modules at the various stages of the Multi-View Stereo pipeline.
Enjoy!
v0.9
Merge branch 'develop'