I'm Giorgi Samukashvili, a software developer in Tbilisi, Georgia. I build computer vision, real-time graphics, procedural systems, and developer tools, and I'm best known for LUMEN-PS, which turns a flatbed scanner into a photometric-stereo material scanner.
Portfolio · Tools & projects · Open source · Get in touch ↗
I'm also a computer science student. My work spans computer vision, real-time graphics, procedural systems, and automation, from reconstructing materials with a flatbed scanner to streaming terrain on the GPU.
My technical-art background shapes the tools I make: practical workflows, interactive feedback, and performance that holds up on real devices.
LUMEN-PS turns an ordinary flatbed scanner into a photometric-stereo material scanner. Rotate the subject between four captures, then recover normal, albedo, roughness, height, and alpha maps from the differences in lighting.
A real 1200 dpi kiwi leaf. The first panel is relit using only the recovered normal map.
Built with Python and CUDA: a Windows app and CLI, rigid and non-rigid registration, robust reconstruction, matched material atlases, and re-rendered quality checks.
Explore the repository ↗ · Walkthrough · Documentation
A desktop editor for assembling, lighting, and optimizing 3D scenes, then exporting self-contained WebGL bundles ready to embed in websites.
GPU-first Surface Nets terrain: deterministic hills and caves, seamless octree LOD transitions, and asynchronously baked physics. Transition topology is prepared during generation, so LOD changes can reuse retained meshes.
Live metric depth from concurrent wide and ultrawide camera streams. Compute shaders handle rectification, census matching, four-path SGM, and filtering, while buffered readback overlaps GPU work with camera capture.
A spatial organization add-on that assigns objects to collections by position, with manual zones, world grids, exclusions, fallback collections, and movement tracking.
- LaunchPoint ·
Python
Monte Carlo viewshed intersection on real terrain, estimating a drone operator's location from sightings. - RC-N1 Controller Bridge ·
Python
Turns a DJI RC-N1 remote into a low-latency virtual Xbox 360 controller for simulators and games. - VoiceReady ·
C#
A voice-command assistant for Ready or Not, combining read-only game-state detection with input emulation. Currently broken: a recent game update invalidated its pointer addresses, which need to be relocated before it works again.
| Languages | Python · TypeScript · C# · Java · HLSL |
| Platforms | CUDA · WebGL · OpenGL ES · Unity · Android · Blender |
| Focus | Computer vision · GPU programming · Procedural systems · Developer tools · Automation |
I'm Giorgi Samukashvili, a software developer and computer science student in Tbilisi, Georgia, working on computer vision, GPU programming, and real-time graphics. You can find my portfolio, demos, and free texture utilities at samukashvili.ge.



