Hi!
Ich hätte da mal so ne Frage...
Ich suche eine möglichkeit, mit der ich aus Bildern, so ziemlich jedes Format, Text auslesen kann.
Z.b. ein kleines Bild, in dem drin steht: "Hello"
Aus diesem Bild möchte ich nun das "Hello" in einen String auslesen.
Gibt es da Möglichkeiten?
Gruß,
Stonedar
Text aus Image lesen
Es GIBT Möglichkeiten, aber das dürfte ziemlich schwierig sein 
Soweit ich weiß, werden normalerweise die Bilder analysiert und in Vektoren umgerechnet, dann wird geschaut, ob diese Vektoren Ähnlichkeit mit Buchstaben haben. Dementsprechend kann man dann rausfinden was da drin steht.
Wie gesagt, das ist wohl alles nicht so einfach. Allerdings kommt es ja auch auf den Anwendungszweck an. Wenn Dein Programm z.B. von vorneherein weiß, welche Schriftart benutzt wurde, und welche Schriftfarbe etc, dann kannst Du da natürlich viel leichter vergleichen, indem Du z.B. ein Bild anlegst mit dem kompletten Alphabet in genau dieser Schriftart/größe/farbe und dann pixelmäßig vergleichst.
Trotzdem aufwendig... was hast Du denn in etwa vor?

Soweit ich weiß, werden normalerweise die Bilder analysiert und in Vektoren umgerechnet, dann wird geschaut, ob diese Vektoren Ähnlichkeit mit Buchstaben haben. Dementsprechend kann man dann rausfinden was da drin steht.
Wie gesagt, das ist wohl alles nicht so einfach. Allerdings kommt es ja auch auf den Anwendungszweck an. Wenn Dein Programm z.B. von vorneherein weiß, welche Schriftart benutzt wurde, und welche Schriftfarbe etc, dann kannst Du da natürlich viel leichter vergleichen, indem Du z.B. ein Bild anlegst mit dem kompletten Alphabet in genau dieser Schriftart/größe/farbe und dann pixelmäßig vergleichst.
Trotzdem aufwendig... was hast Du denn in etwa vor?
Danke schonmal für die Antwort.
Also es ist ja so, dass man ab und zu einen Text bekommt, der als .jpg abgespeichert wurde. (z.b. ein eingescannter Text)
Und ich fände es nun mal jetzt sehr praktisch wenn man aus diesem .jpg den Text auslesen könnte.
Nun ist es aber so, dass die Schriftart, und Farbe ja nie die selbe ist...
Wobei dein Ansatz da ja auch nicht verkehrt ist, da man ja so "standart" Schriftarten hat...(also nunmal sehr häufig benutzt werden)
Gruß,
Stonedar
Also es ist ja so, dass man ab und zu einen Text bekommt, der als .jpg abgespeichert wurde. (z.b. ein eingescannter Text)
Und ich fände es nun mal jetzt sehr praktisch wenn man aus diesem .jpg den Text auslesen könnte.
Nun ist es aber so, dass die Schriftart, und Farbe ja nie die selbe ist...
Wobei dein Ansatz da ja auch nicht verkehrt ist, da man ja so "standart" Schriftarten hat...(also nunmal sehr häufig benutzt werden)
Gruß,
Stonedar
- Andre
- PureBasic Team
- Beiträge: 1765
- Registriert: 11.09.2004 16:35
- Computerausstattung: MacBook Core2Duo mit MacOS 10.6.8
Lenovo Y50 i7 mit Windows 10 - Wohnort: Saxony / Deutscheinsiedel
- Kontaktdaten:
Wie ZeHa schon sagte - wenn Du eine komplett flexible Texterkennung haben möchtest, dann hast Du Dir viel vorgenommen.
Allgemein fällt dies unter den Begriff OCR, der meist nur von ziemlich teuren Programmen gut gewährleistet wird. Oder - siehe Software-Beilage zu Deinem Scanner (so Du denn einen hast)....

Allgemein fällt dies unter den Begriff OCR, der meist nur von ziemlich teuren Programmen gut gewährleistet wird. Oder - siehe Software-Beilage zu Deinem Scanner (so Du denn einen hast)....
Ja, das mit den häufig benutzten Schriften ist zwar schon klar, aber wenn Du von 'nem Scan redest, gibt es mehr Probleme:
- oftmals ist der Scan nicht 100%ig gerade, sondern leicht schief
- die Ränder der Schrift sind meist weichgezeichnet
- die Schriftgröße hängt von der verwendeten Schriftgröße und von der Größe des jpg ab
Also kannst Du die zweite Möglichkeit so oder so nicht nutzen. Du mußt also wirklich das Bild in Vektoren umwandeln und die Vektoren dann vergleichen. Dazu könntest Du das Bild als allererstes in ein reines schwarz/weiß-Bild konvertieren, so daß alle Graustufen beseitigt sind. Dann mußt Du das Bild nach Kanten und Ecken untersuchen, also die Stellen, wo weiß auf schwarz trifft. Somit wäre es möglich, alle Koordinaten zu speichern, und diese dann mit den Koordinaten von Buchstaben zu vergleichen.
Dafür wirst Du sicherlich 'ne Weile brauchen... ich wünsch Dir einfach schonmal viel Spaß
- oftmals ist der Scan nicht 100%ig gerade, sondern leicht schief
- die Ränder der Schrift sind meist weichgezeichnet
- die Schriftgröße hängt von der verwendeten Schriftgröße und von der Größe des jpg ab
Also kannst Du die zweite Möglichkeit so oder so nicht nutzen. Du mußt also wirklich das Bild in Vektoren umwandeln und die Vektoren dann vergleichen. Dazu könntest Du das Bild als allererstes in ein reines schwarz/weiß-Bild konvertieren, so daß alle Graustufen beseitigt sind. Dann mußt Du das Bild nach Kanten und Ecken untersuchen, also die Stellen, wo weiß auf schwarz trifft. Somit wäre es möglich, alle Koordinaten zu speichern, und diese dann mit den Koordinaten von Buchstaben zu vergleichen.
Dafür wirst Du sicherlich 'ne Weile brauchen... ich wünsch Dir einfach schonmal viel Spaß

@Stonedar: Schreib lieber irgend ein nettes Spiel
OCR-Software gibts schon wie Sand am Meer. Wenn Du eine einigermaßen gute Software suchst, ABBYY FineReader gibts schon für 119Euro und das ist recht gut (benutz ich auf der Arbeit).

.oO SDX Oo.