-
Notifications
You must be signed in to change notification settings - Fork 1
Ideas
Some ideas for future improvement, which may or may not be implemented in the future.
- Export .obj files and use an online viewer, three.js or any other compatible viewer.
- macOS can natively view obj files, with no extra tools required.
- Open3D runs on most platforms.
Look into existing viewers:
- https://github.com/pygfx/wgpu-py
- https://github.com/gabdube/python-vulkan-triangle or https://github.com/gabdube/panic-panda
- https://github.com/ikalevatykh/panda3d_viewer
- imgui or wxwidgets with a 3D viewer widget
- https://github.com/Rad-hi/3D-Rendering-Desktop-App
- https://marketplace.visualstudio.com/items?itemName=obarads.vscode-pc-viewer
- Rotating/dragging with the mouse in the Qt version turned out to be unintuitive, perhaps a slider would be a better approach.
- A 3D image looks interesting, but might not be truly useful. For example, a 2D heat map (z-buffer) could be easier to view and analyze.
- Allow to adjust the scale and angles after reconstruction.
For color images, use color information instead of converting image to grayscale.
To make filter more robust, find top N matches for every point, and only keep the match that can be cross-correlated across both images (select candidate match that correlates between both images).
Try an alternative point cloud --> surface reconstruction, such as the Poisson method.
Improve accuracy of reconstruction from more than two images (structure from motion).
Self calibraton of camera parameters.
Find a way to filter out noise, or improve data density.
Collect benchmark results to compare CPU/GPU performance between different systems.
Replace wgpu with lower-level libraries - ash and metal; could improve performance on macOS.
Some of these projects can be used for reference:
- Open3D - a set of 3D visialisation tools
- Vulkan hardware database - an excellent source of knowledge about GPU capabilities and features