3

最近、Brad Larson のGPUImageプロジェクトに出会いました。フィルターの連鎖に何を使用するかについて混乱しています。

GPUImageFilterGroup と GPUImageFilterPipeline (フィルターのチェーン) を使用することと、フィルターごとに addTarget: を使用することの違いは何ですか?

ありがとう。

4

1 に答える 1

4

それは便宜上の問題です。

一連のサブフィルターから GPUImageFilterGroup を作成すると、それを単一のフィルターであるかのように扱うことができます。つまり、フィルタ チェーンからグループをユニットとして削除したり、ターゲットを変更したりできます。フィルタ グループのサブクラスは、一般的に使用されるフィルタ チェーンを再利用可能なユニットにパッケージ化し、微調整のために関連する公開プロパティを使用できます。

たとえば、GPUImageCannyEdgeDetectionFilter は、キャニー エッジ検出プロセスを実行する複数のフィルター ステップで構成される GPUImageFilterGroup です。グループ内で抽象化されているため、これを個別のフィルターとして使用するために、そのことを知る必要はありません。

于 2013-11-06T19:33:49.680 に答える