Neue EpisodeTEil 2 : PDF Text mit GetLiveTextJSON holen
Shownotes
Diese Funktion verspricht etwas, das sie aus meiner Sicht aus verschiedenen Gründen nicht halten kann. Aus meiner Sicht reicht auch sie nicht, um zielgenau strukturierten Text aus Dokumenten auszulesen und Feldern eindeutig zuordnen zu können.
Transkript anzeigen
00:00:00: Teil zwei, PDF-Text.
00:00:02: Auslesen mit Jason.
00:00:03: Hallo und herzlich willkommen bei Clarice FileMaker.
00:00:07: in fünf Minuten!
00:00:09: In der ersten Folge haben wir Text aus PDF-Dateien ausgelesen.
00:00:13: Heute geht es um zwei weitere Funktionen – Whole Life Text und GetLife Text as Jason.
00:00:20: Vor allem möchte ich erklären warum ich den zusätzlichen Positionsdaten für die automatische Verarbeitung von Belegen kritisch gegenüberstehe.
00:00:27: Bevor ich mich aber mit den Befehlen selbst beschäftige, gilt für mich schon mal die Regel das ich möglichst befehle verwende.
00:00:33: Die auf beiden Plattformen zur Verfügung stehen also OS X sowie auch Windows Denn darin liegt ja eine der Stärken von FileMaker!
00:00:42: Die beiden Befehle um die es hier geht Stehen nur auf OSX und iOS iPadOS-Plattformen Zur Verfügung.
00:00:49: Wenn man allerdings zum Beispiel gezielt dass iPad im Auge hat bei der Umsetzung ist das natürlich nachrangig.
00:00:56: Zunächst zur Einordnung.
00:00:58: Whole Live Text gibt es seit FileMaker, die JSON-Variante kam mit Version einundzwanzig hinzu.
00:01:07: Beide gehören also nicht erst zu den Neuerungen von FileMakers.
00:01:09: zwei tausend sechsundzwantig.
00:01:12: Sie nutzen die Texterkennung auf unterstützten Apple Systemen Mac OS, iOS und iPadOS.
00:01:18: Für eine Lösung, die auch unter Windows funktionieren soll ist diese Einschränkung wichtig.
00:01:24: liefert den erkannten Text aus einem Bild im Containerfeld.
00:01:27: Zu den unterstützten Formaten gehören beispielsweise PNG, JPEG und auch PDF.
00:01:33: Die JSON-Variante liefert zusätzlich für die erkannte Textsegmente jeweils eine Position.
00:01:39: Die Werte für X und Y geben die Entfernung von der oberen linken Ecke des Bildes in Pixeln an.
00:01:45: Damit weiß ich beispielsweise, an welcher Stelle die Beschriftung Datum bezahlt erkannt wurde.
00:01:51: Ich weiß dadurch aber noch nicht zuverlässig, welcher andere Text das dazugehörige Zahlungsdatum ist und in welches FileMaker-Feld er geschrieben werden soll.
00:02:00: Genau an dieser Stelle beginnt für mich das Problem.
00:02:03: Nehmen wir eine Rechnung die regelmäßig vom gleichen Lieferanten kommt.
00:02:07: Das Logo bleibt gleich Die Schrift bleibt gleich Und der Lieferant verwendet weiterhin dieselbe Rechnungsvorlage.
00:02:14: Trotzdem muss der Inhalt nicht an derselben Stelle stehen.
00:02:17: Vielleicht benötigt eine Artikelbeschreibung diesmal drei Zeilen statt einer.
00:02:21: Vielleicht kommt eine zusätzliche Rechnungsposition hinzu.
00:02:25: Oder ein Hinweis zur Lieferung wird länger und bricht um, dadurch können die darunter liegenden Angaben nach unten rutschen.
00:02:31: Der Gesamtbetrag steht dann an einer anderen Position.
00:02:34: Bei einem Seitenumbruch kann er sogar auf der nächsten Seite erscheinen.
00:02:38: Es braucht dafür weder einen neuen Lieferanten noch ein neues Formular.
00:02:42: Eine kleine Änderung am Inhalt derselben Vorlage kann bereits ausreichen.
00:02:47: Wenn mein Script einen Wert an festen Koordinaten erwartet ist diese Zuordnung damit nicht mehr verlässlich.
00:02:53: Besonders unangenehm wäre, wenn es an der erwarteten Stelle einen anderen Wert findet und diesen ohne Fehlermeldung übernimmt.
00:03:01: Die Koordinate kann dabei durchaus die Position des erkannten Textes korrekt beschreiben – sie sagt mir nur nicht welche fachliche Bedeutung dieser Text hat!
00:03:09: Ein Datum wird durch seine Position noch nicht eindeutig zum Zahlungsdatum.
00:03:14: Es könnte ebenso das Rechnungsdatuum oder das Lieferdatum sein.
00:03:18: Natürlich könnte ich zusätzliche Regeln programmieren, beispielsweise zuerst eine Beschriftung suchen und dann den Text rechts daneben auswerten.
00:03:26: Aber auch das muss unterschiedliche Zeilenumbrüche, Abstände und Ergebnisse der Texterkennung berücksichtigen.
00:03:32: Dazu kommen Prüfungen für fehlende oder widersprüchliche Werte.
00:03:36: Für mich entsteht dabei erheblicher Aufwand ohne dass die Koordinaten allein eine solide Grundlage für die Feldzuordnung bilden.
00:03:43: Deshalb betrachte Ich GetLiveTextAsJayson für diese Aufgabe nicht als besonders zielführend.
00:03:49: Für die automatische Zuordnung von Belegdaten kann ich mir derzeit keinen überzeugenden Einsatz dieser Positionsdaten ohne eine zusätzliche inhaltliche Auswertung vorstellen.
00:03:59: In meinem Ablauf würde ich dafür eher KI einsetzen.
00:04:03: Wenn ich der KI aber ohnehin den ausgelesenen Text oder das vollständige Dokument zur Auswertungen übergebe, brauche ich die von dieser Funktion gelieferten Koordinaten nicht wirklich zusätzlich.
00:04:14: Entscheidend ist für mich ob die Verarbeitung Rechnungsnummer, Zahlungsdatum und Gesamtbetrag aus Ihrem Zusammenhang richtig zuordnet.
00:04:23: Das ist meine Einschätzung für diesen Anwendungsfall – allein Text zu erkennen kann selbstverständlich schon nützlich sein!
00:04:31: Meine Kritik betrifft die Erwartungen aus Text- und Pixelpositionen ohne weitere Auswertung zuverlässig ausgefüllte Datenbankfelder zu erhalten.
00:04:40: Mit dem Einsatz von KI sind die Ergebnisse dann tatsächlich sehr gut selbst wenn nicht jedes Dokument gleich aufgebaut ist oder sich Positionen von Textblöcken im Dokument ändern.
00:04:50: Genau damit beschäftigen wir uns im dritten Teil, wie kann KI bei der Zuordnung helfen und welche Prüfungen gehören trotzdem in eine FileMaker-Lösung?
00:04:59: Vielen Dank fürs Zuschauen und Zuhören!
00:05:01: Bis zur nächsten Folge von Clarice FileMakers in fünf Minuten.
Neuer Kommentar