Unscharfe Scans maschinell erkennen?

Wir prüfen die Scans von alten Digitalisierungsprojekten und von Scan-Dienstleistern bzgl. ihrer Schärfe derzeit oft recht aufwändig manuell. Gibt es hier denn leicht einsetzbare und evt. frei nutzbare Werkzeuge oder Skripte, die hier eine Hilfestellung geben können und evt. leicht in Goobi einbindbar sind? Wichtig ist uns hier vor allem, unscharfe Scans zu erkennen.
Viele Gruesse!
Michael Götze

1 „Gefällt mir“

Nur eine Idee: Könnte man die Erkennungsquote einer OCR als einen Anhaltspunkt nehmen? Natürlich wäre das nur ein Baustein in der automatisierten Prüfung.

@michael_zlb_berlin mir persönlich ist kein Tool bekannt mit dem die Unschärfe automatisch erkannt wird. Es scheint dafür aber Ansätze zu geben, zum Beispiel hier:

Allerdings müsste man sich das erst einmal genauer anschauen und dann natürlich implementieren.

@Schlueter_HAAB bei der OCR Qualität bin ich mir nicht so sicher. Es werden ja verschiedene Schritte in der Pipeline unternommen um solche Probleme zu umgehen.

Ich habe aber einen Punkt, der sich bei mir aus der initialen Fragestellung ergib. Die Schärfe der Scans wird oft manuell und dabei vor allem Zeitaufwendig geprüft. Auf Basis des imageQA Plugins kann ich mir vorstellen, dass bestimmte Dinge vereinfacht werden könnten. Zum Beispiel:

  • Zeige alle Bilder als Thumbnails an, damit ich nicht durch einen Paginator hüpfen muss
  • Zeige mir das Bild was ich anklicke groß in einem Overlay an
  • Zeige mir random 20 Bilder an, die ich mir genauer anschaue, onClick werden zufällig andere 20 ausgewählt.
  • Schreibe Korrekturmeldungen direkt aus dem Plugin heraus

Eventuell können mit diesen Gedanken und einer Umgestaltung des UI manuelle Arbeitsabläufe deutlich verbessert werden. Was meint Ihr?

@jan - Wir nutzen das imageQA Plugin bislang nicht, überlegen aber, es in den Workflow einzugliedern. Die Möglichkeit, Korrekturmeldungen direkt aus dem PlugIn heraus zu schreiben, fände ich sehr sinnvoll! Ist das imageQA Plugin ein TaskManager-Dienst?

Evt. wäre hier noch eine Anzeige günstig, die alle Bilder (oder viele auf einmal) in “Groß” anzeigt, so dass die Schärfe schnell erkannt werden kann im Scrollen. Ein Klick auf ein Thumbnail ist oft extra Zeit und eine Entscheidung mehr. Wir schauen morgen nochmal auf das Problem und melden uns dann nochmal!

Wäre es zur Kontrolle eines Dienstleisters nicht auch wichtig, die Vollständigkeit eines Digitalisates zu prüfen? Wir stellen fehlende Seiten oft erst im Rahmen der Metadatenerschließung fest.

Wir führen hier parallel zur Schärfekontrolle auch die Paginierung schon durch, dann fallen fehlende Seiten zumeist auf.

@michael_zlb_berlin Findet die Qualitätskontrolle also bei Euch im Metadateneditor statt?

Ja, wir nutzen das mit. Wir haben nicht so viele Kolleg_innen und sind da flexibel manchmal.

Ich finde die Antwort sehr spannend und finde, dass ernsthaft darüber diskutiert werden sollte zu ermöglichen die Paginierung und die Qualitätskontrolle gemeinsam “einfach” zu verbinden. Das hat in meinen Augen sehr viel Potential.

2 „Gefällt mir“

Wir machen die Vollständigkeitskontrolle ebenfalls im Metadateneditor. Die Bildqualität prüfen wir, bevor wir die Images in Goobi einstellen.

Interessant in dem Zusammenhang ist doch sicher auch https://de.slideshare.net/intranda/systematisches-monitoring-der-bildqualitat-mit-golden-thread-und-goobi ? Steffen und Elias hatten dazu doch bei den letzten Goobi-Tagen gesprochen.

ja genau, wollte ich auch spontan sagen. Aber die Bilder vom Dienstleister haben wohl keine Targets. Es würde bedingen, dass jede Seite mit einem Target aufgenommen würde. Das wäre eine recht radikale Umstellung und würde die Diskussion mit sich ziehen, die Steffen an den Goobitagen 2017 kurz angeschnitten hat, dass man Bilder nicht mehr cropped, sondern mit auszulesenden iiif Bildregionen taggt.
Eigentlich sollten unscharfe Bilder einen deutlich geringeren Kontrastwert haben. Florian kennt sich damit ja aus. Man misst zum Beispiel eine Linie, die diagonal übers Blatt verläuft.

2 „Gefällt mir“

Das klang interessant, also habe ich die im von Jan verlinkten Blog vorgeschlagene Methode in Java nachimplementiert. Es sieht auch ganz gut aus, zumindest bei meinen künstlich mit gaußschem Weichzeichner unscharf gemachten Bildern. Es gibt allerdings auch ein paar Problemfälle, wie leere Seiten, die zu false positives führen.
Das liegt daran, dass die vorgeschlagene Methode Kanten im Bild sucht und dann die Varianz im Kanten-Bild berechnet. Bei bedruckten Seiten funktioniert das gut, da es dort viele Kanten (Buchstaben) gibt - auf leeren Seiten natürlich nicht. Da wäre ein Target auf jedem Bild natürlich praktisch - dann würde man das erkennen und benutzen.

Ich habe das Ergebnis hierher hochgeladen - dann kann mit echten unscharfen Scans (die ich natürlich nirgends finden konnte) getestet werden:

https://files.opaetzel.de/blur-detection

Hinter dem Link verbirgt sich ein Java-Programm, das ganz ähnlich funktioniert wie Goobi2Go:
Herunterladen - ausführen - und dann kann im Browser die GUI geöffnet werden. Auf http://localhost:4567/ findet man diese. Dort können dann Bilder per drag-and-drop in eine Box geschoben werden - nach etwas Wartezeit gibt es dann Ergebnisse. Es kann auch ein Grenzwert gesetzt werden, nach dem die Bilder in gut und schlecht einsortiert werden.

Falls es jemand ausprobiert würde ich mich über ein Rückmeldung hier freuen.

2 „Gefällt mir“

:flushed::crazy_face::laughing:

Awesome!!!

Wir kontrollieren die Paginierung zusammen mit der stichprobenweise Schärfekontrolle im imageQA unmittelbar nach dem Datei-Upload. Gerne würden wir bereits hier bei Bedarf Seiten tauschen, löschen, nicht erst im Metadateneditor. Allerdings ist hier die Paginierungskontrolle etwas mühsam, wie oben für die Schärfekontrolle beschrieben.

1 „Gefällt mir“

…tauschen, löschen und einfügen. Und das so, dass sich die Sortierung am Dateinamen orientiert, und neue Dateien nicht ans Ende eines Vorganges geschoben werden.