synOCR synOCR - GUI für OCRmyPDF

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
@olli2 - in scanbot Pro habe ich zwei Schalter für OCR. Einmal abhängig vom Ladekabel und einmal allgemein (Einstellungen > Dokumenteinstellungen und Einstellungen > App Einstellungen > Erweiterte Einstellungen). Hab jedenfalls kein Problem OCR auch mit Ladekabel auszuschalten.
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
… Aber die Auswahl des Trennzeichens für die Tags in der GUI wäre Klasse …
Ja, das mache ich.

… Was schwebt dir denn bei den RegEx so vor? Vielleicht kann ich da helfen.
Ich suche vor allem eine einfache Syntax für die GUI und eine sichere Möglichkeit, das für grep zu übersetzen (und hier dachte ich, es gäbe Skripte, die einen "einfachen" Suchterminus verstehen und intern grep, awk oder weiß ich was verwenden). Es soll halt jeder User verwenden können.

  • Mit „“ exakte Wortfolge
  • Mit * nach Ergänzungen suchen
  • Mit Wörter ausschließen
  • Mit | ODER definieren
  • Leerzeichen ist UND
Beispiel:
…;"Dr. G.Sund" Labor -Rechnung=Befunde(Arzt);nächster Tag …

Den Alias-Tag habe ich hier in Klammer gesetzt, die Kategorie davor. Das Beispiel könnte man ja noch mit Verzweigungen realisieren, aber das ganze flexibel zu gestalten (wer weiß, was für Suchanfragen da letztentlich reinkommen) …

Ich hatte jetzt schonmal den Gedanken, dass man statt per grep zu suchen, elasticsearch zu verwenden. Ich würde also die temp. PDF-Datei an den elasticsearch-Indexer senden > warten bis der fertig ist (ist wieder blöd, wenn der gerade viel anderes zu tun hat) > die nicht-RegEx-Suchfolge abfragen > PDF aus dem Index löschen. Mit dieser Idee habe ich mich aber noch nicht weiter beschäftigt. Ich will die Sache mit den Tags auch nicht schleichend fortentwickeln, da hier sonst bei jedem Update vom User die Tags angepasst werden müssten …

Ich habe im Profil bei den OCR Optionen den Schalter -s raus und --force-ocr rein genommen.
Das wollte ich dir auch noch antworten - vergessen, sorry … :rolleyes:
Aber wahrscheinlich ist der Tipp von Fusion eh besser, wenn es auch bei dir funktioniert.

Ich meinte schon einen Webentwickler aus Fleisch und Blut ;). Ich habe keine Erfahrung in diesem Bereich und weiß nicht, welche Möglichkeiten es gibt, meine Anforderung (Tabelle für Tags, oder ähnlich) in der GUI abzubilden. Aber danke fürs grübeln :eek:
 
Zuletzt bearbeitet:

mamema

Benutzer
Mitglied seit
23. Okt 2009
Beiträge
667
Punkte für Reaktionen
132
Punkte
63
äh.....
Du brauchst einen Webentwickler? Hast aber nun eine ausgefeilte Lösung, die es bereits gibt und kannst Dir nicht den HTML Code im Browser anzeigen lassen?
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
Ich habe immer betont, dass ich kein Profi bin! Alles habe ich mir nur im Freizeitrahmen beigebracht (entsprechend groß ist der Aufwand für mich). Und ja, ich habe keine Erfahrung mit Webentwicklung - das Grundgerüst hat mir Tommes damals für synOTR zur Verfügung gestellt und das kann ich auch anpassen. Aber ich habe halt keine Erfahrung (nichts geht darüber) und ich kenne keine Lösung für mein Problem. Prinzipiell funktioniert es ja jetzt mit dem einzelnen Textfeld für Tags. Die Frage ist ja: wie geht es besser :eek:

P.S.: … doch, den Quellcode kann ich mir schon im Browser ansehen ;)
 

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Mir ist heute aufgefallen, dass PDFs nach der Bearbeitung ein Leerzeichen im Dateinamen angehängt wird, wenn kein Tag trifft.

Testweise habe ich eine Datei namens "1.pdf" in den Eingang gelegt, im Ausgang wurde dann "1 .pdf" abgelegt.

Hier das Log (teilweise mit [...] gekürzt):
Rich (BBCode):
    -----------------------------------
    |    ==> Installationsinfo <==    |
    -----------------------------------

