BookTranslator
BookTranslator

OCR textu ve fraktuře: Zachovejte originál před jeho modernizací

Využijte malý, reprodukovatelný experiment s OCR fraktury k rozlišení chyb rozpoznávání od normalizace dlouhého s před vyhledáváním nebo překladem staré knihy.

BookTranslator

BookTranslator Team

9 min čtení

Chcete-li provést OCR tištěné fraktury, zvolte model, který toto písmo podporuje, otestujte krátkou pasáž oproti stránce a rozhodněte se, zda má váš přepis zachovat dlouhé s, ſ, nebo jej normalizovat na s. Zkontrolovaný zdrojový přepis uchovávejte odděleně od jakékoli modernizace či překladu. Povědoměji vyhlížející slovo nemusí nutně znamenat věrnější čtení tisku.

Otestovali jsme dvě krátké, syntetické německé pasáže ve fraktuře a kontrolní vzorek v moderním písmu. Dokonce i na těchto čistých obrázcích frakturní model změnil iſt na ift v jedné pasáži a na if v jiné. Užitečným výsledkem nebylo určení vítězného nástroje, nýbrž ukázka toho, že rozpoznávání znaků, volba konvence přepisu a modernizace jazyka představují tři odlišné úkoly.

Tento průvodce je určen pro tištěné stránky. Nestanovuje pracovní postup pro ručně psaný kurent či Sütterlin, poškozené rukopisy ani celé historické sbírky.

Před spuštěním OCR si definujte, co považujete za správné

Před porovnáváním nástrojů si sepište pravidla přepisu do jedné věty. Například: „Zachovat původní pravopis a dlouhé s; označit slova, která nemohu ověřit.“ V opačném případě byste mohli záměrnou normalizaci vyhodnotit jako chybu – nebo přijmout nežádoucí přepis jen proto, že působí plynule.

Konkrétní příklad tohoto rozlišení nabízí projekt OCR-D. Jeho Úroveň 1 v pokynech uvádí dlouhé s i koncové s jako s; Úrovně 2 a 3 je rozlišují. Jde o konvence přepisu, nikoli o pokyn převést každý starý pravopisný tvar na jeho moderní ekvivalent. Prohlédněte si oficiální pravidla pro s v Úrovni 1 a pravidla pro s v Úrovních 2/3.

U vlastního čtenářského projektu uchovávejte tyto výstupy odděleně:

VýstupPříklad z našeho ukázkového výukového textuK čemu slouží
Přepis věrný předlozeDie rothe Blume ſteht hier.Kontrola rozpoznaných znaků oproti obrazu předlohy
Derivát s normalizovaným dlouhým sDie rothe Blume steht hier.Vyhledávání nebo čtení bez rozlišování dlouhého s
Modernizovaný derivátDie rote Blume steht hier.Samostatná redakční verze s upraveným pravopisem

Druhý řádek mění pouze ſ na s; neimplementuje všechna pravidla OCR-D Level 1. Třetí řádek navíc upravuje i původní pravopis. Žádný z těchto derivátů by neměl bez upozornění nahradit přepis věrný předloze.

Zejména neprovádějte globální nahrazování písmene f za s. Náš chybný výstup OCR sice obsahuje ift, ale v předloze se může zcela legitimně vyskytovat i skutečné f . Opravujte slova podle obrazové předlohy, nikoli na základě plošného substitučního pravidla.

Co ukázal náš experiment s osmi voláními

Dne 11. září 2026 jsme vykreslili dvě původní, třířádkové ukázky pro výuku v písmech UnifrakturMaguntia a Noto Sans. Každý obrázek byl rozpoznán dvěma pevnými modely Tesseract: modelem pro frakturu tessdata_best a jeho anglickým modelem. Anglická konfigurace slouží pouze pro srovnání, nikoli jako výchozí bod pro moderní němčinu.

Všech osm volání použilo Tesseract 5.5.3, režim LSTM (--oem 1), jeden textový blok (--psm 6) a 300 dpi. V rámci původního experimentu jsme neměnili nastavení, nevylučovali výsledky ani neopakovali rozpoznávání. Kontrolní přehrání stejných osmi obrázků z 12. září přesně reprodukovalo uložené výstupní bajty.

