Skip to main content
ABBYY FlexiCapture for Invoices liest zunächst den Text einer Rechnung per Texterkennung ein. Anschließend erkennt und erfasst das Programm die Hauptfelder der Rechnung mithilfe eines FlexiLayouts und neuronaler Netze. Wenn beide Methoden ein Feld erkennen, kombiniert das Programm die Ergebnisse oder wählt das beste aus.

Wie Rechnungstext erkannt wird

Das Programm beginnt mit der Verarbeitung einer Rechnung, indem es den Text entsprechend den Einstellungen der Dokumentdefinition erkennt. Rechnungsfelder werden während der Erkennung extrahiert. In FlexiCapture for Invoices sind Erkennungssprachen an die Ländereinstellungen gebunden. Wenn Sie der Gruppe Länder und Sprachen ein Rechnungsland hinzufügen, werden die zugehörigen Sprachen automatisch in den Einstellungen der Dokumentdefinition angezeigt.

Wie ein FlexiLayout Felder erkennt

Das FlexiLayout erkennt zunächst den Vendor und den Geschäftsbereich. Anhand der jeweiligen Länder werden anschließend die Schlüsselwörter und Steuersätze ausgewählt, mit denen die übrigen Rechnungsfelder erfasst werden.

Ermittlung von Vendor und Geschäftsbereich

Zur Ermittlung des Vendors und des Geschäftsbereichs verwendet das Programm Werte aus den Einstellungen der Dokumentdefinition sowie aus den Datensatz-Einträgen. Weitere Informationen zu den Spalten BusinessUnits und Vendors in den Datensätzen und ihrer Verwendung finden Sie unter BusinessUnits-Datensatz und Vendors-Datensatz.

Anforderungen an den Datensatz für eine genaue Unternehmenserkennung

Wie detailliert und hochwertig die Informationen in den Spalten des Datensatzes sind, wirkt sich erheblich auf die Erkennungsqualität aus. Um möglichst genaue Suchergebnisse zu erzielen, stellen Sie sicher, dass der Datensatz die folgenden Anforderungen erfüllt.

Algorithmus zur Unternehmenserkennung

Das Programm erkennt den Vendor und den Geschäftsbereich in drei Verarbeitungsstufen. Wie Sie die Ergebnisse dieser Verarbeitungsstufen verbessern können, erfahren Sie unter Verbessern der Vendor- und Geschäftsbereichserkennung.
1

Suche nach eindeutigen Unternehmensbezeichnern

Die eindeutigen Unternehmensbezeichner sind VATID, NationalVATID und IBAN. FlexiCapture for Invoices durchsucht das Dokumentbild nach diesen Werten.In den Eigenschaften der Dokumentdefinition (Registerkarte Einstellung der Dokumentdefinition, Gruppe Länder und Sprachen) werden die Formate (Formate-Registerkarte) und Schlüsselwörter (Schlüsselwörter-Registerkarte) für VATID, NationalVATID und IBAN für jedes Land mithilfe regulärer Ausdrücke festgelegt.Das Programm sucht im Bild nach exakten Übereinstimmungen für solche Felder. Erweiterte reguläre Ausdrücke können dabei auch mögliche Erkennungsfehler berücksichtigen. Weitere Informationen finden Sie unter Erweiterte reguläre Ausdrücke.Erkannte Werte werden wie folgt normalisiert:
  • Buchstaben werden in Großbuchstaben umgewandelt.
  • Leerzeichen und die folgenden Zeichen werden entfernt: ., ,, —, /, \.
Wenn das Buchstabenpräfix eines Feldes mithilfe eines regulären Ausdrucks in den Ländereigenschaften auf der Registerkarte Formate angegeben ist, wird das erkannte Präfix durch das primäre Präfix ersetzt (das ebenfalls auf der Registerkarte Formate festgelegt ist). So kann zum Beispiel der Bezeichner DE12345 als OE12345 erkannt werden. Das erkannte Präfix OE wird dann durch das korrekte Präfix DE ersetzt.Die in einem Dokumentbild erkannten Felder VATID, NationalVATID und IBAN werden verwendet, um den Datensatz abzufragen. Die aus dem Datensatz erhaltenen Spaltenwerte für VATID, NationalVATID und IBAN werden auf dieselbe Weise normalisiert wie die im Bild erkannten Werte und anschließend mit den im Bild erkannten normalisierten Werten abgeglichen (mithilfe exakter Übereinstimmung).
2

