Saltar al contenido

resolución de video python cv2

Solución:

import cv2
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
    cv2.waitKey(10)

    ret, frame = cap.read()
    cap.set(3, 800)
    cap.set(4, 600)

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2BGRA) 
    print cap.get(3) # return default 1280       

    cv2.imshow('frame',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

Este su código funciona con webcame, no con el archivo.

para un archivo de video, puede cambiar el tamaño de la ventana

cv2.resizeWindow(winname, width, height) 

para esa primera, defina la ventana con nombre y cambie su tamaño

ejemplo

  cv2.namedWindow("frame", 0);
  cv2.resizeWindow("frame", 800,600);

para la ventana de cambio de tamaño de detalle

Creo que hay algunas cosas en su código que podrían necesitar atención.

  1. Como se describe en la documentación de OpenCV para VideoCapture, si desea acceder a su WebCam predeterminada, deberá inicializar la clase de la siguiente manera:

    cap = cv2.VideoCapture('file')
    

    Si está intentando cambiar la resolución de la cámara, le sugiero que mueva los dos set líneas justo debajo de la inicialización de cap y solo hágalo una vez, no cada vez que lea en el marco. También puede usar constantes para acceder a los atributos correctos:

    cap = cv2.VideoCapture('file')
    cap.set(cv2.CAP_PROP_FRAME_WIDTH, width)
    cap.set(cv2.CAP_PROP_FRAME_HEIGHT, height)
    
    # Your while loop and the rest of the code...
    
  2. Si está intentando leer el fotograma de un archivo y desea cambiar su resolución, probablemente desee utilizar el resize método como se describe aquí. Esto debería hacerse dentro del ciclo, justo después de leer en el marco. Podría ser algo como:

    resize(ret, ret, Size(800, 600), 0, 0, INTER_CUBIC); 
    

Espero que esto ayude.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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