git404hub

what is lumen-ps fr?

samukashvili/lumen-ps — explained in plain English

Analysis updated 2026-05-18

8PythonAudience · developerComplexity · 4/5LicenseSetup · moderate

tl;dr

A tool that turns a flatbed scanner into a device for capturing realistic 3D surface textures from four rotated scans.

vibe map

mindmap
  root((LUMEN-PS))
    What it does
      Scans with flatbed scanner
      Recovers surface texture
      Produces normal maps
    Tech stack
      Python
      FastAPI
      CUDA
    Use cases
      Leaf and plant scanning
      3D texture maps
      Material digitization
    Limitations
      No shiny materials
      No rigid heavy objects
      Windows only

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Scan a leaf, flower, or piece of fabric to generate realistic 3D texture maps.

VIBE 2

Produce normal, albedo, and height maps for use in 3D rendering or game assets.

VIBE 3

Digitize natural materials like bark or pressed flowers without a specialized camera rig.

VIBE 4

Study photometric stereo techniques applied to everyday scanning hardware.

what's the stack?

PythonFastAPICUDAOpenCV

how it stacks up fr

samukashvili/lumen-ps100/awesome-machine-learningadam-s/car-diagnosis
Stars888
LanguagePythonPythonPython
Last pushed2024-08-07
MaintenanceStale
Setup difficultymoderateeasymoderate
Complexity4/51/53/5
Audiencedeveloperdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 1h+

Runs on Windows with a flatbed scanner, and works faster with an NVIDIA GPU though a CPU fallback exists.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

in plain english

LUMEN-PS turns an ordinary flatbed scanner, the kind used for scanning paper documents, into a tool for capturing detailed surface textures of small physical objects. From four scans of the same object rotated at different angles, it produces normal maps, albedo maps, height maps, and alpha maps, the kind of texture data used to make 3D models look realistic in games, films, or product renders. The trick works because a flatbed scanner's light and sensor sit very close together but not perfectly aligned. That tiny offset means a slightly tilted surface reflects a bit more or less light depending on which way it faces. By rotating the object 90 degrees between each of the four scans, the fixed lamp effectively shines from a different angle each time relative to the object, giving four separate lighting measurements of the same surface. Comparing those four measurements pixel by pixel lets the software work out which way each tiny point on the surface is tilted, separate from its actual base color. Because the object shifts slightly each time it is repositioned, the four scans need careful alignment before this works. The tool handles that with a multi step process: it isolates the object from the background, corrects for rotation, and then applies a more flexible alignment step to account for a leaf or piece of fabric settling slightly differently between scans. This alignment step is done carefully so that only physical movement is corrected for, not the lighting differences that the whole method depends on measuring. Although it started as a tool for scanning leaves and other plant material, the same method works for paper, fabric, tree bark, pressed flowers, prints, and other mostly matte surfaces. It does not work well on shiny or mirror like materials such as polished coins, and the readme warns against scanning anything rigid, heavy, or sharp edged, since that could scratch or crack the scanner glass. It runs on Windows and can use an NVIDIA GPU for faster processing, with a CPU fallback available.

prompts (copy fr)

prompt 1
Explain how photometric stereo can recover surface detail from a flatbed scanner.
prompt 2
Help me understand how to align four rotated scans of the same object for texture reconstruction.
prompt 3
Walk me through generating normal and albedo maps from scanned images for a 3D model.
prompt 4
Show me what kinds of materials work well or poorly with photometric stereo scanning.

Frequently asked questions

what is lumen-ps fr?

A tool that turns a flatbed scanner into a device for capturing realistic 3D surface textures from four rotated scans.

What language is lumen-ps written in?

Mainly Python. The stack also includes Python, FastAPI, CUDA.

What license does lumen-ps use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is lumen-ps to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is lumen-ps for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.