synOCR-User:              root
synOCR-Version:           0.15.1
Architektur:              x86_64
DSM-Build:                24922
Gerät:                    216plus [...]
aktuelles Profil:         default
verwendetes Image:        jbarlow83/ocrmypdf
verwendete Parameter:     -srd -l deu
ersetze Suchpräfix:       no
Umbenennungssyntax:       §tit §tag
Loglevel:                 normal
Anwendungsverzeichnis:    /usr/syno/synoman/webman/3rdparty/synOCR
Quellverzeichnis:         /volume1/dokumente/_synocr/1_eingang/
Quellverzeichnis:         /volume1/dokumente/
BackUp-Verzeichnis:       /volume1/dokumente/_synocr/3_backup/


    ----------------------------------
    |    ==> Funktionsaufrufe <==    |
    ----------------------------------

    VERARBEITE:       --> 1.pdf (Mon Apr  8 22:11:17 CEST 2019)
                          temp. Zieldatei: /tmp/tmp.Sl04QTUi5p/1.pdf

                      --> OCRmyPDF-LOG:
                          INFO - reading file from standard input
                          INFO -    1: page is facing ?, confidence 0.26 - confidence too low to rotate
                       WARNING -    1: [tesseract] unsure about page orientation
                          INFO - Optimize ratio: 1.51 savings: 33.8%
                          INFO - Output sent to stdout
                      <-- OCRmyPDF-LOG-END

                          Zieldatei (OK): /volume1/dokumente/1.pdf
                      --> übertrage die Dateirechte und -besitzer (verwende ACL)
                      --> suche Tags und Datum:
                          Tag-Anzahl:       27
                          [...]
                          Suche nach Tag:   "Versicherung" => -
                          [...]
                          Suche nach Tag:   "Quittung" => -
                          Suche nach Tag:   "Rechnung" => -
                          Suche nach Tag:   "Mahnung" => -
                          [...]
                          Suche nach Tag:   "Lieferschein" => -
                          Suche nach Tag:   "Beitragsbescheid" => -
                          [...]
                          Suche nach Tag:   "Finanzamt" => -
                          renameTag lautet: ""
                          Datum nicht gefunden - verwende Dateidatum:
                          Tag:  25
                          Monat:02
                          Jahr: 2019
                          wende Umbenennungssyntax an --> 1 
                          Zieldatei: 1 .pdf
                      --> verschiebe Quelldatei nach: /volume1/dokumente/_synocr/3_backup/1.pdf
                          INFO: (PushBullet-TOKEN nicht gesetzt)
                          INFO: (Laufzeit letzte Datei: 23 Sekunden (Seitenanzahl: 1) [...])


    -----------------------------------
    |       ==> synOCR ENDE <==       |
    -----------------------------------
 

Schlabbi

Benutzer
Mitglied seit
09. Apr 2019
Beiträge
4
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,

ich lese nun seit ca. 5 Jahren in diesem Forum still mit. 2016 habe ich mir dann eine DS216+II zugelegt und bislang habe ich eigentlich alle meine Fragen und Probleme durch die Beiträge anderer lösen können. Nun aber brauch ich Eure Hilfe...
synOCR, bzw. OCRmyPDF ist der letzte Baustein, der mir aktuell zu meiner Vorstellung des perfekten papierlosen Büros noch fehlt. Leider bekomme ich es aber nicht ans Laufen.

Ich bekomme jedesmal die Fehlermeldung: "!!! Quellverzeichnis in der Konfiguration prüfen !!!" Programmlauf wird beendet. Es wird zwar erkannt, dass in dem Quellverzeichnis Dateien zur Bearbeitung liegen (Offene Aufgaben, Dateien zu bearbeiten: 2), aber es passiert nichts. Er bricht jedes Mal ab.

Die Benennung der Ordner habe ich aus den Eigenschaften kopiert, daran sollte es eigentlich nicht liegen. Dennoch habe ich es auch mit der Neueinrichtung von Ordnern versucht.

Alternativ habe ich versucht OCRmyPDF im Aufgabenplaner mit /usr/syno/synoman/webman/3rdparty/synOCR/synOCR-start.sh zu starten. Hier kommt der gleiche Fehler.

Als Suchpräfix habe ich eigentlich nichts eingetragen, es aber auch schon mit einem Eintrag "SCAN" (entsprechend den pdfs in dem Ordner) versucht, vergeblich.

Der LOG-Ordner bleibt ebenso leer wie alle anderen.

Als nächstes habe ich sowohl Docker, als auch synOCR (v0.15.1) neuinstalliert, gleiches Ergebnis. Ich melde mich ausschließlich als admin an. In Verbindung mit dem pdf-Viewer funktioniert der Docker scheinbar.

Habe alle 27 Seiten jetzt zwei mal gelesen, aber ich komme einfach nicht drauf, woran es noch liegen könnte... Vielleicht habt ihr ja eine Idee.

Ich verwende die aktuellste DSM-Version DSM 6.2.1-23824 Update 6.

Schon mal vorab vielen Dank! Ich bin für jede Hilfe dankbar!

Viele Grüße,
Schlabbi
 

Schlabbi

