... | ... | @@ -6,25 +6,22 @@ Inhalt: |
|
|
|
|
|
# Zusammenstellen der Groundtruth #
|
|
|
|
|
|
Basierend auf der Übersicht (siehe [hier](Wappensupralibros-und-Machine-Learning/%C3%9Cbersicht-der-Wappentypen)) wird ein [Datenset für Training und Validierung](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/BE_GT.csv) zusammengestellt. Dabei werden die 4 folgenden Kategorien unterschieden, die Zahl in Klammern bezeichnet die Anzahl der Bilder in der jeweiligen Kategorie:
|
|
|
- Wappentypus A (121)
|
|
|
- Wappentypus B (200)
|
|
|
- Wappentypus C (47)
|
|
|
- Kein Wappen (473)
|
|
|
Basierend auf der Übersicht (siehe [Übersicht der Wappentypen](Wappensupralibros-und-Machine-Learning/%C3%9Cbersicht-der-Wappentypen)) wurden iterativ Datensets für Training und Validierung zusammengestellt: Zuerst [BE_GT.csv](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/BE_GT.csv), dann [BE_GT_v2.csv](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/BE_GT_v2.csv) und schließlich [BE_GT_v3.csv](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/BE_GT_v3.csv). Das letzte ist die aktuellste und umfangreichste Datenset. Es enthält Barcodes und den Wappentyp (falls vorhanden) auf den ersten fünf Seiten eines Digitalisats. Dabei werden die 4 folgenden Kategorien unterschieden, die Zahl in Klammern bezeichnet die Anzahl der Bilder in der jeweiligen Kategorie:
|
|
|
- Wappentyp A (200)
|
|
|
- Wappentyp B (234)
|
|
|
- Wappentyp C (200)
|
|
|
- Kein Wappen, Bezeichnung als Typ N (884)
|
|
|
|
|
|
Es konnten für den Wappentypus C nicht mehr als 47 Beispiele gefunden werden, optimal wären mehr als 100.
|
|
|
|
|
|
Zusätzlich wird ein weiteres Groundtruth Datenset erstellt, welches auf den selben Dateien basiert wie das erste, allerdings nur einen rechteckigen Ausschnitt der originalen Bilddateien beinhaltet. Die Wahl des Ausschnitts wurde durch eine statistische Analyse der bounding boxes (dt. Hüllkörper) um die Supralibros bestimmt. Dazu wurden manuell bounding boxes von 79 zufällig ausgewählten Einbänden mit Wappen (mit GIMP) abgemessen und deren Höhe und Breite aufgezeichnet, siehe [hier](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/bounding_boxes.csv) für die Rohdaten. Aus den Rohdaten wurden die normierte Höhe und Breite (relativ zur gesamten Höhe und Breite des Einbands) ermittelt. In der folgenden Grafik sind diese bounding boxes und ihre Mittelpunkte sowie das uniform für den Ausschnitt zu verwendende Rechteck aufgetragen:
|
|
|
Um die Wahl des Bildausschnitts zu verbessern (und so die Informationsdichte im Bild zu erhöhen) wurde eine statistische Analyse der bounding boxes (dt. Hüllkörper) um die Supralibros durchgeführt. Dazu wurden manuell bounding boxes von 79 zufällig ausgewählten Einbänden mit Wappen (mit GIMP) abgemessen und deren Höhe und Breite aufgezeichnet, siehe [hier](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Groundtruth/bounding_boxes.csv) für die Rohdaten. Aus den Rohdaten wurden die normierte Höhe und Breite (relativ zur gesamten Höhe und Breite des Einbands) ermittelt. In der folgenden Grafik sind diese bounding boxes und ihre Mittelpunkte sowie das uniform für den Ausschnitt zu verwendende Rechteck aufgetragen:
|
|
|
|
|
|
<div align="center">
|
|
|
|
|
|
<figure>
|
|
|
<img src="uploads/8c01e3068ba0e75cf3c6019009be73ba/bounding_boxes.png" width="450">
|
|
|
<figcaption>Abbildung 1: Ermittelte bounding boxes (in hellrot) um Wappen auf Einbänden aus dem Groundtruth Datenset, zusammen mit ihren Mittelpunkten (blaue Kreuze). Das in dunkelrot und fett eingezeichnete Rechteck wurde durch Mittelung über alle Mittelpunkte bestimmt (und ist sehr nah bei (0.5, 0.5) verortet). Seine Höhe (0.44) und Breite (0.54) ist das 97%-Quantil aller aufgezeichneten Höhen und Breiten. Das Seitenverhältnis der Grafik ist an das typische Seitenverhältnis 3:2 eines Einbands angelehnt.</figcaption>
|
|
|
</figure>
|
|
|
</div>
|
|
|
|
|
|
Die zwei so gebildeten Groundtruth Datensets können mittels des Skripts [download_groundtruth.py](https://labs.onb.ac.at/gitlab/bed/bed-general/-/blob/main/Skripte/download_groundtruth.py) heruntergeladen werden. Zusätzlich sollen die beiden Datensets durch *Augmentation* (zufälliges Rotieren, Verschieben, Zoomen) vor dem Training verbessert werden.
|
|
|
In der neuesten Version der Groundtruth-Daten wurde diese Analyse jedoch zugunsten eines quadratischen Ausschnitts aus der Bildmitte zurückgestellt. Dieser kann mit dem Regions-Parameter "square" über die IIIF-Schnittstelle bezogen werden (bis auf im Haus digitalisierte Einbände, bei denen das komplette Bild geladen werden und dann manuell ein quadratischer Ausschnitt gemacht werden muss).
|
|
|
|
|
|
# Auswahl des Modells und Training #
|
|
|
|
... | ... | @@ -33,8 +30,8 @@ Es soll ein CNN verwendet werden ähnlich zur vorigen Anwendung im [classifying- |
|
|
Es sollen zunächst zwei Netzwerke auf den Groundtruth Datensets trainiert werden. Die Datensets bestehen jeweils aus 841 Bildern, davon werden 673 für Training und 168 für Validierung verwendet. Siehe Abbildung 2 für einen Auszug von 20 Bildern der Trainingsdaten des ausgeschnittenen Datensets.
|
|
|
|
|
|
<figure>
|
|
|
<img src="uploads/training/bed_training_data_augmented.png">
|
|
|
<figcaption>Abbildung 2: Auszug der Trainingsdaten aus dem Groundtruth Datenset der ausgeschnittenen Bilder. Zur Verbesserung der Allgemeinheit der Daten wurden diese augmentiert mittels zufälliger Rotation, Zoom und Translation.</figcaption>
|
|
|
<img src="uploads/training/training_sample.png">
|
|
|
<figcaption>Abbildung 2: Auszug der Trainingsdaten aus dem Groundtruth Datenset der ausgeschnittenen Bilder. Zur Verbesserung der Allgemeinheit der Daten wurden diese über die Funktion AutoAugment zufällig verändert.</figcaption>
|
|
|
</figure>
|
|
|
|
|
|
## Details zum Netzwerk ##
|
... | ... | |