Frage

Die akzeptierte Antwort auf die Frage C ++ Library für Bilderkennung: Bilder Worte String mit dass Sie empfohlen:

  1. Upsize / verkleinern Sie Ihre Eingangsbild 300 DPI.

Wie würde ich das tun ... Ich habe den Eindruck, dass DPI für Monitore ist, nicht Bildformate.

War es hilfreich?

Lösung

Ich denke, desto genauer Begriff hier ist Resampling . Sie möchten eine Pixel-Auflösung hoch genug, um präzise OCR zu unterstützen. Schriftgröße (zB in weist ) wird typischerweise in Einheiten der Länge gemessen wird, nicht Pixel. Seit über 72 Punkte = 1 Zoll, müssen wir 300/72 Pixel-per-Punkt für eine Auflösung von 300 dpi ( "Pixel-per-inch"). Das bedeutet, dass eine typische 12-Punkt-Schrift eine Höhe (oder genauer gesagt, base-line zu Basislinienabstand in einzeilig Text) von 50 Pixeln.

Idealerweise Quelldokumente sollten bei einer geeigneten Auflösung für die gegebene Schriftgröße gescannt werden, so dass die Schrift im Bild etwa 50 Pixel hoch ist. Wenn die Auflösung zu hoch / niedrig ist, können Sie einfach das Bild neu berechnen mit einem Grafikprogramm (zB GIMP ) . Sie können dies auch über eine Grafikbibliothek tun programmatisch, wie ImageMagick die verfügt über Schnittstellen für viele Programmiersprachen.

Andere Tipps

DPI macht Sinn, wenn Sie ein Bild in Pixel zu einem physischen Gerät mit einer Bildgröße sind im Zusammenhang. Im Fall von OCR, bedeutet dies in der Regel die Auflösung des Scans, das heißt, wie viele Pixel werden Sie für jeden Zoll des Scans erhalten. Eine 12-Punkt-Schrift ist gemeint, bei 12/72 Inch pro Zeile gedruckt werden, und ein Großbuchstabe könnte etwa 80% davon füllen; so wäre es etwa 40 Pixel groß sein, wenn bei 300 dpi gescannt.

Viele Bildformate haben eine DPI in ihnen aufgenommen. Wenn das Bild gescannt wurde, soll dies die genaue Einstellung von dem Scanner sein. Wenn es von einer Digitalkamera kam, heißt es immer 72 DPI, die ein Standardwert durch die EXIF-Spezifikation vorgeschrieben ist; dies liegt daran, dass eine Kamera nicht die Originalgröße des Bildes erkennen kann. Wenn Sie ein Bild mit einem Bildbearbeitungsprogramm erstellen, können Sie die Gelegenheit haben, die DPI auf einen beliebigen Wert zu setzen. Das ist eine Bequemlichkeit für Sie festlegen, wie Sie das endgültige Bild verwendet werden sollen, und hat keinen Einfluss auf den Details im Bild enthalten ist.

Hier ist eine vorherige Frage, die die Details Ändern der Bildgröße fragt: Wie kann ich qualitativ hochwertige Skalierung eines Bildes zu tun?

OCR-Software ist in der Regel entwickelt, um mit „normalen“ Schriftgrößen zu arbeiten. Von einem Bild Sicht bedeutet dies, dass es vielleicht um den 30 bis 100 Pixel Höhenbereich für Buchstaben werden suchen. Bilder von viel höherer Auflösung erzeugen würden Buchstaben, die viel zu groß für die OCR-Software erscheinen effizient zu verarbeiten. In ähnlicher Weise Bilder mit niedrigerer Auflösung wären nicht genug Pixel für die Software zur Verfügung stellen, um Buchstaben zu erkennen.

„Wie würde ich dies tun ... Ich habe den Eindruck, dass dpi für Monitore war, nicht Bildformate.“

DPI steht für Punkte pro Zoll. Was hat es mit Monitoren zu tun? Nun, wir haben einen Pixel aus drei RGB-Subpixel. Je höher der DPI, desto mehr Details stopfen Sie in diesen Raum.

DPI ist ein nützliches Maß für Displays und druckt aber nichts brauchbar ... in der Tat nichts für Bildformate selbst.

Der Grund für DPI innerhalb einiger Formate markiert wird, ist die Geräte zu instruieren mit dieser Auflösung angezeigt werden, sondern von dem, was ich verstehe, praktisch alles diese Anweisung ignoriert und tut sein Bestes, um das Bild für eine bestimmte Ausgabe zu optimieren.

Sie können die 72 ändern dpi auf 1 dpi oder 6000 dpi in einem Bildformat und es wird keinen Unterschied überhaupt auf einem Monitor machen. „Upsize / verkleinern auf 300 dpi“ macht keinen Sinn. Resampling ist DPI nicht ändern. Versuchen Sie es in Photoshop, deaktivieren Sie die Option „Resampling“, wenn die DPI-Wechsel und Sie werden überhaupt keinen Unterschied sehen. Es wird nicht größer oder kleiner.

DPI ist völlig bedeutungslos für Bildformate, IMO.

Wenn Ihr Ziel ist OCR, DPI macht Sinn, da die Anzahl der Punkte in Ihrem Bild für jeden Zoll in dem ursprünglichen gescannten Dokument. Wenn Ihr dpi zu niedrig ist, wird die Information für immer verschwunden, und selbst bikubische Interpolation wird nicht auf einen brillanten Job es erholt. Wenn Ihr dpi zu hoch ist, ist es einfach Bits wegzuwerfen.

Um den Job zu erledigen; Ich bin ein großer Fan der netpbm / pbmplus Toolset; das Werkzeug für den Anfang ist pnmscale, obwohl, wenn Sie einen Bitmap haben Sie verwandte Tools berücksichtigen wollen wie pbmreduce.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top