Wat doe je als je teksten op afbeeldingen en video’s door een computer wilt laten lezen? Bij Centerdata werken we dan met Optical Character Recognition (OCR). Ook bij andere vormen van niet-digitaal inleesbare media waar tekstextractie gewenst is, wordt OCR toegepast. Denk bijvoorbeeld aan het automatisch herkennen van kentekenplaten, het inlezen van PDF’s of het digitaliseren van ingescande of gefotografeerde documenten.
OCR wordt op grote schaal toegepast om collecties tekstwerken te digitaliseren, zoals boeken, verslagen of oude archieven. Vooral bibliotheken, nationale archieven en musea maken gebruik van OCR en vergelijkbare technieken. Maar ook Google is op grote schaal bezig om boeken te digitaliseren in samenwerking met uitgeverijen. OCR moet echter niet direct gekoppeld worden aan handschriftherkenning (Handwritten Text Recognition, HTR), wat veel ingewikkelder is dan het herkennen van gedrukte tekst vanwege de grote variatie in schrijfwijzen, met name bij oude geschriften.
Hoe werkt OCR precies?
Bij OCR worden eerst de locaties van teksten op beelden gedetecteerd. Hierna volgt een segmentatie van de letters voor karakterherkenning. Als laatste vindt er een classificatie van de karakters plaats, wat het herkennen van de teksten zelf is. Dus er komen (minimaal) twee lagen van deep learning aan te pas. Eerst bij het detecteren en daarna bij het classificeren van teksten. Voor het segmenteren van karakters kan er ook deep learning toegepast worden, maar doorgaans gebeurt dat via projection segmentation.
Centerdata is ervaren in het toepassen van technieken op het gebied van OCR. Er komen daarbij ook veel meer technieken dan alleen karakterherkenning aan bod. Een belangrijke taak is bijvoorbeeld het voorbewerken van een foto of document om de tekst goed machinaal leesbaar te maken. De teksten worden hierbij genormaliseerd waarbij onder andere helderheid, ruis, contrast en oriëntatie worden behandeld.
Nadat teksten worden ingelezen vindt nabewerking plaats, door bijvoorbeeld een automatische spellingcorrectie toe te passen en een evaluatie van de nauwkeurigheid van tekstherkenning.
Voorbeeldproject
Informatie-extractie uit duizenden PDF’s
De meeste bedrijven zijn verplicht om jaarverslagen in te dienen. Deze zijn online beschikbaar en gaan soms enkele decennia terug. Het extraheren van informatie uit deze, met name gescande, PDF’s kan een enorme klus zijn. Een belangrijk aspect hierbij is om informatie snel en met hoge nauwkeurigheid te extraheren. Daar komt veel technische expertise bij kijken, wat verder gaat dan alleen kennis en kunde in OCR.
Voor dit project werkten we samen met de Foundation for Auditing Research (FAR). Vanuit onze rol als data science consultant droegen we bij aan de ontwikkeling en verbetering van een op maat gemaakte OCR-tool voor het automatisch inlezen en digitaliseren van duizenden PDF’s (jaarverslagen, -cijfers, -beelden, bestuursverslagen, et cetera).
Het resultaat: een OCR-tool die continu kan worden ingezet op de jaarlijks gepubliceerde verslagen. Nadat de verslagen nauwkeurig zijn ingelezen, is het mogelijk om specifieke informatie te extraheren uit deze documenten via text mining-technieken.
Een onderdeel van deze tool, die native PDF’s direct inleest via Regex-technieken zonder gebruik te maken van OCR, is gepubliceerd in een wetenschappelijk artikel. De code hiervan is openbaar gemaakt en is toegankelijk via een Github repository.