Obrázky byly autenticky vykresleny pomocí Apple CoreText se zapnutými ligaturami, nikoli jen jako nespojené obdélníky se znaky. Používají 64pixelový text na bílém plátně o rozměrech 2200 × 460. Obrázky, kontroly počtu glyfů, fontové licence, hashe modelů a nezpracované výstupy jsou k dispozici v pokynech k experimentálnímu balíčku.

Původní třířádkový výukový úryvek vykreslený písmem UnifrakturMaguntia, včetně dlouhého s a řádku s odkazy na knihy, stránky a čísla.

I specializovaný model vyžadoval opravu

První zdrojový řádek zněl:

Das Waſſer iſt klar.

Na obrázku s frakturou vrátil frakturní model:

Das Waſſer ift klar.

Většina řádku zůstala v pořádku, ale ſ ve slově iſt se změnilo na f. Ve druhém úryvku se Das Thal iſt weit. změnilo na Das Thal if weit.: rozpoznávání změnilo jeden znak a další vynechalo. To, že výstup působí jako věrohodná němčina, nenahrazuje kontrolu podle originálu.

U kontrolního vzorku s moderním písmem došlo k jiné chybě. Frakturní model sice v prvním úryvku zachoval slova, ale změnil dva středníky v Buch 12; Seite 27; Nummer 105. na dvojtečky. Pokud bychom kontrolovali pouze dlouhé s, tyto změny v interpunkci by nám unikly.

Cílový text mění skóre

Každý nezpracovaný výstup jsme porovnali se dvěma cílovými texty stanovenými předem: s přesným zdrojovým textem a se zdrojem, kde bylo pouze ſ → s. Obě porovnání normalizují kódování Unicode na NFC a slučují bílé znaky; zachovávají velikost písmen i interpunkci. Nezpracovaný výstup před vyhodnocením nijak neupravujeme.

Níže uvedená čísla představují editační vzdálenost na úrovni znaků – vložení, smazání a nahrazení – nikoli procentuální přesnost.

ÚryvekVykreslené písmoModel OCRÚpravy oproti přesnému zdrojiÚpravy oproti cíli normalizovanému pouze z hlediska dlouhého s
Dlouhé s a číslaFrakturaFraktura16
Dlouhé s a číslaFrakturaAngličtina88
Dlouhé s a číslaNoto SansFraktura28
Dlouhé s a číslaNoto SansAngličtina77
Historicky působící pravopisFrakturaFraktura24
Historicky působící pravopisFrakturaAngličtina77
Historicky působící pravopisNoto SansFraktura03
Dobově působící pravopisNoto Sansangličtina44

Nula v jednom řádku znamená naprostou shodu pro tento jeden krátký vstup. Neříká vůbec nic o další stránce skutečné knihy. Naopak model, který správně zachová ſ , vykáže další rozdíly při porovnání s cílem, jenž vyžaduje s. Tyto odchylky odrážejí nesoulad v pravidlech normalizace, nikoli nutně chybu rozpoznávání.

Prohlédněte si všechny původní výstupy a skóre, neměnné zdrojové texty a pravidla hodnocenínebo ověřovací skript. Balíček zaznamenává hashe SHA-256, takže model, obrázek i výstup lze spárovat s každým výsledkem.

Co vám tento experiment neprozradí

Jde o dvě čisté, syntetické ukázky vysázené velkým písmem – nikoli o skeny starého vydání. Netestovali jsme vybledlý inkoust, drobné písmo, vnitřní okraje vazby, vícesloupcovou sazbu, poškozený papír, rukopis ani nezávislé lidské přepisy. Stejně tak jsme netestovali model pro moderní němčinu, komerční nástroje OCR ani výstupy OCR či překladu v BookTranslator.

Berme tyto příklady jako důvod k prozkoumání vlastních materiálů, nikoli jako odhad chybovosti pro celou knihu. Na základě této tabulky bychom si službu OCR pro historickou sbírku nevybrali.

Proveďte ohraničený test na stránkách, které skutečně potřebujete

Pokud používáte Tesseract lokálně, před porovnáváním výstupů si zaznamenejte verzi enginu a přesný soubor modelu. Samotný název modelu stažený soubor jednoznačně neurčuje. Náš záznam o původu odkazuje na konkrétní veřejné zdroje modelů a písem; velké soubory modelů nejsou součástí článku.

