DocIndex ist der Stapelprozess, der zum Füttern von DOCMAG verwendet wird, ein Front-End an ElasticSearch, mit dem die serverseitige Suchen von Dokumenten einfach sein kann.
DocIndex kann direkt unter einem Betriebssystem ausgeführt werden. Es wird jedoch empfohlen, in einem Docker -Container ausgeführt zu werden. Der Container ist in docmag docker-compose.yml komponiert.
Normalerweise möchten Sie docidx nicht lokal erstellen und ausführen. Statt
Da Docidx stark auf Computer Vision und Bildverarbeitung angewiesen ist, werden Bindungen an native Bibliotheken stark verwendet. Verpackte Java -Verteilungen mit nativen Bibliotheken sind ein riesiger Schmerz im Hintern - weshalb die Docker -Container nutzen, um die Dinge standardmäßig zu versenden. Wenn Sie nur Docidx in Betrieb nehmen möchten, ist Docker der einfachste Weg, aber wenn Sie den Code optimieren und lokal ausführen möchten, müssen Sie durch einige Reifen springen, um die nativen Libs zu installieren.
docIdx verwendet Bindungen für native Bibliotheken von OpenCV und Tesseract. Die OpenCV-Bibliotheken sind besonders versionsensitiv. So installieren Sie die nativen Tessearact -Libriaries in macOS Sie können Homebrew verwenden, wie in:
brew install tesseract
Leider baut OpenCV 3.2 unter Homebrew nicht ordnungsgemäß. Für macOS muss OpenCV aus der Quelle erstellt werden. Dies kann mit:
wget https://github.com/opencv/opencv/archive/3.2.0.tar.gz
tar xzf 3.2.0.tar.gz
mkdir opencv-3.2.0/build
cd opencv-3.2.0/build
cmake .. -DBUILD_opencv_java=ON
make
make install
Linux -Verteilungen werden häufig mit Tesseract und OpenCV 3.2 geliefert, wie beispielsweise mit Ubuntu (Bionic):
apt-get install tesseract-ocr libopencv3.2-jni
Nachdem die nativen Bibliotheken installiert wurden, können das Erstellen und Test lokal mit Maven und Spring Stiefel durchgeführt werden:
mvn -DargLine="-Djava.library.path=/usr/local/share/OpenCV/java/" install
Wenn Sie auch eine lokale Elasticsearch- und Kibana -Instanz zum Testen ausfindig machen möchten, können Sie beide Docker -Konfigurationen in den tests/ Verzeichnissen bereitstellen:
cd tests
docker-compose up -d
Um in Ihren Dokumenten zu suchen, verwenden Sie DocMag unter https://github.com/deckerego/docmag
Sie können Elasticsearch auch direkt mit den Entwicklungswerkzeugen der API oder Kibana abfragen. Eine über die API gesendete Abfrage könnte sein:
GET /docidx/_search
{"query": { "simple_query_string" :
{ "query": "water bill" }
}}