QtAliceVision is a C++ plugin providing:
- classes to load and visualize AliceVision and Alembic data through QML
- an OpenImageIO backend for image IO in Qt.
Currently available:
- Features Viewer
- Position, scale and orientation
- Status: extracted, matched or reconstructed
- Matches Viewer
- Statistics
- Per view statistics with reprojection error, observations histograms
- Global SfM statistics with number of landmarks/matches, reprojection errors, observations per view
- Float Image Viewer
- Visualize images with floating point precision
- Dynamically adjust gain and gamma
- 3D Depth Maps
- Visualize depth/sim maps generated by the AliceVision framework in a 3D viewer
- Alembic 3D visualization
- Point clouds
- Cameras
- OIIO backend
- Read RAW images from DSLRs
- Read intermediate files of the AliceVision framework stored in EXR format
The project is released under MPLv2, see COPYING.md.
Get the source code:
git clone --recursive git@github.com:alicevision/QtAliceVision.git cd QtAliceVisionSee INSTALL.md to build and install the project.
Once built and with the plugin installation folder in QML2_IMPORT_PATH:
- Create an
MSfMDataobject to get access to the SfM information:
import AliceVision 1.0 MSfMData { id: sfmData sfmDataPath: "/path/to/SfM/sfmData.abc” }- Create an
MTracksto load all matches and get access to tracks information:
import AliceVision 1.0 MTracks { id: tracks matchingFolder: "/path/to/FeatureMatching/UID/” }- Create a
FeaturesViewerto visualize features position, scale, orientation and optionally information about the feature status regarding tracks and SfmData.
FeaturesViewer { colorOffset: 0 describerType: "sift" featureFolder: "/path/to/features/folder" mTracks: tracks viewId: 101245654 color: “blue” landmarkColor: “red” displayMode: FeaturesViewer.Points mSfmData: sfmData }- Create an
MSfMDataStatsto display global statistics about your SfMData:
MSfMDataStats { msfmData: msfmData mTracks: mTracks }- Create an
MViewStatsto display statistics about a specific View of your SfMData:
MViewStats { msfmData: msfmData viewId: 451244710 }- Create a
FloatImageViewerto display an image with floating point precision, allowing to dynamically adjust the gain and gamma:
FloatImageViewer { source: "/path/to/image" gamma: 1.0 gain: 1.0 width: textureSize.width || 500 height: textureSize.height || 500 channelMode: "RGB" }- Create a
DepthMapEntityto display a depth map as a point cloud in a 3D viewer:
import DepthMapEntity 1.0 Scene3D { DepthMapEntity { source: "depthmap.exr" } }- Create a
SfmDataEntityto display point clouds (in .abc, .sfm or .json format) and cameras in a 3D viewer:
import SfmDataEntity 1.0 Scene3D { SfmDataEntity { source: "/path/to/pointcloud.sfm" } }When added to the QT_PLUGIN_PATH, all supported image files will be loaded through this plugin.