Unityで数種類のエッジ検出を比べてみた(Sobel,Prewitt,Roberts Cross)
始めに
エッジ検出のShaderを書く機会があり調べたところ、
エッジ検出にも様々な手法があることがわかりました。
なので、調べている中でよく見かけた
- Sobel Filter
- Prewitt Filter
- Roberts Cross
のそれぞれの手法での結果を比べてみます。
環境
Unity2018.2.16f1
Scriptable Render Pipelineは未使用
用意
このシーンを元にエッジを検出します
実装
結果
Sobel Filter
Prewitt Filter
Roberts Cross
まとめ
思いの外違いが感じられない結果となりました(^^;)w
上記の中だとRobertsCrossの手法が4点のみのサンプリングで一番負荷が軽そうなので基本的にはRobertsCrossを使った実装を採用しようかなと思います。
参考
UnityのImage EffectでSobelフィルタによるエッジ検出 - Qiita