-
Notifications
You must be signed in to change notification settings - Fork 4
Home
Welcome to the digi-gt wiki!
Die folgenden Hinweise beschreiben den Umgang mit Ergebnissen aus eScriptorium an der Universitätsbibliothek Mannheim.
Die in eScriptorium manuell erzeugten bzw. korrigierten Volltexte können von dort im PAGE XML-Format in einer ZIP-Datei exportiert werden.
Diese ZIP-Datei holt man z. B. mit wget
oder curl
und entpackt sie.
Die Namenskonvention für die einzelnen Dateien, die eCriptorium verwendet, entspricht nicht unserem gewünschten Namensschema, bei dem PAGE-Dateien den gleichen Basisnamen wie die zugehörigen Bilddateien haben sollen.
Deshalb ist eine Umbenennung notwendig:
# Leerzeilen entfernen.
perl -i -ne "tr|\r||d; next if /^\s*$/;print" *.xml
# PPN wählen (Beispiel, anzupassen).
ppn=477366015
# Dateien umbenennen.
for i in $(ls *.xml | sort -n | sed "s/_.*//"); do mv -v ${i}_*xml ${ppn}_$(printf %04u $(expr $i + 1)).xml; done
# Links zu Bilddateien korrigieren.
for f in *.xml; do i=$(echo $f|sed 's/.*_//'|sed s/.xml//); perl -pi -e "s,externalRef=.*jpg.,externalRef=\"https://digi.bib.uni-mannheim.de/fileadmin/digi/${ppn}/default/${ppn}_${i}.jpg\"," $f; done
# Namen der Bilddateien korrigieren.
for f in *.xml; do i=$(echo $f|sed 's/.*_//'|sed s/.xml//); perl -pi -e "s,imageFilename=.*jpg.,imageFilename=\"${ppn}_${i}.jpg\"," $f; done
Die in eScriptorium automatisiert erzeugten Volltexte können von dort im ALTO XML-Format in einer ZIP-Datei exportiert werden.
Diese ZIP-Datei holt man z. B. mit wget
oder curl
auf den Digitalisierungsserver und entpackt sie dort.
Alt Verzeichnisname wählen wir kraken
(für die OCR-Software, mit der die Volltexte erzeugt wurden).
Beispiel: https://digi.bib.uni-mannheim.de/fileadmin/digi/477366015/kraken/.
Ein eventuell bereits vorhandenes Verzeichnis alto
mit Volltexten von ABBYY Finereader verschieben wir nach abbyy/alto
.
Beispiel: https://digi.bib.uni-mannheim.de/fileadmin/digi/477366015/abbyy/alto/.
Jetzt kann ein neues Verzeichnis alto
angelegt und befüllt werden.
Wichtig ist auch, die ALTO-Dateien lesbar zu machen.
Außerdem entfernen wir überflüssige Leerzeilen in den ALTO-Dateien:
ppn=477366015
mkdir alto
cd alto
for i in $(ls ../kraken | sort -n | sed s/_.*//); do ln -svf ../kraken/${i}_*xml ${ppn}_$(printf %04u $(expr $i + 1)).xml; done
chmod +r ../kraken/*.xml
perl -i -ne "tr|\r||d; next if /^\s*$/;print" *.xml
Das Ergebnis ist dann mit den neu installierten Volltexten abrufbar, siehe Beispiel.
Wenn die Seiten eines Werks teilweise manuell transkribiert oder nachkorrigiert sind und für alle Seiten automatisiert erstellte Volltexte vorliegen, bietet es sich an, beides zu exportieren und für die Präsentation das jeweils bestmögliche Ergebnis zu verwenden. Es werden also zwei ZIP-Dateien mit Transkriptionen im ALTO XML-Format exportiert, einmal für "manual" und einmal für das ausgewählte OCR-Modell. Am einfachsten geht das, wenn man in beiden Fällen dabei alle Seiten auswählt. Dabei werden allerdings bei "manual" auch Seiten ohne manuelle Transkription exportiert. Diese müssen daher zuerst entfernt werden:
# PPN wählen (Beispiel, anzupassen).
ppn=477366015
# Erzeuge Verzeichnis für manuelle Transkriptionen.
mkdir gt
cd gt
# Fülle Verzeichnis mit den exportierten Daten (URL ist anzupassen).
wget URL
unzip *.zip
rm *.zip
# Entferne ALTO-XML-Dateien, die keine oder nur leere Texte enthalten.
rm -v $(grep -L 'CONTENT="..*"' *xml)
# Dateinamen anpassen.
for i in $(ls *_default.xml | sort -n | sed s/_.*//); do mv -v ${i}_*xml ${ppn}_$(printf %04u $(expr $i + 1)).xml; done
# Entferne Leerzeilen in den ALTO-XML-Dateien.
perl -i -ne "tr|\r||d; next if /^\s*$/;print" *.xml
# TODO: Korrigiere fileIdentifier in den ALTO-XML-Dateien.
chmod +r *.xml
cd ..
# Erzeuge Verzeichnis für Transkriptionen aus OCR.
mkdir kraken
cd kraken
# Fülle Verzeichnis mit den exportierten Daten (URL ist anzupassen).
wget URL
unzip *.zip
rm *.zip
# Dateinamen anpassen.
for i in $(ls *_default.xml | sort -n | sed s/_.*//); do mv -v ${i}_*xml ${ppn}_$(printf %04u $(expr $i + 1)).xml; done
# Entferne Leerzeilen in den ALTO-XML-Dateien.
perl -i -ne "tr|\r||d; next if /^\s*$/;print" *.xml
# TODO: Korrigiere fileIdentifier in den ALTO-XML-Dateien.
chmod +r *.xml
cd ..
# Führe GT und OCR-Ergebnisse für die Präsentation zusammen.
cd alto
ln -sv ../kraken/*.xml .
ln -svf ../gt/*.xml .