Kategorie: OCR Server

FineOCR – kostenloser Commandline Client für den AutoOCR Server

Mit dem kostenlosen AutoOCR Commandline Client „FineOCR“ gibt es jetzt eine weitere Möglichkeit die OCR Funktionen unseres AutoOCR Servers von Clients aus nutzen zu können. Über einen einfachen Commandline Aufruf können PDF und Imagedokumente per Web-Service Schnittstelle von jedem Arbeitsplatz aus über einen zentralen AutoOCR Server – im lokalen Netz bzw. Internet – in durchsuchbare PDF´s oder PDF/A konvertiert werden. Es ist aber auch möglich nur den erkannten Text als Datei geliefert zu bekommen. Durch die Verwendung von OCR-Serverprofilen kann die OCR Engine (Abbyy oder iOCR), Verarbeitungsparameter, bzw. Sprachauswahl gesteuert und ausgewählt werden.

Nach der FineOCR Installation sind bereits die Parameter für unseren gehosteten AutoOCR Testserver voreingestellt so dass OCR Tests sofort ohne weitere Konfiguration durchgeführt werden können.

FineOCR config  AutoOCR Server - available OCR profiles & default profile selection

FineOCR - Commandline Parameter

Voraussetzung:

  • AutoOCR Server mit Web-Service Option,
  • MS-Windows – 32 oder 64bit OS

Download – FineOCR – Commandline Client für den AutoOCR Server >>>

DropOCR – kostenloser Windows-Client für den AutoOCR Server

Der AutoOCR Server ist ein sehr leistungsfähiger OCR Server der zentral installiert zur Verarbeitung aller Image- und PDF-Dokumente im Unternehmen zur Verfügung gestellt werden kann. Er verfügt am Server sowohl über Hot-Folder Funktionen sowie über eine SOAP/REST-Schnittstelle.

Um die OCR Verarbeitung von jedem Windows Arbeitsplatz – egal von wo im Netzwerk / Internet aus nutzen zu können – ohne sich einen Share auf den AutoOCR Server mappen zu müssen stellen wir allen AutoOCR Kunden jetzt mit DropOCR eine kostenlose Client Anwendung zur Verfügung. DropOCR wird als Icon Tray Anwendung installiert und verfügt über eine einblendbare „Drop-Zone“ sowie über einen lokalen Hot-Folder.

Images oder PDF´s die in durchsuchbare PDF oder PDF/A-Dokumente konvertiert werden sollen können einfach in den lokalen In-Folder kopiert bzw. auf die „Drop-Zone“ per Drag&Drop gezogen werden. Das Dokument wird per Web-Service an den gemeinsamen AutoOCR Server übertragen, dort verarbeitet und danach wird die Ergebnis PDF(/A) Datei wieder auf den Client zurück übertragen und steht anschließend im konfigurierten lokalen Out-Folder zur Verfügung.

DropOCR Funktionen:

  • Kostenloser Windows Client für AutoOCR Server
  • Kommunikation mit dem zentralen OCR Server über SOAP / REST Web-Service Interface
  • Lokaler Hot-Folder sowie Drop-Zone
  • Konvertiert ein oder mehrere  lokale Image / PDF Dokumente über den Remote OCR-Server in durchsuchbaren PDF(/A) Dokumenten .
  • Auswahl unterschiedlicher OCR-Settings über am Server hinterlegte OCR Profile

DropOCR - Config  DropOCR - icon tray applicaiton

Download – DropOCR >>>

Intelligente PDF OCR Verarbeitung über AutoOCR für Abbyy und iOCR

PDF Dokumente können auf verschiedene Weise erzeugt werden. PDF´s sind in der Lage in einem Dokument verschiedene Inhalte und Quellen zusammenzufassen.  Seiten können aus „normalen“ PDF Inhalten bestehend aus Texten, Bildern, und Vektorgrafiken aufgebaut sein und  verfügen üblicherweise bereits über einen Textinhalt der für die Volltext-Indizierung und -Suche  verwendet werden kann. Ein PDF Dokument kann jedoch auch gescannte Seiten in Schwarzweiß oder Farbe enthalten. Solche Seiten oder Dokumente müssen einer OCR Erkennung unterzogen werden um die textliche Information für die Indexierung und Suche einzufügen.

Also gibt es bestimmte PDF Dokumente die entweder gar keiner OCR Verarbeitung unterzogen werden sollen, bzw. müssen nur einzelne Seiten oder auch alle   verarbeitet werden da diese durch einen Scanvorgang erzeugt wurden.