Suche nach Firmenname und Adresse

Eine Abfrage, die den gesamten Dokumenttext verwendet, um nach den Datensätzen zu suchen, die am besten dazu passen, wird an den Datensatz gesendet.Die im Bild erkannten Werte Name, Street, ZIP und City werden mit den entsprechenden Werten im Datensatz abgeglichen.
3

Hypothesenbildung

Die in den vorherigen Schritten gefundenen Unternehmen werden verwendet, um eine Menge von Hypothesen zu bilden. ABBYY FlexiCapture for Invoices wertet diese Hypothesen aus und wählt die 5 Vendor-Datensätze und 5 Geschäftsbereich-Datensätze aus, die am zuverlässigsten mit den Feldwerten im Dokumentbild übereinstimmen. Diese Datensätze bilden 25 Vendor-Geschäftsbereich-Paare, wobei jedes Paar als separate Hypothese behandelt wird. Anschließend bewertet ein neuronaler Netzalgorithmus die Hypothesen nach Zuverlässigkeit, und das am besten passende Vendor-BU-Paar wird zur endgültigen Hypothese und zum Ergebnis der Vendor- und Geschäftsbereichserkennung.

Hypothesenfilterung

Hypothesen werden in zuverlässige und unzuverlässige Hypothesen unterteilt, je nachdem, wie zuverlässig der Datensatz im Datensatz mit dem Feldwert im Dokumentbild übereinstimmt. Je nach Verifizierungsszenario können Sie entscheiden, ob die Zuverlässigkeit von Hypothesen bei der Erkennung des Vendors und des Geschäftsbereichs berücksichtigt werden soll. Damit ABBYY FlexiCapture for Invoices die endgültige Hypothese ausschließlich aus zuverlässigen Hypothesen auswählt, verwenden Sie das Registry-Flag InvoiceReader/ShouldFilterUnsureCompanyHypotheses. Die Hypothesenfilterung funktioniert für Vendors und Geschäftsbereiche unterschiedlich. Die Filterung unterscheidet sich, weil sich die Datensätze für Vendors und Geschäftsbereiche unterscheiden.
  • Es gibt normalerweise deutlich weniger Geschäftsbereich-Datensätze als Vendor-Datensätze. Außerdem ändern sie sich viel seltener und lassen sich daher leichter aktuell halten. Deshalb erhöht die Erkennung einer zuverlässigen Hypothese die Wahrscheinlichkeit, dass die endgültige Hypothese korrekt ist. Die Erkennung eines Geschäftsbereichs ist jedoch auch dann wichtig, wenn keine zuverlässigen Hypothesen gefunden wurden, da der wichtigste Faktor für die Zuverlässigkeit des Erkennungsergebnisses die Zuverlässigkeitsbewertung der Vendor-BU-Paare ist.
  • Es gibt normalerweise deutlich mehr Vendor-Datensätze, und der Datensatz enthält mehr Spalten, weil Vendors auf ihren Rechnungen mehr Informationen über ihr eigenes Unternehmen angeben als über den Geschäftsbereich. Datensätze können außerdem veraltete Informationen enthalten, sodass die Filterung unzuverlässiger Hypothesen sowohl von der Qualität des Datensatzes als auch vom Typ des Verifizierungsszenarios abhängt.
Um die Wahrscheinlichkeit zu erhöhen, zuverlässige Hypothesen zu erkennen, halten Sie Datensätze aktuell und erfassen Sie möglichst viele Informationen über Vendors und Geschäftsbereiche.

Ergebnisse der Erkennung von Vendor und Geschäftsbereich

