2022年2月23日 星期三

s1083340 作業1

作業說明

    撰寫程式讀取一張圖片,將圖像中每個點像素的值加上一個數值。如果輸入圖像是灰階圖像,改變每個像素的灰階值;如果輸入圖像是全彩圖像(RGB),則只改變每個像素的 R 值。                                                                           注意修改後像素值溢位 Overflow 問題(像素值介於 0 與 255 之間)

開發環境

  • Windows 11
  • Pycharm 2021
  • Python3.7
  • Opencv-python 4.5.5.62

程式說明

   1.輸入圖片檔案路徑,使用imread()讀取圖片

   2.判斷輸入的圖像為灰階還是全彩圖像

⭐灰階圖像每個像素的R、G、B數值皆相同

   3.輸入欲改變圖像中像素的數值

⭐如果圖像為灰階圖像,修改圖像中所有像素的數值;如果圖像為全彩圖像, 僅修改圖像中R通道的數值

⭐若修改後的數值小於0,將數值改為0;若修改後的數值大於255,將數值改 為255,避免像素值溢位問題

   4.使用imshow()顯示修改後圖像

   5.使用waitKey()等待使用者按下任意按鍵,將圖像關閉並釋放視窗

執行結果

   灰階影像

  

原圖                                     像素值 -100

原圖                                       像素值 +100

 全彩影像

 

原圖                                        R值-100

原圖                                        R值+100



沒有留言:

張貼留言