synOCR synOCR - GUI für OCRmyPDF

Seitdem bekomme ich allerdings bei jedem Beenden des synOCR-Containers eine „Fehlermeldung“, obwohl das ja das gewünschte Verhalten ist, dass der Container für das OCRen startet und danach beendet wird. Hat jemand eine Lösung, diese Meldung zu deaktivieren, am besten nur im synOCR/OCRmyPDF-Container?
Das ist auch bei anderen Containern der Fall, die man nur temporär erstellt (Parameter --rm). Mich stört das auch total. Das ist aber auch nicht immer der Fall. Heute kommt bei den entsprechenden Containern keine Fehlermeldung.

@Stefan_Mav
Auch von mir ein herzliches Willkommen.

Zu deiner anderen Frage:
Muss mal nochmal versuchen, wenn ich de Scanner mit mehr Auflösung scannen lasse.
Ideal sind 300 DPI (gerne in schwarzweiß). Für eine bestmögliche OCR Erkennung ist weniger schlechter, aber auch mehr (viel hilft viel gilt hier nicht)!
 
ich hab eine Textdatei erstellen lassen für die Regeln, wenn das dann eine Yaml Datei ist, dann ja.
(kenne die sonst nur von Home Assistant)
 
Ja, dann ist das eine YAML-Datei. (YAML beschreibt die Struktur – die Dateiendung ist nicht relevant). Als Alternative wäre noch die einfache Begriffsuche in der GUI. Damit kommst du aber nicht weit, wenn man spezielle Suchmuster abbilden möchte. Daher die Frage von @Struppix. Er wird bestimmt gleich mit passenden Tipps um die Ecke kommen :)
 
Ja das ist dann eine YAML Datei. Kannst Du mir mal bitte ein Beispiel hochladen (meine Signatur). Du kannst ja die Sachen die ich nicht sehen darf unkenntlich machen. Denn ganz schlau werde ich noch nicht...

Karsten
 
@Struppix hab dir das hochgeladen, was ich bis jetzt habe.
So findet er Verdienstabrechnung, verschiebt die Datei in den richtigen Ordner.
Nur mit der Benennung bin ich nicht zufrieden, die heißt dann 20250216-170123_#Verdienstabrechnung.pdf
Das Datum ist nur vom upload, hab das nicht anderst hin bekommen.
Ich hätte lieber JAHRMONAT_Lohnabrechnung, wobei Jahr und Monat aus dem Dokument kommen müssen.
 
Hallo Stefan,
ich hätte eine Beispiel Dokument gebraucht, wo ich nach vollziehen kann, was Du suchst. Also einen scan. Mir nützt die YAML nichts, die wollen wir ja erstellen.

Auch wenn ich das nicht testen kann versuche ich halt mal zu raten.

Code:
# synOCR_YAMLRULEFILE   # keep this line!


rule_1001:
    tagname: Verdienstabrechnung_§tagname_RegEx
    targetfolder: M/Lohnabrechnung
    tagname_RegEx: (?i)(?<=Abrechnungsmonat\D)(?:(?:[0-9]{2})(?:[\,\.\-\_\;\:\•\|\/\\\*\ ]{1,3}))\K(?:[0-3]{0,1}[0-9]{0,1})
    multilineregex: true
    condition: all
    subrules:
    - searchstring: Verdienstabrechnung
      searchtyp: contains

rule_1002:
    tagname: §tagname_RegEx
    targetfolder:
    tagname_RegEx: (?i)(?<=Abrechnungsmonat\D)(?=([0-9]{2})(?:[\,\.\-\_\;\:\•\|\/\\\*\ ]{1,3}))(?>[0-3]{0,1}[0-9]{0,1})
    multilineregex: true
    condition: all
    subrules:
    - searchstring: Verdienstabrechnung
      searchtyp: contains

Gruß Karsten
 
  • Like
Reaktionen: geimist
Danke dir schon mal, ich probier das aus, hab dir eine Pdf Datei hoch geladen.
Geburts und EIntrittsdatum hab ich drin gelassen, für den Fall dass es da zu Probblemen kommt.
 
Geburts und EIntrittsdatum hab ich drin gelassen, für den Fall dass es da zu Probblemen kommt.
Man kann in der GUI mehrere Daten genau für diesen Zweck blacklisten. Ich wusste nicht, von was für Daten du sprachst, die zusätzlich im Dokument enthalten sind. Das hilft vielleicht auch schon, das Ganze einfacher zu machen.

Bildschirmfoto 2025-02-17 um 23.03.07.png
 
Hi Stefan,
hab gerade meine YAML (die beiden Regeln von hier) durchlaufen lassen.

Das Ergebnis ist:
Verdienstabrechnung_24_12.pdf

Ist es das was Du suchtest? Die Trennzeichen kannst Du im GUI selbst einstellen. Wenn Du sie im GUI weglässt, dann musst / / kannst Du Sie in jeder Regel spezifisch festlegen, also zb: "tagname: Verdienstabrechnung". Hier somit der Unterstrich.

Zur Verwendung der Regeln: Einfach die beiden Regeln in dieser Reihenfolge in Deine YAML kopieren, und die fortlaufende Nummerierung anpassen. Solange keine anderen Regeln die Du noch erstellen wirst, sich mit dem "searchstring: Verdienstabrechnung" kreuzen oder den selben haben, sollte das funktionieren.

Viel Spaß Karsten
 
  • Like
Reaktionen: geimist
Danke dir, hab das auch gerade nochmal probiert.
Ich hab die gleiche Yaml Datei drin und in der GUI bei OCR Rename Syntax nur §tag
Tags im Dateinamen kennzeichnen hab ich noch #
(habs auch mal ohne probiert)

Das Ergebnis ist bei mir:
#Verdienstabrechnung_§tagname_RegEx#§tagname_RegEx.pdf


Hab gerade noch im Log geschaut, da steht u. a. das hier drin:
Code:
➜ search RegEx for tag ➜ RegEx not found (fallback to §tagname_RegEx) (Rule 1002)
➜ search RegEx for tag ➜ RegEx not found (fallback to Verdienstabrechnung_§tagname_RegEx) (Rule 1001)

Bei mir wird bei Abrechnungsmonat das erkannt:
Abrechnungsmonat 12,24/01

Ich hab gerade noch die von 09 durchlaufen lassen, da kommt folgendes raus:
Abrechnungsmonat 09|.24/0]
und die Datei heiß dann Verdienstabrechnung_2409.pdf (hab die Raute noch raus genommen)
Cool wäre, wenn die dann 202409_Verdienstabrechnung heißt.
Wobei ich sicher weiß, dass es keine mit 1900er Datum geben wird.
 
Zuletzt bearbeitet:
Da stehe ich auf dem Schlauch. Hast Du meine Regel = YAML Datei 1:1 verwendet ?

Stell mal bitte unter Protokoll auf Debug Level ein und lade mir das hoch:

@geimist Stephan hast Du ne Idee ?

Karsten

PS: Verwende außerdem mal meine YAML im Original, nichts kopieren oder ähnliches.
 
@geimist Stephan hast Du ne Idee ?
Leider gerade nicht. Ich hab aber jetzt auch nur ein Blick von außen, da ich ja das Dokument nicht habe.
Man könnte vielleicht etwas detaillierter die Regel definieren, wenn man sich den Textauszug ansieht (zu finden im Logverzeichnis bei Loglevel 2).
 
Schicke ich dir morgen früh, hab jetzt den Scanner noch umgestellt, dann erkennt der OCR sauberer und interessiert sich nicht mehr für die Balken.
Der Fehler dass er nicht erkennt ist, dass die Annahme war, dass da das steht:
Abrechnungsmonat 01|25/01

Ich habe in meinen Dateien jetzt z. B. den Text stehen:
Abrechnungsmonat 01.25/01

Hab jetzt 4 Dateien eingescannt (eine war versehentlich doppelt, dann sehe ich das auch gleich)
Lass gerade nochmal mit Loglevel 2 und dem Yaml Code von oben durchlaufen.
Mach dann morgen auch nochmal ein Original Dokument fertig und schick dir das dann.

Der nächste Plan ist dann der Code Editor, den muss ich mir noch anschauen.

Danke euch schon mal.
 
Hab beide Dateien die im Log Ordner drin waren + die pdf Datei vor und nach OCR (ein paar Felder ausgemalt wegen Daten) + die Yaml Datei hochgeladen. Der Scanner steht jetzt auf 300dpi farbig, max. Dateigröße wegen weniger Artefakten.
Dadurch erreiche dass in der Datei der Suchtext so aussieht:
Abrechnungsmonat 01.25/01
Wenn machbar hätte ich gerne 202501_Verdienstabrechnung als Dateinamen.
Die beiden Datums oben habe ich geblacklisted, aber ganz unten steht noch ein Datum, allerdings mit 25 als Jahr.
Das wäre mega, wenn er das als Dateidatum nehmen würde.

Hab das jetzt extra nochmal gemacht, weil in dem Logfile ja alles aus der Abrechnung zu lesen ist.
Deshalb habe ich es vorher bearbeitet und mit pdf Creator nochmal gedruckt.
Ist ein bisschen schief geworden, sollte aber trotzdem funktionieren.

Grüße Stefan
 
Guten Morgen Stefan,
nur kurz, lass uns nach dem Post mal auf die PM, hier heißt es Direct Message umsteigen, bevor wir hier alles zu bomben.

Also Dein LOG ist soweit ok, bis auf eine Kleinigkeit.
Wenn ich Deine YAML Datei (Also Dein Profil Datei) 1:1 übernehme funktioniert es tadellos.

Außerdem: Nimm mal dies anstatt Deinem Eintrag in die OCR Optionen:
Code:
-frd -l deu+eng

Karsten
 
Der Scanner steht jetzt auf 300dpi farbig, max. Dateigröße wegen weniger Artefakten.
Das Quelldokument ist in der Tat etwas problematisch. Wahrscheinlich ist es nicht sehr eben eingescannt (fotografiert?) und die Linien der Spalten helfen auch nicht gerade.
Meine Empfehlung: 300 DPI in 1Bit (schwarzweiß).

Wenn machbar hätte ich gerne 202501_Verdienstabrechnung als Dateinamen.
So funktioniert es bei mir (dafür sind zwei Regeln nötig):
YAML:
rule_1003first:
    tagname: 20§tagname_RegEx
    targetfolder: M/Lohnabrechnung
    tagname_RegEx: (?<=Abrechnungsmonat \d{2}\.)\d{2}(?=\/)
    condition: all
    subrules:
    - searchstring: Verdienstabrechnung
      searchtyp: contains
    - searchstring: Abrechnungsmonat
      searchtyp: contains

rule_1003second:
    tagname: §tagname_RegEx_Verdienstabrechnung
    targetfolder: M/Lohnabrechnung
    tagname_RegEx: (?<=Abrechnungsmonat )\d{2}(?=\.)
    condition: all
    subrules:
    - searchstring: Verdienstabrechnung
      searchtyp: contains
    - searchstring: Abrechnungsmonat
      searchtyp: contains

Die Unterregeln habe ich hinzugefügt, um falsch positive Ergebnisse zu vermeiden.
 
Es gibt mal wieder etwas Frisches zum Testen: synOCR mit der Version 1.4.99.7

BETA DOWNLOAD:

➜ SPK DSM6

➜ SPK DSM7



Was gibt's Neues?​

1.4.99.7 [2025-02-20]
IMPLEMENTIERUNGEN:
- [SHELL] Wenn die Protokollierung aktiviert ist, wird jetzt die Datei „file_processing.log“ im Log-Ordner erstellt, um einen schnellen Überblick über die Zieldateien zu erhalten. Jede Datei erhält zunächst den Wert unsuccessful, welcher bei Erfolg durch den Zielpfad ersetzt wird.
- [GUI] Mit einem Schieberegler kann eine Verarbeitungsverzögerung von 0-120 Sekunden eingestellt werden. Das soll für Kompatibilität der Ordnerüberwachung mit inkompatiblen Scannern wie CANON sorgen, die mehrseitige Scans fortlaufend schreiben.
- [GUI] Die Quelldatei bleibt über den OCR-Parameter --keep_hash unverändert, kann aber weiterhin klassifiziert und umbenannt werden (Issue #59)
- [GUI] 🔥 Über die Farbanpassungen können nun der Kontrast, die Schärfe und ein Schwarz-Weiß-Modus (1-bit) konfiguriert werden.
VERBESSERUNG:
- [SHELL] alle Mehrfachvorkommen von nicht-alphanumerischen Zeichen im Zieldateinamen werden vereinfacht (issue #58)
- [GUI] Wo möglich, wurden Textfelder und Optionsfelder durch Schieberegler und Schalter ersetzt.
- [SHELL] Die Regexe D-M-Y, D.M.Y und D/M/Y in search_all_numeric_dates wurden geändert, um die Suche nach 2- und 4-stelligen Jahreszahlen zu ermöglichen. (#56 @dklinger)
BUGFIXE:
- [SHELL] Such-Präfix und Such-Suffix wurden aus dem gesamten Dateinamen entfernt
- [SHELL] Dateinamen, die doppelte Anführungszeichen enthalten, führten zu einem Fehler


⚠️ Ein wichtiger Hinweis für alle, die die Leerseitenerkennung der Vorversion nutzen: Bitte passt erneut den Wert für die Empfindlichkeit an, da jetzt ein negativer Wert verwendet wird (ein gespeicherter positiver Wert aus der Vorversion erkennt wahrscheinlich gar keine Leerseiten).


Viel Spaß :)
 
@geimist, erfolgreich installiert, nun wird es auch in der GUI bunt und feiner was Möglichkeiten der Einstellungen betrifft.
Für mich der Hinweis bezüglich der Leerseiten-Empfindlichkeit in der GUI wichtig, habe ich doch dort Werte im Zusammenspiel mit dem 1700er Brother vorgenommen. Entsprechend erst mal korrigiert, jedes Profil mal geschaut (sollte man unbedingt machen) und hier beim Wechsel der Profile keine Auffälligkeiten erkannt.
Test von Dokus wo hinten was durchschimmert, später.
 
Test von Dokus wo hinten was durchschimmert, später.
Das hatte ich vergessen mit aufzulisten:
In der Leerseitenerkennung gibt es jetzt einen Schalter, um Text zu ignorieren. In dem Fall arbeitet nur die optische Erkennung.
 
  • Like
Reaktionen: Yippie

Additional post fields

 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat