Blog Art1pirat

Blogeinträge

Emscriptify -- eine Hassliebe

Date: 2022-11-05 14:24:51 +0100

Orrr ne, bitte kein Windows Support! Immer wieder wurde an mich herangetragen, dass ich doch checkit_tiff für Windows bereitstellen möge. Mich nervt Windows und ich mag nicht Microsoft unterstützen. checkit_tiff ist ein freies Werkzeug und es sollte nicht in Käfigen gehalten werden. Im Ernst, Windows hat soviele Eigenheiten und man muss etliches an Sonderregeln implementieren, damit man das vernünftig kompiliert bekommt. Im Code von checkit_tiff gibt es auch genügend Hinweise, dass jeder, der mag sich das Programm für Windows kompilieren kann. Aber Support mag ich nicht auch noch anbieten. Wie auch immer, da draußen gibt es Menschen, die wollen checkit_tiff...

Brandgefährliche Technik

Date: 2021-11-27 19:45:00 +0100

Anbei das Steckernetzteil eines DVBSky USB S2 TV-Adapters nach dem Einstecken in eine Steckdosenleiste. Die Bilder sprechen für sich.    Das Netzteil ist angeblich CE geprüft.Wie man in den Bildern sieht, konnte der Netzspannung führende Stift ungeschützt und direkt auf den Kühlkörper treffen.Fehlerursache war die in der Mitte zwischen dem Stecker geführte Schraube, die in eine Plastehülse des äußeren Gehäuses führen sollte, dort aber ausgebrochen ist.Der Stick ist vermutlich ebenfalls hinüber, glücklicherweise kam es zu keinem Brand und der PC und die Sat-Anlage wurden nicht beschädigt.Dennoch, wie kann man so einen Murks fabrizieren? :(

Improve md5 calculation -- an unexpected journey

Date: 2019-11-13 15:45:00 +0100

In a project it was necessary to calculate the md5 checksums of files as fast as possible. Under Perl5 there is the module Digest::MD5.The suggested way to use this module is not the fastest. The reason is that the method addfile() does not use the buffer optimally. In the following I have tested all possible variants: the suggested addfile approach, the buffer optimized, the File::Map based and the system call to 'md5sum' variant:#!/usr/bin/env perl # bench to check how fast is memory mapped accessuse strict;use warnings;use utf8;use Benchmark qw(:all) ;use File::Map qw( map_file);use Digest::MD5;use File::Slurp;sub md5offile_mapped { my $fn =...

Asciiart via Perl komprimieren

Date: 2019-05-14 15:00:00 +0200

Als kleine Fingerübung habe ich ff. Perl-Script geschrieben, welches zur "Komprimierung" von AsciiArt verwendet werden kann.Sei die Vorlage: /| |\ , ( `-´ ) /( _\ /____ [] | >(__|9|_____) || )( | | ___ ___ || -==- | | / _ \/ _ \|| |8|| (_) |(_) || / \\___/\___(%%) ( ,-. ) |''| \| |/ |||| `--'So erzeugt das Script folgenden Perl-Code:#!/usr/bin/perluse v5.10;say ;say " "x12,"/| |\\";say " "x8,", ( `-´ )";say " "x7,"/( _\\ /","_"x4," "x6,"[]";say " "x6,"| >(__|9|","_"x5,")"," "x5,"||";say " "x7,")("," "x4,"| | ___ ___ ||";say " "x6,"-==- | | / _ \\/ _ \\||";say "...

Vim, Ersetzen von "foo" durch Dateinamen der zu bearbeitenden Datei

Date: 2018-05-28 13:29:00 +0200

Manchmal, zB. bei der Erstellung von C++-Klassen möchte man bestimmte Textstellen durch Texte ersetzen, die aus dem Dateinamen der Datei gewonnen werden.Will man zB. in der Datei "datei.txt" alle Vorkommen von "foo" durch "datei" ersetzen, gelingt dies in Vim im Kommandomodus so:%s/foo/\=expand('%:r:t')/Mit "\=" weist man Vim an, nicht direkt den Ersetzungstext zu verwenden, sondern ein Vim-Kommando auszuführen."expand" liest hier den Dateinamen aus "%" aus, wendet Prefix- und Suffix-Magie (":r:t") an und gibt den Ersetzungsstring zurück.

Geschafft!

Date: 2017-03-07 11:40:00 +0100

So, ich habe es geschafft. Meine Masterarbeit wurde nun endlich korrigiert und ich darf sie nun veröffentlichen:http://andreas-romeyke.de/bkm/Das Studium neben dem Beruf wäre nicht möglich gewesen ohne die großartige Unterstützung meiner Familie, aber auch meiner Kollegen von der SLUB. Inbesondere möchte ich meinem Kollegen Jörg danken, mit dem ich viele Gedanken austauschen konnte.Wer mehr über digitale Langzeitarchivierung von ihm und mir lesen möchte, der schaue mal bei Kulturreste vorbei. :)

Rezept, Testdaten 4k 16bit RGB für FFV1 v3 erzeugen

Date: 2017-02-16 17:29:00 +0100

Für Tests im Rahmen der digitalen Langzeitarchivierung von Videodaten benötige ich große Videofiles, um daran Validitätswerkzeuge und auch den Ingest zu überprüfen.Für die Langzeitarchivierung empfiehlt sich Matroska als Containerformat und FFV1 als verlustfreier Codec. Dieser wird aktuell durch die Cellar-Group bei der IETF standardisiert.FFV1 v3 kommt in der ffmpeg Version 3.2.4 mit 16-Bit Unterstützung.Mehr zu FFV1 v3 auch im Nachgang der "No Time to Wait"-Konferenz. Im Folgenden mein Script zur Generierung einer 1200s langen Videodatei. Diese enthält künstlich erzeugtes Rauschen um halbwegs die Realität widerzuspiegeln.Hier das Script:#!/bin/bash# erzeugt Video im MKV/FFV1v3 FormatDURATION=1200FRAMERATE=24THREADS=8PXFORMAT="rgb48le"FRAMESIZE="3840x2160"/tests/ffmpeg-3.2.4/ffmpeg \  -loglevel verbose \  -f lavfi \  -i...

Schicht's Kochbuch Bd. 1

Date: 2016-12-31 19:42:00 +0100

Dieser Tage hatte ich einen alten Artikel von mir gelesen, in dem ich aus "Schicht's Kochbuch" die Sachertorte vorgestellt habe.Das alte Heftchen ist mittlerweile in einem erbärmlichen Zustand. Es besteht aus Holzschliff und das Papier zerfällt langsam (mehr darüber in http://www.spektrum.de/magazin/gefaehrdung-restaurierung-und-konservierung-von-schriftgut/822535).Da ich über die Feiertage etwas Zeit hatte, habe ich mich hingesetzt und "Schicht's Kochbuch Bd. I" digitalisiert. Die Scandaten belegten ca. 1,2 GB.Für das Postprocessing habe ich wie schon beim Dschiu-dschitsu Projekt das Programm Scantailor verwendet.Die entstandenen TIFF-Seiten hatte ich diesmal doch via didjvu zu einem djvu-File konvertiert:$> didjvu bundle -o Schichts_Kochbuch_Bd1.djvu *.tifMit ocrodjvu habe ich dann noch den...

Hilfe, ich verstehe nicht in welcher Auflösung ich scannen muß!

Date: 2015-10-29 15:20:00 +0100

mindestens 2 Pixel Abstand zwischen Glyphen,aber auch mindestens 2 Pixel für dünneBestandteile eines GlyphenAllgemeinmit der Angabe dpi (dots per inch) definiert man die Auflösung eines digitalen Bildes. Man gibt an welcher Länge eine gewissen Anzahl von Pixeln eines Bildes entsprechen. In den Digitalisierungsrichtlinien zB. der DFG wird oft eine Auflösung von 300 dpi angegeben. Dies bezieht sich immer auf 1:1 Vorlagen, sprich, wenn Original und (digitale) Reproduktion die gleiche Größe besitzen. 300pi sind dann ein guter Kompromiß zwischen Dateigröße und Schärfegrad, bzw Nicht-mehr-Pixeligkeit beim 1:1 Druck.Die Auflösung ist daher auch ein Maß der Ortsfrequenz des digitalen Bildes. Die Wahl der...

Dschiu-Dschitsu

Date: 2015-10-18 15:48:00 +0200

Das nebenstehende Büchlein hatte ich vor ein paar Wochen auf dem Flohmarkt erstanden.Unter der Adresse http://andreas-romeyke.de/Dschiudschitsu.djvu habe ich die digitalisierte Datei als DJVu frei zur Verfügung gestellt (einen Urheberrechtsvermerk konnte ich bei der DNB nicht finden, IMHO sollte es mittlerweile gemeinfrei sein)Das Büchlein wurde mittels xsane gescannt, dann mit tiff2pdf, pdf2djvu in ein DJVu konvertiert.Mit didjvu würde man bessere Ergebnisse erzielen, leider erzeugt das Programm zZ. aber invertierte Seiten, wenn man es mit monochromen TIFFs füttert.Die OCR erfolgte über ocrodjvu unter Zuhilfenahme von tesseract 3.03 und "-l deu-frak". Ein Postprocessing erfolgte nicht, einzig die Überschriften und Bildunterschriften wurden manuell mit...

Der Mythos Audio in Digitalisierungsempfehlungen

Date: 2015-10-12 11:53:00 +0200

Das ProblemIch arbeite im Bereich der digitalen Langzeitarchivierung und bei den Diskussionen, in welcher Form wir Filmmaterial (zB. 16mm Lichtton) haben wollen, bekomme ich immer wieder Digitalisierungsempfehlungen  um die Ohren gehauen, die mir als Informatiker mit nachrichtentechnischem Hintergrund nicht einleuchten.Für Bildmaterial gibt Kodak an, daß man in 3600dpi scannen sollte, damit man die höchste Ortsfrequenz, die der Film auflöst noch erfasst hat. Das ist für mich einsichtig.Jetzt wird es kurios. Nach einigen Recherchen beträgt die Bandbreite für Ton auf 16mm Film in Lichttontechnik nur 5kHz. Nach Shannon-Niquist reicht es also den Ton mit 10kHz zu digitalisieren, gehen wir auf nächsthöhere...

Perl RegEx mit variable length look-behind um Römische Zahlen in Text bedingt zu ersetzen

Date: 2014-12-17 15:33:00 +0100

Quelle: Wikimedia, Lizenznachweis sh. Link BildDas Problem In einem Text sollen Römische Zahlen durch die selbstdefinierte Asciidoc-Notation roman::number[] ausgezeichnet werden. Asciidoc erlaubt zur Zeit allerdings nicht weitere Markups innerhalb einer Bildauszeichnung.Sprich:.Konrad roman::number[I]. von Wettin. Luitgard, Konrads roman::number[I]. Gemahlin.[caption=""]image:img/011_Konrad_Luitgard.svg[Konrad I. von Wettin. Luitgard, Konrads I. Gemahlin.]funktioniert, aber.Konrad roman::number[I]. von Wettin. Luitgard, Konrads roman::number[I]. Gemahlin.[caption=""]image:img/011_Konrad_Luitgard.svg[Konrad roman::number[I]. von Wettin. Luitgard, Konrads roman::number[I]. Gemahlin.]nicht, da in Asciidoc Tags der Form image:foo.png[baz] innerhalb von baz keine anderen asciidoc-Tags enthalten darf.Römische Zahlen findenWenn wir nach römischen Zahlen suchen, könnten wir Reguläre Ausdrücke (RegEx) benutzen. In Perl sähe eine RegEx dann beispielsweise so aus:my $roman_number = qr{(...

Seitenfehler im Ebookreader PRS300 von Sony

Date: 2014-12-09 17:09:00 +0100

Lange hatte ich mich gewundert. In meinem Projekt ›Bunte Bilder aus dem Sachſenlande« hatte ich etliche Mühen auf mich genommen, um möglichst exzellente Grafiken aus der Originalvorlage zu erzeugen und diese als SVG bereitzustellen, damit die Ebookreader diese Vektorgrafiken auf ihre bevorzugte Auflösung rendern können.Das Programm epubcheck meldete keinerlei Fehler mehr und auf den diversen Ebookreadern auf meinem PC wurde das Epub2 soweit korrekt angezeigt.Nur einzig und allein auf meinem Sony PRS300 hatte ich ein komisches Verhalten. Das Inhaltsverzeichnis wurde geladen und angezeigt. Doch sobald ich auf eine Seite ging, kam das Symbol "Seitenfehler". Wenn ich zwischendurch auf ein anderes...

Sachertorte

Date: 2014-12-02 13:32:00 +0100

Es ist Weihnachtszeit und da der letzte Beitrag etwas her ist, gibt es heute ein Rezept aus „Schicht's Kochbuch – ausgewählte Rezepte“Das Buch ist eigentlich eines von drei Heftchen, hier aus dem 1. Band, Mehlspeisen, im Druck von A. Haase, Prag. Die DNB verzeichnet als Erscheinungsjahr 1928-1931 (http://d-nb.info/56088897X).Charakteristisch ist die minimalistische Darstellung der Rezepte.Hier das Rezept für Sachertorte aus Seite 38b:Das Rezept in maschinenlesbarer Form:Sacher-Torte.Zutaten: 16 dkg Visan, 15 dkg Zucker, 8 dkg Kakao, 6 Eier, 15 dkgMehl, Sacherbuttercreme (siehe Creme), Schokoladenfondant (siehe Fondant).Zub ereitung; DasVisan wird mit dem Zucker schaumig gemischt,die Eidotter nach und nach dazugegeben, dann den Kakao...

SVG 1.0 nach SVG 1.1

Date: 2014-11-01 19:18:00 +0100

Da EPUB 2.0 auf SVG 1.1 referenziert, sollten wir auch SVGs in der erwarteten Version erzeugen. Auf das Problem bin ich gestoßen, als ich für das »Bunte Bilder aus dem Sachſenlande« - Projekt mal den epubcheck aufgerufen hatten und ff. Meldungen bekam:$> epubcheck bunte_bilder.epub Validating against EPUB version 2.0 - custom validationValidating using EPUB version 2.0 rules.ERROR(RSC-005): bunte_bilder.epub/OEBPS/img/003_Wappen.svg(6,38): Error while parsing file 'value of attribute "version" is invalid; must be equal to "1.1"'.Abhilfe schafft ff. Aufruf von inkscape:$> inkscape -z -E=tmp.eps svg1.0.svg$> inkscape -z -l=svg1.1.svg tmp.epsDie Zweiteilung mit Umweg über EPS ist notwendig, weil inkscape SVGs dann nicht in neue...

tiff Reparatur - Helferlein

Date: 2014-06-13 17:16:00 +0200

In einem früheren Beitrag »baseline TIFF« hatte ich den Aufbau von TIFFs beschrieben. Eines der häufigsten Probleme, die bei der Validierung von TIFFs auftauchen, sind falsche Datum-Zeichenketten im datetime-Tag.Unter https://github.com/SLUB-digitalpreservation/fixit_tiff findet ihr ein Werkzeug, welches diese Art der Probleme versucht zu beheben.Zur Zeit werden die folgenden falschen Datums-Zeichenketten erkannt und korrigiert:'18.03.2010 09:59:17' => '2010:03:18 09:59:17''2010-03-18 09:59:17' => '2010:03:18 09:59:17'Das datetime-Tag ist laut Standard spezifiert als folgende Zeichenkette: 'YYYY:MM:DD hh:mm:ss' wobeiYYYY dem vierstelligen Jahr,MM dem MonatDD dem Taghh den Stundenmm den Minutenss den Sekundenentspricht und ggf. führende Nullen gesetzt werden. Das Tool kann auch alle Tags, die nicht zum baseline Profil...

Exportieren lokales subversion repository nach github

Date: 2014-06-06 17:47:00 +0200

Warum?Da ich intern bisher auf subversion entwickle, Code aber auf GitHub stellen möchte, brauche ich eine¹ Möglichkeit diese Projekte möglichst kompatibel nach git zu exportieren. git-svn erlaubt diese Nutzung und erhält die Versionshistorie. Eine Re-Integration nach subversion ist ebenfalls möglich.Die Infos stammen zum Teil aus Tutorial zu git-svn unter http://viget.com/extend/effectively-using-git-with-subversion.Eine kleine, nette Einführung zu git gibt es unter http://rogerdudler.github.io/git-guide/index.de.html¹ Erm, ja. Github kann auch via subversion Repositories verwalten. Allerdings müsste man dann das Projekt komplett dort hosten. Die obige Lösung umgeht dies.git-svn installierengit-svn ist unter Debian im gleichnamigen Paket zu finden und mittels$> aptitude install git-svnzu installieren.Es ist ratsam vor...

Silbentrennung für Ebooks

Date: 2014-03-29 19:19:00 +0100

Soft-Hyphen Keyboard SymbolQuelle: Wikipedia, CC0Ja, der Titel ist geklaut. Vor ca. zwei Wochen war ich wieder einmal auf den Chemnitzer Linuxtagen und bin dort auf den Vortrag von Georg Pfeiffer »Perfekte Silbentrennung in E-Books mit präreformatorischen Texten« gestoßen.Da ich ja ua. die »Bunte Bilder aus dem Sachſenlande« als E-Book aufbereite, benötige ich für meine Texte ebenfalls eine "perfekte" Silbentrennung. Georg hat in seinem Vortrag auf das Projekt »Trennmuster« der TeX-Leute hingewiesen. Das hat mich neugierig gemacht.Nach dem Herunterladen des Projektes (was sehr lange dauert, da die Wortlisten knapp 15MB groß sind) mittels$> git clone git://repo.or.cz/wortliste.gitfindet man die Trennmuster in den...

Und die Bilder?

Date: 2014-01-31 23:14:00 +0100

Das Buch „Bunte Bilder aus dem Sachſenlande“ habe ich nun soweit vollkorrigiert und bin gerade dabei alles zusammenzustellen, damit in der nächsten Stufe über asciidoc, docbook-xml ein EPub oder LaTeX Dokument erstellt werden kann.Zurzeit bin ich noch am überlegen, wie ich mit Bildern umgehe. Verwende ich die Bilder direkt aus dem Original? Oder bearbeite ich diese nach und monochromisiere sie? Stelle ich sie frei? Verwende ich PNG oder vectorisiere ich die Bilder um diese dann als SVG abzuspeichern?Königin Carola von Sachſen,Protektorin des Peſtalozzi-VereinsIch bin mir hierbei noch nicht sicher. Habt ihr Vorschläge?

Was Training so ausmacht

Date: 2013-12-25 10:30:00 +0100

Bin dank Clemens Neudecker auf das im Rahmen des succeed Projektes entwickelte Tool ocrevalUAtion gestoßen. Damit kann man seine OCR-Ergebnisse mit dem Original vergleichen und bekommt eine Übersicht über die typischen OCR-Fehler.Ich habe mal eine Seite aus Bunte Bilder aus dem Sachſenlande genommen und hier sind die Werte für untrainiertes Tesseract 3.02.03 mit dem mitgelieferten "deu-frak":CER7,74CER-DL7,74WER27,65WER (bag of words)27,43 Dabei bedeutet CER: Character error rate, CER-DL: Character error rate nach Damerau-Levenshtein und WER: Word error rate.Hier sind also nur knapp 92% aller Zeichen richtig und gar nur 72% aller Wörter.Nun die im Laufe des Bunte Bilder Projektes auf den Buchtitel trainierte...

Holzweibchen – Sage aus dem Vogtlande

Date: 2013-12-22 18:53:00 +0100

Nach längerer Zeit will ich mit der Sage „Holzweibchen“ von Karl Völkel (1869-1934) die Wartezeit etwas verkürzen. Sie stammt in der Fassung aus „Bunte Bilder aus dem Sachſenlande“ (Bd. I, 1902, Neunte Auflage, S.303), welches ich immer noch korrigiere.Holzweibchen.Sage aus dem Vogtlande.Es ſtand eine Mühl’ im Elſtergrund,Ein ſtattliches Gebäude;Mit dem ſich keins vergleichen kunnt’Wohl in der Näh’ und Weite.Drin hauſt ein wackeres Geſchlecht;Kein Schimpfwort durften Magd und Knecht,Kein Fluchwort je gebrauchen.Da ſtund die Wirtſchaft o, ſo blank,Als hätt’ es Glück geregnet! —Die Müllersleute wußten’s DankDem Herrn, der Fromme ſegnet;Die Nachbarn aber um ſie herErzählten ſich die ſelt’ne Mär:Holzweibchen ſein’s, die...

Schnell mal Zeilen zusammenziehen

Date: 2013-10-19 17:38:00 +0200

Heute bekam ich eine Email mit der Bitte zu erklären, wie man aus den Textdateien die Zeilen mit den Wortumbrüchen zusammenziehen kann.Sprich, wenn ich eine Textdatei foo.txt habe, die so aussieht:halli-hallowasserbadsollen "halli-" und "hallo" zusammengezogen werden zu "hallihallo".Hier ein Beispiel mit sed:$> cat foo.txt | sed -e "N; s/-\n//g" > bar.txtDas Ergebnis ist die Textdatei bar.txt:hallihallowasserbad

Leipzig, Augustusplatz (Anfang 19. Jahrhundert)

Date: 2013-09-15 20:13:00 +0200

Augustusplatz, Leipzig, aus »Bunte Bilder aus dem Sachsenlande«, Bd. I, 1902, Neunte Auflage, S.173

baseline TIFF – Versuch einer Rekonstruktion, Teil1

Date: 2013-08-27 13:55:00 +0200

VorwortIm Artikel »baseline TIFF« bin ich auf den Aufbau des TIFF-Formates eingegangen. Um die Eignung von TIFF-Dateien als Bildformat für die Langzeitverfügbarkeit (bzw. Langzeitarchivierung) zu testen, habe ich das Bild aus dem Beitrag genommen, leicht geändert und mit einem Fuzzing-Tool bitweise zerstört.Als Werkzeug habe ich zzuf genutzt, welches ich angewiesen habe, 1‰ aller Bits des Original-Bildes zufällig zu verändern.$> zzuf -c -s87423 -r0.001 <example_tiff.tiff >fuzzy-0.001.tiff$> display fuzzy-0.001.tiff display.im6: fuzzy-0.001.tiff: invalid TIFF directory; tags are not sorted in ascending order. `TIFFReadDirectory' @ warning/tiff.c/TIFFWarnings/768.display.im6: fuzzy-0.001.tiff: unknown field with tag 275 (0x113) encountered. `TIFFReadDirectory' @ warning/tiff.c/TIFFWarnings/768.display.im6: fuzzy-0.001.tiff: unknown field with tag 16663 (0x4117) encountered....

Helferlein Postkorrektur von 'Und'

Date: 2013-08-11 12:00:00 +0200

Mithilfe eines Scriptes, welches eigentlich Worttrennungen aufsammeln sollte habe ich festgestellt, daß in den schon korrigierten Texten ab und an das Wort 'und' mitten im Satz groß geschrieben war, zB.: 'Der Müller Und sein Sohn…'.Eigentlich sollte ja, wie in meinem Beitrag "Erkennung von OCR- und Tippfehlern in Textdateien" beschrieben, die Verwendung von DPCustomMono2 solche Fehler bei der Korrektur sichtbar machen. Hat leider in diesem Beispiel nicht gut nicht funktioniert…Da die korrigierten Texte aber Basis für ein Wörterbuch für Tesseract sind, kam es durch die gehäufte Verwendung von 'Und' zu einer sich selbstverstärkenden Schleife, die in neuen OCR-Texten immer öfter das...

baseline TIFF

Date: 2013-07-31 19:45:00 +0200

Da gerade im Umfeld von OCR Projekten oft TIFF eingesetzt wird, kaum aber einer weiß, was die Besonderheiten des Bildformates sind, habe ich mich entschlossen in diesem Post die Grundlagen kurz vorzustellen.Es hat sich für mich bewährt, Protokolle oder Dateiformate von Hand auseinanderzunehmen. So habe ich ein baseline TIFF erzeugt, welches im folgenden als Beispiel dienen soll. Die Datei ist 20x10 Pixel groß, s/w und gut geeignet die Besonderheiten kennenzulernen.Beispiel-TIFF (hier als PNG)Kurzinfo zu 'Tagged Image File Format' (TIFF)Magic Byte"II" (little-endian): 0x49492a00"MM" (big-endian): 0x4d4d002aDateiendung .TIF bzw. .TIFFMimeType image/tiffSpezifikationftp://ftp.adobe.com/pub/adobe/devrelations/devtechnotes/pdffiles/tiff6.pdf bzw. http://partners.adobe.com/public/developer/tiff/index.htmlGeschichteUrsprünglich entwickelt von Aldus und Microsoft. 1994 wurde Aldus von Adobe übernommen.Die aktuelle...

Der Goldkeller auf dem Löbauer Berge.

Date: 2013-07-21 12:41:00 +0200

Wieder ein kleines Schätzchen aus dem »Bunte Bilder aus dem Sachsenlande« (Bd. I, 1902, Neunte Auflage, S.148). Wer den "Goldkeller" besuchen will, findet hier weitere Infos. PS.: Wer Infos zum Autor Ernst Linke hat, melde sich bitte bei mir! Danke :)Der Goldkeller auf dem Löbauer Berge.Eine Sage.Auf Löbaus Bergeswarte,Dem ſteilen Gipfel nah,Gewahrt ein ſpähend Auge,Was nirgends ſonſt es ſah.Am Sankt-Johannistage,Wenn lau die Lüfte wehn,Beim zwölften GlockenſchlageKann man dies Wunder ſehn:„Es weitet ſich zum KellerEin enger Felſenſchacht,Draus ſtrahlt im ZauberglanzeGlutroten Goldes Pracht.Doch heller als des SchatzesVerlockend Schimmern dortErglühn die FlammenaugenDes Wächters bei dem Ort.Enteil’ dem Goldeskeller,Wenn Habſucht dich bethört;Doch wenn du reinen...

Lehrbeispiel Handschrift um 1900

Date: 2013-07-01 22:09:00 +0200

Beim Durchblättern meines nächsten Schatzes, demUniverſum des WiſſensEin Lehrbuch und Nachſchlagewerk für Jedermann zur Weiterbildung in den wichtigſten allgemeinen und praktiſchen Wiſſenszweigen und Sprachen.Ein Belehrungsſchatz und Ratgeber in allen Angelegenheiten des täglichen Lebens. Verlag von F.E. Bilz, G. m. b. H., Dresden-Radebeul und Leipzig, als Lehrbeispiel für Handschrift entdeckt.Das Buch ist von 1892-1895 und leider in schlechtem Zustand. Nun, vielleicht komme ich Ende des Jahres dazu die Bände zu digitalisieren und vlt. auch restaurieren zu lassen.

Binarisierung

Date: 2013-06-25 23:56:00 +0200

VorwortMit der Binarisierung ist das Überführen eines Farb- oder Graustufenbildes in eine monochrome, dh. nur schwarze oder weiße Pixel enthaltene Dartsellung.Gescannte Vorlagen binarisiert man aus zwei Gründen, zum einen sparen monochrome Bilder Speicherplatz, zum anderen soll mit der Binarisierung versucht werden, den Kontrast der Scanvorlagen so zu erhöhen, daß eine eindeutige Zuordnung zwischen Vordergrund und Hintergrund möglich ist.Schwierig bis unsinnig ist die Binarisierung dann, wenn man mehrfarbige Schrift ev. sogar auf mehrfarbige Hintergründe hat. Auf dieses Problem gehe ich in einem zukünftigen Beitrag ein. Nicht sinnvoll ist Binarisierung von Photos (abgesehen von einer künstlerisch gewollten Gestaltung).Schwellwert-VarianteDas einfachste Verfahren ist das...

Die Festung Königstein

Date: 2013-06-17 22:49:00 +0200

Nach längerer Zeit mal wieder ein Text von Alfred Leuschke (1845–1932, Oberlehrer und Vorsitzender des Dresdner Lehrervereins), der im Rahmen meines Projektes »Bunte Bilder aus dem Sachsenlande«  (Bd. I, 1902, Neunte Auflage, S.112–116) fertig korrigiert wurde.Die Feſtung Königſtein.Einer der intereſſanteſten Gipfel der Felſenwelt der ſächſiſchen Schweiz iſt der Königſtein, zugleich auch eine der berühmteſten und merkwürdigſten Berg-feſtungen Deutſchlands. Beſpült an ſeinem Fuße von den Fluten des lieblichen Elbſtroms, liegt der Königſtein, ein freiſtehender Felskegel, gegenüber ſeinem auf der rechten Seite der Elbe aus dem Thale mächtig emporſteigenden Zwillings–bruder, dem durch kühne, hochaufſtrebende Formen ſich auszeichnenden Lilienſtein.Schon aus weiter Ferne durch die weißſchimmernden...

Teil 9, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande", Verbesserung Tesseracts Erkennungsrate

Date: 2013-06-05 22:52:00 +0200

Im letzten Blogpost "OCR Qualität bestimmen" habe ich grob beschrieben, wie man beurteilen kann, wie gut die Erkennungsqualität der verschiedenen OCR-Engines ist.Als Maß hatte ich dort die Worterkennungsrate verwendet, da diese im Vergleich zur Zeichenerkennungsrate genauer ist. Gerade bei Verfahren, die intern Wörterbücher verwenden, kann die Zeichenerkennungsrate hoch sein, der Text bleibt dennoch unleserlich.Um die Erkennungsqualität von Tesseract 3.02 zu verbessern habe ich mir die Beschreibung der Konfigurationsoptionen unter http://www.sk-spell.sk.cx/tesseract-ocr-parameters-in-302-version angeschaut.Folgende Werte hatte ich bisher in der Datei deu-frak.config stehen:enable_new_segsearch 1textord_space_size_is_variable 1load_bigram_dawg 1Die Worterkennungsrate betrug damit 86% (die Diskrepanz zum Wert 60% aus Blogpost rührt daher, daß die Wörter der...

OCR Qualität bestimmen

Date: 2013-06-05 16:54:00 +0200

wdiffMit 'wdiff' habe ich nun mal den Vergleich gemacht zwischen trainiertem Tesseract, trainiertem Ocropus, und Tesseract in Standardauslieferung mit Deutsch (deu).Dazu habe ich eine Seite als Vergleich herangezogen, die ich schon in http://art1pirat.blogspot.de/2013/01/teil-8-selbstversuch-ebook-befreiung-am.html voll korrigiert hatte.Der Aufruf sieht so aus: "wdiff -s $CORRECT $OCRED | tail -1"ErgebnisseTesseract (trainiert)img110_tesseract.txt: 322 Wörter  193 60% gleich  0 0% eingefügt  129 40% verändertTesseract (deu)img110_tesseract.txt: 322 Wörter  62 19% gleich  0 0% eingefügt  260 81% verändertOcropus 0.7 (trainiert)img110_ocropus.txt: 419 Wörter  108 26% gleich  0 0% eingefügt  311 74% verändertFazitWie man sieht, Training lohnt sich. ;)  Ocropus 0.7 stürzt beim Training (sh. http://art1pirat.blogspot.de/2013/05/ocropus-07-training.html) ab, ich habe...

Ocropus 0.7 – Training

Date: 2013-05-21 23:53:00 +0200

Trainingsausgabe Ocropus 0.7Im letzten Beitrag hatte ich einen ersten Vergleich zwischen Ocropus 0.7 und Tesseract 3.02 gezogen. Da leider die mitgelieferten Dateien für Fraktur keine Unterstützung für das lange-S beinhalten, muß ich Ocropus selber trainieren.Unterschied Tesseract- und Ocropus TrainingsdatenLeider hat sich bei Ocropus 0.7 der Trainingsmodus geändert. Um die gleichen Dateien, wie Tesseract 3.02 zu verwenden, habe ich ein Script geschrieben, welches die Tesseract-Boxfiles und zugehörige TIFF-Dateien so umwandelt, daß die von Ocropus erwarteten zeilenbasierten PNG-Dateien mit zugehörigen Text-Dateien erzeugt werden.Aus dem tess_train Verzeichnis:tess_train├── bigram_words├── deu-frak.bigram-dawg├── deu-frak.config├── deu-frak.frak2.exp0.box├── deu-frak.frak2.exp0.tif├── deu-frak.frak2.exp0.tr├── deu-frak.frak2.exp0.txt:├── deu-frak.frak2.exp9.box├── deu-frak.frak2.exp9.tif├── deu-frak.frak2.exp9.tr├── deu-frak.frak2.exp9.txt├── deu-frak.freq-dawg├── deu-frak.inttemp├── deu-frak.normproto├── deu-frak.number-dawg├── deu-frak.pffmtable├──...

Ocropus 0.7, erste Tests

Date: 2013-04-21 13:47:00 +0200

S.99 der »Bunte Bilder aus dem Sachsenlande«, Band1, 1902, selbstgescanntIm April ist Ocropus in der Version 0.7 erschienen und dies war eine gute Gelegenheit zu schauen, wie gut es mit der Erkennungsqualität gegenüber dem trainierten Tesseract 3.02 aussieht.InstallationDie Installation ist auf der Webseite gut beschrieben und hat diesmal auch unter Debian Wheezy funktioniert:    $ hg clone -r ocropus-0.7 https://code.google.com/p/ocropus    $ cd ocropus/ocropy    $ sudo apt-get install $(cat PACKAGES)    $ python setup.py download_models    $ sudo python setup.py install    $ ./run-test TestAls Test habe ich die Seite 99 der »Bunte Bilder aus dem Sachsenlande« genommen, die oben zu...

König Johann in der Schule

Date: 2013-03-15 21:08:00 +0100

VorwortDas Gedicht fiel mir beim Korrigieren (ja, ich habe erst 64 von 400 Seiten fertig korrigiert, mühsam ernährt sich das Eichhörnchen) der weiteren Seiten des Buches »Bunte Bilder aus dem Sachsenlande« (Bd. I, 1902, Neunte Auflage, S.63/64) in die Hände. Man stelle sich heute mal vor, daß der Ministerpräsident noch so handeln würde (bzw. dürfte). :)König Johann in der SchuleWar einſt ein Herr in Sachſenland,Schier einem jeden Kind bekannt,Der ging aus ſeiner Väter Schloß,Zu ſehen, was wohl klein und großIn ſeinen Schulen Rechtes trieb;Und weil er hatt’ die Kindlein lieb,Trat oft er zu der Schülerſchar,Bot ſeinen Fürſtengruß ihr darUnd ließ...

Scan Postprocessing, eine Notiz

Date: 2013-02-06 11:28:00 +0100

Bei Heise bin ich über die Software Scan Tailor gestolpert. In Kürze folgt hier ein Erfahrungsbericht, ob sich mit der Software die OCR-Ergebnisse meines Projektes »Bunte Bilder aus dem Sachsenlande« signifikant verbessern lassen.Die Software ermöglicht Dewarping, Deskewing und bietet eine visuelle Kontrolle.Zur Installation unter Debian reicht es, das Tar-Ball von der Webseite zu laden und mittar xfz scantailor-0.9.11.1.tar.gz auszupacken.Mitcmake -G "Unix Makefiles"makesudo checkinstallläßt sich ScanTailor auf dem Debian System problemlos installieren.Der Artikel bei Heise bietet noch ein paar mehr Hintergrundinformationen Mehr demnächst.

Meißen, die alte Markgrafenstadt

Date: 2013-01-21 22:52:00 +0100

VorwortDer folgende Artikel ist eine Faksimilie aus »Bunte Bilder aus dem Sachsenlande« Bd. I, Leipzig, 1902, im Original verfasst von E. Rasche.Meißen, die alte Markgrafenſtadt.Meißen, die altehrwürdige Markgrafenſtadt, am ſtolzen Elbſtrom, in lieb-licher, reich geſegneter Landſchaft gelegen, berühmt durch ſeine prächtige Albrechts-burg, durch ſeinen altersgrauen Dom und durch ſeine altehrwürdige Fürſtenſchule,nicht minder auch durch ſein geſuchtes Porzellan: wer kennt fie nicht, dieſe Perleſächſiſcher Städte! Tauſende von Fremden pilgern jährlich hierhier: ſei es, um ſichan den herrlichen Denkmalen gotiſcher Baukunſt zu erfreuen; ſei es, um die weitberühmte Kunſtſtätte der Porzellanbereitung zu beſuchen; es ſei vielleicht auchnur, um ein Schöpplein Meißner Rebenſaftes...

Teil 8, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2013-01-13 17:56:00 +0100

Der Prozess der Nachkorrektur der OCR-Texte des Buches "Bunte Bilder aus dem Sachsenlande" ist recht zeitaufwendig. Um besser Fehler zu finden, aber auch mal ein Zwischenergebnis zu haben, habe ich folgendes Bash-Script geschrieben, welches mir ein rudimentäres EPub-Dokument zusammenbaut:# generates a rudimentary epubNAME=/tmp/$1DIR=$(echo $2|sed -e "s/\/$//g")PAGES=$(ls $DIR)mkdir -p $NAMEmkdir -p $NAME/$DIRecho -n "application/epub+zip" >$NAME/mimetypemkdir -p $NAME/META-INFcat <<CONTAINER >$NAME/META-INF/container.xml<?xml version="1.0" encoding="UTF-8"?>  <container    xmlns="urn:oasis:names:tc:opendocument:xmlns:container"    version="1.0">    <rootfiles>      <rootfile        full-path="$DIR/inhalt.opf"        media-type="application/oebps-package+xml"/>    </rootfiles>  </container>CONTAINERcat <<OPF1 >$NAME/$DIR/inhalt.opf<?xml version="1.0" encoding="UTF-8"?>  <package    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:dc="http://purl.org/dc/elements/1.1/"    xmlns:opf="http://www.idpf.org/2007/opf"    xmlns="http://www.idpf.org/2007/opf"    version="2.0"    unique-identifier="BookId">    <metadata>      <dc:language xsi:type="dcterms:RFC3066">de-DE</dc:language>      <dc:title>Hello World</dc:title>      <dc:identifier id="BookId">id_Hello_World</dc:identifier>    </metadata>    <manifest>      <item id="ncx" href="inhalt.ncx" media-type="application/x-dtbncx+xml"/>OPF1for i in $PAGES; do      cat <<OPF2 >>$NAME/$DIR/inhalt.opf    ...

Auf der Stammburg der Wettiner

Date: 2012-12-28 13:02:00 +0100

Der folgende Text ist übernommen aus »Bunte Bilder aus dem Sachsenlande«, welches ich nach und nach als Digitalisat und EBook neu zugänglich machen will. Er umfasst dort die Seiten 3 bis 8.Der nachfolgende Beitrag stammt von Franz Woenig, nach de.metapedia.org, als Lehrer und Schriftsteller vor allem in Lokalzeitungen in und um Leipzig unterwegs. Er wurde am 28. Februar 1851 in Breitenhagen bei Barby an der Elbe geboren und ist am 16. Februar 1899 in Leipzig verstorben.Auf der Stammburg der Wettiner»Dort ſind ſchon die Schachtberge, und drüben ſehen Sie den Schweizerling.Auf ſeine bewaldete Höhe wandert das junge Volk Wettins an Sonn-...

Teil 7, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-12-22 18:02:00 +0100

Problemfall WörterbuchQuelle: Wikipedia, gemeinfreiUm gute Ergebnisse zu erzielen und Fehler zu minimieren, benötige ich für »Bunte Bilder aus dem Sachsenlande« ein gutes Wörterbuch, bzw. eine Wortliste.Es gibt zwar im Netz einige Quellen für Wörterbücher um 1900, zB.:Adelung (Münchener Digitalisierungszentrum)Adelung, Faksimilie (zeno.org) Deutsches Wörterbuch von Jacob Grimm und Wilhelm Grimm (DFG Projekt) (Danke an der Stelle @LupinoDotOrg und @Schplock für ihre Hilfe)Das Problem ist, daß diese Wörterbücher die Schreibung des 'langen-s' nicht unterstützen.Zwar gibt es die Möglichkeit Regeln der Schreibung des 'langen-s' anzuwenden und ein existierendes Wörterbuch zu verwenden.Ich habe mich nach langem Hin und Her aber entschieden, die Wortliste selber...

Erkennung von OCR- und Tippfehlern in Textdateien

Date: 2012-12-15 13:38:00 +0100

Um Fehler in den Textdateien besser zu erkennen, haben die Distributed Proofreaders, ein internationales Projekt zur verteilten Korrekturlesung gescannter Dokumente, den Zeichensatz DPCustomMono2 entwickelt, der zu verwechselnde Zeichen in besonders prägnanter Weise darstellt.Hier ein Beispiel der Seite 6 meines Projektes »Bunte Bilder aus dem Sachsenlande«Einen Vergleich, wie gut DPCustomMono2 Fehler sichtbar macht, kann man auf der Font-Seite der Distributed Proofreaders selber vornehmen.

Teil 6, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-12-13 17:30:00 +0100

OCR Verbesserung mit unicharambigsMit der Erstellung einer Datei, hier deu-frak.unicharambigs gibt man Tesseract3 Hinweise, welche Zeichen durch welche ersetzt werden können oder sollten.Hier der Inhalt meiner deu-frak.unicharambigs:v11    B    1    V    01    c    1    e    01    e    1    c    01    f    1    ſ    01    ſ    1    f    01    V    1    B    01    m     2    i n    02    ( )    1    0    02    - —    1    —    12    , ,    1    »    12    — -    1    —    12    — —    1    —    12    1 n    1    m    02    - 3    1    s    02    - H    1    H    02    . H    1   ...

Teil 5, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-12-09 14:48:00 +0100

 UpdateErgänzt um Wörterbucherzeugung und Häufigkeitsliste. Korrektur Fehler OCR-Text (falsche Datei erwischt).Seitenweises ZeichenerfassenWie im letzten Artikel beschrieben, habe ich mir zur Verbesserung der Erkennungsgenauigkeit von Tesseract 3 Paare von TIFF-Dateien und Box-Dateien erzeugt, um die Zuordnung von Blobs zu den Zeichen im UTF-8 Format mit Hilfe von jTessBoxEditor festzulegen.Ich hatte dazu 5 Seiten aus dem Originalscan ausgewählt, zwei davon aus dem Inhaltsverzeichnis, um auch Ziffern zu erfassen.Diese Zuordnung hat relativ lange gedauert, da ich pro Seite ca. 2500 Zeichen editieren mußte.Hartes TrainingDas Training von Tesseract besteht aus mehreren Schritten. Wichtig ist die Erzeugung der font_properties Datei, die angibt, daß der Font...

Tastaturbelegung langes S für Buchprojekt

Date: 2012-12-08 16:19:00 +0100

Im Projekt Selbstversuch Ebook Befreiung ist es für Training von Tesseract und für die Korrektur der Schrift für mich notwendig effizient auf das lange S zurückzugreifen.Hier ein Beispiel für die Verwendung des langes S:Wachstube vs. Wachſtube Unter Debian Linux nichts einfacher als das:xmodmap -e "keycode 39 = s S U017F section U017F section" legt xmodmap das 'ſ' auf die Tastenkombination 'AltGr' + 's'. Auch brauche ich manchmal den Geviertstrich '—', der bei mir schon auf der Tastenkombination 'AltGr' + 'Shift' + '-' liegt.

Teil 4, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-11-22 21:54:00 +0100

Warum TesseractJetzt geht es ans Eingemachte. Da das gescannte Buch einen eigenen Font in Fraktur verwendet, ist es notwendig diesen Font zu trainieren um später möglichst wenig Nacharbeit zu haben.Als OCR-Engine für die Texterkennung nutze ich Tesseract. Im Bereich freier Software sind noch cuneiform und ocropus halbwegs brauchbar. Ersteres kommt mit zuwenig Dokumentation und fällt daher fürs Trainieren der Fonts weg. Letzteres ist schwierig zu kompilieren und die Debian-Variante ist nocch wenig brauchbar.Tesseract in Version 3 funktioniert ganz gut und ist für den gewünschten Zweck gut genug.Hartes TrainingUm Tesseract zu trainieren folge ich der Anleitung unter http://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3. Hier nochmal die...

Teil 3, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-11-20 23:18:00 +0100

Die verflixte DoppelseiteWie im letzten Post festgestellt, hat die Doppelseitentrennung nicht sauber funktioniert.Ursache ist, daß über ein Histogramm entlang der x-Achse versucht wird den dunklen Mittelbalken zu finden, was bei Seiten, die entweder leer sind oder Bilder enthalten nicht sauber funktioniert.unpaper bietet die Möglichkeit den Balkenbereich einzugrenzen. Ein anderes Problem war, daß ich unpaper vergessen hatte zu sagen, daß es sich bei der Eingabe um Doppelseiten handelt.Der komplette Aufruf sieht daher so aus:unpaper --layout double -op 2 -mw 30,30 -dn left,right,top,bottom -dr 5 ppm/img%03d.ppm ppm_single/img%03d.ppm Und, voila, die Doppelseiten sind sauber getrennt.

Teil2, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-11-20 01:09:00 +0100

Kurzausflug Speicherplatz Wie ich im vorigen Beitrag schrieb, hatte ich aus Platzgründen die Scans als JPEG abgespeichert. Pro Scanseite macht das ca. 1,2 MB. Bei der Konvertierung arbeite ich im folgenden auf Bitmapebene, so das pro Scanseite 25MB anfallen. Für jedes Zwischenergebnis braucht es also genug Platz.Gerade drehenMein Scanner scannt im A4 Format und die Seiten habe ich als Doppelseiten gescannt, die wie folgt aussehen:Leider erwartet jeder spätere Verarbeitungsschritt die  Seiten als Doppelseiten, also genau um 90° gedreht.Hier hilft mir ImageMagick weiter, mit dem ich wie folgt im Verzeichnis ppm/ die neuen Bilder rotiere und gleichzeitig konvertiere. PPM ist ein...

Teil1, Selbstversuch Ebook - Befreiung am Beispiel "Bunte Bilder aus dem Sachsenlande"

Date: 2012-11-19 02:11:00 +0100

Die IdeeLetztes Jahr fiel mir auf dem Flohmarkt das Buch "Bunte Bilder aus dem Sachsenlande" in die Hände.Es stammt aus dem Jahre 1902 und wurde vom Sächsischen Pestalozzi-Verein herausgegeben. Johann Heinrich Pestalozzi zählt zu den Gründern der modernen Pädagogik. Und im Geiste seiner "ganzheitlichen Volksbildung" will ich hier dokumentieren, wie dieses Buch über die Geschichte, aber auch die Sagen Sachsens eine neue Gestalt als Ebook annehmen wird.Metadaten, erster SchrittDer erste Schritt ist die Suche nach Metadaten. Glücklicherweise bieten Bibliotheken, wie die Sächsische Staats-, Landes- und Universitätsbibliothek einen ersten Einstieg.Der ScanvorgangGlücklicherweise besitze ich einen recht guten Scanner. Mit 300dpi, Farbe und...

Blog Post

Date: 2010-08-10 19:31:00 +0200

Meißen

Date: 2010-08-09 17:59:00 +0200

Elbe Parkplatz 2

Meißen

Date: 2010-08-09 17:23:00 +0200

Parkplatznot

Meißen

Date: 2010-08-09 17:21:00 +0200

Hochwasser Elbe August

Welche Pflanze ist das?

Date: 2010-04-03 15:53:00 +0200

3cm hoch, wildwachsend in Garten

Verfall in Meißen

Date: 2010-03-12 08:22:00 +0100

Teil 2

Verfall in Meißen

Date: 2010-03-12 08:21:00 +0100

Teil 1

Blechbüchse

Date: 2010-03-12 08:18:00 +0100

Ansicht Leipzig Ring

Blechbüchse

Date: 2010-03-12 08:16:00 +0100

Mit teildemontierter Außenhaut in Leipzig

Neues Rathaus

Date: 2010-03-12 08:14:00 +0100

Aus der Reihe Leipzig im Winter

Verfallene Scheune in Meißen

Date: 2010-02-23 16:10:00 +0100

Westewitz

Date: 2010-02-22 07:20:00 +0100

Sachsen im Winter

Karli bei Nacht

Date: 2010-02-09 19:58:00 +0100

Eisige Kälte und herrlich klare Nacht. 5 min Zeit bis Straba kommt.

Leipziger Oper im Schneetreiben

Date: 2010-02-01 18:01:00 +0100

Leipzigs Uni

Date: 2010-01-29 10:18:00 +0100

Leipzig im Winter

Date: 2010-01-07 17:53:00 +0100