2022年2月24日 星期四

s1081411 作業1

 

作業說明

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

作業環境

  • Windows 10
  • OpenCV 4.5.5
  • Visual Studio 2019

實作

輸入要更改的圖片,用imread()讀入,再輸入要更改的亮度值,先利用通道數來判斷圖片是灰階圖或者是彩圖,若灰階圖讀近來是三通道則再利用比對b,g,r來判斷是否是灰階圖,若是灰階圖,b,g,r三個數值皆需要做更改,反之,若是彩圖只需要依照題目需求更改r值,imshow()將圖片輸出,destroyWindow()將視窗關閉。

執行結果:
                                  
                         原圖              +100             -100






沒有留言:

張貼留言