2012年11月14日 星期三

HW03 空間濾波器實作

平滑化:
原圖

平滑化處理

        平滑化的目的是為了使圖片看起來不會那麼生硬,也可以說是將影像反鋸齒化或模糊化,使影像的雜訊減少。做法就是: 將每個Pixel周圍3x3區域的色彩值加總後平均,取代原來Pixel的色彩值,即可得到平滑化的效果。


銳化:
原圖

銳化處理

        銳化其實就是平滑化的相反,目的是增強圖片的細節和輪廓,凸顯影像邊緣的效果,使影像變得清晰。做法就是: 將每個Pixel的色彩值乘5倍後減去其上下左右Pixel的色彩值,取代原來Pixel的色彩值,即可得到銳化的效果。

銳化處理(出錯!!)

        上圖是在寫程式時出現的問題,我反覆檢查了好幾次程式碼,銳化的概念並沒有做錯,最後才發現是自己程式碼寫法有些問題。我按照座標讀取圖片Pixel色彩值,計算後就直接存回去原來的Pixel,所以後面讀取的Pixel色彩值是前面修改過的值,導致圖片看起來如上圖的樣貌。     


中值濾波器:
原圖

加入胡椒鹽雜訊

中值濾波器處理

        中值濾波器的目的是為了將雜訊降低,胡椒鹽雜訊用這個方式處理效果相當明顯,他將大部分的胡椒鹽雜訊消除,但是還是會有少數殘留的雜訊。做法就是: 每個Pixel周圍3x3區域的色彩值找出中位數取代原來Pixel的色彩值,即可得到中值濾波的效果。

心得:
        這次作業也是使用C#寫的,因為第一次作業花了相當多的時間去了解圖像會使用到的指令,所以這次作業只要了解空間濾波器每個應用的原理,撰寫程式時相當上手。另外再選圖像時發現有些圖像在做處理後較不明顯,必須找到合適的圖片才能凸顯其效果,像選擇做平滑化的圖片必須要選擇輪廓較清晰的,處理後的效果才會比較明顯。我覺得這次作業還滿有趣的,之前處理圖片都是用人家寫好的程式做處理,卻不知處理的原理,透過這次作業不但做出程式也理解了處理的方式,感覺很有成就感!

沒有留言:

張貼留言