Python OpenCV – función getTrackbarPos()

getTrackbarPos() es una función en Python OpenCV que devuelve la posición actual de la barra de seguimiento especificada. Se necesitan dos argumentos. El primero es para el nombre de la barra de seguimiento y el segundo es el nombre de la ventana que es el padre de la barra de seguimiento. Devuelve la posición de la barra de seguimiento.

Sintaxis: cv.getTrackbarPos(trackbarname, winname)

Parámetros:

  • trackbarname: Nombre de la barra de seguimiento
  • winname: Nombre de la ventana que es el padre de la barra de seguimiento.

Retorno: Posición actual de la barra de seguimiento especificada

Nota: [Solo para Qt Backend] Aquí, si la barra de seguimiento está adjunta al panel de control, winname puede estar vacío o nulo.

A continuación se muestra la implementación:

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)
 
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()

Producción:

Cuando movemos el control deslizante de cualquiera de R, G o B, sus valores getTrackbarPos() correspondientes cambian y devuelve la posición del control deslizante específico. A través del cual cambiamos el color del cuadro de abajo. Puede ver en el código que pasamos al argumento de getTrackbarPos(). Tomemos r como ejemplo, pasamos ‘R’ e ‘image’ a la función. Aquí ‘R’ es el nombre de la barra de seguimiento que creamos e ‘imagen’ es el nombre de la ventana que se abre cuando ejecutamos el código. Básicamente, es la ventana principal de la barra de seguimiento. Esto devuelve la posición del control deslizante como un valor entero y lo guardamos en r. Creamos un cuadro de color con este valor de retorno ‘r’, ‘g’ y ‘b’. 

Publicación traducida automáticamente

Artículo escrito por rushi_javiya y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *