Speed-Cam.Py Ver 11.26 und Greater werden nun unter Raspberry PI OS Bullseye oder später mit einem PI-Kameramodul sowie USBCAM- und IP/RTSP-Kameras ausgeführt. Für Picamera-Unterstützung führen Sie sudo raspi-config , Schnittstellenoptionen aus, aktivieren/deaktivieren Sie die Legacy-Kamera-Option und starten Sie neu.
Wichtig -ein Raspbian Sudo APT-Get-Update und sudo APT-Get-Upgrade werden nicht als Teil von durchgeführt
Speed-install.sh , daher wird empfohlen, diese vor der Installation auszuführen, um sicherzustellen, dass Ihr System auf dem neuesten Stand ist.
Drücken Sie unten rechts das GitHub Copy -Symbol.
oder mit der Maus -Linken -Taste Highlight Curl -Befehl im Codefeld unten. Klicken Sie mit der rechten Maustaste im hervorgehobenen Bereich und wählen Sie Kopie.
curl -L https://raw.github.com/pageauc/speed-camera/master/speed-install.sh | bash
Wählen Sie auf RPI Putty SSH oder Terminal Session mit der rechten Maustaste ein, um das Skript herunterzuladen und auszuführen.
Dadurch wird das Skript speed-install.sh heruntergeladen und ausgeführt. Wenn Sie unter Python3 ausgeführt werden, benötigen Sie OpenCV3, wenn Sie nicht installiert sind. Wenn Sie OpenCV kompilieren müssen
Version 13.05 ist eine wichtige Überarbeitung der Geschwindigkeitskamera. Der Kamera -Thread -Code wird jetzt von einem Strmcam.py -Modul behandelt. Die Variablennamen config.py haben sich geändert, sodass Sie sichern und cp config.py.new config.py (siehe unten für Details)
Wichtig : Alle Einstellungen sind in config.py. Sie können configCam.py löschen, wenn es vorhanden ist, wenn Sie nach dem Upgrade auf Ver 13.05 oder mehr upgraden. Plugins funktionieren jetzt. Sie können Plugin -Dateien an Sie anpassen oder Ihre eigenen erstellen. Wenn Sie aktualisieren, sollten Sie löschen und alte Plugins bewegen, damit neue während des Upgrades heruntergeladen werden. Bitte veröffentlichen Sie das GitHub -Problem, wenn Sie einen Fehler oder Problem finden. Claude
Wichtige Speed-Cam.Py Ver 8.x oder höher erfordert aktualisierte Konfiguration. Py und Plugins.
cd ~/speed-camera
cp config.py config.py.bak
cp config.py.new config.py
Um die Plugins zu ersetzen, benennen Sie Plugins -Ordner pro unten
cd ~/speed-camera
mv plugins pluginsold # renames plugins folder
rm -r plugins # deletes plugins folder
Dann führen Sie Menubox.sh Upgrade -Menü aus.
Siehe Windows 10/11 oder Apple Mac Docker Schnellstart installieren
oder Windows- oder Unix -Distro -Installationen ohne Docker
Dies ist ein Raspberry PI, Windows, Unix Distro Computer OpenCV -Objektgeschwindigkeitskamera Demo -Programm. Es ist in Python geschrieben und verwendet OpenCV, um die X-, Y -Koordinaten des größten bewegenden Objekts in der Kameraansicht über einem minimalen Pixelbereich zu erkennen und zu verfolgen.
Benutzervariablen werden in der Datei config.py gespeichert. Die Bewegungserkennung ist zwischen MO_CROP_Y_UPPER , MO_CROP_Y_LOWER , MO_CROP_X_LEFT , MO_CROP_X_RIGHT Variablen (Straße oder Interessenbereich) eingeschränkt. MO_CROP_AUTO_ON = TRUE Overtides Manuelle Einstellungen und berechnen automatisch einen groben Erntebereich basierend auf der Bildgröße. Die Bewegungsverfolgung wird durch die Variable mO_track_event_count in config.py gesteuert. Dadurch wird die Anzahl der Spurenereignisse und die Spurlänge in Pixel festgelegt. Dies muss möglicherweise für die Kameraansicht, die CPU -Geschwindigkeit usw. abgestimmt werden. Die Geschwindigkeit wird basierend auf CAL_OBJ_PX_ und CAL_OBJ_MM_ Variablen für L2R- und R2L -Bewegungsrichtung berechnet. Ein Video -Stream -Frame -Bild wird in Medien/Bildern datiert (optional) pro Variable IM_SUBDIR_MAX_FILES = 2000 für Details zur Variableneinstellungen siehe config.py -Datei gespeichert.
Wenn log_data_to_csv = true true , wird eine speed-cam.csv- Datei mit Ereignisdaten erstellt/aktualisiert, die im CSV-Format (COMMA-Separat-Werte) gespeichert sind. Dies kann in eine Tabelle, Datenbank usw. importiert werden, um weitere Verarbeitung zu erhalten. Release 8.9 fügt eine SQLite3 -Datenbank hinzu, um Geschwindigkeitsdaten zu speichern. Standard ist data/speed_cam.db mit Daten in der Geschwindigkeitstabelle . Die Datenbankeinstellung kann von config.py verwaltet werden. Die Datenbank wird automatisch aus den Einstellungen von config.py erstellt. Weitere Informationen finden Sie in der Verwaltung der SQLite3 -Datenbank
Raspberry PI -Computer und ein RPI -Kamera -Modul installiert oder USB -Kamera eingesteckt. Stellen Sie sicher, dass Hardware getestet und funktioniert. Die meisten RPI -Modelle funktionieren in Ordnung. Ein Quad -Core -RPI wird die Leistung aufgrund von Faden erheblich verbessern. Eine aktuelle Version des Raspbian -Betriebssystems wird empfohlen.
oder
MS Windows oder Unix -Distro -Computer mit einer USB -Webkamera und einer aktuellen Version von Python, die für Details installiert ist, siehe Wiki -Details .
Es wird empfohlen, auf OpenCV Version 3.xx ein Upgrade für die einfache Kompilierung von OpenCV 3.4.2 von Source siehe https://github.com/pageauc/opencv3-setup zu
Stellen Sie für Windows oder UNIX-Computerplattformen (Nicht-RPI oder Debian) sicher, dass Sie die aktuellste Python-Version haben. Zum Herunterladen und Installieren von Python und OpenCV
Die neuesten Python -Versionen umfassen Numpy und die aktuelle OpenCV -Version, die diesen Code ausführen muss. Sie benötigen auch eine USB -Web -Cam installiert und arbeiten. So installieren Sie dieses Programm auf die GitHub-Projektseite unter https://github.com/pageauc/speed-camera Wählen Sie den grünen Klon- oder Download- Schaltfläche aus. Die Dateien werden in einen Speed-Kamera-Ordner geklont oder geschliffen. Sie können den Code von Python Idle Application (empfohlen), GUI -Desktop oder Eingabeaufforderung -Terminalfenster ausführen. Hinweis Bash .sh Shell Skripte funktionieren nicht mit Windows, es sei denn, es ist eine besondere Unterstützung für Bash für Windows, z .
Speed Camera unterstützt eine Docker -Installation auf
Apple Macintosh pro Systemanforderungen und Anweisungen
Und
Microsoft Windows 10/11 64 Bit mit aktivierter BIOS -Virtualisierung und Microsoft Windows -Subsystem für Linux WSL 2 pro Systemanforderungen und Anweisungen.
config/config.pyVon angemeldeten RPI -SSH -Sitzungen oder Konsolenklemmen führen Sie Folgendes durch. Ermöglicht das Überprüfen Sie den Installationscode vor dem Ausführen
cd ~
wget https://raw.github.com/pageauc/speed-camera/master/speed-install.sh
more speed-install.sh # You can review code if you wish
chmod +x speed-install.sh
./speed-install.sh # runs install script.
cd ~/speed-camera
./speed-cam.py
Sehen Sie , wie Sie Speed-Cam.Py-Wiki-Abschnitt ausführen
Wichtige Speed -Kamera beginnt im Calibrate_on = True -Modus.
Überprüfen Sie die Einstellungen in der Datei config.py und bearbeiten Sie die Variablen nach Bedarf mit Nano. Sie müssen eine Kalibrierung durchführen, um den richtigen Wert für config.py CAL_OBJ_PX_ und CAL_OBJ_MM_ FÜR L2R- und R2L -Anweisungen festzulegen. Die Variablen basieren auf dem Abstand von der Kamera zu Objekten, die für die Geschwindigkeit gemessen werden. Weitere Informationen finden Sie unter Kalibrierungsverfahren .
Die Variable config.py Motion Tracking namens Track_counter = kann für Ihr System und Ihre OpenCV -Version angepasst werden. Standard ist 5, aber ein Quad-Core-RPI3 und die neueste OpenCV-Version z. B. können 10-15 oder möglicherweise größer sein. Dies erfordert die Überwachung der ausführlichen Protokollnachrichten, um eine feine Stimmung zu erzielen.
cd ~/speed-camera
./menubox.sh
Admin-Geschwindigkeits-Cam einfacher mit Menubox.sh (Sobald es kalibriert und/oder das Testen abgeschlossen ist) 
Zeigen Sie Speed-Cam-Daten und -Tends aus dem Webbrowser pro Beispiel-Screenshots an. Diese können aus dem Menü aus mseubox.sh oder durch Ausführen von Skripten aus der Konsole oder über Crontab -Zeitplan erzeugt werden.



Sie können aktuelle oder historische Bilder direkt auf der Speed -Webbrowser -Seite anzeigen. Diese werden dynamisch erstellt und zeigen aktuelle Bilder. Drücken Sie die Taste für Webseiten -Aktualisierung, um die Anzeige zu aktualisieren 

Ein Teil dieses Codes basiert auf einem YouTube -Tutorial von Kyle Hounslow. Hier https://www.youtube.com/watch?v=x6rpdrzzgjg
Vielen Dank an Adrian Rosebrock Jrosebr1 unter http://www.pyimagesearch.com für den Pivideostream -Klassencode, der auf Github unter https://github.com/jrosebr1/imutils/blob/master/imutils/video/pivideostream.py.py.py.py.Py.Py.Py.Py.Py.Py.Py.Py.Py.Py ,.py.py.py.py, dank
Viel Spaß
Claude Pageau
YouTube -Kanal https://www.youtube.com/user/pageaucp
Github Repo https://github.com/pageauc