CVVDP 0.6.0 · controlled heatmap ablation

Six ways to redistribute perceptual error

Two dark and two bright HDR scenes compare six new CVVDP heatmap constructions against plain sRGB Charbonnier and the existing CVVDP luma-heatmap × Charbonnier loss.

2× RTX 4090Native ROINo paddingLR 5e−3300 iterationsSame seedHard evaluationα 0.25

Bright-scene result

Luminance stratification wins

Deltas below are two-scene bright averages. The existing heatmap hurts Water/Castle; stratifying the same CVVDP heatmap within luminance bands reverses the sign on every metric.

Current − Charbonnier

Existing luma heatmap

-0.022JOD -0.23 dBPSNR -0.0180SSIM

D2 − Charbonnier

Luminance-stratified

+0.040JOD +0.15 dBPSNR +0.0051SSIM

D2 − Current

Replacement gain

+0.062JOD +0.38 dBPSNR +0.0230SSIM
Main result: on bright Water and Castle, D2 improves the Charbonnier mean by +0.040 JOD, +0.15 dB and +0.0051 SSIM. The original heatmap instead loses 0.23 dB and 0.0180 SSIM. On dark scenes, the original heatmap remains strongest because of its very large Toys gain; one normalization is therefore not optimal for both brightness regimes.

Dark mean · Toys + Type

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier8.82628.070.59370.002161
Current luma heatmap × Charb8.95429.500.62410.001940
D1 · Log-budget8.90428.950.61260.001964
D2 · Luminance-stratified8.86428.040.59170.002095
D3 · Local-relative8.81327.950.59130.002216
D4 · Residual-novelty8.84728.270.59660.002103
D5 · Metric-warp8.87728.520.60340.002051
D6 · Hybrid8.88928.740.60790.002007

Bright mean · Water + Castle

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier9.11926.800.72090.002089
Current luma heatmap × Charb9.09726.570.70290.002203
D1 · Log-budget9.12226.810.71910.002087
D2 · Luminance-stratified9.16026.950.72600.002020
D3 · Local-relative9.12726.780.72120.002099
D4 · Residual-novelty9.10726.640.71070.002170
D5 · Metric-warp9.12326.820.72070.002079
D6 · Hybrid9.12226.820.72010.002081

Implemented formulas

Six controlled designs

All six use the same detached CVVDP raw heatmap and the same sRGB Charbonnier residual. Only heatmap normalization and insertion point change.

D1 · Log-budget

z = clip(std(log(H+ε)), −2, 2)w = N[exp(0.25 · M · z)]

Stable, mean-one weak redistribution.

D2 · Luminance-stratified

z = robust-standardize(log H | luminance bin)w = N[exp(0.25 · z)]

Compares visibility within similar luminance levels.

D3 · Local-relative

z = std(log H − Gaussianσ=16(log H))w = N[exp(0.25 · M · z)]

Emphasizes peaks relative to their neighborhood.

D4 · Residual-novelty

z = std(zH − βzR)β = Cov(zH,zR) / Var(zR)

Removes the heatmap component explained by residual size.

D5 · Metric-warp

w = log-budget weightL = mean ρ(√w · r)

Stretches local residual distance inside Charbonnier.

D6 · Hybrid

γ = 0.5L = mean w^γ ρ(w^((1−γ)/2) · r)

Mixes outside weighting and inside distance warp.

dark HDR · median 1.9 nits

Toys

Toys ground truth

Ground truth

q99.9-normalized HDR target

Charbonnier reconstruction for Toys

Charbonnier

JOD 9.182 · PSNR 31.77 dB · SSIM 0.7505 · L2 0.000665

Current luma heatmap × Charb reconstruction for Toys

Current luma heatmap × Charb

JOD 9.410 · PSNR 34.48 dB · SSIM 0.8164 · L2 0.000357

D1 · Log-budget reconstruction for Toys

D1 · Log-budget