Im Normalfalls kommen alle diese Arten von PDF Dokumenten in Geschäftsprozessen vor und der Anwender kann gar nicht unterscheiden ob ein Dokument OCR´t  werden muss oder nicht – von Außen über den Adobe Reader oder auf dem Drucker betrachtet kann das nicht sofort erkannt und unterschieden werden.

Würde man jetzt generell jedes PDF Dokument / Seite auf die gleiche Art und Weise verarbeiten unabhängig davon wie diese aufgebaut sind und ob eine OCR Verarbeitung Sinn macht oder nicht, gäbe es dabei einige Nachteile:

Dabei wird jede PDF Seite unabhängig vom Aufbau und Inhalt nochmals „gerastert“ also in ein Bild umgewandelt und danach OCR verarbeitet – das ist so wie wenn man das Dokument ausdruckt, nochmals einscannt und dann einer OCR Verarbeitung unterzieht. Man erhält damit aus einer „normalen“ PDF Seite ein Bild mit darunterliegendem per OCR Engine erkanntem Text

  • die Qualität ist nicht mehr die gleich wie vorher
  • die Dokumente werden dadurch größer
  • spezielle PDF Eigenschaften gehen damit verloren (Bookmarks, Links, usw.)
  • Verarbeitungszeit und Ressourcen werden verbraucht
  • OCR Seitenlizenzen werden unnötig verbraucht

Eine PDF OCR Verarbeitung sollte also „intelligent“ stattfinden damit im Prozess und durch den Anwender nicht mühsam unterschieden und entschieden werden muss ob ein PDF Dokument einer OCR Verarbeitung unterzogen werden muss oder nicht. Noch schwieriger ist dies wenn ein einzelnes PDF Dokument gemischt aus normalen und eingescannten Teilen bestehen.

Deswegen haben wir in AutoOCR eine intelligente OCR Verarbeitung integriert, welche in gleicher Weise sowohl mit der Abbyy  als auch mit der iOCR OCR Engine funktioniert.  Das kann kann pro Eingangsordner bzw. für die Web-Service Schnittstelle über das OCR Profil gesteuert werden und steht sowohl für die PDF>PDF sowie für die PDF>TXT Verarbeitung zur Verfügung.

AutoOCR Abbyy - Intelligente OCR Verarbeitung  iOCR - intelligente PDF Verarbeitung

Highlights – Intelligente PDF OCR Verarbeitung:

  • funktioniert sowohl für die PDF>PDF sowie für die PDF>TXT Verarbeitung
  • für die Abbyy OCR sowie iOCR Engine
  • bei der Folder sowie für die Web-Service Verarbeitung
  • das PDF Dokument als auch jede einzelne Seite werden analysiert und nur jene Seiten OCR verarbeitet die keinen Text beinhalten – das sind üblicherweise gescannte Seiten die noch nicht OCR verarbeitet wurden.
  • bestehende normale PDF Dokumente und Seiten werden unverändert übernommen und nicht verarbeitet
  • bereits OCR´te Dokumente und Seiten werden ebenfalls nicht nochmals verarbeitet.
  • bei der PDF>TXT Verarbeitung wird der Text aus den normalen PDF Seiten extrahiert und OCR nur auf Seiten ohne Text durchgeführt.
  • PDF Funktionen und Bookmarks bleiben erhalten und werden ins Zieldokument übernommen.
  • spart Verarbeitungszeit und Abbyy OCR Seitenlizenzen
  • die Dateien werden nicht vergrößert
  • die Qualität der PDF Seiten bleibt erhalten.

Die „intellligente PDF-OCR Verarbeitung“ findet sich neben AutoOCR auch in allen andern unserer Softwareprodukte die eine OCR Verarbeitung unterstützen z.b.  ifresco Profiler, FileConverter, DropOCR, PDFMerge usw.

ifresco AutoOCR – JavaDoc für den AutoOCR Client verfügbar

Um die AutoOCR Client Funktionen der Alfresco AutoOCR Integration – ifresco Transformer für AutoOCR –  aus Java Anwendungen heraus verwenden zu können gibt es jetzt auch eine JavaDoc Beschreibung der zur Verfügung stehenden Funktionen.

JavaDoc ifresco autoocr client

Download JavaDoc für AutoOCR Client >>>

AutoOCR 1.10.10 – Scripting jetzt auch für die REST / SOAP Verarbeitung

Mit der Version 1.10.10 steht die Scriptingmöglichkeit jetzt auch über die OCR-Profile für die Web-Service Schnittstelle (REST / SOAP) zur Verfügung. Siehe auch C# / VB.NET Scripting .

