2021年3月4日 星期四

s1071546 影像處理作業 1

 作業說明:

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。

Coding環境:

  • Windows 10 20H2
  • Anaconda 3.18.11
  • Python 3.9.1
  • OpenCV 4.5.1
程式說明:

  1. 使用Python先載入OpenCV函式庫
  2. 請使用者輸入要處理的照片檔名
  3. 使用cv2.imread將檔案載入並存成變數img
  4. 請使用者輸入處理完要存檔的檔案名稱
  5. 請使用者輸入v值並轉成Integer
  6. 透過img.shape獲得圖片的長寬以及通道數量 
  7. 透過三層迴圈來對圖片每一行、每一列中的每一個通道,也就是每個像素的B,G,R值加上剛剛輸入的v,來調整照變的亮度
  8. 如果像素的B,G,R值加上v後大於255,就將其值設為255,如果B,G,R值加上v後小於0,則將其值設為0 
  9. 使用cv2.imwrite存檔
  10. 使用cv2.imshow將結果以視窗的形式顯示出來
處理結果:

原圖

v值為50的處理結果


v值為-50的處理結果


沒有留言:

張貼留言