NEWS
Wasserzähler - Version 2 - all-in-device
-
Hallo zusammen,
ich benötige kurz Hilfestellung zur Inbetriebnahme des Wasserzählers.
In der Konfiguration der habe ich das Problem, das ich das Referenzbild gedreht habe und Retro Referenzpunkte festgelegt habe, einmal die Referenz 1: Zähler Nummer
Referenz 2: m3Dann hab ich die Konfiguration komplett abgeschlossen und in der Übersicht ist das Bild wieder gedreht und alle festen zugeordneten Punkte liegen nicht dort wo sie sein sollen.
Was genau mache ich falsch ?
EDIT:
Hab den Fehler gefunden, aus irgendwelchen Gründen auch immer,, musste ich die Rotation in der Config.ini händisch noch mal anpassen -> Hier bin ich davon ausgegangen das wenn ich das Referenzbild mache und die Rotation angebe das diese übernommen wird. Denn Bei dem Referenzbild war die Uhr gerade und beim Ablesen war es Plötzlich alles verschiben.Hier der Tipp für jeden der das Problem auch haben sollte
Expertenmodus -> Config.iniInitialRotate = xxx <- Anpassen
Bin über jegliche Hilfestellung glücklich.
LG
Basti -
@jomjol Guten Morgen Josef, habe nun mehrmals mit meinen zwei Systemen versucht die Version 7.1.0 einzuspielen, leider ohne Erfolg. Die Version 7.0.0 funktioniert. Was ist der Unterschied zwischen den zwei Versionen, möchte mich auf die Suche nach der Ursache machen. Liebe Grüße Paul
-
@pfried Hallo Paul,
du kannst in Github einen direkten Vergleich machen und siehst dann jede Änderung. Ich habe hier mal einen Vergleich von v7.1.1 mit 7.0.0 erzeugt: https://github.com/jomjol/AI-on-the-edge-device/compare/v7.0.0...v7.1.1
Leider haben sich 37 Files geändert, die meisten unwesentlich. Aber auf den ersten Blick:
Handling der Kamera:- code/components/jomjol_controlcamera/ClassControllCamera.cpp
- code/components/jomjol_flowcontroll/ClassFlowMakeImage.cpp
Update der WLan-Kompomente:
- code/components/jomjol_wlan/connect_wlan.cpp
- code/components/jomjol_wlan/read_wlanini.cpp
- code/components/jomjol_wlan/read_wlanini.h
- code/main/main.cpp
MQTT: neues Feld und retain-Flag:
- code/components/jomjol_flowcontroll/ClassFlowMQTT.cpp
- code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp
- code/components/jomjol_mqtt/interface_mqtt.cpp
Wie genau ist denn dein Fehlerbild? Kannst du mir mal das serielle Log posten? Ich habe heute auch zwei neue ESP32CAM bekommen. Sobald mein Handwerksprojekt abgeschlossen ist, werde ich die auch mal testen.
Gruß,
jomjol -
@jomjol
Hab auch auf die neueste Version aktualisiert.
Jedoch habe ich seit dem mehr Falscherkennungen bzw. werden mir viele N angezeigt.Das Bild wird nun auch streifig angezeigt
Ich habe jetzt auf die dig0900s3.tflite aktualisiert. Eventuell ändert sich etwas.
Vorher dig0870s3q.tflite mit Aktualisierung auf 7.1dDavor bei 7.0 dig0850s3q.tflite
Was ist der Unterschied zwischen S1 -S3 und dem q Kenner?
-
@tbsjah Was mir auffällt ist, dass die Bilder der einzelnen Zahlen nicht den Vorgaben von jomjol entsprechen. Probiere doch einmal die Rahmen etwas größer zu machen:
-
@pfried danke
Das hatte ich zu Beginn probiert.
Jedoch hatte ich dann im Bild bereits einen Teil von einer anderen Zahl.
Damals gab es dann vermehrt Falscherkennnungen.
Nachdem ich mehr oder weniger den äußeren Rahmen angepasst hatte, hatte s dann funktioniert.Werde ich aber noch einmal so probieren
-
Ergebnis wäre dann das
Bin mir nicht sicher ob das für die Erkennung ok ist? -
@tbsjah sagte in Wasserzähler - Version 2 - all-in-device:
@jomjol
Was ist der Unterschied zwischen S1 -S3 und dem q Kenner?Siehe hier
-
@michmein danke Michael. Das hatte ich gelesen aber ich verstehe es nicht.
Was ist mit Netzgröße gemeint?Version q gleich schlechter weil kleiner?
-
-
@tbsjah Du musst nur jeweils links etwas wegschneiden. Verkleinere ein klein wenig in der Breite und verschiebe dann nach soweit als möglich nach rechts, sodass man die Ziffern rechts und links nicht mehr sieht
-
Die Zahlen werden ja bis auf die letzte 7 richtig erkannt.
etwas kleiner kann nicht schaden, aber IMHO liegt die Ursache daran, dass ganz rechts das Bild dunkler und s8mit kontrastärmer ist als beim Rest.
Ggf hängt das auch mit der nicht unerheblichen Reflexion der LED in der Bildmitte zusammen. -
@homoran said in Wasserzähler - Version 2 - all-in-device:
Ggf hängt das auch mit der nicht unerheblichen Reflexion der LED in der Bildmitte zusammen.
@TbsJah: Kleb' die reflektierende Stelle einfach mit z.B. Pflaster ab. Oder sogar alles außerhalb der ROI. Hat bei mir gut geholfen. Siehe Beitrag 1358.
-
@rupert-s Aber nicht vergessen die Alignment Punkte mit ausschneiden. Man kann, habe ich auch schon gesehen, siche eine schwarze Schablone zurechtlegen wo die ROI und Alignment Punkte ausgeschnitten werden (kein glattes Papier verwenden)
-
@pfried sagte in Wasserzähler - Version 2 - all-in-device:
Aber nicht vergessen die Alignment Punkte mit ausschneiden
wenn das Papier passt kann man die Alignment punkte sogar aufmalen
-
Seit Anfang des Jahres läuft mein Zähler absolut stabil, auch mit der billigen SD-Karte die am Anfang paar mal neu bespielt werden musst. Super Arbeit .
@jomjol
Ich würde gerne freie GPIOs für andere Zwecke benutzen (z,.B. Bewegungsmelder). Währe es möglich die GPIOs einfach per MQTT durchzureichen? Dürfte glaube ich nicht so viel aufwand sein, müsste eventuell eine Einstellmöglichkeit in der Weboberfläche implementiert werden, am beste als Interrupts und/oder in Zeitabständen. -
@zwer2k said in Wasserzähler - Version 2 - all-in-device:
Seit Anfang des Jahres läuft mein Zähler absolut stabil,
Hmmm, da frage ich mich: Mache ich was falsch?
- Immer wieder schwarze Bilder
- Blitzlicht blieb 2x auf Dauerlicht (hab's zufällig im Keller entdeckt und musste es durch Reboot lösen)
- Ausgelesener Zählerstand "robbt" sich davon obwohl stundenlang überhaupt kein Wasserverbrauch auftrat
Ich bin schon drauf und dran, auf das Vorgängerprojekt zu gehen: ESP32 macht nur Foto, AI wird auf einen meiner unterbeschäftigten, aber dauernd laufenden Pi's installiert. Da würde ich mir mehr Kontrolle und Einblicke erhoffen.
Nebenbei: Gibt es von dem ESP32-CAM AI-Thinker Board Versionen ohne integriertem Pullup-Widerstand an IO0? Ich habe Boards, die nach dem Drücken des Reset-Knopfes in den Download-Mode gehen anstatt das Programm zu starten. Laut diesem Schaltplan sollte ein Pullup da sein. Ich habe zwei Versionen des Boards: 99E2 und 8E02. 8E02 zickt da rum, den 99E2 habe ich leider beim Versuch, auf externe Antenne umzulöten, zerstört (die Pads für den "0-Ohm-Widerstand" sind auch unverschämt klein, obwohl reichlich Platz wäre )
-
@tbsjah sagte in Wasserzähler - Version 2 - all-in-device:
@michmein danke Michael. Das hatte ich gelesen aber ich verstehe es nicht.
Was ist mit Netzgröße gemeint?Version q gleich schlechter weil kleiner?
Nein, "q" bedeutet quantisierte Gewichte. Damit kann das Netz kompakter gespeichert werden (Datentyp mit geringerem Speicherbedarf). Aber die Genauigkeit nimmt nicht ab.
Generell kann man nicht sagen, dass "kleiner = schlechter". Zu groß gewählte Netzarchitekturen lernen, wenn es schlecht läuft, die Bilder nur auswendig, aber abstrahieren die Eigenschaften nicht. Dann sind kleiner Netze in der Tat besser. -
@rupert-s Ich habe die Erfahrung gemacht, dass es an der OV2640 liegt. Ich habe mehrere Kameras (unterschiedliche Versionen laut Beschriftung auf dem Flexband) probiert und musste auch feststellen, dass einige dazu neigen, sich aufzuhängen. Konnte noch keine Systematik finden.
Ich habe mir mal 2 weitere bestellt, um weiter zu experimentiren. -
@zwer2k sagte in Wasserzähler - Version 2 - all-in-device:
Seit Anfang des Jahres läuft mein Zähler absolut stabil, auch mit der billigen SD-Karte die am Anfang paar mal neu bespielt werden musst. Super Arbeit .
@jomjol
Ich würde gerne freie GPIOs für andere Zwecke benutzen (z,.B. Bewegungsmelder). Währe es möglich die GPIOs einfach per MQTT durchzureichen? Dürfte glaube ich nicht so viel aufwand sein, müsste eventuell eine Einstellmöglichkeit in der Weboberfläche implementiert werden, am beste als Interrupts und/oder in Zeitabständen.Im Prinzip schon, aber momentan arbeite ich an einem anderen Feature (mehrere getrennte Zahlen für Mehrfachzähler). Dein Wunsch ist schon eher speziell, Aufwand dafür vermutlich schon so 1 Nachmittag. Ggf. einen eigenen Fork machen?