|
|
@@ -95,8 +95,14 @@ namespace AutoFocusTool.Imaging
|
|
|
}
|
|
|
int n = (w - 2) * (h - 2);
|
|
|
if (n <= 0) return 0;
|
|
|
- // 除以像素数(消除 ROI 尺寸影响)+ 除以均值平方(消除亮度影响)
|
|
|
- return sumSq / n / (mean * mean);
|
|
|
+ // 除以像素数(消除 ROI 尺寸影响)+ 除以均值(归一化亮度,但只除一次方)。
|
|
|
+ // 【真机修正 2026-06-16】原为除以 mean*mean(均值平方)。实测 4 号舱 well1 的 Z 清晰度曲线
|
|
|
+ // (TestData/zcurve_w1_*)显示:随 Z 增大画面亮度从 ~53 单调升到 ~185(光学效应),
|
|
|
+ // mean² 会把高 Z 的清晰帧分数严重压低,导致算法把最暗最糊的低 Z 层(z=20000)误判为
|
|
|
+ // 最清晰,真实焦面(z≈92000,原始梯度峰)反而落选 → 对焦落到错误位置。
|
|
|
+ // 改为除以 mean(一次方):既保留对亮度的鲁棒性,又不过度压制高亮清晰帧,
|
|
|
+ // 反算验证峰正确落在 92000。
|
|
|
+ return sumSq / n / mean;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|