En trinvis OCR-pipeline, der omdanner en rå PDF til ren tekst og signaler på dokumentniveau. Hvert gennemløb er bevidst: et fritekstlag, hvor det findes, en hurtig Tesseract-baseline, en kombineret vision-worker til signaturer, ansigter og ID-detektion, en specialist-MRZ-læser og EasyOCR som deep learning-slutled.
Fordi man ikke kan fordærve tekst, man læser med det rette værktøj første gang.
5sekventielle gennemløb
3detektorer i én worker
2OCR-motorer, hurtig derefter dyb
1sidebillede, indlæst én gang
Afsnit 01Oversigt
Pipelinen i overblik
Sider bevæger sig fra venstre mod højre. MRZ-gennemløbet aktiveres kun, når ID-eller-ej-detektoren fastslår, at en side er et identitetsdokument; alt andet fortsætter til det avancerede OCR-gennemløb. Hvert trin udsender annotationer, som det næste trin kan anvende som hints.
Primær datastiBetinget forgrening, kun IDVision-signalDokumentannotation
Afsnit 02Rationale
Hvorfor lagdele arbejdet overhovedet
Et reelt dokumentkorpus er heterogent: born-digital PDF'er, scannede breve med en kaffeplet, flersprogede kontrakter og pas med en maskinlæsbar zone lander alle i den samme indbakke. Pipelinen sender hver side gennem billige, deterministiske gennemløb først og reserverer dyr deep learning-OCR til de tilfælde, der berettiger det. Vision-signaler følger med teksten, så en konsument kan spørgeer denne kontrakt underskrevet ellerer dette upload faktisk et pas uden at genindlæse filen.
Gennemløb 01PDF-læser
Hoveddøren
To PDF'er, der ser identiske ud for et menneske, kan være vidt forskellige indvendigt: den ene en born-digital eksport med et perfekt tekstlag, den anden et telefonbillede fladtrykt til PDF ved 72 DPI og roteret fire grader. Læseren normaliserer denne asymmetri, så efterfølgende OCR aldrig behøver at håndtere den.
Hvad det gør
Rasteriserer hver side til en standard på 300 DPI, så motorerne ser ensartede tegnstørrelser.
Udtrækker det indlejrede tekstlag når til stede, hvilket fuldstændigt omgår OCR for digitalt fødte filer.
Retter skævhed, dewarper og korrigerer orientering, og beskærer derefter scannerbordets kanter.
Opdeler flersidede dokumenter til en per-side strøm, som resten af pipeline'en håndterer uafhængigt.
Unik fordel
Fritekst vinder. En digitalt født PDF springer OCR over – øjeblikkelig, perfekt og fejlfri.
Konsistent input. Alle efterfølgende modeller kan antage et opret billede med fornuftig DPI.
Én sandhedskilde. Det billede, der renderes her, genbruges af alle efterfølgende arbejdere – ingen dobbelt rasterisering.
Pas 02Tesseract
Den hurtige baseline
Tesseract er arbejdshesten: hurtig, CPU-venlig, 100+ sprog og struktureret output – ordfelter, linjefelter og per-ords konfidensværdi. For den lange hale af rene kontordokumenter løser den opgaven direkte.
Hvad den gør
Kører LSTM-genkendelsen over hver side og udsender hOCR / TSV med ord, linjer og felter.
Tilknytter en per-ords konfidensværdi score, der afgør, hvor EasyOCR skal foretage et andet pas.
Returnerer læserækkefølge og layout, så afsnit rekonstrueres korrekt.
Unik fordel
Hastighed og omkostninger. Ren CPU, ingen GPU-afhængighed, skalerer horisontalt og forbliver omkostningseffektiv.
Deterministisk. Samme input, samme output: nemt at teste, cache og sammenligne i CI.
Layout-bevidst. Ordfelter og læserækkefølge er førsteklasses output.
Konfidensværdi er et routingsignal. Områder med lav konfidensværdi bliver input til EasyOCR.
Tesseract er bevidst det første OCR-pas – godt nok til de fleste sider. De omkostningstunge pas kører kun, hvor det kommer til kort.
Pas 03Kombineret arbejder
Underskrifter, ansigter og én beslutning
Den kombinerede arbejder er vision-banen. I stedet for at køre tre jobs, der hver genindlæser sidebilledet, allokerer en tensor og varmer en model op, kører den tre detektorer over det samme in-memory-billede i ét pas og producerer signaler på dokumentniveau, som tekst alene ikke kan besvare.
Detektor A
Underskrift
De fleste kontrakter har først betydning, når de er modunderskrevet. Et lille CNN scanner efter blækagtige streger, der fremstår som en håndskrevet underskrift, og returnerer felter samt en score.
Konverterer er denne kontrakt udført til en boolean.
Felt plus sideindeks giver en brugergrænseflade mulighed for at hoppe til den underskrevne linje.
Den nærmeste tekstlinje – det trykte navn – kan parres med feltet.
Detektor B
YuNet
YuNet er en lille ansigtsdetektor, der er bygget til at køre i realtid på standardhardware. Her handler det ikke om ansigter, men om portrætter som et dokumentkendetegn.
Et ansigt i hjørnet er et stærkt tegn på et ID-kort, pas eller kørekort.
Ca. 1 ms pr. beskæring på CPU – billigt nok til at køre på hver side.
Tilstedeværelsen af et ansigt kan udløse redigering eller særlig behandling.
Detektor C
ID eller ej
En binær klassificering, der læser hele siden og besvarer ét spørgsmål: er dette et identitetsdokument? Dens opgave er at afgøre, hvilke sider der videresendes til MRZ-specialisten.
Undgår at køre MRZ på hver side – de fleste har ingen.
Anvender YuNets ansigtsfund og Tesseracts tekst som funktioner.
Et lille hoved over en lille grundmodel: hurtig og nem at kalibrere.
Hvorfor kombineret? Indlæsning af billedet, farvekonvertering, tilpasning af størrelse og opvarmning af en model udgør størstedelen af enhver detektors latenstid. Ved at køre alle tre over ét fælles billede, én proces og én tæt løkke elimineres denne overhead, og annotationerne forbliver indbyrdes konsistente, fordi alle tre så de samme pixels.
Pas 04MRZ
Pas-specialisten
Den maskinlæsbare zone nederst på et pas eller ID-kort følger et strengt ICAO-9303-format: et fast tegnsæt (A–Z 0–9 <), faste positioner og indbyggede kontrolcifre. En generisk OCR kan læse den, men vil forvanskeO/0 eller1/I. Dette pas er specialbygget til strimlen.
Hvad det gør
Kører kun, når ID-eller-ej-klassificeringen markerer siden, så der aldrig spildes arbejde.
Anvender en MRZ-tilpasset genkender og grammatik, der kun udsender gyldige MRZ-tegn.
Verificererkontrolcifre– et forfalsket eller fejllæst felt opdages ved aritmetik, ikke ved gætning.
Unik fordel
Struktureret, ikke fritekst. KYC-kode modtager en typet post, ikke en streng.
Selvvaliderende. Kontrolcifre giver en garanti, som generisk OCR ikke kan matche.
Snævert domæne, høj præcision. Lille tegnsæt, fast layout – en specialist vinder med stor margin.
Pas 05EasyOCR
Den dybe lærings-sidste mil
EasyOCR er en OCR baseret på dyb læring – en CRAFT-tekstdetektor plus en CRNN-genkender på PyTorch. Tungere end Tesseract, men den udmærker sig præcis der, hvor Tesseract kæmper: lav kontrast eller stiliserede skrifttyper, buet eller roteret tekst, fotos af kvitteringer og mange ikke-latinske skriftsystemer. Her fungerer den som reserve og som avanceret OCR-pas.
Hvad det gør
Genlæser de områder, hvor Tesseract returnerede lav konfidensværdi – præcist og ikke hele siden.
Håndterer ikke-latinske skriftsystemer, som en given Tesseract-installation ikke er konfigureret til.
Leverer en anden vurdering: enighed mellem de to motorer øger konfidensværdien markant.
Unik fordel
Robusthed. CNN-genkendelse håndterer fotos, perspektiv og usædvanlige skrifttyper.
Dækning. 80+ sprog direkte ud af boksen.
Målrettet. Kører kun der, hvor Tesseract ikke var sikker, så den langsomme sti forbliver begrænset.
Billig i første omgang, dyr kun hvor det er nødvendigt – det er det, der holder pipelinen hurtig i gennemsnit uden at miste den lange hale.
Sektion 03Routing
Den beslutning en side træffer
Afsnit 04Overblik
Hvad hvert trin tilføjer
Trin
Output
Omkostning
Hvor det er stærkt
PDF-læser
normaliserede billeder, tekstlag
meget lav
digitalt fødte PDF'er
Tesseract
ordbokse + konfidens
lav · CPU
rene kontordokumenter
Signatur
signeret-flag + bokse
lav
kontrakter, compliance
YuNet
ansigtsbokse, antal
meget lav
identifikation af portrætter / ID-dokumenter
ID-or-not
isID, dokumenttype
lav
routing til MRZ
MRZ
maskinlæst post + kontrolcifre
medium
pas, nationale ID-kort
EasyOCR
tekst + konfidens
høj · GPU-venlig
stiliseret, støjfyldt, flersproget
Afsnit 05Principper
Hvad pipelinen bygger på
Det billige først, det dyre kun når det er nødvendigt
Hvert trin eksisterer, fordi det foregående ikke kan håndtere en bestemt fejltype. Tesseract bærer den største del af arbejdet; EasyOCR aktiveres kun for de ord, det ikke kunne læse; MRZ kun når siden faktisk er et ID-dokument.
Signaler, ikke blot tekst
OCR er nødvendigt, men sjældent tilstrækkeligt. Den kombinerede worker udsender signaler på dokumentniveau – signeret, portræt til stede, identitetsdokument – som den efterfølgende forretningslogik rent faktisk har brug for.
Specialister slår generalister inden for snævre domæner
En MRZ i et pas er et lille, strengt format med kontrolcifre. En specialiseret parser er mere præcis og selvvaliderende, på en måde som ingen generisk OCR kan matche på den samme strimmel.
Del arbejdet
Den kombinerede worker eksisterer, fordi indlæsning og forbehandling af billedet er den langsomme del. Tre detektorer over ét in-memory-billede reducerer denne overhead og sikrer, at annotationerne er konsistente.