OCR: hoe computers leren lezen
OCR staat voor Optical Character Recognition, oftewel optische tekenherkenning. Het is de techniek waarmee een computer letters en woorden op een foto, scan of ander beeldmateriaal omzet in digitale, bewerkbare tekst. Stel je een heel geduldig typiste voor die duizenden pagina's per minuut kan overtypen zonder ooit moe te worden: dat is in essentie wat een OCR-programma doet, alleen dan volledig automatisch en met behulp van beeldherkenning in plaats van ogen.
Je gebruikt OCR waarschijnlijk vaker dan je denkt. Maak je met je telefoon een foto van een kassabon om die in een boekhoudapp te zetten, dan herkent OCR de bedragen en het winkelnaam. Scan je een oud contract in en kun je er ineens in zoeken op trefwoord, dan is dat OCR die de gescande afbeelding heeft omgezet naar doorzoekbare tekst. Ook de vertaalfunctie van je camera-app, die buitenlandse straatnaamborden direct vertaalt, leunt op deze techniek.
Wat is het precies?
Een OCR-systeem doorloopt meestal een aantal stappen. Eerst wordt het document gedigitaliseerd: een scan of foto van de pagina. Deze afbeelding bevat op dat moment nog gewoon pixels, geen tekst die een computer kan lezen of kopiëren.
Daarna volgt de voorbewerking: het beeld wordt schoongemaakt. Scheve pagina's worden rechtgezet, ruis en vlekken worden verminderd, en de afbeelding wordt vaak omgezet naar zwart-wit (binarisatie), zodat tekst scherp afsteekt tegen de achtergrond.
Vervolgens vindt segmentatie plaats: het systeem bepaalt waar regels, woorden en losse letters beginnen en eindigen. Pas daarna komt de eigenlijke herkenning: elk lettervormpje wordt vergeleken met bekende patronen. Vroeger gebeurde dit met vaste sjablonen (template matching), tegenwoordig gebeurt dit vrijwel altijd met neurale netwerken die op miljoenen voorbeelden zijn getraind om lettervormen te herkennen, ook als het lettertype, de grootte of de kwaliteit van de scan varieert.
Tot slot volgt vaak een nabewerking: een taalmodel of woordenboek corrigeert onwaarschijnlijke resultaten. Als het systeem bijvoorbeeld 'huls' leest waar 'huis' stond, kan de context van de zin dat corrigeren.
Handschrift is een aparte, veel lastigere categorie, vaak aangeduid als HTR (Handwritten Text Recognition) of ICR (Intelligent Character Recognition). Omdat letters aan elkaar vast zitten en enorm verschillen per persoon, gebruiken deze systemen geen losse lettersegmentatie maar modellen die hele woorden of regels als een lopend patroon ('sequentie') herkennen, vergelijkbaar met hoe spraakherkenning een zin als geheel verwerkt in plaats van los klank voor klank.
Wat wil men ermee bereiken?
Het belangrijkste doel van OCR is simpel: papier doorzoekbaar en bewerkbaar maken. Bibliotheken en archieven willen hun collecties niet alleen scannen, maar ook doorzoekbaar maken op woord, zodat onderzoekers niet meer pagina voor pagina hoeven te bladeren.
Daarnaast speelt toegankelijkheid een grote rol: tekst die door OCR is herkend, kan worden voorgelezen door schermlezers, wat cruciaal is voor mensen met een visuele beperking. Ook automatisering van administratie is een grote drijfveer: bedrijven willen facturen, formulieren en identiteitsdocumenten automatisch laten verwerken in plaats van dat medewerkers gegevens met de hand overtypen.
Verder wordt OCR ingezet voor toepassingen als kentekenherkenning in het verkeer, vertaal-apps die tekst op foto's direct omzetten, en het bewaren van cultureel erfgoed: historische kranten, brieven en manuscripten worden zo niet alleen digitaal bewaard, maar ook daadwerkelijk leesbaar en doorzoekbaar gemaakt voor toekomstige generaties.
Voorbeelden uit de praktijk
Delpher, het digitale krantenarchief van de Koninklijke Bibliotheek, bevat miljoenen pagina's Nederlandse kranten, boeken en tijdschriften vanaf de zeventiende eeuw, allemaal met OCR doorzoekbaar gemaakt op woordniveau. Doordat oude drukletters en verkleurd papier lastig te lezen zijn, bevat de herkende tekst nog altijd fouten, maar voor onderzoekers is het een onmisbaar hulpmiddel geworden.
Google Boeken begon in 2004 met het massaal scannen van boeken uit grote bibliotheken wereldwijd en gebruikte OCR om de tekst van tientallen miljoenen boeken doorzoekbaar te maken, wat destijds tot juridische discussies over auteursrecht leidde.
Tesseract, een van de bekendste OCR-programma's, werd in de jaren tachtig ontwikkeld door Hewlett-Packard, in 2005 als open source vrijgegeven en sindsdien verder ontwikkeld door Google. Het wordt wereldwijd gebruikt in talloze apps en onderzoeksprojecten omdat het gratis en aanpasbaar is.
Transkribus, ontstaan uit een Europees onderzoeksproject rond de Universiteit van Innsbruck en sinds 2019 voortgezet door de coöperatie READ-COOP, richt zich specifiek op het herkennen van historisch handschrift, van middeleeuwse manuscripten tot negentiende-eeuwse brieven, met behulp van kunstmatige intelligentie die getraind wordt op voorbeelden van specifieke handschriften.
Op straat wordt OCR dagelijks gebruikt via automatische kentekenherkenning (ANPR), die in Nederland onder meer door de politie wordt ingezet voor snelheidscontrole en opsporing, en bij parkeergarages voor toegangscontrole zonder ticket.
Hoe ver is de techniek?
Voor gedrukte tekst in een bekend lettertype en op een schone scan is OCR inmiddels een volwassen techniek: de nauwkeurigheid ligt vaak boven de 99 procent. Dat is de reden dat scanapps en documentverwerkers dit soort tekst vrijwel foutloos herkennen.
Lastiger wordt het bij historische documenten: oude lettertypen, vervaagde inkt, vlekken en gescheurd papier zorgen voor fouten, ook al zijn moderne neurale netwerken hier veel beter in dan de sjabloonmethoden van twintig jaar geleden. Handschriftherkenning blijft de grootste uitdaging. Voor gestandaardiseerd, netjes geschreven handschrift kan de nauwkeurigheid inmiddels hoog zijn, maar bij sterk individueel of haastig handschrift, doorhalingen en oude schrijfstijlen blijft het foutgevoelig, en is vaak nog altijd menselijke controle nodig.
Een andere beperking is taal- en scriptondersteuning: veelgebruikte talen met het Latijnse alfabet worden goed ondersteund, maar minder gangbare talen en schriften krijgen nog altijd minder aandacht en trainingsdata, waardoor de kwaliteit van herkenning daar achterblijft. Complexe pagina-indelingen, zoals tabellen, kranten met meerdere kolommen, of documenten met een mix van tekst en afbeeldingen, blijven eveneens een bron van fouten.
Een recente ontwikkeling is dat grote, multimodale AI-modellen die tekst én beeld tegelijk kunnen verwerken, steeds vaker traditionele OCR-stappen overnemen: ze 'lezen' een foto direct en geven de inhoud in samenhang weer, inclusief context en lay-out. Dit vervaagt het onderscheid tussen klassieke OCR-software en algemene AI-beeldmodellen, al is nog niet duidelijk of dit op elk vlak nauwkeuriger is dan gespecialiseerde OCR-systemen.
Wie werken eraan?
Grote techbedrijven spelen een centrale rol: Google ontwikkelt naast Tesseract ook commerciële OCR-diensten via zijn Cloud Vision-platform, Microsoft biedt vergelijkbare herkenning aan via Azure, en Amazon doet dit via zijn Textract-dienst. ABBYY, een bedrijf met Russische wortels dat inmiddels internationaal opereert, is al decennia een grote naam in commerciële OCR-software zoals FineReader. Ook Adobe verwerkt OCR-functionaliteit in zijn Acrobat-software.
Op het gebied van cultureel erfgoed en historisch handschrift lopen Europese universiteiten en onderzoeksconsortia voorop. De Universiteit van Innsbruck en de coöperatie READ-COOP staan aan de basis van Transkribus, met financiering die deels via Europese onderzoeksprogramma's is verlopen. In Nederland speelt de Koninklijke Bibliotheek een voortrekkersrol bij het digitaliseren en doorzoekbaar maken van het nationale drukwerkerfgoed via Delpher.
Daarnaast zijn er gespecialiseerde bedrijven die OCR toepassen op administratieve processen, zoals het automatisch verwerken van facturen en formulieren voor bedrijven, een markt waarin ook Nederlandse en Europese scale-ups actief zijn naast de grote internationale spelers.