1.作業說明
撰寫一個程式讀取一張圖片,將圖像中每一個點像素的值各加上一個數值。如果輸入圖像是灰階圖像,改變每個像素的灰階值;如果輸入圖像是全彩圖像(RGB),則只改變每個像素的 R 值。修改後像素值溢位Overflow 問題(像素值介於 0 與 255 之間)。
2.開發環境
ios 10.15.7
Visual Studio Code 1.63
OpenCV - 4.5.5
3.程式說明
1.使用imread來讀取圖像
2.判斷讀入的圖像為全彩圖像還是灰階圖像,判斷方式為比較圖像每個像素中的RGB通道中的值,若相同則表示此圖像為灰階圖。
3.若為灰階的圖則每個像素的RGB通道的值都要加上輸入的數值,若為全彩圖像則R通道加上輸入的數值即可,兩者皆要判斷是否有溢位的問題(若大於255則設為255,小於0則設為0)
4.最後使用imshow顯示加上數值後的圖像
4.執行結果
讀取圖片:lennaRGB.tif
讀取圖片:bookGray.jpg
作者已經移除這則留言。
回覆刪除