synOCR synOCR - GUI für OCRmyPDF

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Workflow schnurrt wie ein Kätzchen. Die Erweiterung um das temp. Verzeichnis wurde wie empfohlen umgesetzt. Jetzt grabe ich mich durch die Erstbesohlung der YAML für eine zukünftig interaktionsarme Abarbeitung. Vielen Dank für die Unterstützung. Unglaublich was hier auf die Beine gestellt wurde. Auch die offenen Requests und dazugehörigen Diskussionen sind sehr spannend.

Beste Grüße
Schlomo
 
  • Like
  • Love
Reaktionen: Struppix und geimist

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
... eher "immer nur äußerst kurz offene Requests", weil @geimist und @Struppix so zeitnah immer am Ball sind, dass der Bundestrainer der Fußballnationalmannschaft jedes Mal neidisch wird und sich solche Spieler auf dem Platz wünscht.

Ganz im ernst: Ich bin jedes Mal beeindruckt und wünsche mir nur ansatzweise bei Firmen eine solche professionelle und schnelle Lösungsbereitschaft. Ein Daumen hoch reicht nicht, daher => (y)(y)(y)(y)(y) oder auch 🌟🌟🌟🌟🌟+ (nicht nur 5 Sterne, sondern 5 Sterne plus).

By the way: Wer mal eine Pizza oder ein Bier spendieren möchte, kann das hier tun.
 
Zuletzt bearbeitet:

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Mir persönlich hat synOCR viel Arbeit abgenommen und erleichtert. Fast täglich kommt es bei mir zum Einsatz.

Daher habe ich neben einem Danke auch eine kleine Pizzaspende als Anerkennung für die harte Arbeit dagelassen und hoffe, dass sich dem welche anschließen.

peter1.jpg

peter2.jpg
 
Zuletzt bearbeitet:
  • Like
Reaktionen: guidovg

guidovg

Benutzer
Mitglied seit
26. Nov 2011
Beiträge
142
Punkte für Reaktionen
43
Punkte
34
@peterhoffmann eine sehr gute Idee. Ich habe mal etwas für das Getränk zur Pizza gesponsert.
 
  • Like
Reaktionen: peterhoffmann

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.536
Punkte für Reaktionen
1.372
Punkte
234
Oh, was für eine Überraschung – ihr seid ja verrückt!
Vielen Dank ☺️ 🍕

... eher "immer nur äußerst kurz offene Requests", weil @geimist und @Struppix so zeitnah immer am Ball sind, dass der Bundestrainer der Fußballnationalmannschaft jedes Mal neidisch wird und sich solche Spieler auf dem Platz wünscht. …
Es haben schon viele zum Wachstum dieses Projektes beigesteuert. Zu erwähnen sind zusätzlich nicht nur Tommes, der die Paketgrundlage beigesteuert und mir bei der GUI oft auf die Sprünge geholfen hat, sondern des Weiteren u.a. auch @Gthorsten mit seiner Python-Expertise, der gerade damit in den letzten Versionen geholfen hat, so manches Feature umzusetzen.

Aber ich muss die Euphorie mal dämpfen. Einige Featurerequests sind sehr wohl schon länger offen und es gab bereits längere Zeit keine Updates mehr. Pflichten im Reallife haben halt Prioriät und ich kann nicht gelegentlich ein Stündchen an neuen Funktionen feilen, sondern ich müsste mich dann intensiv hineinknien, was derzeit nicht möglich ist. Aber es ist ja nicht ausgeschlossen, dass es mal wieder vorwärtsgeht. Und es ist auch jeder interessierte eingeladen, selbst Hand anzulegen. Dafür ist es OpenSource und steht auf Github bereit.
Ich hoffe sehr, dass eine zukünftige DSM Version nicht weitere Steine in den Weg legt, die solche Pakete dann fast unmöglich machen.

In der aktuellen synOCR-Version scheine ich die schwerwiegenden Bugs gut genug versteckt zu haben, dass sie neben mir auch niemand anderes findet 🙈
 
  • Like
Reaktionen: Gthorsten

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Ich habe mich mal an einem ersten Entwurf für eine Webapplikation versucht, um einfache Regeln anzulegen. Basis ist die Doku aus der Standard YAML-Datei von synOCR. Ist eine einfache HTML-Datei und eine kurze Beschreibung. Schaut gern mal rein. Ich freue mich über Feedback.

VG Schlomo
 

Anhänge

  • regelverwaltung v1.zip
    11 KB · Aufrufe: 9
  • Like
Reaktionen: Struppix

Struppix

Benutzer
Mitglied seit
10. Apr 2009
Beiträge
882
Punkte für Reaktionen
184
Punkte
63
Hallo Schlomo,
das ist stark. Muss ich mir mal intensiver anschauen.
Kurios: 90% meiner RegEx sind angeblich fehlerhaft.

Gruß
Karsten
 

Struppix

Benutzer
Mitglied seit
10. Apr 2009
Beiträge
882
Punkte für Reaktionen
184
Punkte
63
In der aktuellen synOCR-Version scheine ich die schwerwiegenden Bugs gut genug versteckt zu haben, dass sie neben mir auch niemand anderes findet
Hmm Stephan, bist Du Dir sicher ;) :giggle:

ich möchte mich @geimist anschließen, und herzlichen Dank sagen.

Gruß Karsten
 
  • Haha
Reaktionen: geimist

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Hallo Schlomo,
das ist stark. Muss ich mir mal intensiver anschauen.
Kurios: 90% meiner RegEx sind angeblich fehlerhaft.

Gruß
Karsten

Hallo Karsten,

das kann gut sein, das Feature ist aktuell noch rudimentär implementiert und vermutlich gespickt mit Überraschungen ;-). Ich gehe da nochmal ran.
 

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
151
Punkte für Reaktionen
42
Punkte
28
Oh, was für eine Überraschung – ihr seid ja verrückt!
Vielen Dank ☺️ 🍕


Es haben schon viele zum Wachstum dieses Projektes beigesteuert. Zu erwähnen sind zusätzlich nicht nur Tommes, der die Paketgrundlage beigesteuert und mir bei der GUI oft auf die Sprünge geholfen hat, sondern des Weiteren u.a. auch @Gthorsten mit seiner Python-Expertise, der gerade damit in den letzten Versionen geholfen hat, so manches Feature umzusetzen.

Aber ich muss die Euphorie mal dämpfen. Einige Featurerequests sind sehr wohl schon länger offen und es gab bereits längere Zeit keine Updates mehr. Pflichten im Reallife haben halt Prioriät und ich kann nicht gelegentlich ein Stündchen an neuen Funktionen feilen, sondern ich müsste mich dann intensiv hineinknien, was derzeit nicht möglich ist. Aber es ist ja nicht ausgeschlossen, dass es mal wieder vorwärtsgeht. Und es ist auch jeder interessierte eingeladen, selbst Hand anzulegen. Dafür ist es OpenSource und steht auf Github bereit.
Ich hoffe sehr, dass eine zukünftige DSM Version nicht weitere Steine in den Weg legt, die solche Pakete dann fast unmöglich machen.

In der aktuellen synOCR-Version scheine ich die schwerwiegenden Bugs gut genug versteckt zu haben, dass sie neben mir auch niemand anderes findet 🙈
Danke für das Lob,aber soviel war es ja auch nicht.
Habe mich auch in letzter Zeit rar gemacht, weil die Arbeit die volle Zeit abverlangt hat.

Gibt es eigentlich aktuell Probleme?
 

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
151
Punkte für Reaktionen
42
Punkte
28
Jep, macht natürlich Sinn.

@Gthorsten: Mein fix basiert schon auf dem aktuellsten Repo-Stand. Mir ist gerade aufgefallen, dass du letztes Jahr im Oktober schon den regex für regex_long_date und regex_short_date geändert hast. Diese Änderung ging zwar nie in ein Release, behebt aber an sich schon 2 meiner 3 weiter oben gemeldeten Datum-Fehlerkennungen. Mein PR (bzw. die Idee dahinter) fixt dann noch die fehlende Nummer 3.
Hi, Versuche gerade heraus zu finden, warum das nicht in einem Release gelandet ist.
Wenn ich was gefunden habe sage ich Bescheid
 

Honkytonk

Benutzer
Mitglied seit
10. Jun 2020
Beiträge
22
Punkte für Reaktionen
1
Punkte
3
Erst einmal vielen Dank an @geimist für dieses tolle Projekt. Ich bin jetzt schon seit ein paar Wochen am testen und rumprobieren. Gerade das Thema mit den Regeln, Tags und Ordnersortierung ist sehr umfangreich.

Ich habe leider ein Problem bei dem automatischen abarbeiten der Dateien im Eingangsordner. Mein Dokumentenscanner scannt direkt in den Eingangsordner. Der Dokumentenscanner erstellt dabei direkt eine Datei und füllt diese langsam, bis der Scan zu Ende ist. SynOCR versucht aber sofort die Datei abzuarbeiten was dann zu folgender Fehlermeldung führt:

failed! (target file is empty or not available)

Erst wenn ich die Verarbeitung anschließend manuell starte wird die Datei verarbeitet.

Könnte man etwas einbauen, dass prüft bis die Datei vollständig ist. Z. B. keine Dateigrößenveränderung innerhalb von 30 Sekunden = Datei fertig --> SynOCR Verarbeitung starten.
Moin!
Ich habe SynOCR mit inotify erfolgreich auf meiner DS218+ am Laufen. Schiebe ich eine PDF in die Inbox, dauert es eine Weile und alles läuft wie es soll - ein Mega-Tool, echt der Wahnsinn!
Nur habe ich leider das gleiche Problem wie Syngen (siehe Zitat oben): Mein ScanSnap iX1600 kann nach einem Update endlich direkt aufs NAS scannen und tut das auch erfolgreich. Nehme ich eine derart gescannte Datei und schiebe sie manuell in die Inbox von SnyOCR, läuft auch alles. Aber sobald ich den Scanner direkt in die Inbox scannen lasse, kommt die gleiche Fehlermeldung wie bei Syngen: "target file is empty or not available" Ich habe als sudo mit der Shell nachgesehen und die Änderung des inotifywait-Events von create zu close_write ist bereits drin. Sprich: Was Syngen half, hilft bei mir also leider nicht.
Gibt es in der Kombination mit dem ScanSnap evtl. irgendwelche bekannten Probleme?
 

Honkytonk

Benutzer
Mitglied seit
10. Jun 2020
Beiträge
22
Punkte für Reaktionen
1
Punkte
3
Okay... ich habe weiter oben die Beiträge zu genau meinem Problem gefunden. Scheint ja ein Problem des Scanners zu sein. Ich werde die Workarounds mal durchprobieren.
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.536
Punkte für Reaktionen
1.372
Punkte
234
Korrekt. @schlomo hat ja mit seinem ScanSnap daselbe Problem. Ich hab keine Ahnung, warum Canon und ScanSnap so verfahren.
 

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Würde sich inotify nicht theoretisch "aufbohren" lassen? Also Erweiterung um die gleiche Logik wie das beschriebene Skript für den Workaround (es werden nur Dateien die älter als 1min sind bearbeitet)? Dann hätte man das Verhalten der Scanner berücksichtigt und trotzdem eine Ordnerüberwachung.
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.536
Punkte für Reaktionen
1.372
Punkte
234
Inotify selbst bietet meines Wissens keine eingebaute Möglichkeit, das Alter einer Dateiänderung zu berücksichtigen. Es löst Ereignisse sofort aus, wenn eine Datei geändert wird, unabhängig von ihrem Änderungszeitpunkt.

Ich könnte mir vorstellen, dass man den Workaround direkt mit in synOCR abbildet und in der GUI einen Schalter für "Inotify inkompatible Scanner" bereitstellt. Aber wie gesagt: derzeit habe ich leider keine Ressourcen für neue Features.
 
  • Like
Reaktionen: Struppix

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Ich habe noch eine andere Frage. Ich habe aktuell eine Dokumente, die für den Monat keine führende Null verwenden (z.B. 04. für April sondern nur die 4). Hier scheint die Datumserkennung aus der Kurve zu fliegen. Ich habe bisher nichts gefunden, um das Problem zu umgehen. Habe ich etwas übersehen? Wie löst ihr das?

Beste Grüße
Schlomo
 

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
151
Punkte für Reaktionen
42
Punkte
28
Das sollte aber eigentlich kein Problem sein. Kannst du mal aus dem logfile die Zeile kopieren die Probleme macht?
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.536
Punkte für Reaktionen
1.372
Punkte
234

schlomo

Benutzer
Mitglied seit
23. Sep 2024
Beiträge
12
Punkte für Reaktionen
5
Punkte
3
Das sollte aber eigentlich kein Problem sein. Kannst du mal aus dem logfile die Zeile kopieren die Probleme macht?
Selbstverständlich. Hier die Beiden Bereiche aus dem OCR Prozess und der Datumserkennung

Code:
 -----------------------------------------------------------------------------------
  | processing PDF @ OCRmyPDF:                                                      |
  -----------------------------------------------------------------------------------

                ➜ OCRmyPDF-LOG:
                  reading file from standard input
                  Start processing 4 pages concurrently
                      1 page is facing ⇧, confidence 14.29 - rotation appears correct
                      4 page is facing ⇧, confidence 14.87 - rotation appears correct
                      2 page is facing ⇧, confidence 15.51 - rotation appears correct
                      3 page is facing ⇧, confidence 15.86 - rotation appears correct
                      4 [tesseract] lots of diacritics - possibly poor OCR
                      6 [tesseract] Too few characters. Skipping this page
                      6 [tesseract] Too few characters. Skipping this page
                      6 [tesseract] Error during processing.
                      6 page is facing ⇧, confidence 0.00 - no change
                      5 page is facing ⇧, confidence 13.73 - no change
                      6 [tesseract] Empty page!!
                      6 [tesseract] Empty page!!
                  Postprocessing...
                  Optimize ratio: 1.00 savings: -0.0%
                  Image optimization did not improve the file - optimizations will not be used
                  Output sent to stdout
                ← OCRmyPDF-LOG-END

                target file (OK): /tmp/tmp.shl28WamYI/step1_tmp_1727708403/300982024165537.pdf


-----------------------------------------------------------------------------------
  | search for a valid date in ocr text:                                            |
  -----------------------------------------------------------------------------------

2024-09-30 17:00:50,955 - Date scanning started
2024-09-30 17:00:50,955 - Version: 1.04
2024-09-30 17:00:50,955 - Parameter minYear = 0
2024-09-30 17:00:50,955 - Parameter maxYear = 0
2024-09-30 17:00:50,955 - Parameter searchnearest = off
2024-09-30 17:00:50,955 - set searchnearest = off
2024-09-30 17:00:50,955 - Parameter fileWithTextFindings = /tmp/tmp.shl28WamYI/step2_tmp_1727708446//synOCR.txt
2024-09-30 17:00:50,955 - Parameter dateBlackLIst = off
2024-09-30 17:00:50,955 - start checking blacklist
2024-09-30 17:00:51,077 - end checking blacklist
2024-09-30 17:00:51,078 - Start searching for alphanumerical and numerical dates......
2024-09-30 17:00:55,206 - finish searching for alphanumerical and numerical dates......
2024-09-30 17:00:55,207 - found 0 dates
2024-09-30 17:00:55,207 - no dates found
2024-09-30 17:00:55,207 - found date None
2024-09-30 17:00:55,207 - Date scanning ended
                  Date not found in OCR text - use file date:
                  day:  30
                  month:09
                  year: 2024

Im Anhang ist der obere Teil der Pdf angehängt. Komischerweise wird auch die Leerseite nicht entfernt.
 

Anhänge

  • screenshot date.png
    screenshot date.png
    108,1 KB · Aufrufe: 8


 

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