わかりやすい畳み込み

教科書は一般に関数を定義します

ここに画像の説明を挿入畳み込み次のように
連続形式:
ここに画像の説明を挿入
離散フォームを:
ここに画像の説明を挿入
と「ボリューム」の畳み込みである、右から左にプリーツに多くの機能をG軸対応し、Gの第1のフリップフロッ機能を説明起源。

次に、g関数をnにシフトし、この位置で2つの関数の対応する点を乗算してから、それらを加算します。このプロセスは、畳み込みの「積」プロセスです。

この記事では、主に2つの問題について説明します。

  1. 畳み込みという用語はどのように説明されていますか?「ロール」とはどういう意味ですか?「製品」とはどういう意味ですか?
  2. 畳み込みの背後にある意味は何ですか?それをどのように説明しますか?

##考慮されるアプリケーションシナリオ

これらの問題をよりよく理解するために、最初に2つの一般的なアプリケーションシナリオを示します。

  1. 信号分析
    入力信号f(t)が線形システムを通過した(その特性は単位インパルス応答関数g(t)で記述できます)、出力信号はどうなりますか?実際には、出力信号は畳み込み演算によって取得できます。

  2. 画像処理
    画像f(x、y)を入力し、特別に設計されたコンボリューションカーネルg(x、y)を使用してコンボリューション処理を実行すると、出力画像にはぼかしやエッジ強調などのさまざまな効果が得られます。

畳み込みの理解

畳み込みという用語の理解:2つの関数のいわゆる畳み込みは、本質的には最初に関数を反転させ、次にスライド重ね合わせを実行することです。

連続の場合、重ね合わせは2つの関数の積の積分を指します。離散の場合、これは加重加算です。簡単にするために、重ね合わせと総称します。

全体は次のプロセスのようになります。

フリップ—>スライド—>オーバーレイ—>スライド—>オーバーレイ—>スライド—>オーバーレイ...複数のスライドによって取得された一連のオーバーレイ値は、畳み込み関数を構成します。

たたみ込みの「たたみ込み」とは、関数をg(t)からg(-t)に変換するプロセスを指しますが、「たたみ込み」とは、スライドすることも意味します。畳み込みが「フォールド」として翻訳される場合、「フォールド」という単語は反転の意味しかありません。

畳み込みの「積」とは、積分/加重加算を指します。

一部の記事では、スライドの重ね合わせと総和のみを強調していますが、機能が反転しているとは言わず、包括的ではないと思います。実際に「ボリューム」を「製品」として理解している記事もあります。それは、Zhang Guanli Daiだと思います。

畳み込みの意味を理解する

  1. 「製品」のプロセスから、得られた重ね合わせ値がグローバルなコンセプトであることがわかります。信号解析を例にとると、畳み込みの結果は、現時点での入力信号の応答値だけでなく、過去のすべての入力の影響の累積を考慮して、過去のすべての時間での入力信号の応答にも関連しています。画像処理では、畳み込み処理の結果は、実際には、各ピクセルの周囲のピクセル、さらには画像全体のピクセルを考慮し、現在のピクセルに対して何らかの重み付け処理を実行します。したがって、「製品」は2つの機能を時間または空間で混合するグローバルコンセプトまたは一種の「混合」です。

  2. なぜ「ロール」したいのですか?直接掛けるのは良くないですか?「ローリング」(フリッピング)の目的は、実際には「製品」の参照として何を使用するかを指定する制約を課すことであることを理解しています。信号分析シーンでは、「積」の前後の特定の時点を指定し、空間分析シーンでは、累積プロセスを実行する周囲の場所を指定します。

たとえば、次の例では、反転する必要がある理由と、重ね合わせと合計の意味を説明しています。

例2:サイコロを投げる
この質問で畳み込みを簡単に説明するにはどうすればよいですか?クラスメイトMaの1位は良い例を示しました(以下の写真の一部はクラスメートMaの記事から抜粋したものです。ありがとうございます)。ダイスを使用して畳み込みの適用を説明しています。

解決すべき問題は、2つのサイコロがあり、両方を投げます。2つのサイコロの合計が4になる確率はどれくらいですか。

ここに画像の説明を挿入
分析するために、2つのサイコロのポイントの合計が4になる3つのケースがあります。1+ 3 = 4、2 + 2 = 4、3 + 1 = 4

したがって、2つのサイコロポイントが合計して4になる確率は、次
ここに画像の説明を挿入

ここに画像の説明を挿入
とおりです。たたみ込みの記述方法は次のとおりです。ここで、上記のフリッピングとスライドの重ね合わせのロジックについてさらに説明します。

まず、2つのサイコロのポイントの合計が4であるため、この制約を満たすために、関数gを反転し、影の領域の上下に対応する数値を乗算してから加算します。これは、独立変数の畳み込み値を見つけることと同じです。 、次の図に示すように、
ここに画像の説明を挿入
さらに、次の図に示すように、そのようなフリップの後、2つのダイスポイントの合計がnである確率を見つけることは簡単に一般化できます。これは、fとgのたたみ込みf * g(n)です。 :
ここに画像の説明を挿入
上図からわかるように、関数gをスライドすると、ポイントの合計が増加します。この例のfとgの制約はポイントの合計であり、これはたたみ込み関数の独立変数でもあります。興味がある場合は、ダイスの各ポイントの確率が等しい場合、2つのダイスとn = 7の確率が最大であることも計算できます。

例3:画像処理

または、畳み込みを簡単でわかりやすい方法で説明するにはどうすればよいですか?中国とマレーシアの学生の例。画像は行列の形で表すことができます(次の画像はクラスメートMaの記事から引用しています)
ここに画像の説明を挿入
。画像の処理関数(平滑化やエッジ抽出など)は、次のようなg行列で表すこともできます。
ここに画像の説明を挿入
平面空間の問題を扱っていることに注意してください。これはすでに2次元関数であり、次のものと同等です。
ここに画像の説明を挿入
ここに画像の説明を挿入
次に、(u、v)での関数fとgのたたみ込み[式]を計算する方法は?

畳み込みの定義によれば、畳み込み式の2次元離散形式は次のようになります:
ここに画像の説明を挿入
畳み込みの定義から、x方向とy方向の両方に累積されます(上記の離散式の2つの添え字iとjに対応します)。 、そして負の無限大から正の無限大まで、無限です。しかし、現実の世界には限界があります。たとえば、上記の画像処理関数gは、実際には3x3の行列です。つまり、原点付近を除くすべての点の値は0です。この要因を考慮すると、上記の式は実際には縮退し、計算のために座標(u、v)の近くの点のみを選択します。したがって、実際の計算は次のようになります。
ここに画像の説明を挿入
最初に、元の画像行列から(u、v)の行列を取り出します。
ここに画像の説明を挿入
次に、画像処理行列を反転します(この反転は少し興味深いですが、いくつかの異なる理解とその効果があります)これは同等です:(1)最初にx軸に沿って反転し、次にy軸に沿って反転します;(2)最初にx軸に沿って反転し、次にy軸に沿って反転します;)。

元の行列:
ここに画像の説明を挿入
反転後の行列:
ここに画像の説明を挿入
(1)最初にx軸に沿って反転し、次にy軸に沿って反転
ここに画像の説明を挿入
(2)最初にy軸に沿って反転し、次にx軸に沿って反転
ここに画像の説明を挿入
畳み込みを計算するとき、[式]と[式]内積:
ここに画像の説明を挿入ここに画像の説明を挿入
ここに画像の説明を挿入
著者:palet
リンクします。https://www.zhihu.com/question/22298352/answer/637156871
ソース:ほとんど知っている
著者が著作権を保有。営利目的の複製については、作者に連絡して承認を得てください。非営利目的の複製については、出典を明記してください。

上記の式は、対応する2つの変数aとbの添え字の乗算の合計が(u、v)であるという特徴があり、その目的はこの加重和を制約することです。これが、行列gを反転させなければならない理由です。上記のマトリックス添え字がそのように記述され、反転されているのは、畳み込みとの関係を誰もがよりはっきりと理解できるようにするためです。これの利点は、その物理的な意味を容易に促進および理解できることです。実際、計算ではフリッピング後の行列を使い、行列の内積を直接計算しています。

上記の計算は、(u、v)でのたたみ込みで、x軸またはy軸に沿ってスライドします。画像のさまざまな位置でたたみ込みを見つけることができ、出力結果は処理された画像になります(つまり、平滑化、エッジ抽出などの後)。各種処理画像)。

さらに考えてください。画像の畳み込みを計算するとき、元の画像行列から(u、v)の行列を直接取得しましたが、上記の制約を満たすために、この位置の行列を本質的に選択したのはなぜですか。(u、v)でのたたみ込みを計算する必要があり、gマトリックスは3x3マトリックスであり、下付き文字とこの3x3マトリックスの合計は(u、v)であるため、(u、 v)中央の3x3行列は、図の影付き領域の行列です。

拡大すると、gマトリックスが3x3ではなく7x7の場合、計算のために元の画像の(u、v)を中心とする7x7マトリックスを取得する必要があります。この種の畳み込みは、元の画像のすべての隣接するピクセルを考慮して、それらを混合することです。隣接する領域の範囲はg行列の次元に依存し、次元が大きくなるほど、周辺のピクセルが多く含まれます。マトリックスの設計により、混合出力画像がぼかされるか、元の画像よりも鮮明かが決まります。

たとえば、次の画像処理マトリックスは、周囲のピクセルで平均処理を実行するため、画像がより滑らかでぼやけて見えます
ここに画像の説明を挿入
。次の画像処理マトリックスは、ピクセル値の変化をより明確にし、エッジを強化します。変更は、エッジを抽出する目的を達成するための穏やかな場所には影響を与えませんでした:
ここに画像の説明を挿入
著者:palet
リンクします。https://www.zhihu.com/question/22298352/answer/637156871
ソース:ほとんど知っています

元の19件の記事を公開 いいね2 訪問数740

おすすめ

転載: blog.csdn.net/zan1763921822/article/details/104512607