Die wichtigsten Ergebnisse der Erkennung von Vendor und Geschäftsbereich sind die Bezeichner ihrer Datensätze. Darüber hinaus kann die Erkennung Flags, Feldregionen und das Land des jeweiligen Unternehmens zurückgeben. Anhand der Position der Feldregionen auf dem Bild können Sie genau nachvollziehen, wo das Programm die Felder der Feldgruppen Vendor und Geschäftsbereich gefunden hat, anhand derer es Vendor und Geschäftsbereich erkannt hat. Fehlen die Feldwerte für IBAN und VATID im Vendors-Datensatz, lassen sich die entsprechenden Werte anhand von Schlüsselwörtern und Format auf dieselbe Weise erkennen wie Bankverbindungsdaten (sofern der zugehörige Vendor gefunden wurde). Die Suche nach einer beliebigen Feldregion kann durch Training oder durch Anwenden eines zusätzlichen FlexiLayouts angepasst werden. Dies hat keinen Einfluss auf die Erkennung von Vendor und Geschäftsbereich, kann sich jedoch nach dem Matching der Dokumentdefinition mit den Rechnungen auf die Position der Feldregionen in diesen Feldgruppen auswirken. Weitere Informationen finden Sie unter Erfassen zusätzlicher Rechnungsfelder.

Vendor- und Geschäftsbereichserkennung verbessern

Je besser ein Vendor- oder Geschäftsbereichs-Datensatz im Datensatz mit dem aus einem Rechnungsbild extrahierten Text übereinstimmt, desto genauer ermittelt das Programm den Vendor oder Geschäftsbereich. Ermitteln Sie zunächst die Daten in der externen Datenbank, die den Datensatzspalten entsprechen, die zum Auffinden des Unternehmens auf einer Rechnung verwendet werden. Die externe Datenbank und der Datensatz müssen korrekt verbunden sein. Weitere Informationen finden Sie unter Verwenden von Vendor- und Geschäftsbereichsdatenbanken. Verbinden Sie eine Geschäftsbereichsdatenbank auch dann, wenn keine Geschäftsbereichserkennung erforderlich ist. Ist nur die Vendor-Datenbank verbunden, kann dies die Qualität der Bewertung von Vendor-BU-Paaren beeinträchtigen. Bei sehr wenigen Geschäftsbereichen (z. B. nur einem) hat die Verbindung einer solchen Datenbank kaum Einfluss auf die Bewertung. Sie kann jedoch die Erkennungsqualität verbessern, wenn ein Geschäftsbereich fälschlicherweise als Vendor erkannt wird. Füllen Sie die Spalten Name, Street, ZIP und City des Datensatzes aus, um bei der Suche nach Name und Adresse die besten Ergebnisse zu erzielen. Angaben zu Unternehmensname und Adresse sind besonders wichtig, wenn sich das Unternehmen nicht anhand von VATID, NationalVATID oder IBAN identifizieren lässt. Korrekt ausgefüllte Schlüsselwörter und Bezeichnerformate verbessern die Erkennungsqualität erheblich. ABBYY FlexiCapture for Invoices bietet vordefinierte reguläre Ausdrücke für die Bezeichnerformate, bei Bedarf können Sie jedoch auch eigene erstellen. Navigieren Sie dazu auf der Registerkarte Einstellung der Dokumentdefinition zur Gruppe Länder und Sprachen, wählen Sie das entsprechende Land aus und klicken Sie auf Edit…. Wenn dasselbe Unternehmen sowohl in der Vendor-Liste als auch in der Liste der Geschäftsbereiche vorkommt, geben Sie für die entsprechenden Datensätze in beiden Datensätzen dieselbe VATID an (auch wenn auf Rechnungen keine VATID vorhanden ist). Dadurch wird verhindert, dass das Programm Vendor und Geschäftsbereich falsch ermittelt. Um mögliche Abweichungen bei Feldwerten auf Bildern auszugleichen, verwenden Sie:

Vordefinierte Vendor- und Geschäftsbereichswerte

