Skip to content

Examples

The examples map onto End2endImaging's two main applications: generating high-fidelity synthetic datasets, and end-to-end co-design of optics and algorithms. Each example corresponds to a script in the repository root.

High-Fidelity Image Simulation

Simulate physically accurate camera captures — lens aberrations, defocus, sensor noise, and ISP — to generate synthetic training data for image-restoration networks. The optics are fixed; only the network is trained.

Example Script Description
Computational Photography 7_comp_photography.py Train a restoration network with camera simulation
Defocus Deblur 8_defocus_deblur.py Depth-aware defocus deblur with depth-varying PSF simulation

Optics–Algorithm Co-Design

Optimize the lens together with the downstream network or task, so the optics and the algorithm are designed end-to-end and the lens learns to capture what the algorithm needs.

Example Script Description
End-to-End Lens Design 1_end2end_lens_design.py Optics-network co-design with image quality loss
Task-Driven Lens Design 4_tasklens_img_classi.py Design a lens optimized for image classification