Web-Service OCR-Profile - Scripting - Action Web-Service OCR-Profile - Scripting - Action Einstellungen Web-Service OCR-Profile - Scripting - Action Code

Um die Script Aktion zu konfiguriern und um den zusätzlichen „Aktion“ Tab anzuzeigen muss das AutoOCR Userinterface mit der Commandline Option /ShowAction gestartet werden:

  • „C:\Program Files\AutoOCR\AutoOCR.exe“ /ShowAction – für 32bit
  • „C:\Program Files (x86)\AutoOCR\AutoOCR.exe“ /ShowAction – für 64bit

Download – AutoOCR – OCR Server inkl. iOCR Engine (ca. 150MB) >>>

Für die Abbyy OCR Engine Version 10 stehen Demolizenzen für 30 Tage bzw. 500 Seiten zur Verfügung – diese können Sie gerne bei uns anfordern

Download- Abbyy FineReader 10.x Rel 4 OCR Engine Setup (ca. 460MB) >>>
Demolizenzkey für FineReader OCR Engine anfordern

AutoOCR 1.10.9 – Neue Funktion – Bild einlesen – Auflösung setzen / ersetzen

Um ein für die OCR Erkennung optimales Ergebnis zu erhalten sollte die Scan Auflösung möglichst 300dpi betragen. Die Scan Anwendung sollte dabei die verwendete Auflösung in die Imagedatei eintragen. Erst über die Anzahl der Pixel und die Angabe der dpi kann die richtige Größe des gescannten Dokuments abgebildet und ermittelt werden. Diese Infos sind wiederum wichtig um ein PDF zu erzeugen das der Dimension des Ausgangsdokuments entspricht. Fehlt die dpi Angabe im Dokument so kann die Dimension für die PDF-Ausgabedatei nicht ermittelt und festgelegt werden. Nicht jede Scan-Anwendung und Verarbeitung trägt die dpi Zahl in das Image Dokument ein. Aus diesem Grund gibt es im AutoOCR jetzt eine Funktion um feststellen zu können ob die dpi Angabe fehlt um diese zu setzen bzw. falls gewünscht auch überschreiben zu können.

Abbyy OCR – Funktion – Vorverarbeiten / Einlesen:

  • Auflösung automatisch ersetzen – überschreibt die Auflösung mit dem eingestellten dpi Wert falls der Wert in der Datei nicht zwischen 50 und 3200dpi liegt.
  • Auflösung nicht ersetzen – es erfolgt keine Modifikation egal welcher Wert vorhanden ist.
  • Auflösung ersetzen – Verwendet den konfigurierten dpi Wert.

Bild_Vorverarbeitung_Einlesen_Settings_#1  Bild_Vorverarbeitung_Einlesen_Settings_#2

AutoOCR – Barcode Erkennung über Scripting

Über die Scripting Funktion von AutoOCR ist es jetzt auch möglich zusätzlich zur OCR Verarbeitung auch eine Barcode Erkennung der verarbeiteten Dokumente durchzuführen. Die erkannten Barcodes können auch in die Felder der PDF Dokumenteninformation geschrieben werden um die Daten direkt weiterzugeben und später wieder auszulesen.

Funktionen AutoOCR Barcode Scripting Add-On:

  • 1D – Barcoderkennung folgender Typen: INDUSTRIAL2OF5, INVERTED2OF5, INTERLEAVED2OF5, IATA2OF5,  MATRIX2OF5, CODE39, CODABAR, BDCMATRIX, DATALOGIC2OF5, CODE128, EAN128, CODE93, EAN13, UPCA, EAN8, UPCE, ADD5, ADD2
  • Barcode Erkennung unabhängig von der Orientierung auf der Seite
  • Festlegung auf welchen Seiten die Erkennung erfolgen soll – Einzelseite, Von-bis, Liste, sowie Kombination dieser Angaben.
  • Schreiben z.b. von Barcode Type, Barcode Wert, Seitenummer in die PDF Dokumenteninfo Felder  – Title , Subject, Author, Keywords
  • Weitere verfügbare Barcode Informationen: Koordinaten – Links/Oben, Breite, Höhe
  • Verfügbar als AutoOCR Scripting Funktion inkl C# Beispielscript

AutoOCR_Barcode_Erkennung

AutoOCR – REST Schnittstelle – Jobs abfragen & löschen erweitert

Die REST Schnittstelle zur Job Abfrage wurde um 3 Felder mit dem ISO Datumsformat erweitert.

EnumJobs Parameters:

