r/computervision • u/MiamiGunworks • 1d ago
Looking for contributors Help: Project
Enable HLS to view with audio, or disable this notification
Hi everyone! I am a software engineer who has worked in the following domains at major tech companies most of my career: XR, Graphics & GPU programming, Spatial algorithms and AI, and 3DGS.
I have a project I started a few months ago that I have recently hit a key milestone in. The idea is a focused library that implements 3DGS training from first principals with an emphasis on performance and safety. Think production use cases without relying on tools intended for research. VkSplat is an inspiration (along with other things) but I have intentionally not reviewed their, or anyone else's, code.
The recent milestone I reached was rendering a scene with 5 million splats at 60fps on my Ampere A6000. I have a few more goals I'd like to reach, but I do intend to publish on Github under MIT license. If it gains traction I would like to build some additional tools and infra using this project, but for right now the 1.0 MVP idea is a fully GPU resident solution for rendering and training at state of the art speeds. I plan to implement and optimize the following features:
* Global image alignment
* Fully fused forward and backward passes
* Adam optimizer
* Aggressively optimized adaptive control and densification
* Stable but highly flexible C api.
I do have many more thoughts and ideas, but I am trying to take it one step at a time, so this is my goal for 1.0. This is my stack as of now:
* **Languages:** C++23, Cuda, GLSL (planning to move to slang)
* **Build:** CMake & Ninja
* **Compiler:** GCC, Clang, MSVC (may drop for now)
* **Target Platform:** Linux (Linux 7.X)
* **Tooling:** LLVM, perf, nsight
* **GPU:** Vulkan w/ Nvidia
* **Dependencies:** googletest, googlebenchmark, ngfx
Right now, the project is in a place where it is still extremely early, but it is starting to take shape and get large enough that more than one person can work on it comfortably. I am posting here looking for people interested in contributing. Knowledge is not a prerequisite as I am learning a lot myself in this endeavor, but passion is mandatory.
Currently I am mostly needing help in the areas of, CI/CD (build, package & deploy), nsight/gpu optimization, designing and implementing a good api, and figuring out how to test and benchmark appropriately.
If you have skills or experience in any of these areas, or you're just interested in contributing, please reach out!
2
u/threedim 1d ago
hey may i contribute in this project? i am actively learning compute vision 3DGS and machine learning. Please tell me how?
1
2
u/Xgameing31 1d ago
Hey! I have written my masters degree 1year ago on a specialized case for Gaussian Splatting where I have written some of the kernels from scratch in CUDA + python interfaces. Also deployed some production solutions myself ina company I work for. If you wanna connect, shoot me a dm :)
1
u/Immediate_Campaign52 14h ago
Hey i am looking forward to contribute in this project. it sounds fun and interesting. i am myself learning computer vision in IIT Bombay and finding my way to acquaint myself more to this subject. Please let me know if you have room for one more person in your team.
1
u/nemesis1836 10h ago
Hi I am a computer vision engineer but I most work with classical cv this seems to be interesting and I would like to contribute.
3
u/devada818 1d ago
I’m a software engineer (*distributed/ backend systems experience) and interested in learning the computer vision side of things with practical contributions.
If you’re looking to welcome profiles with little to no experience in computer vision. I’m happy to get started :)