2014-01-17 56 views
0

我是Stackoverflow上的新成員,這是我的第一個問題,請耐心等待。使用非均勻濾鏡模糊圖像

我想使用非均勻濾鏡模糊圖像。但是,我還沒有完全理解什麼是非均勻濾鏡,我想問一下,非均勻濾鏡究竟做什麼以及如何做到這一點根據代碼進行解釋。 我想在Matlab中實現這一點。這裏是我的代碼的一個例子。

不均勻的內核將是

init= imread('cameraman.jpg'); 
initial = rgb2gray(init); 
sigma=3; 
H_filt = fspecial('gaussian',[5 5], sigma); 

或將被限制爲僅一個維度?

init= imread('cameraman.jpg'); 
initial = rgb2gray(init); 
sigma=3; 
H_filt = fspecial('gaussian',[5 1], sigma); 

在此先感謝研究員!

+0

這是一個1D過濾器,但我不知道這是不是你的意思是非統一的。可能不會。你能否引用你所引用的論文的引文? – chappjc

+2

@chappjc,我猜想除了時間/空間域中的窗口窗口以外的所有過濾器都是非均勻過濾器... – lennon310

+0

基本上與紙張無關。就項目而言,我被要求使用自定義非均勻模糊濾鏡來模糊圖像。我不確定它是否意味着它將被應用的方向(這就是爲什麼我發佈了這兩個例子),或者它與過濾器的類型有關。這就是我選擇高斯的原因。 – user3204834

回答

1

非均勻的模糊內核

不均勻的模糊內核是一個內核是不是恆定整個圖像

舉一些例子:

  • 失焦模糊內核的大小取決於攝像機和場景點(通常稱爲Z)之間的距離。這種現象可以通過散焦算法來加以利用;
  • 靜態場景中的運動物體可能會受到運動模糊,而靜態部分顯然沒有模糊。不同的運動物體確實可能有不同的運動模糊;
  • 相機鏡頭通常會在其邊界的中心生成更好(更清晰)的圖像。

如何產生非均勻模糊圖像

這取決於模糊多少內核圖像有,你想模仿什麼樣的模糊。

  • 可以通過光線跟蹤軟件模擬散焦模糊(相機場景點距離的功能)。
  • 如果您灣生成的後處理(卷積)非均勻模糊,那麼你需要:
    1. 獲取像素模糊核手頭(i,j):例如sigma_ij = f(i,j)
    2. 卷積您的輸入圖像(清晰的,清晰的):H_ij = fspecial('gaussian', [some large size], sigma_ij])
    3. 將結果寫入輸出圖像:I_final[i,j] = I_blurred_with_Hij[i,j]
    4. 繼續下一個像素。

在某些情況下,你可以切斷與正確的假設(模糊大小的限制,只有兩個或3的圖像模糊可能...)這個貪婪的循環。

1

通常它們是指每個像素都不是常數的濾波器 - >它在空間上不均勻。
嘗試實現一個高斯模糊,其標準差在每個像素處都不相同。

快速的方法是使用colfilt

如果您需要更多幫助,請告訴我。