alicevision / Meshroom

3D Reconstruction Software
http://alicevision.org
Other
11.26k stars 1.09k forks source link

[question] Is only SIFT w/ GPU Acceleration Supported #2584

Open aarenclwong opened 1 month ago

aarenclwong commented 1 month ago

I've been trying to speed up some of my feature extraction steps and it has taken a bit to test out due to large datasets, but just from batch latency, it looks like only SIFT has GPU acceleration support, and not any of the other flavors of sift or other descriptors. Curious if that was intentional, because it was hard to find if so in documentation, and if feature extraction and depth maps were the only two gpu accelerated steps currently supported on 23.1.

natowi commented 4 weeks ago

Implementing GPU acceleration in CUDA is a challenging task. Many of the other descriptors are powered by opencv. popsift (CUDA accelerated SIFT) was developed between 2015 and 2016 as part of a project funded by the EU. Having more GPU acceleration is something we all would like to have, but it would require dedicated time, funding and devs to implement.

Based on your profile you are Proficient in Python, C++, ROS, and algorithm development, - ideal knowledge to contribute to this project. You are most welcome to contribute. You can bring your own enhancement ideas or ask for an issue that is suitable for a first contribution. As pointed out here https://github.com/alicevision/AliceVision/issues/1757 there are two GPU accelerated AKAZE projects, that could be added to AliceVision, and there are even some ML based feature detectors that would be a great addition to https://github.com/alicevision/MeshroomResearch If you need help to get started, feel free to ask :)

reedlt commented 6 days ago

if I wanted to add pypopsift how would I go about doing that

natowi commented 4 days ago

@reedlt maybe take a look at this project - it´s not finished but well documented https://github.com/PIX3LFLUX/MeshroomDFM

and maybe https://github.com/alicevision/AliceVision/pull/1598 is of some use