Satria (Diskussion | Beiträge) K (→Tesseract OCR auf ZyXEL NAS) |
Satria (Diskussion | Beiträge) |
||
Zeile 53: | Zeile 53: | ||
Um eine Browserinstallation zu ermöglichen, muss noch die Datei | Um eine Browserinstallation zu ermöglichen, muss noch die Datei | ||
− | < | + | <span style="color:orange;">conf/ENABLE_INSTALL_TOOL</span> |
angelegt werden. | angelegt werden. | ||
Zeile 62: | Zeile 62: | ||
<span style="color:orange;"><nowiki>https://NAS:5001/MyWeb/dms/www/install/install.php</nowiki></span> | <span style="color:orange;"><nowiki>https://NAS:5001/MyWeb/dms/www/install/install.php</nowiki></span> | ||
− | == Tesseract OCR auf ZyXEL NAS == | + | == Tesseract OCR und ImageMagick auf ZyXEL NAS == |
− | Damit aus dem schönen Dokumentenmanagementsystem auch etwas richtig schickes wird, sollte man es um eine OCR (Optical Character Recognition) erweitern. Hierzu eignet sich das freie tool <span style="color:orange;">tesseract</span>. | + | Damit aus dem schönen Dokumentenmanagementsystem auch etwas richtig schickes wird, sollte man es um eine OCR (Optical Character Recognition) erweitern. Hierzu eignet sich das freie tool <span style="color:orange;">tesseract</span>. Es kann Texte aus Bilddateien herauslesen, die dann von SeedDMS in der Datenbank als Schlüsselbegriffe für die Volltextsuche gespeichert werden. PDFs müssen zuerst in eine Grafik umgewandelt werden, und können dann mit tesseract gescannt werden. Hierzu verwende ich <span style="color:orange;">ImageMagick</span>. |
− | + | Aber sowohl tesseract als auch ImageMagick müssen für das Linux auf dem NAS selber gebaut / kompiliert werden. Das Linux auf dem NAS eignet sich aber kaum dafür, da es nicht mal apt-get gibt und so die dependencies mühsam manuell installiert werden müssten. | |
− | + | === Raspberry Pi 3 === | |
+ | Ein <span style="color:orange;">Raspberry Pi 3</span> mit Raspbian eignet sich hervorragend zum Bauen der erforderlichen Komponenten, weil die Hardware ähnlich ist und die gebauten binaries auf dem NAS lauffähig sind! | ||
− | + | Man kann hier dieser [https://github.com/tesseract-ocr/tesseract/wiki/Compiling Anleitung] folgen. | |
− | sudo apt-get update | + | |
− | sudo apt-get install g++ # | + | Im Wesentlichen muss Folgendes passieren: |
− | sudo apt-get install autoconf automake libtool | + | # sudo apt-get update |
− | sudo apt-get install pkg-config | + | # sudo apt-get install g++ |
− | sudo apt-get install libpng-dev | + | # sudo apt-get install autoconf automake libtool |
− | sudo apt-get install libjpeg8-dev | + | # sudo apt-get install pkg-config |
− | sudo apt-get install libtiff5-dev | + | # sudo apt-get install libpng-dev |
− | sudo apt-get install zlib1g-dev | + | # sudo apt-get install libjpeg8-dev |
− | </ | + | # sudo apt-get install libtiff5-dev |
+ | # sudo apt-get install zlib1g-dev | ||
+ | # sudo apt-get install libleptonica-dev | ||
+ | # tesseract und ImageMagick sources holen und auf den Raspberry bringen. | ||
+ | |||
+ | Im tesseract Verzeichnis: | ||
+ | # ./autogen.sh | ||
+ | # ./configure --prefix=../tesseract-bin | ||
+ | # make | ||
+ | # make install | ||
+ | |||
+ | Das baut und installiert tesseract in das Verzeichnis <ins>tesseract-bin</ins>, damit wir es gesondert packen und wegholen können. | ||
+ | |||
+ | Beim Ausführen auf dem NAS merkt man jedoch, dass dort einige libraries fehlen. Also holen man sich diese noch dazu: | ||
+ | * liblept.so.5 | ||
+ | * libgomp.so.1 | ||
+ | * libc.so.6 | ||
+ | * libgif.so.7 | ||
+ | * libgomp.so.1 | ||
+ | * libjbig.so.0 | ||
+ | * libjpeg.so.62 | ||
+ | * liblept.so.5 | ||
+ | * liblzma.so.5 | ||
+ | * libopenjp2.so.7 | ||
+ | * libpng16.so.16 | ||
+ | * libpthread.so.0 | ||
+ | * libstdc++.so.6 | ||
+ | * libtiff.so.5 | ||
+ | * libwebp.so.6 | ||
+ | |||
+ | Jetzt kann man das TAR bauen: | ||
+ | <pre>tar -cvf tesseract-bundle.tar *</pre> | ||
=== ImageMagick === | === ImageMagick === |
Version vom 3. November 2019, 18:20 Uhr
Inhaltsverzeichnis
Was ist SeedDMS?
SeedDMS ist ein Dokumentenmanagementsystem mit Weboberfläche, basierend auf PHP und MySQL.
SeedDMS auf ZyXEL NAS
Gleich vorweg: Es gehört einiges dazu, SeedDMS auf dem Linux eines ZyXEL NAS laufen zu lassen! Aber der integrierte PHP-fähige Webserver kann dazu verwendet werden, mit SeedDMS ein Dokumentenmanagementsystem aufzusetzen, ohne Cloud und Internet, das - wenn man will - aber trotzdem von überall erreichbar ist.
Grundlagen
Web-Publishing mit HTTPS
Damit der integrierte Webserver Inhalte von Freigaben als Webinhalte darstellt, müssen wir das Web-Publishing aktivieren. Wer dabei eine erhöhte Sicherheit für seine Login-Daten haben möchte, aktiviert außerdem HTTPS.
Neue Freigabe mit Webfreigabe
Am besten ist es, man erstellt auf dem NAS eine eigene Freigabe, z.B. dms und gibt dem Benutzer die nötigen Berechtigungen, mit dem wir hier die Installation vornehmen wollen.
Bei dieser Freigabe muss die Webfreigabe aktiviert sein ('dms' auf Web veröffentlichen).
Damit nun aber nicht jeder den Verzeichnisinhalt dieser Freigabe sehen kann, erstellen wir darin eine Datei .htaccess mit dem Inhalt:
Options -Indexes
Jetzt landet man mit einem Browser unter https://NAS:5001/MyWeb/dms, kann aber nichts sehen, weil noch keine Startseite erstellt wurde.
Aktivierter SSH-Zugang
Wir kommen nicht umher, einige Dinge direkt auf dem Linux zu erledigen, und brauchen daher einen aktivierten SSH Zugang zum NAS und einen SSH-Client, wie z.B. PuTTY.
SeedDMS vorbereiten
Herunterladen und entpacken
SeedDMS ist frei verfügbar und kann hier heruntergeladen werden.
Im Prinzip muss es nur auf die dafür vorgesehene Freigabe (dms) entpackt werden. Am besten geht das, wenn man das .tar auf die Freigabe kopiert, und den Rest in der SSH Shell erledigt, weil dann die links erhalten bleiben, was wichtig ist!
Am Ende sollte das Ganze Paket ohne unnötige Unterordner auf der Freigabe liegen, so dass die Ordner wie 'data' und 'www' etc. direkte Unterordner der Freigabe sind.
tar -xvf seeddms-quickstart-5.1.12.tar
zum Entpacken und dann noch wie gewünscht verschieben:
mv seeddms51x/* .
PHP
SeedDMS ist der Meinung, es braucht PHP Version 5.6.38, aber auf meinem NAS mit PHP Version 5.5.22 läuft es auch, man muss sich nur durch die Installation mogeln ;)
Dazu wird folgende Datei verändert:
/inc/inc.ClassSettings.php
if (version_compare(PHP_VERSION, '5.6.38') < 0) {
austauschen gegen:
if (version_compare(PHP_VERSION, '5.5.22') < 0) {
MySQL
Es muss eine MySQL Datenbank bereitgestellt werden, auf die SeedDMS Zugriff erhält.
SeedDMS konfigurieren
Vor der Installation muss man die Datei /conf/settings.xml an die Gegebenheiten des NAS anpassen, was absolute Pfade auf dem Dateisystem (/i-data/...) und relative Pfade im Browser (/MyWeb/dms/...) angeht und auch die Benutzerdaten für die Datenbank.
Um eine Browserinstallation zu ermöglichen, muss noch die Datei
conf/ENABLE_INSTALL_TOOL
angelegt werden.
SeedDMS installieren
Jetzt kann man SeedDMS über den Browser installieren:
https://NAS:5001/MyWeb/dms/www/install/install.php
Tesseract OCR und ImageMagick auf ZyXEL NAS
Damit aus dem schönen Dokumentenmanagementsystem auch etwas richtig schickes wird, sollte man es um eine OCR (Optical Character Recognition) erweitern. Hierzu eignet sich das freie tool tesseract. Es kann Texte aus Bilddateien herauslesen, die dann von SeedDMS in der Datenbank als Schlüsselbegriffe für die Volltextsuche gespeichert werden. PDFs müssen zuerst in eine Grafik umgewandelt werden, und können dann mit tesseract gescannt werden. Hierzu verwende ich ImageMagick.
Aber sowohl tesseract als auch ImageMagick müssen für das Linux auf dem NAS selber gebaut / kompiliert werden. Das Linux auf dem NAS eignet sich aber kaum dafür, da es nicht mal apt-get gibt und so die dependencies mühsam manuell installiert werden müssten.
Raspberry Pi 3
Ein Raspberry Pi 3 mit Raspbian eignet sich hervorragend zum Bauen der erforderlichen Komponenten, weil die Hardware ähnlich ist und die gebauten binaries auf dem NAS lauffähig sind!
Man kann hier dieser Anleitung folgen.
Im Wesentlichen muss Folgendes passieren:
- sudo apt-get update
- sudo apt-get install g++
- sudo apt-get install autoconf automake libtool
- sudo apt-get install pkg-config
- sudo apt-get install libpng-dev
- sudo apt-get install libjpeg8-dev
- sudo apt-get install libtiff5-dev
- sudo apt-get install zlib1g-dev
- sudo apt-get install libleptonica-dev
- tesseract und ImageMagick sources holen und auf den Raspberry bringen.
Im tesseract Verzeichnis:
- ./autogen.sh
- ./configure --prefix=../tesseract-bin
- make
- make install
Das baut und installiert tesseract in das Verzeichnis tesseract-bin, damit wir es gesondert packen und wegholen können.
Beim Ausführen auf dem NAS merkt man jedoch, dass dort einige libraries fehlen. Also holen man sich diese noch dazu:
- liblept.so.5
- libgomp.so.1
- libc.so.6
- libgif.so.7
- libgomp.so.1
- libjbig.so.0
- libjpeg.so.62
- liblept.so.5
- liblzma.so.5
- libopenjp2.so.7
- libpng16.so.16
- libpthread.so.0
- libstdc++.so.6
- libtiff.so.5
- libwebp.so.6
Jetzt kann man das TAR bauen:
tar -cvf tesseract-bundle.tar *
ImageMagick
https://imagemagick.org/script/install-source.php
./configure --prefix=/home/pi/ImageMagick/ --with-tiff=yes