1. 全局的curve
画出公式3的曲线, 可以看出是对高光区域进行压缩的:
x = np.arange(0, 5, 0.01)
y = x / (1 + x)
plt.figure()
plt.plot(x, y, '+')
plt.show()
在这里插入图片描述
2. Automatic dodging-and-burning
利用dodging and burning方法将公式3变为公式9
其中公式9的原理是什么呢?
如下图:
s是尺度。
每个尺度求一个高斯差分。若高斯差分的值小于某个阈值,则认为该尺度是平坦的。
进而找到满足小于阈值条件下的最大的尺度 s, 命名为sm.
公式5,6,7表示高斯差分
公式8找到满足条件的s
以上其实是找到该像素周围最大的平坦区域。
最终公式9将 公式3中的L(x,y)替换为 V1, 然后解释了为什么是 dodging 和 burned.
某个点的像素是 应该降低还是上升应该受到周围像素的影响。