Hallo Zusammen,
dieses Forum hat mir bisher viel Inspiration gegeben, jedoch gibt es nun ein Thema welches ich nicht lösen kann.
Ich möchte einen digitalen Energiekosten-Zähler mit einer Webcam erfassen (siehe Bild im Anhang) und die "Digits", also die Ziffern, digitalisieren mittels OCR oder ähnlicher Methode. Die Webcam funktioniert und auch ein Bild wird in der PictureBox einwandfrei angezeigt.
Jetzt bin ich auf der Suche nach einer Möglichkeit die "Digits" über OCR auszulesen, bisherige Ansätze ergeben nur unleserliche Zeichen. Hat jemand eine Idee wie man es realsieren könnte?
Die anzeigbaren Zeichen sind "0123456789" nur eben im Digits Format und in zwei Größen (siehe Bild).
Ein alternativer Ansatz zur OCR-Methode ist indem man bestimmte Bereiche (x,y) mit einem Bereich unmittelbar daneben zwecks Kontrast (x-5, y) vergleicht und erkennt ob dort das 1. Feld "dunkel" oder "hell" ähnlich 2. Feld (x-5, y) ist. Also beim Digit "0" müssten also 6 absolute Bereiche "dunkel" sein und ein bestimmter Bereich "hell".
Kennt dort jemand tipps? Wie man z.B. VB sagen kann dass es sich um "hell" oder "dunkel" handelt?
edit:
Angehängt habe ich eine Idee zur OCR-Alternative: Messfelder bestimmen. Wie ich oben mit "hell" und "dunkel" beschrieben habe.
Grundsätzlich sollte jede Zahl mehrere gelbe Felder haben.
Ich würde also eine Funktion Programmieren die die Koordinaten einem "roten" Feld hat und eines "gelben"
Gehen wir davon aus das Bild ist in Graustufen. Weiß jemand wie ich ermitteln kann wieviel heller oder dunkler das rote Feld im Vergleich zum gelben Feld ist (Kontrast)?
Bin für jeden Tipp dankbar.
dieses Forum hat mir bisher viel Inspiration gegeben, jedoch gibt es nun ein Thema welches ich nicht lösen kann.
Ich möchte einen digitalen Energiekosten-Zähler mit einer Webcam erfassen (siehe Bild im Anhang) und die "Digits", also die Ziffern, digitalisieren mittels OCR oder ähnlicher Methode. Die Webcam funktioniert und auch ein Bild wird in der PictureBox einwandfrei angezeigt.
Jetzt bin ich auf der Suche nach einer Möglichkeit die "Digits" über OCR auszulesen, bisherige Ansätze ergeben nur unleserliche Zeichen. Hat jemand eine Idee wie man es realsieren könnte?
Die anzeigbaren Zeichen sind "0123456789" nur eben im Digits Format und in zwei Größen (siehe Bild).
Ein alternativer Ansatz zur OCR-Methode ist indem man bestimmte Bereiche (x,y) mit einem Bereich unmittelbar daneben zwecks Kontrast (x-5, y) vergleicht und erkennt ob dort das 1. Feld "dunkel" oder "hell" ähnlich 2. Feld (x-5, y) ist. Also beim Digit "0" müssten also 6 absolute Bereiche "dunkel" sein und ein bestimmter Bereich "hell".
Kennt dort jemand tipps? Wie man z.B. VB sagen kann dass es sich um "hell" oder "dunkel" handelt?
edit:
Angehängt habe ich eine Idee zur OCR-Alternative: Messfelder bestimmen. Wie ich oben mit "hell" und "dunkel" beschrieben habe.
Grundsätzlich sollte jede Zahl mehrere gelbe Felder haben.
Ich würde also eine Funktion Programmieren die die Koordinaten einem "roten" Feld hat und eines "gelben"
Gehen wir davon aus das Bild ist in Graustufen. Weiß jemand wie ich ermitteln kann wieviel heller oder dunkler das rote Feld im Vergleich zum gelben Feld ist (Kontrast)?
Bin für jeden Tipp dankbar.
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „riverboy“ ()