圖像處理基本算法-卷積和相關


在執行線性空間濾波時,經常會遇到兩個概念相關和卷積
二者基本相似,在進行 圖像匹配是一個非常重要的方法。
相關是濾波器模板移過圖像並計算計算每個位置乘積之和的處理
卷積的機理相似,但濾波器首先要旋轉180度
相關的計算步驟:
(1)移動相關核的中心元素,使它位於輸入圖像待處理像素的正上方
(2)將輸入圖像的像素值作為權重,乘以相關核
(3)將上面各步得到的結果相加做為輸出
卷積的計算步驟:
(1)卷積核繞自己的核心元素順時針旋轉180度
(2)移動卷積核的中心元素,使它位於輸入圖像待處理像素的正上方
(3)在旋轉后的卷積核中,將輸入圖像的像素值作為權重相乘
(4)第三步各結果的和做為該輸入像素對應的輸出像素
超出邊界時要補充像素,一般是添加0或者添加原始邊界像素的值
    可以看出他們的主要區別在於計算卷積的時候,卷積核要先做旋轉。

而計算相關過程中不需要旋轉相關核。

離散單位沖擊:我們將包含單個1而其余全是0的函數成為離散單位沖擊。
重要性質:一個函數與離散單位沖擊相關,在沖擊位置產生這個函數的一
個翻轉版本。
f 函數
w 濾波器模板
eg:
f(x,y)
  0 0 0 0 0
  0 0 0 0 0 
  0 0 1 0 0
  0 0 0 0 0
  0 0 0 0 0
w(x,y)
  1 2 3 
  4 5 6 
  7 8 9
相關 f*w = 
     0     0     0     0     0
     0     9     8     7     0
     0     6     5     4     0
     0     3     2     1     0
     0     0     0     0     0
卷積f*w=
     0     0     0     0     0
     0     1     2     3     0
     0     4     5     6     0
     0     7     8     9     0
     0     0     0     0     0
相關的用途:圖象的匹配
假如函數f中存在w的一個復制版本,即f:
  0 0 0 0 0
  0 1 2 3 0 
  0 4 5 6 0
  0 7 8 9 0
  0 0 0 0 0
f*w是多少呢?讀者也自己算吧。
    9    26    50    38    21
    42    94   154   106    54
    90   186   285   186    90
    54   106   154    94    42
    21    38    50    26     9
是不是會發現w與f中w的復制版本重合時,該點的值最大。最大值為
1^2+2^2+……+9^2 = 285
這就是用相關進行圖像匹配的基本原理。當然了,在圖像匹配時還要進行

相關函數的歸一化等操作。

matlab源代碼:

%函數f
f =  [0 0 0 0 0
    0 0 0 0 0 
     0 0 1 0 0
    0 0 0 0 0
    0 0 0 0 0];
%濾波器模板
w = [1 2 3 
     4 5 6 
     7 8 9];
%卷積
ff = conv2(f,w,'same')
%相關
ff2 = imfilter(f,w)

%圖像匹配的基本原理
f2 = [  0 0 0 0 0
        0 1 2 3 0 
        0 4 5 6 0
        0 7 8 9 0
        0 0 0 0 0];
 ff3 = imfilter(f2,w)   
    



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM