作業說明:
程式讀取一張圖片,將圖像中每一個點像素的值各加上一個數值。
如果輸入圖像是灰階圖像,改變每個像素的灰階值。
如果輸入圖像是全彩圖像(RGB),則只改變每個像素的 R 值。
修改後仍像素值介於 0 與 255 之間。
使用環境/語言:
Windows10
Visual Studio 2019
Opencv-4.3.0
C++
實作方法(執行步驟):
1. 每次讀入圖片前確認是否結束程式
2. 輸入圖片路徑後imread()讀入圖片
3. Mat.empty()判斷圖片是否存在
4. 若圖片不存在或發生例外時輸出錯誤訊息並結束程式
5. Mat.channels()判斷圖像為彩色圖或灰階圖
6. 輸入要對同一張圖片執行的次數
7. 輸入像素值
8. 彩色圖加上r值;灰階圖加上灰階值
9. imshow()讓程式產生原圖與新圖之對照視窗
10. waitKey(0)等待按鍵後destroyWindow()關閉視窗執行步驟7或6
實作結果(左為程式輸出之新圖; 右為輸入之原圖):
輸入彩色圖:
0 :
-256 :
沒有留言:
張貼留言