分组图像滤镜和链接图像滤镜之间的区别

3

最近发现了Brad Larson的GPUImage项目。对于如何连接滤镜感到困惑。

使用GPUImageFilterGroup和GPUImageFilterPipeline(滤镜链)有什么区别,相比之下,使用addTarget:为每个滤镜添加目标的方式又是怎样的呢?

谢谢。

1个回答

4

这是方便的问题。

当从一系列子滤镜创建GPUImageFilterGroup时,您可以将其视为单个滤镜。这意味着您可以将组作为一个单位从滤镜链中删除,更改目标等。滤镜组子类可以将常用的滤镜链打包成可重复使用的单元,并公开相关属性以进行调整。

例如,GPUImageCannyEdgeDetectionFilter是由几个滤镜步骤组成的GPUImageFilterGroup,用于执行Canny边缘检测过程。您不需要知道任何关于其中任何内容的信息,因为这已经在组内抽象出来了。


嗨,Brad,你能解释一下GPUImageFilterGroup和GPUImageFilterPipeline之间的区别吗?因为这也是问题中提到的。 - Andree
1
@Andree - GPUImagePipeline是由另一个用户为该项目做出的贡献,而不是我积极维护或使用的东西,但基本上它是使用属性列表定义滤镜链的一种方式。它会根据该列表创建滤镜并将它们链接起来。过去它曾经出现过问题,因为我没有使用它,所以我依赖于其他人来修复这些问题。我倾向于建议手动链接滤镜或将它们放置在组中。 - Brad Larson

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