Es geht darum, Notizen zu schreiben, damit Sie sie nicht vergessen.
Ein Programm zur Bildaufnahme und -speicherung mit einer WEB-Kamera. Weil es eine der Antworten ist, die Anfänger erreichen konnten Bitte haben Sie Verständnis dafür, dass es schlecht ist, wenn der Betrachter es sieht.
Ich würde mich freuen, wenn Sie mir einen Rat geben könnten.
Umgebung Windows10(64bit) anacondanavigator python3(3.7.7) opencv(3.4.2)
cap_save.ipynb
import cv2
import sys
import os
from datetime import datetime
Ich möchte das Datum für die Verzeichniserstellung und den Dateinamen verwenden Ich benutze "os" und "datetime".
cap_save.ipynb
#Angeben des Speicherverzeichnisses und Definieren des Datennamens
dir_path = 'Ziel'
basename = 'Dateiname'
cap_save.ipynb
cap = cv2.VideoCapture(0)
Da (0)
eingestellt ist, um die eingebaute PC-Kamera zu verwenden
Wenn eine Webkamera (USB-Kamera) angeschlossen ist, wird sie als "(1)" erkannt.
cap_save.ipynb
os.makedirs(dir_path,exist_ok=True)
base_path = os.path.join(dir_path,basename)
datename = datetime.now().strftime('%m%d%H%M')
Erstellen Sie mit os.makedirs
ein Bildspeicherziel im Speicherzielverzeichnis (Speicherort in dir_path festgelegt).
Wenn das Speicherziel vorhanden ist, wird es problemlos zum nächsten weitergeleitet.
Verbinden Sie Pfade mit os.path.join
.
datetime
ist eingestellt, weil Sie die Erfassungszeit zum Dateinamen hinzufügen möchten.
cap_save.ipynb
n = 0
while True:
ret,frame = cap.read()
cv2.imshow(basename,frame)
key = cv2.waitKey(1) & 0xFF
if key == ord('o'):
cv2.imwrite((base_path + datename +'_'+ str(n) + ".png "),frame)
n += 1
elif key == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
Ich möchte den aufgenommenen Bildern selbst Seriennummern hinzufügen, also setze zuerst n = 0
Wenn Sie danach die Tastatur "O" drücken, können Sie "cv2.imwrite ((Basispfad + Dateiname +" _ "+ str (n) +" .png "), Frame)" verwenden
Speichert das Bild im angegebenen Ordner.
Ich denke, es gibt eine stilvollere Art zu schreiben
Ich benutze dieses Format, um mir das Verständnis von "wo" und "welcher Name" zu erleichtern.
Ich konnte ein Bild aufnehmen → ohne Probleme speichern.
Ich habe es in Himbeerpi (Stretch) mit Thonny implementiert und es lief ohne Probleme.
das ist alles.
Recommended Posts