Python OpenCV setTrackbarPos() Function (original) (raw)

Last Updated : 03 Jan, 2023

setTrackbarPos() function sets the position of the specified trackbar in the specified window. It does not return anything. setTrackbarPos() takes three arguments. The first is for the trackbar name and the second one is the window name which is the parent of the trackbar and the third one is for the new value of the position that is to be set to the trackbar. It returns None.

Syntax:

cv.setTrackbarPos( trackbarname, winname, pos)

Parameters:

Return:

None

To create Track bars first import all the required libraries and create a window. Now create track bar(s) and add code to change or work as per their movement.

When we move the slider of any of the trackbar its corresponding getTrackbarPos() values changes and it returns the position of the specific slider. Through which we change the behavior accordingly.

Example: Using setTrackbarPos() function to change colors in a window

Python3 `

Demo Trackbar

importing cv2 and numpy

import cv2 import numpy

def nothing(x): pass

Creating a window with black image

img = numpy.zeros((300, 512, 3), numpy.uint8) cv2.namedWindow('image')

creating trackbars for red color change

cv2.createTrackbar('R', 'image', 0, 255, nothing)

creating trackbars for Green color change

cv2.createTrackbar('G', 'image', 0, 255, nothing)

creating trackbars for Blue color change

cv2.createTrackbar('B', 'image', 0, 255, nothing)

setting position of 'G' trackbar to 100

cv2.setTrackbarPos('G', 'image', 100)

while(True): # show image cv2.imshow('image', img) # for button pressing and changing k = cv2.waitKey(1) & 0xFF if k == 27: break

# get current positions of all Three trackbars
r = cv2.getTrackbarPos('R', 'image')
g = cv2.getTrackbarPos('G', 'image')
b = cv2.getTrackbarPos('B', 'image')

# display color mixture
img[:] = [b, g, r]

close the window

cv2.destroyAllWindows()

`

Output: