2019年3月19日 星期二

s1051540 的作業 1

一. 作業要求

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 < =v<= 255),並將圖像儲存至一個新圖像檔案中。

二. 環境設置

visual stdio 2017 c++   opencv-3.4.0-vc14_vc15   window10

三. 實作方式

1.設置一shift變數讓使用者輸入(-255<=v<= shift<=v<= 255)
2.使用 Mat img = imread("31288.jpg",CV_LOAD_IMAGE_UNCHANGED) 讀取圖片
3. 根據x’=a*x+b 這項函式 使用img.convertTo(dst1, -1, 1, shift)改變像素 dst1為 x’ 1 為類型  -1為a  shift為 b
4.最後使用imwrite("Display.jpg", dst1)做出Display.jpg 這個改變像素的圖檔

5.執行結果

此為編譯畫面




當超出範圍時顯示 overflow









輸入 120,原圖(圖上)與修改後圖(圖下)

                                                                       









                                     



輸入-90,原圖(圖上)與修改後圖(圖下)




沒有留言:

張貼留言