别人没那么重要,我也没那么重要,好好活着,把能做的小事做好,够不到的东西就放弃,承认就好。做一个心情好能睡着的人,你所有事情都会在正轨上。

PythonOpenCV-图形用户界面-使用跟踪栏

跟踪栏是OpenCV为图像窗口提供的交互工具。用户可以通过跟踪栏中的滑块位置获取特定范围内的值,从而为进行其他操作提供参数。

1. 创建跟踪栏

函数原型

cv2.createTrackbar(trackbarname, wname, value, count, onChange, userdata)

参数说明

trackbarname:跟踪栏名称

wname:图像窗口名称

value:滑块的初始位置

count:跟踪栏的最大值,最小值为0

onChange:回调函数名称

userdata:其他可选数据

2. 返回跟踪栏当前值函数

函数原型

retval = cv2.getTrackbarPos(trackbarname, wname)

参数说明

trackbarname:跟踪栏名称

wname:图像窗口名称

3. 代码示例

import cv2 as cv
import numpy as np

img = np.zeros((200, 320, 3), np.uint8)+255   # 创建白色背景图
# 定义跟踪栏回调函数
def doChange(x):
    b = cv.getTrackbarPos('B', 'trackbar')
    g = cv.getTrackbarPos('G', 'trackbar')
    r = cv.getTrackbarPos('R', 'trackbar')
    img[:] = [b, g, r]  # 修改图像RGB值

cv.namedWindow('trackbar')
cv.createTrackbar('B', 'trackbar', 0, 255,doChange)   # 创建跟踪栏
cv.createTrackbar('G', 'trackbar', 0, 255,doChange)
cv.createTrackbar('R', 'trackbar', 0, 255,doChange)

while True:
    cv.imshow("trackbar", img)
    key = cv.waitKey(1)
    if key == 27:    # 按下【Esc】键退出
        break
cv.destroyAllWindows()

运行结果

 

 

/*-------------------------------------------------------------------------------------------------------

笔者说明:

  该笔记来源于本人学习Python + OpenCv时的资料,

  分享出来只是为了供大家学习,并且为了自己以后想要用的时候方便寻找。

时间:2023年4月15日

------------------------------------------------------------------------------------------------------------*/

posted @ 2023-04-15 18:33  一路狂奔的乌龟  阅读(197)  评论(0)    收藏  举报
返回顶部