JOD 9.289 · PSNR 33.29 dB · SSIM 0.7868 · L2 0.000468

D2 · Luminance-stratified reconstruction for Toys

D2 · Luminance-stratified

JOD 9.223 · PSNR 31.50 dB · SSIM 0.7454 · L2 0.000708

D3 · Local-relative reconstruction for Toys

D3 · Local-relative

JOD 9.201 · PSNR 31.65 dB · SSIM 0.7482 · L2 0.000684

D4 · Residual-novelty reconstruction for Toys

D4 · Residual-novelty

JOD 9.206 · PSNR 32.07 dB · SSIM 0.7604 · L2 0.000621

D5 · Metric-warp reconstruction for Toys

D5 · Metric-warp

JOD 9.249 · PSNR 32.55 dB · SSIM 0.7692 · L2 0.000555

D6 · Hybrid reconstruction for Toys

D6 · Hybrid

JOD 9.270 · PSNR 32.92 dB · SSIM 0.7779 · L2 0.000510

Toys · final hard metrics

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier9.18231.770.75050.000665
Current luma heatmap × Charb9.41034.480.81640.000357
D1 · Log-budget9.28933.290.78680.000468
D2 · Luminance-stratified9.22331.500.74540.000708
D3 · Local-relative9.20131.650.74820.000684
D4 · Residual-novelty9.20632.070.76040.000621
D5 · Metric-warp9.24932.550.76920.000555
D6 · Hybrid9.27032.920.77790.000510
Metric curves for Toys
Hard reconstruction metrics recorded every 20 iterations.

dark HDR · median 2.7 nits

Type

Type ground truth

Ground truth

q99.9-normalized HDR target

Charbonnier reconstruction for Type

Charbonnier

JOD 8.471 · PSNR 24.37 dB · SSIM 0.4369 · L2 0.003658

Current luma heatmap × Charb reconstruction for Type

Current luma heatmap × Charb

JOD 8.499 · PSNR 24.53 dB · SSIM 0.4319 · L2 0.003523

D1 · Log-budget reconstruction for Type

D1 · Log-budget

JOD 8.519 · PSNR 24.61 dB · SSIM 0.4384 · L2 0.003460

D2 · Luminance-stratified reconstruction for Type

D2 · Luminance-stratified

JOD 8.506 · PSNR 24.58 dB · SSIM 0.4381 · L2 0.003483

D3 · Local-relative reconstruction for Type

D3 · Local-relative

JOD 8.425 · PSNR 24.26 dB · SSIM 0.4344 · L2 0.003748

D4 · Residual-novelty reconstruction for Type

D4 · Residual-novelty

JOD 8.488 · PSNR 24.46 dB · SSIM 0.4328 · L2 0.003585

D5 · Metric-warp reconstruction for Type

D5 · Metric-warp

JOD 8.504 · PSNR 24.50 dB · SSIM 0.4375 · L2 0.003546

D6 · Hybrid reconstruction for Type

D6 · Hybrid

JOD 8.509 · PSNR 24.56 dB · SSIM 0.4380 · L2 0.003503

Type · final hard metrics

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier8.47124.370.43690.003658
Current luma heatmap × Charb8.49924.530.43190.003523
D1 · Log-budget8.51924.610.43840.003460
D2 · Luminance-stratified8.50624.580.43810.003483
D3 · Local-relative8.42524.260.43440.003748
D4 · Residual-novelty8.48824.460.43280.003585
D5 · Metric-warp8.50424.500.43750.003546
D6 · Hybrid8.50924.560.43800.003503
Metric curves for Type
Hard reconstruction metrics recorded every 20 iterations.

bright HDR · median 76.2 nits

Water

Water ground truth

Ground truth

q99.9-normalized HDR target

Charbonnier reconstruction for Water

Charbonnier

JOD 9.190 · PSNR 26.87 dB · SSIM 0.7431 · L2 0.002054

Current luma heatmap × Charb reconstruction for Water

