2020年6月2日 星期二

1063318影像處理作業5

一、作業說明   

撰寫一個程式(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。


(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper 等)與數量(20%, 50%等)
(b)說明所設計去除雜訊的方法

二、使用環境 
Python
Visual Studio code

三、實作方法


本人使用python完成,一開始將圖片讀入,我使用Gaussian noise的方式將圖片加上噪點
(var0.01),之後再分別使用中值濾波均值濾波高斯濾波高斯雙邊濾波。最後發現中值濾波與高斯雙邊濾波效果不錯,其餘的方式最後會使圖有點模糊。

四、結果


  (左到右分別爲:加入高斯雜訊中值濾波   均值濾波 高斯濾波 高斯雙邊濾波)















2020年6月1日 星期一

1053329 影像處理作業5

一、作業要求:
撰寫一個程式
(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。
(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper )與數量(20%, 50%) (b)說明所設計去除雜訊的方法。

二、環境:
OSWindows 10
Programing Languagepython 3.6.8
IDEVisual Studio Code 1.45.1
Packageopencv 4.2.0.34matplotlib 3.2.1scikit-imagenumpy

三、實作方法:
1.          imread讀進灰階圖片
2.          util.random_noisegaussian將圖片加上gaussian雜訊,這邊要特別注意使用此方式會將ndarraytype轉為float64,因此要使用下面的gaussianBlur要將其轉回uint8
3.          util.random_noises&p將圖片加上salt-and-pepper雜訊
4.          gaussianBlur將高斯雜訊去除,範圍用(5,5)
5.          medianBlursalt-and-pepper雜訊濾掉 k選擇5
6.          Plt.show()顯示所有圖片結果

四、執行結果:

1051438 影像處理作業 5

 一、作業說明   

撰寫一個程式(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。
(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper 等)與數量(20%, 50%等)
(b)說明所設計去除雜訊的方法

二、使用環境 

Visual Studio code

三、實作方法

1. imread讀入圖片

2. random_noise來分別加入Gaussian, speckle, Salt-and-Pepper 等noise

3. gauss的數量分別設var:0.01,0.02,0.03 (default=0.01)4. salt and pepper的數量分別設amount:0.02,0.05,0.07(default=0.01)
5.speckle的數量分別設var0.01,0.02,0.03 (default=0.05)
得到以下圖片
salt &pepper
speckle
高斯


接者對上述分別做各4種去除雜訊得方法 分別是

6. blur()對圖像做均值平滑7. GaussianBlur()對圖像做高斯平滑8. medianBlur()對圖像做中值平滑9. bilateralFilter()對圖像做雙邊平滑

四、執行結果

高斯:
均值平滑
中值平滑
雙邊平滑
高斯平滑


salt &pepper:

均值平滑
雙邊平滑
高斯平滑
中值平滑
speckle:
均值平滑
高斯平滑
中值平滑


雙邊平滑

1053311 作業5


作業說明:
l   讀取預先準備好的圖片:
img = cv2.imread('test.jpg')
l   加入20%salt noise
salt_img = skimage.util.random_noise(image=img, mode='salt', clip=True, amount=0.2)
l   利用medianBlur去除雜訊(分別嘗試k35,都沒辦法做到很好結果,我也很納悶)
l   輸出

結果:


                               Fig1.結果


1061539影像處理作業5


一、作業要求
撰寫一個程式
(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。
(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper )與數量(20%, 50%) (b)說明所設計去除雜訊的方法。

. 使用環境

Operation system: windows10
Programing language: Python3.7.4
Library version: Opencv 4.2.0

三、實作方法
利用 skimage.util.random_noise分別添加Gaussian Salt and Peppe雜訊再使用Gaussian blurmedian blur來處理雜訊,最後使用plt輸出

四、作業結果



1053334 影像處理作業5

一、作業說明
撰寫一個程式(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。
(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper 等)與數量(20%, 50%等)
(b)說明所設計去除雜訊的方法

二、使用環境
c++
opencv:4.1.0

三、實作方法
-使用imread以灰階形式讀入圖片
-以圖片的rows與cols來製作gaussian noise與uniform noise的值
-使用randn來產生gaussian noise
-使用randu來產生uniform noise
-使用threshold與uniform noise來產生Salt and Pepper noise
-將原圖加上50%的gaussian noise
-將原圖加上20%的uniform noise
-將原圖加上50%的Salt and Pepper noise
-使用mediaBlur函式去除雜訊

四、實作結果
原圖:

加入雜訊後:

去除雜訊後:

1063321 影像處理作業5

一、作業說明
撰寫一個程式(a)在一張圖片中將上雜訊,(b)設計方法將雜訊去除。
(a) 說明加上的雜訊類型(Gaussian, Uniform, Salt-and-Pepper 等)與數量(20%, 50%等)
(b)說明所設計去除雜訊的方法

二、使用環境

        numpy:1.16.4
        Python:3.6.8
        opencv:4.1.0

三、實作方法

椒鹽雜訊:
取得得圖片的shape後,經過迴圈判斷,隨機去加上胡椒雜訊或鹽雜訊
濾掉雜訊:
使用medianBlur()

高斯雜訊:
 random.normal()產生gaussian nois
濾掉雜訊:
使用GaussianBlur()

四、實作結果
椒鹽雜訊與濾波


高斯雜訊與濾波