顯示具有 s1061531 標籤的文章。 顯示所有文章
顯示具有 s1061531 標籤的文章。 顯示所有文章

2021年6月12日 星期六

s1061531 影像處理作業7

作業說明

 

請撰寫一個程式,利用數學型態學影像處理運算(erode(), dilate()等函式),計算出所附圖像(共三張)每張圖像中圍棋個數。

a.     請在部落格呈現經由數學型態學影像處理運算後的圖像,同時要呈現你程式輸出棋子數量的螢幕截圖。

b.    程式不一定可以算出正確棋子數量,越接近正確答案越好!

開發環境

l   Windows 10

l   Visual Studio 2019

l   Python 3.8.3

l   OpenCV 4.5.1


程式說明

1. 將圖片讀取並進行灰階
2. 將圖片進行模糊處裡並用threshold二值化
2. 將圖片進行反轉(白變黑)
3. 使用numpy.one取得kenal
4.將圖片進行erode()和dilate()處理,使用適當的iterations
5.使用findContours後取得總數
6.使用drawContours框出輪廓

程式結果:


預測22,實際24



預測30,實際31





預測31,實際31





2021年6月7日 星期一

s1061531 影像處理作業八

 作業說明:

請寫一個程式將附圖二值化後輸出黑白圖像。目的是將文字與背景分離。

執行結果:



2021年6月5日 星期六

s1061531 影像處理作業6

   1. 作業題目 

附件中為三張利用將高度以色彩視覺化後的圖片。 

請設計一個基於Run-Length的壓縮法方,對圖檔作無失真壓縮後儲存成新檔案。 

 
 

部落格上應敘述你的壓縮方法,提供壓縮檔之格式,並計算三張圖的平均壓縮率(compression ratio) 

 

 
 

2. 開發環境 : 

  • Windows 10 

  • Visual Studio Code 

  • python 3.8.5 64bit 

  • Opencv 4.5.1 

3. 操作說明說明 

壓縮: 

  • 讀入bmp檔案 

  • 拆分B,G,R 

  • 使用shape取得寬和高 

  • 個別使用RLE的方式將B,G,R進行壓縮 

  • 將壓縮的資料和寬高儲存成.compress檔案 

解壓縮: 

  • 讀取寬、高和B,G,R資料 

  • 將R,G,B進行還原後merge成圖片 

  • imwrite圖片會和原圖相同 

4. 執行結果 

img1:

                                                        img1.bmp


img1_compress.bmp



壓縮率:7885/14322=0.5505≈55%

img2:

                                                        img2.bmp


img2_compress.bmp


                                                        壓縮率:13467/14322=0.9403≈94%

img3:

                                                        img3.bmp


                                                img3_compress.bmp

                                                     壓縮率:7314/14322=0.5106≈51%

平均壓縮率:(55%+91%+51%)/3=65%





2021年4月27日 星期二

s1061531 影像處理作業3


1. 作業題目: 

離散傅立葉轉換 DFT 練習  

  

請撰寫一個程式,讀取一張 256 色灰階圖像。  

(1) 計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階 256 色圖像 

方式呈現出。  

(2) 對圖像利用 Gaussian Low-Pass filter 處理,輸出平滑後圖像。(程式利用課本的 

frequency filter 步驟者可得滿分!) 

 

2. 開發環境: 

  • Windows 10 

  • Visual Studio Code 

  • python 3.8.5 64bit 

  • OpenCV 4.5.1 


3. 說明: 

(1)先將圖片變為256色灰階圖像 

(2)將圖片大小成長兩倍做DFT 

(3)取得圖片的相位角和頻譜圖 

(4)使用filter對圖片進行捲積 

(5)做IDFT還原圖片 

(6)將圖片變回原本長寬取得處理後結果 

 
 

4. 執行結果:  

  • 原始圖片: 

 

  • 灰階 

  •   

 

  • 兩倍長寬 

  •   

 

  • 頻譜圖 

  •   

   

  • 相位角 

  •   

 

  • 輸出圖片 

  •   

 

  • 取回原本長寬 

  •