Current luma heatmap × Charb

JOD 9.198 · PSNR 26.79 dB · SSIM 0.7359 · L2 0.002093

D1 · Log-budget reconstruction for Water

D1 · Log-budget

JOD 9.201 · PSNR 26.93 dB · SSIM 0.7435 · L2 0.002028

D2 · Luminance-stratified reconstruction for Water

D2 · Luminance-stratified

JOD 9.218 · PSNR 27.05 dB · SSIM 0.7487 · L2 0.001972

D3 · Local-relative reconstruction for Water

D3 · Local-relative

JOD 9.202 · PSNR 26.87 dB · SSIM 0.7440 · L2 0.002055

D4 · Residual-novelty reconstruction for Water

D4 · Residual-novelty

JOD 9.189 · PSNR 26.76 dB · SSIM 0.7366 · L2 0.002109

D5 · Metric-warp reconstruction for Water

D5 · Metric-warp

JOD 9.200 · PSNR 26.92 dB · SSIM 0.7438 · L2 0.002031

D6 · Hybrid reconstruction for Water

D6 · Hybrid

JOD 9.197 · PSNR 26.93 dB · SSIM 0.7438 · L2 0.002028

Water · final hard metrics

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier9.19026.870.74310.002054
Current luma heatmap × Charb9.19826.790.73590.002093
D1 · Log-budget9.20126.930.74350.002028
D2 · Luminance-stratified9.21827.050.74870.001972
D3 · Local-relative9.20226.870.74400.002055
D4 · Residual-novelty9.18926.760.73660.002109
D5 · Metric-warp9.20026.920.74380.002031
D6 · Hybrid9.19726.930.74380.002028
Metric curves for Water
Hard reconstruction metrics recorded every 20 iterations.

bright HDR · median 184.6 nits

Castle

Castle ground truth

Ground truth

q99.9-normalized HDR target

Charbonnier reconstruction for Castle

Charbonnier

JOD 9.049 · PSNR 26.73 dB · SSIM 0.6987 · L2 0.002124

Current luma heatmap × Charb reconstruction for Castle

Current luma heatmap × Charb

JOD 8.996 · PSNR 26.36 dB · SSIM 0.6700 · L2 0.002313

D1 · Log-budget reconstruction for Castle

D1 · Log-budget

JOD 9.043 · PSNR 26.69 dB · SSIM 0.6948 · L2 0.002145

D2 · Luminance-stratified reconstruction for Castle

D2 · Luminance-stratified

JOD 9.101 · PSNR 26.85 dB · SSIM 0.7032 · L2 0.002067

D3 · Local-relative reconstruction for Castle

D3 · Local-relative

JOD 9.051 · PSNR 26.69 dB · SSIM 0.6985 · L2 0.002143

D4 · Residual-novelty reconstruction for Castle

D4 · Residual-novelty

JOD 9.024 · PSNR 26.51 dB · SSIM 0.6849 · L2 0.002232

D5 · Metric-warp reconstruction for Castle

D5 · Metric-warp

JOD 9.047 · PSNR 26.72 dB · SSIM 0.6976 · L2 0.002127

D6 · Hybrid reconstruction for Castle

D6 · Hybrid

JOD 9.048 · PSNR 26.71 dB · SSIM 0.6963 · L2 0.002134

Castle · final hard metrics

MethodJOD ↑PSNR ↑SSIM ↑sRGB L2 ↓
Charbonnier9.04926.730.69870.002124
Current luma heatmap × Charb8.99626.360.67000.002313
D1 · Log-budget9.04326.690.69480.002145
D2 · Luminance-stratified9.10126.850.70320.002067
D3 · Local-relative9.05126.690.69850.002143
D4 · Residual-novelty9.02426.510.68490.002232
D5 · Metric-warp9.04726.720.69760.002127
D6 · Hybrid9.04826.710.69630.002134
Metric curves for Castle
Hard reconstruction metrics recorded every 20 iterations.