1 回答
我也对这个答案很感兴趣,因为我试图在我的开源项目中复制 Photoshop 图层样式:
https://github.com/vinniefalco/LayerEffects
这是我所知道的:
阴影和内阴影是彼此的对偶。在图层上添加阴影与向具有反转蒙版的图层添加内阴影相同。
技术设置为“精确”的外发光计算具有倒角度量的欧几里德距离变换 (EDT)。
描边设置为渐变,“Shape Burst”使用相同的 EDT。
技术设置为“更柔和”的外发光使用一些未知变换,与用于投影的变换相同。
由于距离变换在几乎所有 Photoshop 图层样式中都起着关键作用,因此可以合理地假设投影中的未知变换是 EDT 的变体。我能找到的唯一其他变体称为“高斯距离变换”(GDT)。不幸的是,在“用于医疗、遥感和工业应用的 2-D 和 3-D 图像配准”一书中只有一种描述。PDF 可用:
以下是 GDT 的描述:
如果我们用单调递增的径向函数对图像进行卷积,将得到一个功能类似于距离变换图像的图像。高斯的倒数可以用作单调递增的径向函数。因此,要获得图像的距离变换,需要对图像进行高斯卷积,并将卷积后的图像的强度反转。以这种方式计算距离变换使得获得的距离对噪声不太敏感。这在图 4.6 中的一个例子中得到了证明。图 4.6a 和 4.6b 分别显示了通过高斯卷积计算得到的图像 4.5a 和 4.5b 的距离变换。与欧几里得距离变换相比,高斯卷积计算的距离变换对噪声不太敏感。
鉴于此图像:
(来源:imgfsr.com)
这是带符号的欧几里得距离变换和带符号的高斯距离变换:
(来源:imgfsr.com)