畳み込みカーネルとは何か、画像内のピクセルに畳み込み行列を適用する方法がわかりません(画像に対してガウスぼかし演算を実行することについて話しています)。
また、ガウスぼかし操作用のカーネルを作成する方法についての説明を得ることができますか?
私はこの記事を読んでいますが、物事がどのように行われているのか理解できないようです...
これを私に説明するのに時間を割いてくれた人に感謝します:)、
ExtremeCoder
畳み込みカーネルとは何か、画像内のピクセルに畳み込み行列を適用する方法がわかりません(画像に対してガウスぼかし演算を実行することについて話しています)。
また、ガウスぼかし操作用のカーネルを作成する方法についての説明を得ることができますか?
私はこの記事を読んでいますが、物事がどのように行われているのか理解できないようです...
これを私に説明するのに時間を割いてくれた人に感謝します:)、
ExtremeCoder
基本的な考え方は、画像の新しいピクセルは、それに近いピクセルの加重平均によって作成されるということです(ピクセルの周りに円を描くことを想像してください)。
画像のピクセルごとに、ピクセルの周りに小さな正方形を作成します。ピクセルの隣にある8つの隣接ピクセル(ここでは重要ではありませんが、対角線を含む)を取得し、加重平均を実行して中央のピクセルを取得するとします。
ガウスぼかしの場合、2つの1次元演算に分解されます。各ピクセルについて、行方向のみのピクセルの隣にある量のピクセルを取ります。ピクセル値にガウス分布から計算された重みを掛けて(または、科学的な理由ではなく視覚的な効果のためにこれを行っている場合、重みは見栄えのするものなら何でもかまいません)、それらを合計します。それを見る別の方法は、ピクセルがベクトルを作成し、重みがベクトルを作成し、内積を取得することです。別のパスとして、このプロセスを列方向に繰り返します。
畳み込みカーネルは、ピクセルの近傍が最終画像のそのピクセルの状態にどのように寄与するかを指定する値の行列です。ここに基本の公正な説明があります。ガウスぼかしは、非常に醜い(ウィキペディアのページを見たことがある)関数を使用して、画像を渡すための畳み込みカーネルを計算する畳み込み関数です。そのウィキペディアのページに、ガウス関数のカーネルの例があります。
そこにあるすべての計算のポイントは、ビューアと画像の間に配置されたメッシュスクリーンによって生成される散乱パターンに似たソフトブラーを生成することです。ガウス分布の「サイズ」(標準偏差)は、画像と画面の間の距離に関連していると考えることができます。
(私のように)自分ですべてを計算したくない場合は、これが素晴らしいツールです:
http ://www.embege.com/gauss/
編集
リンクが壊れているように見えるので、ここにarchive.orgへのリンクがあります:http:
//web.archive.org/web/20150217075657/http ://www.embege.com/gauss