CIDisplacementDistortion到底是做什么的?

3

我对图像处理比较新,对Core Image更是非常陌生。我已经阅读了4到5天的文档,但似乎找不到我想要的。

我认为CIDisplacementDistortion滤镜可能可以完成我想要的效果(纯粹基于它的名称)。然而,我似乎找不到有关它具体做什么的任何细节,除了使用灰度图像将纹理应用于感兴趣的图像之外。

有人知道它是如何实现的吗?Displacement意味着每个像素都会被一些向量偏移(或者更准确地说,由某个向量偏移的值提供)。灰度图像是一个标量场。

如果我猜测向量场基于强度梯度,那么我是正确的吗?

谢谢,
Mike


参考官方文档(并不是非常有用):https://developer.apple.com/library/ios/documentation/GraphicsImaging/Reference/CoreImageFilterReference/Reference/reference.html#//apple_ref/doc/filter/ci/CIDisplacementDistortion - Peter Hosey
是的...这就是我能找到的全部了。相当弱的例子并没有帮助太多。尽管如此,还是感谢你的指引。 - MikeMayer67
1个回答

0

是的,你说得对。输入图像的亮度用于定义位移向量。通常,亮度将在0到1之间。这将乘以输入比例尺。从示例中不清楚位移方向来自哪里,因此我会假设它是任意给定点处梯度的方向,因为没有其他计算方式。


感谢您对我的猜测的支持。我将继续沿着这条路走,假设这是正确的。我需要进行一些试验来了解如何解释输入比例尺的值。我还需要集成所需的偏移(梯度)字段,以创建适当的灰度图像。我会报告这个努力的成功或失败。 - MikeMayer67

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接