the url template would be:
/EnumJobs?pageSize={pageSize}&label={label}&userName={userName}&status={status}&createdFromTo={createdFromTo}&convertedFromTo={convertedFromTo}&sortColumns={sortColumns}

  • pageSize=the size of the page(because of paging)
  • label=the label filter, can contain wildcards *
  • userName=the username filter, can contain wildcards
  • status=the status of the jobs which should be returned, or 100 for all status
  • createdFromTo=“yyyy/MM/dd HH:mm:ss-yyyy/MM/dd HH:mm:ss“
  • convertedFromTo=“yyyy/MM/dd HH:mm:ss-yyyy/MM/dd HH:mm:ss“
  • sortColumns=“ColumName1 ASC,ColumnName DESC,…“

The createdFromTo, convertedFromTo and sortColumns can be empty strings. The available sort columns are the following:

  • DateCreated
  • DateConverted
  • StatusCode
  • UserName
  • JobLabel

Now there are some new fields in the JSON JobResult structure:

  • CreationDateISO
  • FinishedDateISO
  • ConversionStartedDateISO

REST Funktion – Jobs löschen

Es gibt eine Funktion um alle Web-Service Jobs aus der Datenbank zu löschen /DeleteAllJobs. Damit werden alle Datenbank Einträger und auch alle am AutoOCR Server hinterlegten Ergebnisdateien auf einmal gelöscht. Neu hinzugekommen ist jetzt auch die Funktion um Jobs älter als X Tage zu löschen /DeleteJobs(int days)

  • https://autoocr.may.co.at:8001/AutoOCRService/DeleteAllJobs
  • https://autoocr.may.co.at:8001/AutoOCRService/DeleteJobs?days=1

AutoOCR Version 1.10.9 – C# / VB.NET Scripting

Mit der Version 1.10.9 unterstützt AutoOCR jetzt Scripting. Wird das AutoOCR Userinterface mit der Commandline Option /ShowAction gestartet so kann für jeden konfigurierten Ordner über den Tab  „Aktion“ ein Script angelegt und aktiviert werden. Als Programmiersprachen werden C# bzw. VB.NET unterstützt. Die Skript Verarbeitung muss über eine Checkbox Option „Aktiv“ gesetzt werden sonst wird das „Custom Interface“ nicht erzeugt und der Code wird nicht ausgeführt.

Script_Modul_Referenzen  Script_Code_Konfiguration

Standard Script Code:

AutoOCR_scripting

AutoOCR Script Funktionen:

Bei der Implementierung einer Aktion muss das OCR.IAction Interface verwendet werden. Dieses Interface stellt über IDisposable aus auch das Standard .NET Interface zur Verfügung.

1.) PreAction(string inputFile, string outputFile)

Diese Funktion wird aufgerufen bevor die OCR Verarbeitung/Konvertierung startet. Der inputFile Parameter ist der voll qualifizierte Pfad des Ursprungsdokuments das verarbeitet  werden soll. Der outputFile Parameter ist der voll qualifizierte Pfad des Zieldokuments. Zu beachten ist dass beim Aufruf der Funktion das Zieldokument noch nicht existiert. Mit dieser Funktion können beliebige andere Komponenten initialisiert werden die im Skript Code verwendet werden sollen. Es ist empfohlen die inputFile und outputFile Parameter in „member variablen“ abzuspeichern um zu einem späteren Zeitpunkt z.b. für die „PostAction“ wieder Zugriff darauf zu haben.
 
2.) PostAction(string error)

Diese Funktion wird aufgerufen nachdem die OCR Verarbeitung abgeschlossen ist und bevor die konfigurierten Aktionen ausgeführt werden. War die Verarbeitung erfolgreich so ist der Error Parameter entweder  „null“ oder „leer“ – in dem Fall ist auch bereits die Ausgabedatei (outputFile) vorhanden.

3.) Dispose()

Diese Funktion wird direkt nach der PostAction Funktion aufgerufen. Alle Funktionen zur Bereinigung (cleanup) sollten hier  aufgerufen werden.

Die Verarbeitung in AutoOCR erfolgt über folgende Schritte:

  • „Custom interface“ wird angelegt
  • PreAction“ wird aufgerufen
  • Datei wird verarbeitet
  • PostAction“ wird aufgerufen
  • Dispose“ Aktion wird aufgerufen

Zu beachten ist:

  • Der Code muss das OCR.IAction Interface verwenden
  • Der Class Name muss Action sein

Bei der Aktivierung der Scripting Funktion wird automatisch ein Standard C# Script Code eingefügt der jedoch nichts ausführt und bewirkt. Werden zusätzlichen  als die standardmäßig vorhandenen Referenzen benötigt so sind diese in der Modul / DLL Referenzliste hinzuzufügen.

