作業說明:
- 撰寫一個程式讀取 1 張圖片,將圖像中每一個點像素的值各加上一個數值。
- 如果輸入圖像是灰階圖像,改變每個像素的灰階值。
- 如果輸入圖像是全彩圖像(RGB),則只改變每個像素的 R 值。
- 修改後的像素值仍然要介於 0 ~ 255 (注意!!數值不要溢位)
- Windows10
- Visual Studio 2019
- Opencv-4.3.0
- C++
實作方法:
- 輸入圖片路徑後,會檢查是否可讀取到圖片內容,若不行,則重新輸入圖片路徑。
- 輸入欲增加的數值。
- 判斷輸入的圖片是屬於灰階圖像還是全彩圖像。
- 若是灰階圖像,則利用輸入的數值,增加灰階圖像的每個像素的灰階值,再將原圖像和灰階圖像印出。
- 若是全彩圖像(RGB),則利用輸入的數值,只增加全彩圖像每個像素的 R 值,再將原圖像和全彩圖像印出。
- 印完圖像後,可讓使用者選擇是否要繼續輸入像素,觀察同張圖片不同像素的效果,若輸入^z,則回到第二點的流程。
- 第一點的流程輸入0,則終止程式。
執行方式/畫面:
輸入灰階圖:
輸入全彩圖:
影片:
沒有留言:
張貼留言