這次的作業:空間濾波器。
我在它本身的意思上看了課本很多次。
問了許多人才知道,是要計算的像素作為中心點,其他作為他周圍九宮格的鄰近點,
之後再除上1/9可以將他們的像素平均起來。
意思知道之後,再來遇到的難題就是看懂老師的程式碼。
程式碼沒註解的地方,經過詢問之後約略清楚再做甚麼後,
開始設九宮格的欄位,給使用者去設定九宮格的強度。
之後利用ScanLine去找他得鄰近點。
bPtrOriginalImage0 = (Byte *)imOriginal->Picture->Bitmap->ScanLine[i-1]; bPtrOriginalImage1 = (Byte *)imOriginal->Picture->Bitmap->ScanLine[i]; bPtrOriginalImage2 = (Byte *)imOriginal->Picture->Bitmap->ScanLine[i+1];
再彩色濾波上,還要去考慮ScanLine的特性,當b=i時,g=i+1,r=i+2。
每一格在分別去乘上使用者所輸入的各個強度。
圖片出來之後就會有柔化,更清楚的效果。
再看別人的成果圖,我大多看不出有甚麼變化。
然後對著鈔票上的人頭作空間濾波時,才清楚空間濾波器的功用可以將圖片造成這樣的改變。
以下執行結果,可以看到人頭上的黑線條,全部都變成周遭皮膚的顏色,
做過空間濾波之後,看起來變得像是一張黑白像片。
以下是彩色的空間濾波的成果圖。
沒有留言:
張貼留言