Folgende Modul / DLL Referenzen sind standardmäßig vorhanden:

  • System.dll
  • System.Data.dll
  • System.Windows.Forms.dll
  • NETCommon.dll
  • OCR.dll

Eigene Funktionen können dem Script hinzugefügt und in den PreAction, PostAction und Dispose Methoden aufgerufen werden.

Folgendes Beispiel Script sendet nach der OCR Verarbeitung ein E-Mail mit dem Ergebnis Dokument  als Anhang an eine konfigurierte E-Mail Adresse.

AutoOCR_Script_e_mail_versand

Fehlersuche / Test:

Um den Script Code zu debuggen muss die AutoOCR User Interface Anwendung mit dem Commandline Parameter /ShowScriptErrors aufgerufen werden. Während der Entwicklung und Test der Skripts sollte die Anwendung mit folgenden Parametern aufgerufen werden:  AutoOCR.exe /ShowAction /ShowScriptErrors

Hinweise / Restriktionen:

Die Implementierung erzeugt und führt die Script Funktionen im gleichen Thread aus wie die OCR Verarbeitung. Aus diesem Grund sollte man keine längeren, zeitintensiven Script-Funktionen verwenden, da solche Verarbeitungen damit die AutoOCR Gesamtperformance beeinflussen und verlangsamen. Der Aufruf erfolgt synchron, darum sollte man Scripts keine Masken anzeigen oder modale Funktionen verwenden.

Zu beachten ist dass üblicherweise AutoOCR als Windows-Service installiert wird. Ein Service läuft unter einem bestimmten Account (Standardmäßig unter dem lokalen System Account) und dieser hat andere Rechte als z.b. der aktuell angemeldete Benutzer. Läuft z.b. der AutoOCR Service unter dem lokalen System Account so wird auch der konfigurierte Script unter diesem Account ausgeführt und unterliegt damit den gleichen Restriktionen. Soll z.b. über den Script auf eine Netzwerk Ressource (Share) zugegriffen werden so muss AutoOCR unter einem User Account laufen der über die entsprechenden Rechte verfügt.  Siehe  Windows Dienst – Zugriff auf Netzwerkressourcen – was ist zu beachten ?

Der Commandline Paramter /ShowScriptErrors sollte nur verwendet werden um die Scripts zu testen und zu debuggen – nicht jedoch im Echtbetrieb. Weiters sollte AutoOCR für den Test als normale Anwendung und nicht als Service installiert werden, ansonsten kann  die Verarbeitung blockiert werden. Im Fehlerfall wird eine Message Box angezeigt, läuft die Anwendung als Service so wird diese nicht am Userinterface des angemeldeten Benutzers sondern am Desktop des Accounts unter dem der Service läuft angezeigt.

Anwendungsbereiche:

  • Nachgelagerte Verarbeitungsschritte automatisch anstoßen – z.b.: Versand per E-Mail
  • Barcode  Erkennung

Mit der Version 1.10.9 steht C#/VB.NET Scripting mit der Folder Verarbeitung und mit der nächsten AutoOCR Version wird Scripting auch über die OCR-Profile der Web-Service Schnittstelle zur Verfügung stehen.

Download – AutoOCR – OCR Server inkl. iOCR Engine (ca. 150MB) >>>

Für die Abbyy OCR Engine Version 10 stehen Demolizenzen für 30 Tage bzw. 500 Seiten zur Verfügung – diese können Sie gerne bei uns anfordern

Download- Abbyy FineReader 10.x Rel 4 OCR Engine Setup (ca. 460MB) >>>
Demolizenzkey für FineReader OCR Engine anfordern

 

AutoOCR – neue Version 1.10.6

Bei der Version 1.10.6 wurde die bei der Textausgabe der iOCR Engine um die Option erweitert ein Seitentrennzeichen (#12- FF) nach jeder Seite einzufügen. Damit ist es möglich den Text aus der Ausgabedatei der gescannten Seite eindeutig zuzuordnen. Der erkannte Text in der Textdatei kann sich selbst z.b. über mehrere Seiten erstrecken obwohl der Scan nur eine Seite beinhaltet  z.b. bei  Seitenformaten >A3 oder bei Text in Spalten. Bestimmte DMS und Archivprogramme benötigen die Textinformation seitenweise getrennt um im Index die darzustellenden Seite 1:1 zuordnen zu können. Die Codierung der TXT Datei ist UTF-8 ohne BOM

iOCR Option - Textausgabe - Seitentrennzeichen einfügen

Download – AutoOCR – OCR Server inkl. iOCR Engine (ca. 150MB) >>>

Webshop