Detecta el color RGB de una cámara web usando Python – OpenCV

Requisitos previos: Python NumPy , Python OpenCV

Cada imagen está representada por 3 colores que son rojo, verde y azul. Veamos cómo encontrar el color más dominante capturado por la cámara web usando Python.

Acercarse:

  1. Importar los módulos cv2 y NumPy
  2. Capture el video de la cámara web con el método cv2.VideoCapture(0) .
  3. Muestre el cuadro actual utilizando el método cv2.imshow() .
  4. Ejecute un ciclo while y tome el cuadro actual usando el método read() .
  5. Tome los elementos rojo, azul y verde y guárdelos en una lista.
  6. Calcule el promedio de cada lista.
  7. Cualquiera que sea el promedio que tenga el mayor valor, muestra ese color.

Python3

# importing required libraries
import cv2
import numpy as np
 
# taking the input from webcam
vid = cv2.VideoCapture(0)
 
# running while loop just to make sure that
# our program keep running until we stop it
while True:
 
    # capturing the current frame
    _, frame = vid.read()
 
    # displaying the current frame
    cv2.imshow("frame", frame)
 
    # setting values for base colors
    b = frame[:, :, :1]
    g = frame[:, :, 1:2]
    r = frame[:, :, 2:]
 
    # computing the mean
    b_mean = np.mean(b)
    g_mean = np.mean(g)
    r_mean = np.mean(r)
 
    # displaying the most prominent color
    if (b_mean > g_mean and b_mean > r_mean):
        print("Blue")
    if (g_mean > r_mean and g_mean > b_mean):
        print("Green")
    else:
        print("Red")

Producción:

Publicación traducida automáticamente

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