Der Vendor oder Geschäftsbereich des Unternehmens auf der Rechnung kann anhand der Quelle der Rechnung im Voraus bestimmt werden (anhand des Namens des Scanning Operators oder der E-Mail-Adresse des Absenders der Nachricht). Um den Vendor oder Geschäftsbereich vor der automatischen Erkennung explizit festzulegen, setzen Sie den Registrierungsparameter des Dokuments fc_Predefined:InvoicePredefinedVendorId oder fc_Predefined:InvoicePredefinedBusinessUnitId auf den Bezeichner (Id) eines Eintrags im Vendors- oder BusinessUnits-Datensatz. Ein vordefinierter Wert verhindert die automatische Erkennung des Vendors oder Geschäftsbereichs nicht. Zusätzlich zum vordefinierten Vendor oder Geschäftsbereich erhalten Sie einen Konfidenzwert (der angibt, wie gut die vordefinierten Werte mit den aus dem Bild extrahierten Werten übereinstimmen) sowie die Regionen der Felder aus den Feldgruppen Vendor und Geschäftsbereich.

Feldgruppe Rechnungskopf

InvoiceNumber und InvoiceDate

Der Kopf einer Rechnung enthält unter anderem die Felder InvoiceNumber und InvoiceDate. Diese Felder werden mithilfe von Schlüsselwörtern erkannt, die in den Spracheigenschaften der Dokumentdefinition angegeben sind. Der Vendor und der Geschäftsbereich werden zuerst erkannt und liefern Informationen über die Länder des Vendor und des Geschäftsbereichs. Die Länder bestimmen die Sprachen (die einem Land entsprechenden Sprachen werden in der Dokumentdefinition angegeben). Die Schlüsselwörter zum Auffinden von Feldern werden aus den Ländern des Vendor und des Geschäftsbereichs übernommen. Sie können die Art und Weise ändern, wie das Programm nach Feldregionen sucht, indem Sie Schlüsselwörter bearbeiten und Training verwenden.

Wie das Programm Rechnungen und Gutschriften erkennt

FlexiCapture ermittelt beim Anwenden des FlexiLayouts, ob es sich bei einem Dokument um eine Rechnung handelt. Jede der folgenden Bedingungen deutet darauf hin, dass es sich bei einem Dokument um eine Rechnung handelt. Es müssen nicht alle Bedingungen erfüllt sein, doch jede von ihnen wird unterschiedlich gewichtet.
  • Die Felder InvoiceNumber und InvoiceDate wurden erkannt.
  • Schlüsselwörter aus dem Element zur Lokalisierung InvoiceIdentifiers wurden erkannt. Weitere Informationen finden Sie unter Schlüsselwörter.
  • Auf dem Dokument wurde ein Vendor oder ein Geschäftsbereich erkannt.
Ein Dokument kann als Gutschrift erkannt werden, wenn auf dem Bild Schlüsselwörter aus dem Element CreditNoteKeyword erkannt wurden oder wenn das Dokument einen negativen Wert im Feld Total aufweist.

Feldgruppe „Beträge“

FlexiCapture for Invoices erfasst die folgenden Felder der Gruppe „Beträge“ aus einer Rechnung.

Steuersätze und Steuerbeträge gesamt

Informationen aus der Dokumentdefinition werden verwendet, um Summen und Steuersätze zu finden. Das Programm versucht, im Bild bis zu zwei Steuersätze zu finden. Wenn die Rechnung mehr als zwei Steuersätze enthält, können zusätzliche Felder erstellt und im Datenformular manuell ausgefüllt werden. Das Programm verwendet Schlüsselwörter, um die Felder TotalTax und TotalNetto zu erkennen. Sie können diese Schlüsselwörter in den Eigenschaften eines Landes oder einer Sprache angeben, je nachdem, wie das Schlüsselwort verwendet werden soll. Weitere Informationen finden Sie unter Länder- und Spracheinstellungen und Schlüsselwörter.

So wird das Feld Gesamtbetrag erkannt

