Image noise processing
一、 題目說明:撰寫一個程式(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper 等)與數量(20%, 50%等)
(b) 說明所設計去除雜訊的方法 。
二、 使用環境:
Python -> 3.8.2
Opencv -> 4.2.0
Editor -> VS Code
三、 實作方法:
1.cv2.imread來進行照片讀取的動作。
image = cv2.imread("onion.jpg")
2.randon.normal產生gaussian_noise的常態分佈亂數
np.random.normal(0, 20, 3)
3.讀取圖片高跟寬後加上高斯噪音
3.讀取圖片高跟寬後加上高斯噪音
image[row, col, 0] = clamp(b + s[0])
image[row, col, 1] = clamp(g + s[1])
image[row, col, 2] = clamp(r + s[2])
4.利用高斯filter濾波->cv2.bilateralFilter5.之後利用mid value 和average value 的 filter過濾->cv2.medianBlur+cv2.blur
6.將原圖加上胡椒噪音
7.利用mid value filter過濾,有殘留白點
8.再利用均值filter過濾,將去除白點
四、 實作結果:
沒有留言:
張貼留言