這次程式寫的4個濾波器和胡椒鹽雜訊
胡椒鹽雜訊
在載入圖片加上胡椒鹽雜訊後
程式是參考這裡的MATLAB程式碼寫出來的
演算法會產生一個用亂數給定0~255之間的值的陣列
接著以此作為遮罩(是遮罩吧?)
並依iWhite和iBlack的設定值決定迴圈跑到的像素是否改成白點或黑點
===============================================================
平滑濾波器
一次讀取9個像素
不加任何權重
全部RGB色彩值相加後除以9
再將平均值指定給中間的像素
執行前
執行後
===============================================================
有加權的平滑濾波器
中間像素及其上下左右的像素值都加上權重
這樣中間的像素值的影響就會加重
RGB值相加後同樣取平均
再指定給中間的像素
執行前
執行後
和沒有加權重的比起來稍為清楚一點
===============================================================
中值濾波器
一次讀取9個像素
排序後取中間值
再存至中間像素
取中間值的函數
使用插入排序法排序
執行前
執行後
===============================================================
銳化空間濾波器
數學的部分聽不太懂...
所以就直接用結論得出的遮罩寫程式了
程式寫法和前面的平滑濾波器一樣
只是將權重更改為上圖而已
執行前
執行後
===============================================================
沒有留言:
張貼留言