opencv——OpenCV中的滑动条

1、API函数实现调色板

#!/usr/bin/env python3 # -*- coding:UTF8 -*-""" 学习使用函数cv2.getTrackbarPos()和cv2.createTrackbar()分别用来获取滑动条参数和创建滑动条。 cv2.getTrackbarPos()函数原型如下: getTrackbarPos(trackbarname, winname) -> retval cv2.creatTrackbar()函数原型如下: createTrackbar(trackbarName, windowName, value, count, onChange) -> None 参数1 trackbarName:轨迹条名字 参数2 windowName:窗口名字 参数3 value:滑块初始位置 参数4 count:表示滑块达到最大位置的值 参数5 onChange:默认值为0,指向回调函数 """import cv2 as cv import numpy as np# 创建一张灰度图 img = np.ones((500, 500, 3), np.uint8) * 127def nothing(x): passcv.namedWindow('image') # 创建滑动条 cv.createTrackbar('R', 'image', 0, 255, nothing) cv.createTrackbar('G', 'image', 0, 255, nothing) cv.createTrackbar('B', 'image', 0, 255, nothing)while True: R = cv.getTrackbarPos('R', 'image') G = cv.getTrackbarPos('G', 'image') B = cv.getTrackbarPos('B', 'image') img[:] = [B, G, R] cv.imshow('image', img)k = cv.waitKey(25) & 0xFF if chr(k) == 'q': break cv.destroyWindow('image')

2、使用回调函数完成调色板
#!/usr/bin/env python3 # -*- coding:UTF8 -*-""" 学习使用函数cv2.getTrackbarPos()和cv2.createTrackbar()分别用来获取滑动条参数和创建滑动条。 cv2.getTrackbarPos()函数原型如下: getTrackbarPos(trackbarname, winname) -> retval cv2.creatTrackbar()函数原型如下: createTrackbar(trackbarName, windowName, value, count, onChange) -> None 参数1 trackbarName:轨迹条名字 参数2 windowName:窗口名字 参数3 value:滑块初始位置 参数4 count:表示滑块达到最大位置的值 参数5 onChange:默认值为0,指向回调函数 """import cv2 as cv import numpy as np# 创建一张灰度图 img = np.zeros((500, 500, 3), np.uint8)# 蓝色通道滑动条回调函数 def BlueColorChange(blue): global img img[:, :, 0] = blue# 绿色通道滑动条回调函数 def GreenColorChange(green): global img img[:, :, 1] = green# 红色通道滑动条回调函数 def RedColorChange(red): global img img[:, :, 2] = redcv.namedWindow('image') # 创建窗口和滑动条 cv.createTrackbar('R', 'image', 0, 255, RedColorChange) cv.createTrackbar('G', 'image', 0, 255, GreenColorChange) cv.createTrackbar('B', 'image', 0, 255, BlueColorChange)while True: cv.imshow('image', img)# 循环显示图像k = cv.waitKey(25)# 当‘q’(对应ASCII码为113)按下时退出程序 if k == 113: breakcv.destroyWindow('image')# 销毁所有窗口

【opencv——OpenCV中的滑动条】

    推荐阅读