Es gibt zwei Arten von Schlüsselwörtern für das Feld Gesamtbetrag, die sich in verschiedenen Kategorien befinden. Weitere Informationen zu Kategorien von Elementen zur Lokalisierung finden Sie unter Schlüsselwörter.
Wenn Sie nicht sicher sind, welcher dieser beiden Kategorien ein Schlüsselwort hinzugefügt werden soll, fügen Sie es AmountTotalHighConfidenceLabels hinzu. Wenn Sie auf Rechnungen stoßen, bei denen das Schlüsselwort dazu führt, dass das Programm ein anderes Feld als das Feld Gesamtbetrag identifiziert, können Sie es nach AmountTotalLowConfidenceLabels verschieben.
Zusätzlich zu Schlüsselwörtern sucht das Programm nach diesen Elementen, wenn es versucht, das Feld Gesamtbetrag zu erkennen:
  • Zahlen, die in derselben Zeile oder Spalte im Bild zwei- oder dreimal vorkommen. Solche Zahlen können den Gesamtbetrag auf Rechnungen darstellen, auf denen keine Steuern angegeben sind.
  • Zahlen, die die Summe der Zahlen oberhalb von ihnen in derselben Spalte sind.
  • Die größten Zahlen (nach Absolutwert) am Ende des Dokuments.

Currency und berechnete Beträge

Das Programm sucht nur dann nach dem Feld Currency, wenn ein Feld Gesamtbetrag erkannt wurde. Dabei werden Schlüsselwörter aus den Eigenschaften des Landes in der Dokumentdefinition verwendet. Alle Felder in der Feldgruppe „Beträge“, die im Bild nicht erkannt werden konnten, werden automatisch berechnet, mit Ausnahme des Felds Gesamtbetrag, das im Bild erkannt werden muss. Wenn das Programm Informationen aus den Feldern der Feldgruppe „Beträge“ nicht korrekt extrahieren kann, wird das Feld Gesamtbetrag als verifizierungspflichtig markiert. Wenn das Programm die Felder Gesamtbetrag und Currency nicht mit hoher Sicherheit erkennt oder überhaupt nicht erkennt, können Sie das Training verwenden, um die Qualität der Extraktion zu verbessern.

Feldgruppe Bestellung

FlexiCapture for Invoices kann alle Bestellnummern und die zugehörigen Summen aus der Rechnung extrahieren. Diese Funktion ist standardmäßig deaktiviert. Weitere Informationen finden Sie unter Bestell-Matching. Um Bestellnummern zu extrahieren, benötigen Sie einen Datensatz mit einer Liste möglicher Bestellnummern und deren Summen. Weitere Informationen finden Sie unter PurchaseOrders Datensatz. Das Feld Bestellung kann mit einem regulären Ausdruck oder mit einem Datensatz, der mögliche Bestellnummern enthält, extrahiert werden.

Bestellerkennung mit einem Datensatz

Wenn ein Datensatz mit möglichen Bestellnummern verwendet wird, sucht FlexiCapture for Invoices auf Bildern nach Nummern aus diesem Datensatz. Idealerweise enthält die Datenbank so wenige Bestellnummern wie möglich. Um ihre Anzahl zu verringern, können Sie:
  • die VendorId-Spalte des Datensatzes verwenden. In diesem Fall verwendet das Programm nur Bestellnummern des Vendors der Rechnung.
  • Bestellungen herausfiltern, für die bereits eine Rechnung eingegangen ist, und nur die Nummern der Bestellungen hinzufügen, für die noch keine Rechnung eingegangen ist.
Das Programm durchsucht die Datenbank nach Summen, die den erkannten Bestellnummern entsprechen. Es durchsucht außerdem das Bild nach allen Bestellnummern, einschließlich derer in den Positionen der Rechnung.

Erkennung von Bestellungen mit einem regulären Ausdruck

Bestellungen werden in der Regel vom ERP-System des Käufers erzeugt. Daher ähneln sich Rechnungen, die an einen bestimmten Geschäftsbereich gestellt werden, meist, und es ist in der Regel möglich, sie mit einem regulären Ausdruck zu beschreiben. Wenn es einen regulären Ausdruck für Bestellnummern gibt, erkennt das Programm alle Nummern auf Bildern, die diesem Ausdruck entsprechen. Sie können den regulären Ausdruck im Element RegularExpression einer XML-Konfigurationsdatei angeben.
Weitere Informationen zu XML-Konfigurationsdateien finden Sie unter Bearbeiten der Rechnungsverarbeitungseinstellungen in XML-Dateien.

