OPENCV FOR PYTHON 学习笔记 - 滑动条
import numpy as np
import cv2 as cv
#滑动条做调色板
def nothing(x):
pass
#创建一幅黑色图像
img = np.zeros((512,512,3),np.uint8)
cv.namedWindow('img')
'''
createTrackbar() 这个函数用于创建一个可以调整数值的滑动条,并将滑动条附加到指定的窗口上。
参数1 trackbarname:跟踪栏名称,创建的轨迹栏的名称。
参数2 Winname:窗口的名字,表示这个轨迹条会依附到哪个窗口上,即对应namedWindow()创建窗口时填的窗口名。
参数3 value:指向整数变量的可选指针,该变量的值反映滑块的初始位置。
参数4 count:表示滑块可以达到的最大位置的值,最小位置始终为0。
参数5 onChange:指向每次滑块更改位置时要调用的函数的指针,有默认值0。此函数的原型应为void XXX (int, void *); ,其中第一个参数是轨迹栏位置,第二个参数是用户数据(请参阅下一个参数)。如果回调是NULL指针,则不调用任何回调,而仅更新值。
'''
cv.createTrackbar('R','img',0,255,nothing)
cv.createTrackbar('G','img',0,255,nothing)
cv.createTrackbar('B','img',0,255,nothing)
switch = '0:OFF\n1:ON'
cv.createTrackbar(switch,'img',0,1,nothing)
while(1):
cv.imshow('img',img)
k = cv.waitKey(1)&0xFF
if k == ord('q'):
break
r = cv.getTrackbarPos('R','img')
g = cv.getTrackbarPos('G','img')
b = cv.getTrackbarPos('B','img')
s = cv.getTrackbarPos(switch,'img')
if s == 0:
img[:]=0
else:
img[:]=[b,g,r]
cv.destroyAllWindows()
本文来自博客园,作者:HappyChen2016,转载请注明原文链接:https://www.cnblogs.com/happychen2016/p/15156800.html

浙公网安备 33010602011771号