opencv學習(六):粗略的調整圖片對比度和亮度
阿新 • • 發佈:2018-12-08
基本原理:兩張圖片合成。
先按照原來的圖片的格式新建一個色素全為零的圖片,然後按照兩張圖的比例不同合成一張新圖片。主要用到函式:addWeighted函式
# -*- coding=GBK -*- import cv2 as cv import numpy as np #粗略的調節對比度和亮度 def contrast_brightness_image(src1, a, g): h, w, ch = src1.shape#獲取shape的數值,height和width、通道 #新建全零圖片陣列src2,將height和width,型別設定為原圖片的通道型別(色素全為零,輸出為全黑圖片) src2 = np.zeros([h, w, ch], src1.dtype) dst = cv.addWeighted(src1, a, src2, 1-a, g)#addWeighted函式說明如下 cv.imshow("con-bri-demo", dst) src = cv.imread("C://1.jpg") cv.namedWindow("原來", cv.WINDOW_NORMAL) cv.imshow("原來", src) contrast_brightness_image(src, 1.2, 10)#第一個1.2為對比度 第二個為亮度數值越大越亮 cv.waitKey(0) cv.destroyAllWindows()
執行結果如下: