bpi-cm5-usb-camera-capture.py
Script Python usando OpenCV para capturar una imagen a través de una cámara USB en el puerto USB 3.0.
Conecte una cámara USB compatible con UVC al puerto USB 3.0 (5 Gbps) del BPI-CM5. Instale OpenCV con 'sudo apt install python3-opencv'. El SoC Amlogic A311D2 maneja bien las transmisiones de video USB. El script verifica la presencia de /dev/video0 antes de capturar. La resolución está configurada en 1080p por defecto pero puede aumentarse.
bpi-cm5-usb-camera-capture.py
#!/usr/bin/env python3
# BPI-CM5 USB Camera Capture Example
# Nécessite : sudo apt install python3-opencv
# Matériel : Caméra USB compatible UVC connectée au port USB 3.0
import cv2
import sys
def capture_image(device_index=0):
# Ouverture de la caméra (0 est généralement le premier périphérique vidéo)
cap = cv2.VideoCapture(device_index)
if not cap.isOpened():
print(f"Erreur : Impossible d'ouvrir la caméra {device_index}")
sys.exit(1)
# Configuration optionnelle de la résolution (4K supporté par le SoC)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
print("Capture d'une image...")
ret, frame = cap.read()
if ret:
filename = "capture_bpi_cm5.jpg"
cv2.imwrite(filename, frame)
print(f"Image sauvegardée sous : {filename}")
else:
print("Échec de la capture de l'image.")
cap.release()
if __name__ == "__main__":
# Vérifier la disponibilité du périphérique /dev/video0
import os
if not os.path.exists('/dev/video0'):
print("Aucun périphérique vidéo détecté. Branchez une caméra USB.")
sys.exit(1)
capture_image(0)