Wednesday, November 07, 2007

Chapter5-Neighborhood Processing-理論篇(未完成)

5.1 Introduction
一開始先說明了filter,filter是mask與function的組合,也就是用來做運算處理的一個陣列(這一段我自己加的),利用filter便可以將圖片做出類似柔邊(模糊)的效果,若function為linear function則稱為linear filter.

另外說明了一些較簡易的filter做法,例如page 90的平均值做法

5.2 Notation
簡述關於filter中的mask怎麼製作
不過我覺得重點應該在5.2.1 Edges of the Image
邊緣的處理方法有兩種Ignore the edges 和 Pad with zeros
(1)Ignore the edges - 這種方法是忽略邊緣,也就是邊緣不做處理,但是這種方法會讓邊緣的pixel消失,造成處理過後的圖比原圖小的狀況,假設mask很大則產生出來的圖可能會消失.

(2)Pad with zeros - 這種方法是事先在邊緣外加上一層零,之後在做處理,這種方法可以讓原圖不會縮小,但是mask若變大則會在邊緣產生類似黑色框架的東西.

5.3 Filtering in MATLAB
本章節是在說明MATLAB上的一些程式碼
第一個就是 filter2 (filter,image,shape) , 首先第一個參數就是要用來運算的filter,第2個就是要處理的原圖,第三個就是對於image邊緣的處理.
直接說明第三個參數shape
有下列三種
(1)same - 會維持原圖大小
(2)valid - 忽略最外圍的那一層pixel,若在最外圍加上一層零,則可達成與same相同的效果.
(3)full - 處理完後會擴張image陣列的大小
如果沒有輸入則預設為same

第二個是fespecial('average', )
這個程式碼是取陣列的平均數當做filter
第二個參數可以輸入[5,3](陣列大小),11(11*11的陣列),如過沒有輸入則預設為3*3的陣列