OpticalCharacterRecognition
JoergSchulenburg,LinuxTag2005GOCR
GOCR,whatcanitdoforyou?
convertingimageswithprintedtexttotextformat makingprintedtextaccessiblefortextutils sources:scans,screenshots,photos?,pdf's,edocs destination:ASCII/UTFtext,HTML/XML,TeX
JoergSchulenburg,LinuxTag2005GOCR
GOCR,thegoal...
justtakeitanduseit
JoergSchulenburg,LinuxTag2005GOCR
Features?
portability,flexibility(OS,c,pnm,textonly) fontindependent,notraining,executableonly autodetection(canbeswitchedoff) barcodes
JoergSchulenburg,LinuxTag2005GOCR
Restrictions(v0.40)?
onlycleanblackonwhite(highres,nodustetc.) nonrotated,simplelayouts,(printed)textonly onlylatinfontwithsomeextensions(de,fr,se) only1Dbarcodes slow,...
JoergSchulenburg,LinuxTag2005GOCR
Alternatives?
requiremouseandX ClaraOCR,OCRchie experimental OCRE(roughFFT) locr(fast,simpledatabase)
JoergSchulenburg,LinuxTag2005GOCR
Howtomeasurequality?
Qualityofrecognition?(speed,resources?) Recognitionrateinpercent?99%..99.999%? Dependsstronglyfromthepattern.Standards? Don'tcare? Popularity?(press,downloads,feedback)
JoergSchulenburg,LinuxTag2005GOCR
Greatestsuccess?
FirstimplementationofRFC1149,April2001 IPoveraviancarrier(BergenLinuxUserGroup) carrierpigeoninternetprotocol(CPIP)
http://de.wikipedia.org/wiki/Bild:Postduif.jpg
JoergSchulenburg,LinuxTag2005GOCR
2 greatestsuccess?
nd
asprise.com'sOCRJavaSDK2.1,April2005
sellingitfor$998..$2,998(butGPLviolation) advertiseshisprogramasveryaccuratewithoutbeeing afraidofmalcontendbuyers Webexcerpt:
JoergSchulenburg,LinuxTag2005GOCR
Codehistory?
v0.1autumn1998 v0.2.1Mar2000@freshmeat May20001000downloads v0.2.5Jun2000@SF 2001(SuSE7.1) v0.3.5Feb2002(SuSE8.1) 18000codelines(v0.40) Whencanwereleasev1.0?
JoergSchulenburg,LinuxTag2005GOCR
Emailtraffic?
every2nddayaocrmessage 20xmoreSpam Finalstateisnoemailsbutdownloads?
JoergSchulenburg,LinuxTag2005GOCR
Problems?
Copyrightandsamplesources(bigproblem) notenoughtimeforcoding
JoergSchulenburg,LinuxTag2005GOCR
Howdoesitwork?
preprocessing thresholdvaluedetection boxdetection,zoning,linedetection sortingandmelting,dust,pictures,... callocrengine(3engines,2experimental) repeatedforunknownchars postprocessing(XML,TeX,UTF,ASCII)
JoergSchulenburg,LinuxTag2005GOCR
Howdoesitwork?
preprocessing thresholdvaluedetection boxdetection,zoning,linedetection sortingandmelting,dust,pictures,...
JoergSchulenburg,LinuxTag2005GOCR
Whyisitnotworking?
noidea...P) verysimplealgorithmswrittenbyanOCR amateur,makingtheprogramusableataearly stateofcoding mostcodewrittenaroundmidnight? itsalphacodeandwillbebetter(v0.xx)
JoergSchulenburg,LinuxTag2005GOCR
Lookinginside...
assumenocolors,blackonwhiteonly assumenorotation,samefont,allcharactersare separated trytorepairifassumptionsarehurt(canfail) everycharisrecognizedempiricallybasedonits pixelpattern lotofpossibilitiestoimproveGOCR
JoergSchulenburg,LinuxTag2005GOCR
Lookinginside...
everycharisrecognizedempiricallybasedonits notflat pixelpattern nogapassumed
As_MPLf
lengthnot compared
JoergSchulenburg,LinuxTag2005GOCR
Usefulforaccessibility?
OCRisimportantforvisibleimpairedpeople Linuxischeapandflexible butgoodandflexibleOCRismissing GOCRwilltrytoservethatneeds(feedback?)
JoergSchulenburg,LinuxTag2005GOCR
Challenges?
www.seeingwithsound.com/ocr.htm screenshots(smallfontsandgraphicmixed) signpostsonphotos(webcamshots)
JoergSchulenburg,LinuxTag2005GOCR
Challenges?
... carplates?
Photo:A.Karwath,commons.wikimedia.org
JoergSchulenburg,LinuxTag2005GOCR
nextstepscolors
JoergSchulenburg,LinuxTag2005GOCR
nextstepshandwritten
JoergSchulenburg,LinuxTag2005GOCR
nextstepsrotatedtext
JoergSchulenburg,LinuxTag2005GOCR
Timeline?
improverecognition(stepwise,ondemand) multicolorforscreenshotsAug05 extracttextfromphotosOct05 2Dbarcodes(usefull?)Dez05 vectorizationandrotationMai06 suggestions?
JoergSchulenburg,LinuxTag2005GOCR
Howcanyouhelp?
createcopyrightfreesamplesfortypical problems(easy) write/findOCRrelatedfreeavailablepublications writepatches(difficult) writeanew+betterOCRengine(mostdifficult)
JoergSchulenburg,LinuxTag2005GOCR