其中包含两个回调函数函数(updateAlpha和updateBeta)用来更新每次滑动条更新后,所获得的值。用到的库函数有createTrackbar用来创建滑动条和GetTrackbarpos用来获取滑动块的位置,和settrackbarpos用来设置滑动条的当前位置。(忽略函数名的大小写)
具体代码如下:
import cv2 as cv
import numpy as np
alpha=0.3
beta=80
img=cv.imread("C:/Users/wangyiyuan/Desktop/20200201172603_hocyy.jpg")
img2=cv.imread("C:/Users/wangyiyuan/Desktop/20200201172603_hocyy.jpg")
print(img)
def updateAlpha(x):
global alpha ,img,img2
alpha=cv.getTrackbarPos('Alpha','image')
alpha=alpha*0.01
img=np.uint8(np.clip((alpha * img2+beta),0,255))
def updateBeta(x):
global beta, img, img2
beta= cv.getTrackbarPos('Beta', 'image')
img = np.uint8(np.clip((alpha * img2 + beta), 0, 255))
cv.namedWindow('image')
cv.createTrackbar('Alpha','image',0,300,updateAlpha)
cv.createTrackbar('Beta','image',0,255,updateBeta)
cv.setTrackbarPos('Alpha','image',100)
cv.setTrackbarPos('Beta','image',10)
while (True):
cv.imshow('image',img)
if cv.waitKey(1)==ord('q'):
break
cv.destroyAllWindows()
最后的结果如下:滑动条为初始设置数据时滑动滑动条来设置图像参数时: