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

2022年5月17日 星期二

s1083511 作業5

一、程式問題

撰寫一個程式將所附圖像flower.jpg的黃色花瓣區域擷顯示出來。

二、開發環境

Windows 10 + Visual Studio 2019 + OpenCV 3.4.6

三、實作方法

1. imread 讀圖片。

2. 如果圖片無法顯示,印出”could not load image…”

3. 使用cvtColor(),將圖像從RGB轉成HSV。

4. 使用inrange()將圖片二值化,生成一個 mask 遮罩。

5. 使用bitwise_and()進行圖像合成,印出結果。

四、執行結果

(a) 原圖

(b) HSV

(C) mask

(D) result

2022年5月11日 星期三

s1071608 作業5

 

1. 作業說明:

撰寫一個程式將所附圖像flower.jpg的黃色花瓣區域擷顯示出來。
2. 使用環境:
  • window 10
  • pycharm
  • python

3. 實作方法:

1. imread讀取原圖
2. 將圖像轉換為HSV的色彩空間
3. 設定黃色的lower_bound、upper_bound
4.用cv2中的inRange做mask
5. bitwise_and()做原圖與mask部分

4.執行結果:



原圖

結果



2021年5月23日 星期日

s1073348 影像處理作業5

 1.作業說明:

附件中的讀.row晶片設計的高度檔案,設計人員無法直接看到相關資訊。利用你所學的Color顏色的知識與處理技術,撰寫一個程式來讀取附件中的讀.row 檔案,將高度資料以圖片(顏色)視覺化呈現出來,讓設計人員可以看到高度相關資訊。

2.作業環境

作業系統: Windows 10
程式語言:Python 3.8.5
編譯器:Spyder 4
使用python套件:
openCV 4.5.1
numpy 1.20.2
matplotlib


3、操作過程:

    1. 先使用float32轉換.raw檔,有三個檔案 02,08,10.raw

2. 解封(unpack Header)求出Height(H) & Width(W)

3. 運用長寬取得pixel存至陣列pix_ar1,pix_ar2,pix_ar3

4. 取的各自最大值(max)&最小值(min)

5. pixel-99999的值轉為無效值

6. 計算DifferenceMax-Min

7. 轉換其為圖片(0~255)

8. 將每個數值除以Difference乘上255

9. cv2.function中的ColorMap_Jet對應值填色

10. Color Visualization輸出,並以cv2.imwrite儲存圖片


4.執行結果

02.raw 原圖:


02圖片視覺化後:

08.raw 原圖

08圖片視覺化後:

10.raw原圖:
10圖片視覺化後

三張raw轉換成視覺化的plot

















s1071242影像處理作業 5


1.作業說明:
附件中的讀.row晶片設計的高度檔案,設計人員無法直接看到相關資訊。利用你所學的Color顏色的知識與處理技術,撰寫一個程式來讀取附件中的讀.row 檔案,將高度資料以圖片(顏色)視覺化呈現出來,讓設計人員可以看到高度相關資訊。
 
2.使用環境 
 python3.8
openCV 4.5.1
windows 10

3. 程式說明

先用fread(32) 讀出分width height ch

再 fread(4) 並且用unpack轉成float

找出除了invalid value外的最小值

並將invalid value變為最小值

把值轉換到0~255之間

利用reshape將list轉為圖片

設定cmap並輸出結果

4 . 執行結果

由上到下為2 8 10,cmap設的不同顏色出來的圖的顏色也會不同



2021年5月22日 星期六

s1071221 影像處理作業 5

一、作業說明:

附件中的讀.row晶片設計的高度檔案,設計人員無法直接看到相關資訊。利用你所學的Color顏色的知識與處理技術,撰寫一個程式來讀取附件中的讀.row 檔案,將高度資料以圖片(顏色)視覺化呈現出來,讓設計人員可以看到高度相關資訊。

二、使用環境:

作業系統 : windows10
編譯軟體: Visual Studio Code
使用語言: python 3.9.2/opencv 4.1.2/numpy-1.20.1/matplotlib-3.2.2
 
三、方法:

1.    Header的資料利用uint32(前四個)double(後兩個)的格式儲存起來

2.    讀出高度資料存進list

3.    max()min()找出最大最小值

4.   利用reshapelist轉為圖片

5.   設定cmaphsv並輸出結果

6.  利用plt.colorbar()將顏色的高度表現出來
 
四、執行結果:







2019年6月7日 星期五

1051536 作業5

一、作業要求:
請撰寫一個程式,利用數學型態學影像處理運算,計算出所附圖像(共三張)每張圖像中 圍棋個數。 a. 請在部落格呈現經由數學型態學影像處理運算後的圖像,同時要呈現你程式輸出棋 子數量的螢幕截圖。 b. 程式不一定可以算出正確棋子數量,越接近正確答案越好! 


二、使用的環境:
  • Windows10
  • Python3.6
  • Opencv-3.4
  • Pyqt 5
  • Matplotlib-3.0.1

三、特殊程式片段說明:

      cvCvtColor:將彩圖轉成灰階
      cvThreshold:二質化圖片
      cvCreateStructuringElementEx:定義kernel樣式和大小
      cvErode:腐蝕圖片
      cvDilate:膨脹圖片
      cvFindContours:用來計算有幾個黑色旗子

四、執行結果


2019年6月6日 星期四

s1051404的作業5

1. 作業題目:
請撰寫一個程式, 利用數學型態學影像處理運算,計算出所附圖像(共三張)每張圖像中圍棋個數。


2. 環境:
VS2015
opencv 2.4.13


3. 作業解說:
(1) 使用imread()讀入灰階圖片
(2) 利用threshold將圖片做二值化
(3) 運用getStructuringElement()設定dilate的element,我先用RECT形狀將圖片做膨脹,再用ELLIPSE圓形做膨脹修正。
(4) 計算棋子的數量: 讀取img的像素,遇到顏色為黑色的話,將四周50pixel的值以灰色取代,並計算棋子數量+1


4. 圖示:
A 圖一 找到24個棋子
B 圖二 找到28個棋子
C 圖三 找到31個棋子