Pro náš ukázkový obrázek s jedním blokem, s modelem pro frakturu uloženým lokálně jako models/Fraktur.traineddata, vypadal příkaz následovně:

tesseract samples/long-s-fraktur.png stdout --tessdata-dir ./models -l Fraktur --oem 1 --psm 6 --dpi 300

V dokumentaci k příkazovému řádku pro Tesseract je vysvětlen režim LSTM i předpoklad jediného jednotného bloku textu u PSM 6. Tento předpoklad přesně odpovídá našemu třířádkovému obrázku. Neznamená to však doporučení zpracovávat s PSM 6 každou vícesloupcovou stránku knihy.

U vlastní knihy začněte úryvkem, který dokážete s jistotou přepsat, a jednou náročnější stránkou, jež dobře reprezentuje zpracovávaný materiál. Vyberte pasáž obsahující jméno nebo neznámý výraz, číslo a případnou změnu písma. Pokud se v knize střídají písma či jazyky, využijte raději samostatného průvodce OCR vícejazyčných PDF , než abyste předpokládali, že jeden čistý odstavec ve fraktuře pokryje celý dokument.

Původní sken nijak neměňte. Uložte si surový výstup OCR odděleně od oprav a u každé zkontrolované pasáže zaznamenejte identifikátor stránky nebo obrázku. Pokud je výstup nečitelný, vraťte se k obrazu stránky a segmentaci dříve, než úlohu rozšíříte na stovky stran.

Opravujte přepis bez vymýšlení chybějících slov

Používejte jednoduchý protokol oprav se čtyřmi sloupci: umístění ve zdroji, surové OCR, ověřené čtení a důvod. Důvod by měl jasně odlišit zjevnou chybu znaku od editorské úpravy.

ZjištěníUžitečný postupPostup, kterému se vyhnout
Na obrázku je zřetelně iſt, OCR uvádí iftOpravte tento konkrétní výskyt podle obrázkuPlošně nahradit každé f v celém dokumentu
OCR zachovává rothe, ale pro běžné čtení chcete rote kvůli čitelnostiPonechte zdrojovou podobu a vytvořte označenou zmodernizovanou verziPovažovat modernizaci za opravu chyby OCR
Liší se číslo nebo interpunkční znaménkoZkontrolujte dané místo, i když okolní věta dává dobrý smyslZkontrolujte pouze neobvyklé tvary písmen
Obrázek je skutečně nečitelnýOznačte nejistotu v pracovním přepisu a ponechte odkaz na obrázekPřijměte pravděpodobné vygenerované slovo jako obnovený důkaz

Pokud lze text ve staženém PDF již označit myší, porovnejte vložený text s obrázkem, než začnete znovu od nuly. Článek Diagnostika kopírování a vkládání z PDF vysvětluje, proč viditelná stránka může vypadat správně, i když je její skrytý či mapovaný text chybný. To je odlišný problém než výběr rozpoznávacího modelu pro frakturu.

Pokud bylo celým úkolem vyhledávání, ověřování citací nebo čtení němčiny, po vytvoření spolehlivého zdrojového textu skončete. Překlad není povinným krokem pro dočištění.

Překládejte pouze tehdy, když překážkou zůstává jazyk

Pro čtenáře, kteří potřebují jiný jazyk, představuje zkontrolovaný zdrojový text okamžik, kdy začíná mít překlad smysl. Udržujte sken, revidovaný přepis i překlad zřetelně oddělené, abyste poznali, zda sporná pasáž vznikla při rozpoznávání, nebo při překladu. Širší návaznost popisuje postup překladu skenovaných PDF .

Pokud zvolíte PDF Translator od BookTranslator, vyzkoušejte nejprve reprezentativní část svého dokumentu, než se spolehnete na kompletní výsledek. Náš experiment neověřuje , jak si BookTranslator poradí s historickou frakturou. Jeho režim OCR sestavuje čistý dokument a může změnit původní rozvržení stránky, písma i jejich velikosti; nepovažujte tento výstup za faksimile ani nepředpokládejte, že původní číslování stran zůstane beze změny.

Praktický postup je jednoduchý: ověřte znění zdroje, označte veškerou normalizaci a teprve v případě potřeby překládejte. Plynulost patří na konec tohoto procesu – nikoli na začátek jako náhrada za doložená fakta.

Související příspěvky