bpi-cm5-usb-camera-capture.py

Banana Pi BPI-CM5 : Module Compute SoC Amlogic A311D2 compatible Raspberry Pi CM4 · Fichier : bpi-cm5-usb-camera-capture.py · Langage : Python · Usage : Capturer une image depuis une caméra USB connectée au port USB 3.0 pour traitement visuel.

Script Python utilisant OpenCV pour capturer une image via une caméra USB sur le port USB 3.0.

Connectez une caméra USB compatible UVC au port USB 3.0 (5 Gbps) du BPI-CM5. Installez OpenCV avec 'sudo apt install python3-opencv'. Le SoC Amlogic A311D2 gère bien le flux vidéo USB. Le script vérifie la présence de /dev/video0 avant de capturer. La résolution est configurée en 1080p par défaut mais peut être augmentée.

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)

← Retour à la fiche