Benutzer
Mitglied seit
09. Apr 2019
Beiträge
4
Punkte für Reaktionen
0
Punkte
1
Hallo geimist,

danke schon mal für Deine Hilfe!

Hier die Ordner Einstellungen:
Bildschirmfoto 2019-04-09 um 20.22.41.jpg

Und hier die Optionen:
Bildschirmfoto 2019-04-09 um 20.23.00.jpg

Viele Grüße,
Schlabbi
 

Schlabbi

Benutzer
Mitglied seit
09. Apr 2019
Beiträge
4
Punkte für Reaktionen
0
Punkte
1
Tschacka! Genau das war's! Es hat geklappt. Danke! :cool:

Nun probiere ich mich im taggen...

Eine Frage habe ich noch. Auf die Idee, meine PDF zu "OCRen" bin ich erst relativ spät gekommen, sprich ich habe bereits die Dokumente, Rechnungen etc. der letzten Jahre eingescannt und in meine eigene Ordnerstruktur umbenannt und einsortiert. Gerne würde ich diese natürlich ebenfalls durchsuchbar machen. Wie würdet Ihr vorgehen?

Stück für Stück Dateien in den "ScanIncome" Ordner kopieren und die fertigen dann wieder auf die Ordner verteilen, oder gibt es einen sinnvolleren workflow?
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
Freut mich, dass es geht :)
Eigentlich sollte ein falsch konfiguriertes Profil den Ablauf der anderen Profile nicht stören. Das ist noch ein Überbleibsel der Prä-Profilzeit. Das werde ich in der nächsten Version anpassen.

Zu deiner Frage:
Ja, Ordner für Ordner ohne jetzt extra einen Automatismus dafür zu bauen. Falls du die Dateinamen unverändert lassen möchtest, solltest du nur die Umbenennungssyntax §tit verwenden und auf Tags verzichten.
 

sanshiro

Benutzer
Mitglied seit
13. Apr 2019
Beiträge
2
Punkte für Reaktionen
0
Punkte
1
Hello I am a french user and the tool looks very good and powerfull. However it is nearly impossible to get full benefit of it as it is not translated, at least to english. I have some difficulties in configuring it and using it. Would it be feasible to get such translated version or to include feature to have a i18n files, I would be glad to contribute
Thanks
Thomas
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
Hello Thomas,

yes, the translation of the GUI is definitely on the ToDo list. I want to do that as soon as possible.
Would you be prepared to contribute a French translation from English when the time comes? For this you could like to send me your e-mail address to synocr at geimist.eu. That would be great :)

Can I help you individually by then?
 

D:VE

Benutzer
Mitglied seit
18. Jan 2018
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Hallo,
vielen Dank für dieses Tool, genau das, was ich schon seit Ewigkeiten suche...

Hab gerade erst angefangen, und es klappt schon ganz gut, aber ein paar Dinge habe ich nicht gefunden:

Wie kriege ich es hin, dass die Originaldateien unangetastet in dem Quellordner liegen bleiben?

Ist es möglich, mehrere Tags zu kombinieren? Sprich: Wenn er das Wort "Rechnung" UND den Namen meines Arbeitgebers findet, dann bitte unter "Gehaltsabrechnung" speichern
Hab sonst nämlich das Problem, dass die Suche auch bei Rechnung matcht`.

Wie kriege ich es hin, dass nur EIN Tag benutzt wird?
Wie kann ich die Raute aus dem Dateinamen entfernen?

Wie kann ich einen Zielordner für das Jahr angeben? Also
2018
- Kassenbons
- Rechnungen
etc


Falls das nicht geht, wäre es super, wenn sich etwas derartiges noch implementieren ließe, also dass man komplexere Tag-Strukturen entwickeln kann.
Habe das bisher mit Powershell gescriptet, das ganze ist aber an der OCR gescheitert, die ich bisher mit Abby Finreader Commandline gemacht habe, das SEHR eingeschränkt ist und vor allem nicht auf der DS läuft.

Oder gibt es für die Synology auch irgendeine einfache Scripting Lösung?

Vielen Dank,
lg, Dave
 
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
… Wie kriege ich es hin, dass die Originaldateien unangetastet in dem Quellordner liegen bleiben?…
Das würde ja eine Schleife produzieren - ist also nicht vorgesehen. Du könntest deinen Backup-Ordner ja als Unterordner deines Quellordners definieren.

… Ist es möglich, mehrere Tags zu kombinieren? Sprich: Wenn er das Wort "Rechnung" UND den Namen meines Arbeitgebers findet, dann bitte unter "Gehaltsabrechnung" speichern
Hab sonst nämlich das Problem, dass die Suche auch bei Rechnung matcht`…
Das geht derzeit nicht. Ich fände das auch sehr praktisch, allerdings habe ich noch keine userfreundliche Lösung gefunden. Ich hatte ja dazu bereits HIER was geschrieben.

