• 締切済み

ガウシアンフィルタのCプログラム

画像を平滑化する手法にガウシアンフィルタというものがあります。 現在、このガウシアンフィルタをCで作成しようとしていますが、いまいち分かりません。 自分なりに調べてみたところ、平滑化の移動平均フィルタやメディアンフィルタに関しては様々な書籍やサイトがあるのですが、ガウシアンフィルタに関してはあまり見つかりませんでした。 行いたい処理は、簡単に次の通りです。 画像ファイルの読み込み ↓ フィルタ処理 ↓ 処理後の画像をファイル出力 ガウシアンフィルタに関して詳しく書いてある書籍やサイトがあればお教え願います。できれば、ソースプログラムも書いてあると助かります。 当方、参考書籍として、「C言語で学ぶ実践画像処理-井上他」という本を使用しています。

みんなの回答

回答No.2

ググってみたところ http://teo.sourceforge.jp/doc/TeoProgrammingGuide/section5-2.html ここが最も分かりやすかったです。 f(x,y)=exp(-(x^2+y^2)/(2*sigma^2)) で、x,yはそれぞれ整数座標で計算すればよいようです。 上webページの説明だと、x,yそれぞれ-1~1の3x3座標、つまり注目座標の9近傍で打ち切っています。 その9個のf(x,y)の加算値をaとすると、ゲインが1となるようにf(x,y)/aを用います。(これを正規化と呼びます)

ma-tang
質問者

お礼

教えて頂いたサイト、私も以前に見たことがあります。 プログラムの方は何とか作れそうな感じです。ありがとうございました。

  • katouka09
  • ベストアンサー率50% (130/256)
回答No.1

有償で以下のものがあるようですが、個人で購入するにはPCが何台か購入できちゃいますね。 詳細な説明は、 www.mvision.co.jp/sample/doc/MvcFlt2.pdf を参照。 評価版がダウンロードできるようです。

参考URL:
http://www.mvision.co.jp/index_shohin.htm