Extraiga cuadros de video de la cámara web y guárdelos en imágenes usando Python

Hay dos bibliotecas que puede usar: OpenCV e ImageIO . Cuál elegir depende de la situación y, por lo general, es mejor usar el que ya conoce. Si es nuevo en ambos, ImageIO es más fácil de aprender, por lo que podría ser un buen punto de partida. Cualquiera que elija, puede encontrar ejemplos para ambos a continuación:

ImagenIO

Instalación:

pip install imageio[ffmpeg]

Uso:

Leer fotogramas de una cámara web y guardarlos como imágenes:

Python3

import imageio.v3 as iio
 
for frame_count, frame in enumerate(iio.imiter("<video0>")):
    iio.imwrite(f"frame_{frame_count}.jpg", frame)
    if frame_count > 10:
        break

Leer cuadros de un video y guardarlos como imágenes:

Python3

import imageio.v3 as iio
 
for frame_count, frame in enumerate(iio.imiter("path/to/video.mp4")):
    iio.imwrite(f"frame_{frame_count}.jpg", frame)

OpenCV

Instalación:

pip install opencv-python

Uso:

Leer fotogramas de una cámara web y guardarlos como imágenes:

Python3

import cv2
 
# Opens the inbuilt camera of laptop to capture video.
cap = cv2.VideoCapture(0)
i = 0
 
while(cap.isOpened()):
    ret, frame = cap.read()
     
    # This condition prevents from infinite looping
    # incase video ends.
    if ret == False:
        break
     
    # Save Frame by Frame into disk using imwrite method
    cv2.imwrite('Frame'+str(i)+'.jpg', frame)
    i += 1
 
cap.release()
cv2.destroyAllWindows()

Producción: 

python opencv extract frames from video

Leer cuadros de un video y guardarlos como imágenes:

Python3

import cv2
 
# Opens the inbuilt camera of laptop to capture video.
cap = cv2.VideoCapture("path/to/video.mp4")
 
success, image = cap.read()
frame_count = 0
while success:
    cv2.imwrite(f"extracted_images/frame_{frame_count}.jpg", image)
    success, image = cap.read()
    frame_count += 1
 
cap.release()

Publicación traducida automáticamente

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