ISP Analysis Platform · Part of the 10xEngineers Imaging Suite
- ISP-Native · HDR-Aware · Pipeline-Integrated
Cut your tuning loop from hours to minutes
LumaIQ replaces fragmented scripts, disconnected tools, and manual YAML edits with one integrated IQ analysis workbench — built specifically for ISP algorithm engineers.
3
Integrated apps
LumaIQ · RawIQ · BatchIQ
24
ColorChecker patches
CIE76 · CIE94 · CIEDE2000 ΔE
13+
RAW formats supported
.nef .arw .cr3 .dng + sensor dumps
AT A GLANCE
Fast read for engineers evaluating a switch
Built on PyQt6, NumPy, SciPy, and OpenCV. Runs natively on Windows and Linux. No cloud dependency, no subscription lock-in.
PyQt6
Windows
Linux
rawpy
NumPy
SciPy
OpenCV
Pipeline
YAML-native
Full collapsible per-stage editor
HDR support
Native
Dual-exposure · LTM · Tone map
Batch runs
GUI + CLI
CSV-driven overnight regression
Reports
Auto-generated
Self-contained HTML, base64 charts
Presets
Tuning Vault
Named preset CRUD across sessions
UI thread
Never blocked
All runs in background QThreads
THE PROBLEM IT SOLVES
Every iteration costs minutes.
That adds up to days.
ISP tuning today is a fragmented loop. Each tool switch is a source of error and delay. LumaIQ collapses the entire cycle into one environment.
-
Current workflow — fragmented
1
Capture RAW frame on hardware
Trigger sensor, extract dump manually
2
Edit YAML config by hand
800-line config, one parameter at a time
3
Run Python ISP script
Scripts “kind of work” — only one person understands them
4
Export PNG → open Imatest
Switch tools, lose context, wait for load
5
Copy numbers into Excel
Shared sheet that’s broken twice this quarter
6
Repeat from step 2
Three weeks of this per tuning cycle
-
LumaIQ — one integrated loop
1
Load RAW file
Drop your .nef, .arw, .raw, .dng — LumaIQ handles it
2
Load your YAML config
Collapsible per-stage editor, in-app — no text editor needed
3
Run ISP pipeline
Background thread — UI stays responsive throughout
4
Analyze output instantly
MTF, SNR, ΔE, dynamic range — all computed in the same tool
5
Generate & share report
One-click HTML export — base64-embedded, zero dependencies
6
Adjust and repeat — instantly
Change parameter → see result. No tool switches, no waiting
FEATURES
Built for real pipelines, not photography labs
Every feature exists because an ISP engineer needed it during tuning — not because a product manager needed a checkbox.
⚡
ISP Pipeline Integration
Loads any YAML-based ISP config with a full collapsible per-stage parameter editor. Run the pipeline directly from the UI in a background thread — output captured for downstream analysis.
YAML-native
Live edit
Background run
🌗
HDR / Linear Mode Toggle
HDR-only stages — exposure selection, alpha blending, slope correction, dual-channel NR, tone mapping — auto-show and hide. The tool knows your mode and surfaces what’s relevant.
Dual-exposure
Auto-stage reveal
🎯
Color Accuracy — ColorChecker
Automatic ColorChecker prompt on image load. Quad-corner boundary selector extracts all 24 patches and computes CIE76, CIE94, and CIEDE2000 ΔE per patch with OK / Warn / Fail grading.
CIEDE2000 ΔE
24 patches
Severity grade
📦
Tuning Vault
Named preset CRUD for every calculator — save, load, browse, and share parameter sets across sessions. Stored at ~/.lumiq/vault/. Your tuning knowledge survives the next onboarding.
Cross-session
Shareable
📝
HTML Report Generator
Self-contained dark-themed HTML export with base64-embedded charts. Single file, zero external dependencies — share with stakeholders without worrying about broken asset paths or tool installations.
One file
Dark theme
base64 charts
🔍
Planckian AWB
Full Hernandez-Andres Planckian locus, sensor curve calibration, block chromaticity voting, and CCT estimation from multi-illuminant captures — not a slider, an actual algorithm.
Planckian locus
CCT estimation
ANALYSIS MODULES
Every IQ metric that matters.
Nothing you don't need.
LumaIQ covers the complete measurement chain — from raw pixel statistics through color science to perceptual quality scores.
| Module | Key Metrics | Category |
|---|---|---|
| Sharpness / MTF | ISO 12233 slanted-edge SFR · Laplacian variance · Sobel edge strength · per-channel MTF curves | Spatial |
| Noise & SNR | Per-channel σ (R/G/B) · CIELAB luma/chroma noise · SNR vs luminance curve · 1D noise power spectrum · spatial noise heatmap | Noise |
| Dynamic Range | EV estimate from flat-block SNR analysis · Ansel Adams 5-zone system · zone overlay maps · histogram | Exposure |
| HDR Tone Mapping | Reinhard global TMO · Durand bilateral LTM · side-by-side before/after preview · hardware LUT compare with PSNR | HDR |
| Color Accuracy | CIE76 · CIE94 · CIEDE2000 ΔE per patch · per-patch severity grading (OK / Warn / Fail) | Color |
| White Balance | Per-channel WB calculation · metrics · hue/sat fix · Planckian locus · CCT estimation | Color |
| Exposure & Sensitivity | Section-wise histograms on sensor frames · HDR pair detection · LDR best-exposure selector | Exposure |
| Lens Calibration | OpenCV chessboard pipeline · corner detection · camera calibration · undistortion map · calibration JSON | Optics |
| Contrast & Gamma | Entropy · local contrast · halo score · gamma estimation · live stats bar · LDCI analyze and calculate | Tonal |
HDR INTEGRATION
Close the loop
with LumaIQ
Once your HDR ISP pipeline is tuned, the next question is always: how good is the output, really? LumaIQ plugs directly into your existing HDR ISP backend — reading your YAML configs, running your pipeline stages, and measuring results across every critical IQ dimension.
🔗
Zero configuration gap
Reads the same YAML config your HDR ISP uses. No translation, no adapter — the parameter you edit is the parameter that runs.
📐
Quantified, not subjective
CIEDE2000 ΔE, MTF curves, and SNR-vs-luminance tell you whether a tuning decision is genuinely better — not just visually different.
⚙️
HDR-aware from the start
Dual-exposure pair matching, exposure selection, slope correction, and alpha blending — all HDR stages visible and editable in one place.
Pipeline view — HDR mode
- Black Level Correction
LumaIQ
- White Balance
LumaIQ
- HDR Exposure Selection
HDR ISPLumaIQ
- Slope Correction
HDR ISPLumaIQ
- Alpha Blending
HDR ISPLumaIQ
- Color Correction Matrix
LumaIQ
- Gamma / Contrast
LumaIQ
- HDR Tone Mapping
HDR ISPLumaIQ
- IQ Analysis & Report
LumaIQ
- LumaIQ
- ISP pipeline stage
- HDR-only stage
COMPETITIVE LANDSCAPE
The only tool purpose-built for ISP algorithm engineers
Every alternative either lacks pipeline integration, lacks HDR awareness, lacks sensor dump support — or costs $10K+ per seat for capabilities you don’t need.
| Tool | ISP Integration | HDR-Native | Sensor dump (.raw) | IQ Metrics | Cost |
|---|---|---|---|---|---|
| LumaIQ | ✓ Full YAML integration | ✓ Native | ✓ Headerless Bayer | ✓ MTF · ΔE · SNR · DR | Accessible |
| Imatest | ✗ None | ✗ No | ✗ No | ✓ Comprehensive | $10K+ / seat |
| MATLAB IQA Toolbox | ✗ Manual scripting | ✗ No | ✗ No | ✓ Flexible | License required |
| dcraw / LibRaw | ✗ None | ✗ No | ✓ Partial | ✗ Zero | Free (CLI only) |
| RawTherapee | ✗ None | ✗ No | ✗ No | ✗ No IQ metrics | Free |
| Custom Python scripts | ✓ Yours, specifically | ✗ If you wrote it | ✓ If you wrote it | ✗ One-shot only | Free + 3 weeks |
APPLICATION SUITE
Three tools. One workflow. Every job covered.
LumaIQ ships as three integrated desktop applications sharing a common core — each scoped to a specific phase of the ISP engineering lifecycle.
LumaIQ
Full IQ Analysis Workbench
- YAML pipeline editor with per-stage parameter control
- Full color pipeline — BLC, WB, CCM, Gamma, Contrast, TMO
- Complete analysis suite — MTF, noise, dynamic range, colorimetry
- Tuning Vault preset management and HTML report generation
RawIQ
RAW Sensor Workbench
- 3×3 section-wise histograms on raw Bayer frames
- HDR pair matching and LDR best-exposure selector
- Per-frame sensor statistics dialog
- Format conversion: .raw · .npy · .tiff (Bayer) · .tiff (RGB) · .png
BatchIQ
Batch ISP Processing
- GUI mode: job setup with real-time progress tracking
- CLI mode: CSV-driven LE/SE pair processing overnight
- Per-row pass/fail/skip status with timing data
- Summary CSV written automatically on completion
FORMAT SUPPORT
Your sensor format is supported. Even the awkward ones.
LumaIQ handles headerless sensor dumps with width × height × bit-depth × CFA pattern auto-parsed from filenames — the format no commercial tool touches.
Camera RAW
.nef.cr2.cr3.arw.dng.raf.orf.rw2.cef.pef.srw.x3f.mrw
Plain Sensor Dumps
.raw — 8-bit.raw — 10-bit.raw — 12-bit.raw — 14-bit.raw — 16-bit
Headerless Bayer · params auto-parsed from filename
Post-Processed
.png.jpg.tiff.bmp
Export Targets (RawIQ)
.raw.npy.tiff (Bayer).tiff (RGB).png
NEXT STEP
Want to see it in your pipeline?
Drop your RAW file format, your ISP structure, and what you’re currently using. We’ll run a configuration check and walk you through integration — no obligation, no sales script.
- Works with your existing ISP — no pipeline rewrite required
- Supports your RAW sensor dump format out of the box
- All analysis modules work without an ISP bridge configured
- Technical walkthrough using your actual data
Request Access
By requesting access, you agree to be contacted about LumaIQ.