Laboratorio de Fotografía Dual
Aplicación interactiva que implementa la técnica de fotografía dual — reconstruyendo cómo se ve una escena desde el punto de vista de un proyector usando matrices de transporte de luz, descomposición SVD y reciprocidad de Helmholtz.
Contexto de Negocio
La fotografía dual es una técnica de imagen computacional que reconstruye cómo se ve una escena desde el punto de vista de un proyector usando solo observaciones de cámara. La matriz de transporte T codifica cada interacción de luz entre proyector y cámara a través de la geometría de la escena, reflectancia y oclusión. Al medir T con patrones de iluminación estructurada y aplicar reciprocidad de Helmholtz, podemos reconstruir computacionalmente puntos de vista que nunca fueron físicamente ocupados — viendo desde donde iluminamos.
Valor Estratégico
La aplicación provee un entorno interactivo completo para explorar fotografía dual: 6 tipos de escena ray-cast (plana, texturizada, cóncava, convexa, multi-objeto, con oclusión), 10 patrones de iluminación, descomposición SVD con exploración interactiva de valores singulares revelando complejidad óptica, compressed sensing con matrices de Bernoulli/Hadamard para adquisición eficiente, y modo opcional de captura por webcam para experimentos reales. El análisis SVD T = UΣVᵀ conecta imágenes con álgebra lineal de forma tangible — el espectro de valores singulares revela cuántos modos ópticos independientes soporta una escena.
El Desafío
La fotografía dual implica recuperar la vista desde la perspectiva de un proyector usando solo observaciones de cámara. La matriz de transporte T codifica cómo cada píxel del proyector contribuye a cada píxel de cámara a través de geometría y materiales de la escena — pero trabajar con ella requiere métodos eficientes de descomposición y reconstrucción.
Nuestro Enfoque
Simulación ray-cast con 6 tipos de escena, análisis SVD (T = U·Σ·Vᵀ) para revelar complejidad óptica, 10 patrones de iluminación, modo opcional de captura por webcam. Backend implementa modelos BRDF Lambertianos con NumPy/SciPy y frontend de visualización Dash/Plotly.
Indicadores Clave de Rendimiento
| KPI | Línea Base | Resultado | Impacto |
|---|---|---|---|
| Tipos de Escena | Imágenes estáticas | 6 escenas ray-cast interactivas | Exploración óptica interactiva |
| Patrones de Iluminación | Iluminación única | 10 patrones estructurados | Caracterización completa de transporte |
Arquitectura
dual photography
Seeing from Where You Illuminate
Imagine reversing the roles of projector and camera. A projector sends structured light into a scene; a camera records what bounces back. The transport matrix T encodes every interaction — how each projector pixel contributes to each camera pixel through scene geometry, reflectance, and occlusion. If you can measure T, you can reconstruct what the scene looks like from the projector’s perspective — using Helmholtz reciprocity, the dual image is simply Tᵀ applied to a virtual illumination.
This is dual photography: computational reconstruction of a viewpoint you never physically occupied.
Why It’s Interesting
The SVD decomposition T = UΣVᵀ reveals the scene’s optical complexity. A flat white wall produces a simple singular value spectrum with rapid decay — one dominant mode. A complex textured scene with occlusions has many significant singular values — rich optical structure. This connects imaging to linear algebra in a way that makes abstract mathematical concepts tangible.
With structured illumination patterns (Bernoulli or Hadamard matrices), compressed sensing theory applies: the dual image can be recovered with far fewer measurements than the full transport matrix requires. And the condition number of T determines reconstruction quality — ill-conditioned matrices from complex scenes need regularization (Tikhonov or truncated SVD) to produce stable results.
The application implements 6 ray-cast scene types (flat, textured, concave, convex, multi-object, occluding), 10 illumination patterns, interactive SVD exploration, and an optional webcam capture mode for real-world experiments.
Stack Tecnológico
Capturas de la Aplicación

Diagramas Técnicos
dual helmholtz