GPUImage コミュニティと Brad さん、こんにちは。
GPUImageMedianFilterとGPUImageGaussianBlurFilterのフィルターサイズ(半径)を指定したい。
それは GPU コメンデーションを指定することを要求しますか? それとも、GPUImage ラッパーを介して実行できますか? もしそうなら、どうすればそれを行うことができますか?
ありがとう
このフレームワークについて特定の質問をする場所ではないかもしれませんが、これについてはお答えできます。
GPUImageMedianFilter は、ShaderX6 ブックの Morgan McGuire による記事「A Fast, Small-Radius GPU Median Filter」に基づく、ハードコードされた 3x3 メディアン フィルターです。これについての詳細は、これのより大きな半径のバージョンを含めて、ここで見つけることができます。これは私が見つけた最速の実装であるにもかかわらず、最速の iOS デバイス以外のすべてで実行するのは依然として信じられないほど遅いため、サンプリング領域を増やすと、これがさらに遅くなるだけです。
GPUImageGaussianBlurFilter は、2 つの別々のパスで 9 ヒットの単純なガウス ブラーを実行します。blurSize プロパティを使用すると、サンプリング領域をわずかに拡大または縮小できますが、乗数が 1.5 を超えると、大きな領域をぼかすために使用されるサンプルが少なすぎるため、フリンジ アーティファクトが見られるようになります。パフォーマンスの高い方法でぼかし領域を拡張するいくつかの方法に取り組んでいますが、それがこの特定のフィルターの制限です。