Método Python OpenCV setTrackbarMax()

En este artículo, cubriremos cómo configurar TrackbarMax() python en OpenCV .

Un elemento de la GUI que permite al usuario seleccionar un valor específico dentro de un rango de valores deslizando un control deslizante linealmente se conoce como barra de seguimiento. Este elemento es similar al desplazamiento pero permite al usuario seleccionar un valor específico con sus límites mínimo y máximo. En este artículo, discutiremos cómo establecer la posición máxima de la barra de seguimiento. El valor máximo de la barra de seguimiento se puede lograr usando la función setTrackbarMax(). Esta función establece la posición máxima de la barra de seguimiento especificada en la ventana especificada después de crear la barra de seguimiento.

Sintaxis: cv.setTrackbarMax(trackbarname, winname, maxval)

Parámetros:

  • trackbarname: Nombre de la barra de seguimiento
  • winname: Nombre de la ventana que es el padre de la barra de seguimiento
  • maxval: Nueva posición máxima

Retorno: Ninguno

Ejemplo 1: 

En este ejemplo, hemos creado una ventana con una imagen negra. Además, creamos una barra de seguimiento usando la función createTrackbar () y establecemos el valor máximo de la barra de seguimiento usando la función setTrackbarMax() en 200. Después de eso, crearemos un bucle para mostrar una imagen y una barra de seguimiento. Entonces, cada vez que movemos la posición de la barra de seguimiento, los tonos de negro cambian.

Python3

# Python program for setTrackbarMax()
#Python OpenCV
  
# Importing the libraries OpenCV and numpy
import cv2
import numpy
  
# Create a function 'nothing' for creating trackbar
def nothing(x):
    pass
  
# Creating a window with black image
img = numpy.zeros((300, 512, 3), numpy.uint8)
cv2.namedWindow('image')
  
# Creating trackbars for color change
cv2.createTrackbar('color_track', 'image', 0, 255, nothing)
  
# Setting maximum position of 'color_track' trackbar to 200
cv2.setTrackbarMax('color_track', 'image', 200)
  
# Create a loop for displaying image and trackbar
while(True):
  
    # Display the image
    cv2.imshow('image', img)
  
    # Create a button for pressing and changing the window
    k = cv2.waitKey(1) & 0xFF
    if k == 27:
        break
  
    # Get current positions of trackbar
    color = cv2.getTrackbarPos('color_track', 'image')
  
    # Display color mixture
    img[:] = [color]
  
# Close the window
cv2.destroyAllWindows()

Producción:

 

Ejemplo 2:

En este ejemplo, hemos creado una ventana con una imagen negra. Además, creamos tres barras de seguimiento de color rojo, verde y azul con la función createTrackbar() y establecemos los valores máximos de la barra de seguimiento con la función setTrackbarMax() en 100, 200 y 150. Más tarde, creamos un bucle para mostrar una imagen y una barra de seguimiento. Entonces, cada vez que movemos las posiciones de la barra de seguimiento, los tonos de rojo, verde y azul cambian.

Python

# Python program for setTrackbarMax()
#Python OpenCV
  
# Importing the libraries OpenCV and numpy
import cv2
import numpy
  
# Create a function 'nothing' for creating trackbar
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('Red', 'image', 0, 255, nothing)
  
# Creating trackbars for Green color change
cv2.createTrackbar('Green', 'image', 0, 255, nothing)
  
# Creating trackbars for Blue color change
cv2.createTrackbar('Blue', 'image', 0, 255, nothing)
  
# Setting maximum values of green color trackbar
cv2.setTrackbarMax('Green', 'image', 100)
  
# Setting maximum values of red color trackbar
cv2.setTrackbarMax('Red', 'image', 200)
  
# Setting maximum values of blue color trackbar
cv2.setTrackbarMax('Blue', 'image', 150)
  
# Create a loop for displaying image and trackbar
while(True):
  
    # Display the image
    cv2.imshow('image', img)
  
    # Create a button for pressing and changing the window
    k = cv2.waitKey(1) & 0xFF
    if k == 27:
        break
  
    # Get current positions of red color trackbar
    red_color = cv2.getTrackbarPos('Red', 'image')
  
    # Get current positions of green color trackbar
    green_color = cv2.getTrackbarPos('Green', 'image')
  
    # Get current positions of blue color trackbar
    blue_color = cv2.getTrackbarPos('Blue', 'image')
  
    # Display color mixture
    img[:] = [blue_color, green_color, red_color]
  
# Close the window
cv2.destroyAllWindows()

Producción:

 

Publicación traducida automáticamente

Artículo escrito por vin8rai 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 *