… Wie kriege ich es hin, dass nur EIN Tag benutzt wird?…
Ich verstehe den Gedanken nicht ganz. Man müsste ja dazu eine Wertigkeit für die Tags festlegen … :confused:

… Wie kann ich die Raute aus dem Dateinamen entfernen?…
Die Möglichkeit kommt mit dem nächsten Update.

… Wie kann ich einen Zielordner für das Jahr angeben? …
Das ist derzeit noch nicht vorgesehen. Ich überlege mal, ob ich es mit auf die ToDo-Liste setze.

… Habe das bisher mit Powershell gescriptet, … Oder gibt es für die Synology auch irgendeine einfache Scripting Lösung?…
Dir steht alles mögliche zur Verfügung. Bash nativ, Perl, Python ect. per Paket.
 

D:VE

Benutzer
Mitglied seit
18. Jan 2018
Beiträge
10
Punkte für Reaktionen
0
Punkte
1
Das würde ja eine Schleife produzieren - ist also nicht vorgesehen.
Klar, ist das eine Schleife. Aber Du wirst doch eh in irgendeiner Form eine Schleife haben, um alle Dateien im Quellordner durchzugehen...
Gerade zum Testen der Scripte wäre das ungemein praktisch.

Das geht derzeit nicht. Ich fände das auch sehr praktisch, allerdings habe ich noch keine userfreundliche Lösung gefunden. [...]
Ich verstehe den Gedanken nicht ganz. Man müsste ja dazu eine Wertigkeit für die Tags festlegen

Naja, ich habe mehrere Kriterien bei mir
- Jahr (Ordner)
- Kategorie (Unterordner)
- Typ
- Dateiname


Jahr: Selbsterklärend
Kategorie ist bei mir sowas wie Job, Versicherung, Restaurants, Einkaufen etc,
Der Typ wäre dann Kassenbon, Rechnung, Mahnung, Schreiben
Der Dateiname enhält dann auch noch die ausstellende Institution sowie das Datum

Also:
/volume1/files/2018/Job/Gehaltsabrechnung (2018-01-31)
/volume1/files/2018/Versicherung/Basler Schreiben (2018-05-26)
/volume1/files/2018/Versicherung/ADAC Rechnung (2018-12-15)
/volume1/files/2018/Einkaufen/Lebensmittel/Lidl Kassenbon (2018-01-12)
/volume1/files/2018/Einkaufen/Lebensmittel/REWE Kassenbon (2018-02-02)


Gelöst habe ich das mit einer Excel-Tabelle mit drei Sheets (Kategorie, Typ, Filename).
Da gibt es je zwei Spalten: Eine Spalte mit Tags (die UND-Verknüpft sind und Wildcards erlauben) und eine mit dem resultierendem Keyword

Kategorie
Basler => Versicherung
Lidl => Einkaufen
Restaurant => Essen

Typ:
Lidl => Kassenbon
Sparkasse;Auszug => Kontoauszug

usw.
Momentan würde ich das erstmal alles als Tag generieren lassen und dann per Script nochmal separat auswerten.
Wäre natürlich cool, wenn sich das alles mit synOCR lösen ließe.

Achja... noch eine Frage: Wie stelle ich das aus, dass DS alle naselang piept, während die OCR durchläuft?

Gruß, Dave
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.517
Punkte für Reaktionen
1.354
Punkte
234
Klar, ist das eine Schleife. Aber Du wirst doch eh in irgendeiner Form eine Schleife haben, um alle Dateien im Quellordner durchzugehen …
Natürlich habe ich da eine Schleife, aber was bringt es, wenn abgearbeitete Dokumente in der Inbox blieben und so beim nächsten Durchlauf wieder abgearbeitet würden?

… Gerade zum Testen der Scripte wäre das ungemein praktisch …
Wenn du das Testen auf Userseite meinst, würde ich dir zum Testen ein entsprechendes Profil empfehlen.

… Naja, ich habe mehrere Kriterien bei mir
- Jahr (Ordner)
- Kategorie (Unterordner)
- Typ
- Dateiname

Also:

/volume1/files/2018/Einkaufen/Lebensmittel/Lidl Kassenbon (2018-01-12)

Momentan würde ich das erstmal alles als Tag generieren lassen und dann per Script nochmal separat auswerten.
Wäre natürlich cool, wenn sich das alles mit synOCR lösen ließe. …
So eine Ordnerverschachtelung wie in deinem Beispiel kann ich dir in naher Zukunft nicht anbieten. Mal sehen, wohin der weg uns mit synOCR führt …

… Achja... noch eine Frage: Wie stelle ich das aus, dass DS alle naselang piept, während die OCR durchläuft?…
Auf der Konfigurationseite im letzten Abschnitt "Systembenachrichtigung (Piep)"
 


 

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