[PYTHON] WEB Kameraaufnahme Ver3

Der zuletzt erstellte. WEB-Kameraerfassung Ver2

Das letzte Mal war ein Programm mit GPIO.

Diesmal ein Aufnahmeprogramm, das die Anzahl der Aufnahmen angibt.

Die Grundkonfiguration ist dieselbe wie beim letzten Mal.

Bibliothek

cap_save_prg.py


import cv2
import os,os.path
from pathlib import Path
import sys
from datetime import datetime
import time

Ich habe der Grundkonfiguration "pathlib" hinzugefügt.

Ich untersuche hier verschiedene Dinge, also ist es ziemlich angemessen.

Definition des Speicherziels und des Dateinamens

cap_save_prg.py


save_dir_path = 'Ziel'
filename = 'Dateiname'

Es ist egal, wo du magst. Kürzlich habe ich einen Ordner auf dem Desktop erstellt und das Programm darin gespeichert. Ich versuche das aufgenommene Bild zu speichern.

Ein Verzeichnis erstellen

cap_save_prg.py


os.makedirs(save_dir_path,exist_ok=True)
base_path = os.path.join(save_dir_path,filename)
datename = datetime.now().strftime('%m%d%H%M')

Es ist wie immer.

Definition des verwendeten Geräts

cap_save_prg.py


device_id = 0
width = 640
height = 480
fps = 30

cap = cv2.VideoCapture(device_id)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, height)
cap.set(cv2.CAP_PROP_FPS, fps)

Dieses Mal habe ich eine Beschreibung des Downlinks gefunden, mit dem die Funktion von Opencv während der Untersuchung eingestellt werden kann. Ich habe beschlossen, es auszuprobieren, und die Beschreibung ist sehr beliebt.

Wenn Sie nur fotografieren, gibt es kein Problem mit "cv2.VideoCapture ()".

Bildgebung

cap_save_prg.py


n = 0
while True:
    ret,frame = cap.read()
    cv2.imshow(filename,frame)
    key = cv2.waitKey(1) & 0xFF 

    cv2.imwrite((base_path + datename +'_'+ str(n) + ".png "),frame)
    pathl,dirsl,filesl = next(os.walk(save_dir_path))
    file_count = len(filesl)
    print(file_count)
    time.sleep(0.2)
    cap.release
    n += 1

    if file_count == 100:
        break

Dieses Mal beginnt die Aufnahme gleichzeitig mit dem Start des Programms Ich versuche, die Anzahl der Dateien im Speicherverzeichnis zu zählen.

Wenn der eingestellte Wert erreicht ist, stoppt das Programm.

Wenn true, setzen Sie "if key == ord ('s'):" vor "cv2.imwrite" und drücken Sie die Tastatur Ich wollte anfangen zu schießen NameError: name'file_count 'ist nicht definiert tritt auf.

Ich habe viel recherchiert, aber ich konnte es nicht lösen, also habe ich mich dafür entschieden.

Zusammenfassung

Ich versuche dies sogar mit einem Programm zu tun, damit mein Gehirn nicht damit umgehen kann und Weisheitsfieber erzeugt wird ... Ich glaube, ich habe keine andere Wahl, als die Dinge, die ich gemacht habe, einzeln zu verbessern. Nun, ich mache es, während ich Shobo-Dinge hochlade und mich windete.

das ist alles.

Recommended Posts

WEB Kameraaufnahme Ver 2
WEB Kameraaufnahme Ver3
WEB Kameraaufnahme
Python, OpenCV-Kameraerfassung
Kameraerfassung mit Python + OpenCV
Holen Sie sich Web-Screen-Capture mit Python