Feldgruppe „Positionen (wiederholte Gruppe)“

FlexiCapture for Invoices kann Rechnungspositionen aus Bildern extrahieren. Die Extraktion von Rechnungspositionen ist standardmäßig deaktiviert. Weitere Informationen finden Sie unter Zusätzliche Felder. Eine Liste der Felder, die das Programm automatisch extrahiert, finden Sie unter Erfasste Felder. FlexiCapture for Invoices sucht zunächst im Bild nach einer Tabelle. Dabei verwendet es die Schlüsselwörter für Spaltenüberschriften, die für jede Sprache in den Eigenschaften der Dokumentdefinition angegeben sind. Schlüsselwörter für Spalten von Rechnungspositionen werden auch zur Klassifizierung der Positionen verwendet, also zur Bestimmung des Typs jeder Spalte einer Rechnungsposition. Anschließend verwendet das Programm Informationen über erkannte Spalten und mathematische Ausdrücke, um Rechnungspositionen in der Rechnungstabelle zu finden. Abschließend sucht es in den Rechnungspositionen nach Feldern aus den Spalten. Mithilfe von Training kann die Qualität der automatischen Extraktion von Rechnungspositionen verbessert werden.

Wie neuronale Netze Felder erkennen

Das Programm enthält zwei neuronale Netze, die zum Erfassen dieser Felder verwendet werden können:
  • InvoiceNumber
  • InvoiceDate
  • Total
  • Vendor\Name
  • Vendor\Address
  • Business Unit\Name
  • Business Unit\Address
  • Purchase Orders\Order Number
  • LineItems:
    • OrderNumber
    • OrderDate
    • Position
    • ArticleNumber
    • Description
    • Quantity
    • Unit of measurement
    • Unit Price
    • Total Price Netto
    • VATPercentage
Neuronale Netze sind selbstlernend: Sie können komplexe Abhängigkeiten zwischen Eingabedaten erkennen und nützliche Verallgemeinerungen vornehmen. Für maximale Präzision verwendet das Programm sowohl ein FlexiLayout als auch seine neuronalen Netze, um Rechnungsfelder zu erfassen. Felder, die das Programm mithilfe seiner neuronalen Netze nicht extrahieren kann, werden mit dem FlexiLayout extrahiert. Wenn ein Feld sowohl durch die neuronalen Netze als auch durch das FlexiLayout extrahiert werden kann, kombiniert das Programm die Ergebnisse intelligent. Wie die Ergebnisse kombiniert werden, hängt vom jeweiligen Feld ab. Weitere Informationen finden Sie unter Wie die Ergebnisse der Felderkennung kombiniert werden.

Neuronale Netze deaktivieren

Standardmäßig werden die neuronalen Netze als zweite Methode zum Erfassen von Dokumentfeldern verwendet. Wenn Sie in Ihrem Rechnungsprojekt andere Dokumente als Rechnungen verarbeiten möchten, können Sie die neuronalen Netze deaktivieren. Sie wurden speziell für die Erfassung von Rechnungsfeldern trainiert und funktionieren bei anderen Dokumenttypen möglicherweise nicht gut.
1

Öffnen Sie den Document Definition Editor

Öffnen Sie den Document Definition Editor.
2

Öffnen Sie die zusätzlichen Felder und Funktionen

Klicken Sie auf Eigenschaften der Dokumentdefinition… → Einstellung der Dokumentdefinition → Additional Fields and Features.
3

Deaktivieren Sie die Option

Deaktivieren Sie die Option für die Feldgruppen, deren neuronales Netz Sie deaktivieren möchten.

So werden die Ergebnisse der Felderkennung kombiniert

Wie das Programm die Ergebnisse der Felderkennung kombiniert oder das beste Ergebnis auswählt, hängt vom jeweiligen Feld ab. In der Regel haben die Ergebnisse des jeweiligen neuronalen Netzes Vorrang. Ausnahmen sind Suchen auf Basis von Datensätzen und Suchen mit regulären Ausdrücken, die für bestimmte Kundendokumente erstellt wurden.