一、作業題目
撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 < =v<= 255),並將圖像儲存至一個新圖。二、執行環境
1. python 3.6
2. opencv 4.0.0.21
3. PyQt5
4. Windows
2. opencv 4.0.0.21
3. PyQt5
4. Windows
三、程式功能
基本功能:
- 讀取全彩或灰階圖像,進行亮度調整
- 另存新檔
Bonus功能:
- 將全彩圖像轉換為灰階圖像
- 水平翻轉
- 垂直翻轉
- 儲存覆蓋原檔
四、實作方法
使用PyQt建立介面,並將圖片等比例縮放,在介面上以QPixmap形式,做出適當大小的呈現,讓使用者透過滑動slider(可用滑鼠拖曳或鍵盤左右鍵控制),以g(x,y) = a*f(x, y) + b的線性方式,對各像素點進行調整。
五、執行結果
初始介面
按下選擇圖片按鈕,讀取圖像(全彩)
利用單一Slider調整圖片明暗
分別利用RGB滑軌調整圖片顏色
按下另存圖片按鈕,另存圖片(全彩調整結果)
按下轉成黑白按鈕,將全彩圖片轉為灰階
可將轉換的灰階圖片進行亮度調整
按下另存圖片按鈕,另存圖片(轉換灰階圖片的調整結果)
按下選擇圖片按鈕,讀取圖像(灰階)
利用單一Slider調整圖片明暗
按下水平翻轉按鈕,圖像可進行水平翻轉
按下垂直翻轉按鈕,圖像可進行垂直翻轉
按下儲存按鈕,可直接儲存圖片,覆蓋原檔
沒有留言:
張貼留言