FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: joachimm am 15 Dezember 2015, 21:03:29

Titel: OpenCV - Auslesen Hauswasseruhr
Beitrag von: joachimm am 15 Dezember 2015, 21:03:29
Hallo,

ich möchte die zentrale Hauswasseruhr auslesen. Da gibt's ja nix annäherndes wie Infrarotsensor oder S0 (Bei den Zimmerwasseruhren gibt's S0). Nun könnte man doch eine Haube mit einer Kamera auf die Uhr setzen, den Zählerstand abfotografieren, und via OpenCV eine OCR durchführen lassen.

Mit einem Stromzähler hat das schon mal jemand gemacht.

http://www.kompf.de/cplus/emeocv.html (http://www.kompf.de/cplus/emeocv.html)

Hat da jemand Erfahrung?
Danke
Joachim
Titel: Antw:OpenCV - Auslesen Hauswasseruhr
Beitrag von: Dr. Boris Neubert am 15 Dezember 2015, 21:08:10
Noch nicht realisiert, aber die Teile liegen schon in der Bastelkiste: Reflexlichtschranke für ca. 2 EUR vom Chinamann und 1-wire-Zähler i.V.m. ECMD.

Viele Grüße
Boris
Titel: Antw:OpenCV - Auslesen Hauswasseruhr
Beitrag von: joachimm am 15 Dezember 2015, 21:18:33
Das wär ja was. Sicherlich weniger kompliziert als OpenCV. Was willst Du denn mit der Lichtschranke abgreifen? Die kleinen Zeiger?

Gruß
Joachim
Titel: Antw:OpenCV - Auslesen Hauswasseruhr
Beitrag von: Dr. Boris Neubert am 15 Dezember 2015, 21:26:04
Hallo,

das Rädchen für die Liter-Anzeige hat einen reflektierenden Abschnitt. Die Lichtschranke liefert bei richtiger Kalibrierung dann kurzfristig einen Impuls, den ich zählen will. Ausgehend von der Anfangsstellung (z.B. 109,232 cbm), die per Offset im ECMDDevice festgelegt wird, wird dann aufwärts gezählt.

Viele Grüße
Boris
Titel: Antw:OpenCV - Auslesen Hauswasseruhr
Beitrag von: Rince am 17 Dezember 2015, 19:44:46
Hab mich daran versucht.
Das Hauptproblem ist, dass du die Schriftart trainieren musst. Ohne viele Vorlagen kommt eher wenig raus.

Aber alternativ, schau mal da:
https://saxenarajat99.wordpress.com/2014/10/04/optical-character-recognition-in-python/

Ich könnte mir vorstellen, mit OpenCV das Bild soweit aufzubereiten, dass pytesseract ein halbwegs leichtes Spiel hat.


Oder aber, was ganz anderes:
Google mal nach TensorFlow.
https://www.tensorflow.org

Damit könnte man dein Problem evtl. auch lösen.