Photometric stereo is a computer vision technique that estimates the surface normals and albedo (base color) of an object by analyzing multiple images of it taken from a fixed camera viewpoint under varying, known lighting directions. By solving the photometric stereo equation, which models how light reflects off a surface given its orientation and material properties, the method reconstructs a dense normal map that encodes fine geometric detail. This process is a core component of inverse rendering, where the goal is to infer intrinsic scene properties from observed images.
Glossary
Photometric Stereo

What is Photometric Stereo?
A foundational computer vision technique for recovering detailed surface geometry and reflectance from images.
The technique assumes a Lambertian reflectance model, where surfaces reflect light equally in all directions, though modern extensions handle more complex Bidirectional Reflectance Distribution Functions (BRDFs). It is distinct from geometric stereo vision, which uses parallax from multiple viewpoints. Photometric stereo is crucial for high-fidelity material capture in applications like digital twins and visual effects, and it provides essential data for training neural appearance models, such as those used in Neural Radiance Fields (NeRF), by supplying accurate surface orientation and reflectance information.
Core Assumptions of Classical Photometric Stereo
Classical photometric stereo is a foundational computer vision technique for recovering surface shape from images. Its mathematical elegance and practical success are built upon a set of specific, idealized assumptions about the scene, camera, and lighting.
Known, Distant Point Light Sources
The algorithm requires precise knowledge of the direction and intensity of each light source for every input image. The distant light assumption means the light source is effectively at infinity, so the illumination direction is constant across the entire object's surface. This simplifies the lighting model to a directional vector, avoiding complex calculations for attenuation and positional variance. In practice, this is achieved using a light stage or calibrated laboratory setup.
Lambertian (Diffuse) Reflectance
The surface is assumed to be a perfect Lambertian reflector. This means it reflects light equally in all directions, and its brightness depends only on the angle between the surface normal and the light direction, not the viewing angle. The reflected radiance is modeled as: L = ρ * (n · l) * I, where ρ is the albedo, n is the surface normal, l is the light direction, and I is the light intensity. This linear relationship is crucial for solving the system of equations. Real-world materials with specular highlights or subsurface scattering violate this assumption and cause errors.
Orthographic or Fixed Perspective Camera
The camera is assumed to be in a fixed position viewing the object under all different lightings. Furthermore, an orthographic projection model is often used, which assumes all light rays entering the camera are parallel. This eliminates perspective distortion and simplifies the relationship between image coordinates and 3D surface points. In many implementations, a perspective camera with a long focal length (approximating orthography) is used, but the fixed viewpoint remains non-negotiable for the core linear solution.
Constant Albedo or Known Variation
The albedo (base color or diffuse reflectance) of the surface point must be constant across all input images for a given pixel. The classical algorithm solves for both the surface normal and a single albedo value per pixel. If the albedo is spatially varying but constant per point (e.g., a painted object), the algorithm can recover it. Problems arise with textureless regions (where the solution is ambiguous) or materials where albedo changes with viewing/lighting angle, which is non-Lambertian behavior.
No Shadows, Interreflections, or Ambient Light
The model assumes no shadows (cast or attached), no interreflections (light bouncing from one surface point to another), and no ambient light. Shadows create pixels where the light source is not visible, breaking the linear lighting equation. Interreflections add non-local lighting contributions, meaning a point's brightness depends on the geometry of other surfaces. Ambient light adds an unknown constant offset to pixel values. All these effects introduce non-linearities that the classical linear solution cannot handle, leading to corrupted normal and albedo estimates.
Minimum Three Non-Coplanar Light Directions
A minimum of three images under different, non-coplanar lighting directions are required to uniquely solve for the two degrees of freedom of the surface normal and the albedo at each pixel. With fewer lights, the system is under-constrained. If all light directions lie in a single plane (are coplanar), the component of the normal perpendicular to that plane becomes ambiguous. Using more than three lights (e.g., 10-50) creates an over-determined system that can be solved via least squares, improving robustness to noise and minor model violations.
Photometric Stereo vs. Other 3D Capture Methods
A technical comparison of Photometric Stereo against other common 3D capture techniques, highlighting differences in principle, data requirements, output, and typical use cases.
| Feature / Metric | Photometric Stereo | Stereo Vision / Photogrammetry | Structured Light / LiDAR | CT / MRI Scanning |
|---|---|---|---|---|
Underlying Principle | Surface normal estimation from reflectance under varying illumination | 3D triangulation from pixel correspondences across multiple views | Active projection of patterns or laser pulses to measure depth | Volumetric reconstruction from transmitted energy (X-ray, magnetic resonance) |
Primary Output | Dense surface normals & albedo (reflectance) map | 3D point cloud or textured mesh | 3D point cloud or depth map | Volumetric density data (voxel grid) |
Lighting Requirement | Controlled, known directional lighting (4+ sources) | Passive, consistent ambient lighting | Active, projected light source required | Internal energy source (non-visible) |
Viewpoint Constraint | Single, fixed camera viewpoint | Multiple, overlapping camera viewpoints required | Single or multiple viewpoints possible | Full 360-degree rotational capture |
Captures Internal Structure | ||||
Surface Reflectance Assumption | Lambertian (diffuse) or known BRDF model | None (relies on texture for matching) | None (relies on projected pattern) | None |
Typical Spatial Resolution | Very high (pixel-level normals) | High (depends on camera resolution & overlap) | Medium to High (depends on sensor density) | Very high (sub-millimeter voxels) |
Typical Acquisition Speed | < 1 sec (for multi-light capture) | Seconds to minutes (for multi-view capture & processing) | < 1 sec (for single scan) | Minutes to hours |
Hardware Complexity & Cost | Medium (camera, controlled lights, calibration) | Low to Medium (multiple standard cameras) | Medium to High (specialized projector/sensor) | Very High (medical/industrial imaging system) |
Primary Use Case | High-fidelity surface detail & material capture for digital twins | Large-scale 3D reconstruction from photos (e.g., buildings, terrain) | Medium-range 3D scanning for objects & rooms | Non-destructive internal inspection (medical, industrial) |
Frequently Asked Questions
Essential questions about Photometric Stereo, a foundational computer vision technique for recovering detailed surface geometry and reflectance from images under varying illumination.
Photometric Stereo is a computer vision technique that estimates the surface normals and albedo (base color) of an object by capturing multiple images of it from a fixed camera viewpoint under varying, known lighting directions. It works by solving the photometric stereo equation, which models image intensity at a pixel as a function of the surface normal, albedo, and the known lighting direction. By observing how the pixel's brightness changes under at least three different non-coplanar light sources, a linear system can be solved to recover the unknown normal vector and albedo at that pixel, building a detailed normal map and albedo map for the entire visible surface.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Photometric stereo is a core technique for estimating surface properties. These related concepts define the broader field of capturing and modeling how materials interact with light.
Bidirectional Reflectance Distribution Function (BRDF)
A mathematical function that defines how light is reflected at an opaque surface. It describes the ratio of reflected radiance to incident irradiance as a function of the illumination direction and viewing direction. Key aspects:
- Physically Based: Models real-world light interaction.
- 4D Function: Takes incoming light direction (θᵢ, φᵢ) and outgoing view direction (θᵣ, φᵣ).
- Core of Shading: The BRDF is the fundamental model used in rendering engines to compute a surface's color under given lighting. Photometric stereo's goal is often to estimate a simplified or full BRDF for each point on a surface.
Inverse Rendering
The overarching process of estimating the underlying 3D scene properties—such as geometry, materials (BRDF/SVBRDF), and lighting—from a set of 2D observations (images). It effectively inverts the traditional graphics rendering pipeline.
- Broader than Photometric Stereo: While photometric stereo typically solves for normals and albedo under known lights, inverse rendering often jointly optimizes for unknown geometry, complex materials, and unknown lighting.
- Uses Optimization: Heavily relies on differentiable rendering to compute gradients and update scene parameters.
- Modern Approaches: Often uses neural representations (like NeRFs) and deep learning to solve this ill-posed problem.
Normal Map
A texture map that encodes surface normal vectors as RGB colors (where R, G, B correspond to X, Y, Z components). It is used to simulate high-resolution surface detail (bumps, scratches, wrinkles) on a low-polygon 3D model without modifying its underlying geometry.
- Direct Output: The primary output of a classic photometric stereo algorithm is a normal map.
- Real-time Application: Normal maps are a staple in real-time rendering for games and VR, providing detailed lighting from simple geometry.
- From Normals to Bump: A normal map provides more accurate lighting information than a simpler height map (bump map) because it directly defines the surface orientation.
Light Stage
A controlled, spherical illumination system—typically a dome equipped with hundreds of programmable LED light sources and synchronized cameras—used to capture the complete reflectance field of an object or human face.
- Data Capture for Modeling: It is the premier hardware apparatus for capturing the data required for high-fidelity photometric stereo, SVBRDF estimation, and relightable avatars.
- Process: The subject remains static while lights are sequentially activated, capturing images under many known lighting directions from a fixed viewpoint—the ideal input for photometric stereo.
- Output: Enables photorealistic relighting and appearance cloning in visual effects.
Appearance Decomposition
The computer vision task of separating a single image of an object into its intrinsic components, primarily albedo (base color/texture) and shading (the effects of lighting and shape). More advanced decompositions can also output specular highlights and shadows.
- Related Problem: Photometric stereo can be seen as a multi-image, more constrained form of appearance decomposition where lighting is known.
- Challenges: Highly ill-posed from a single image (the "shape from shading" problem).
- Applications: Enables material editing, relighting, and consistency for augmented reality.
Physically Based Rendering (PBR)
A computer graphics rendering methodology that aims to simulate the physical behavior of light and materials using measured surface properties and energy-conserving shading models. It provides a consistent, realistic appearance under any lighting environment.
- Uses BRDFs: PBR pipelines are built on microfacet BRDF models (like GGX).
- Material Inputs: Uses parameters like Base Color, Metallic, Roughness, and Normal maps—the types of properties photometric stereo and inverse rendering aim to recover.
- Industry Standard: The foundation for modern game engines (Unreal Engine, Unity) and offline renderers. Photometric stereo provides a way to create real-world PBR assets from photographs.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us