1.開發環境:
- opencv:4.5.5
- windows10
- visual studio 2019,c++
2.作業說明:
我寫了一個函式叫:isGray(),把Mat型別的物件放進去他就會判斷是灰階徒還是彩色圖。
(如果是灰階圖的話每個像素各自的rgb都會視同個值,以此判斷)
然後是colorPic()和grayPic(),分別負責處理彩色圖和灰階圖。
對於彩色圖,因為只要更改r值,因此將每個像素的r值加上輸入的數值就好。(但我為了保險,所以有另外宣告一個與圖相同但陣列內部是空的copy,因此b和g的值也要在每次更動r值時一起賦值過去)
對於灰階圖,將gbr皆加上指定值即可。
對於修正溢位是用saturate_cast<uchar>()
一開始會讓使用者輸入數字
灰階圖片+125
沒有留言:
張貼留言