作業說明
撰寫程式讀取一張圖片,將圖像中每個點像素的值加上一個數值。如果輸入圖像是灰階圖像,改變每個像素的灰階值;如果輸入圖像是全彩圖像(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
沒有留言:
張貼留言