mchristy-Dh2014- emop-postOCR-triage

Matt Christy
Matt ChristyLead Software Applications Developer
eMOP Post-OCR Triage
Diagnosing Page Image Problems with Post-OCR
Triage for eMOP
Matthew Christy,
Loretta Auvil,
Dr. Ricardo Gutierrez-
Osuna,
Boris Capitanu,
Anshul Gupta,
Elizabeth Grumbach
 emop.tamu.edu/
 DH2014 Presentation
 emop.tamu.edu/post-
processing
 eMOP Workflows
 emop.tamu.edu/workflow
s
 Mellon Grant Proposal
 idhmc.tamu.edu/projects
/Mellon/eMOPPublic.pdf
eMOP Info
eMOP Website More eMOP
 Facebook
 The Early Modern OCR
Project
 Twitter
 #emop
 @IDHMC_Nexus
 @matt_christy
 @EMGrumbach
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
2
The Numbers
Page Images
 Early English Books online
(Proquest) EEBO: ~125,000
documents, ~13 million
pages images (1475-1700)
 Eighteenth Century
Collections Online (Gale
Cengage) ECCO: ~182,000
documents, ~32 million
page images (1700-1800)
 Total: >300,000 documents
& 45 million page images.
Ground Truth
 Text Creation Partnership TCP:
~46,000 double-keyed hand
transcribed docuemnts
 44,000 EEBO
 2,200 ECCO
DH2014 - Book History and Software Tools: Examining Typefaces for OCR Training in eMOP
3
Page Images
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
4
The Constraints
 45 million page images!
 Only 2 years
 Small IDHMC team focused
on gather data and training
Tesseract for early modern
typefaces
 Great team of collaborators
focusing on post-processing
 Software Environment for the
Advancement of Scholarly
Research (SEASR) – University of
Illinois, Urbana-Champaign
 Perception, Sensing, and
Instrumentation (PSI) Lab, Texas
A&M University
 Everything must be open-
source
 Focus our efforts on post-
processing triage and
recovery
 Triage system will score page
results and route pages to be
corrected or analyzed for
problems
 Results:
1. Good quality, corrected
OCR output
2. A DB of tagged pages
indicating pre-processing
needs
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
5
Solution
Post-ProcessingTriage
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
6
Post-Processing
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
7
Triage
Treatment Diagnosis
Triage:De-noising
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
8
 Uses hOCR results
1. Determine average
word bounding box
size
2. Weed out boxes are
that too big or too
small
3. But keep small boxes
that have neighbors
that are “words”
Triage: De-noising
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
9
Before: 35% After: 58%
Triage: De-noising
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
10
Before After
Triage: Estimated Correctability
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
11
Page Evaluation
 Determine how correctable a
page’s OCR results are by
examining the text.
 The score is based on the ratio
of words that fit the
correctable profile to the total
number of words
Correctable Profile
1. Clean tokens:
 remove leading and trailing
punctuation
 remaining token must have at
least 3 letters
2. Spell check tokens >1
character
3. Check token profile :
 contain at most 2 non-alpha
characters, and
 at least 1 alpha character,
 have a length of at least 3,
 and do not contain 4 or more
repeated characters in a run
4. Also consider length of tokens
compared to average for the
page
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
12Triage: Estimated Correctability
Treatment: Page Correction
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
13
1. Preliminary cleanup
 remove punctuation from begin/end of
tokens
 remove empty lines and empty tokens
 combine hyphenated tokens that appear
at the end of a line
 retain cleaned & original tokens as
“suggestions”
2. Apply common transformations and
period specific dictionary lookups to
gather suggestions for words.
 transformation rules: rn->m; c->e; 1->l; e
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
14Treatment: Page Correction
3. Use context checking on a sliding window of 3 words,
and their suggested changes, to find the best context
matches in our(sanitized, period-specific) Google 3-
gram dataset
 if no context is found and only one additional suggestion
was made from transformation or dictionary, then
replace with this suggestion
 if no context and “clean” token from above is in the
dictionary, replace with this token
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
15Treatment: Page Correction
window: tbat l thoughc
Candidates used for context matching:
 tbat -> Set(thai, thar, bat, twat, tibet, ébat, ibat, tobit, that, tat, tba, ilial,
abat, tbat, teat)
 l -> Set(l)
 thoughc -> Set(thoughc, thought, though)
ContextMatch: that l thought (matchCount: 1844 , volCount: 1474)
window: l thoughc Ihe
Candidates used for context matching:
 l -> Set(l)
 thoughc -> Set(thoughc, thought, though)
 Ihe -> Set(che, sho, enc, ile, iee, plie, ihe, ire, ike, she, ife, ide, ibo, i.e,
ene, ice, inc, tho, ime, ite, ive, the)
ContextMatch: l though the (matchCount: 497 , volCount: 486)
ContextMatch: l thought she (matchCount: 1538 , volCount: 997)
ContextMatch: l thought the (matchCount: 2496 , volCount: 1905)
tbat I thoughc Ihe Was
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
16Treatment: Page Correction
window: thoughc Ihe Was
Candidates used for context matching:
 thoughc -> Set(thoughc, thought, though)
 Ihe -> Set(che, sho, enc, ile, iee, plie, ihe, ire, ike, she, ife, ide, ibo, i.e,
ene, ice, inc, tho, ime, ite, ive, the)
 Was -> Set(Was)
ContextMatch: though ice was (matchCount: 121 , volCount: 120)
ContextMatch: though ike was (matchCount: 65 , volCount: 59)
ContextMatch: though she was (matchCount: 556,763 , volCount:
364,965)
ContextMatch: though the was (matchCount: 197 , volCount: 196)
ContextMatch: thought ice was (matchCount: 45 , volCount: 45)
ContextMatch: thought ike was (matchCount: 112 , volCount: 108)
ContextMatch: thought she was (matchCount: 549,531 , volCount:
325,822)
ContextMatch: thought the was (matchCount: 91 , volCount: 91)
that I thought she was
Treatment: Results
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
17
Treatment: Results
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
18
Diagnosis: Page Tagging
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
19
 Tags pages with
problems that prevent
good OCR results
 Can be used to apply
appropriate pre-
processing and re-
OCRing
 Eventually, will end up
with a list of pages that
simply need to be re-
digitized
 This will be the first time
any comprehensive
analysis has been done
on these page images.
 Users tag sample pages in
a desktop version of Picasa
 Machine learning
algorithms use those tags
to learn how to recognize
skew, warp, noise, etc.
 Have developed
algorithms to:
 measure skew
 measure noise
Further/Current Work
 Identifying multiple pages/columns in an image
 Predicting juxta scores for documents without
corresponding groundtruth
 Identifying warp
 Identify and fixing incorrect word order in hOCR
output
 can occur on pages with skew, vertical lines,
decorative drop-caps, etc.
 will affect scoring and context-based corrections
Develop measure of noisiness
Develop measure of skew-ness
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
20
The end
For eMOP questions please
contact us at :
mchristy@tamu.edu
egrumbac@tamu.edu
DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP
21
1 of 21

Recommended

Mchristy-eMOP-workflows2-24x7 by
Mchristy-eMOP-workflows2-24x7Mchristy-eMOP-workflows2-24x7
Mchristy-eMOP-workflows2-24x7Matt Christy
1.7K views24 slides
TCDL15 Beyond eMOP by
TCDL15 Beyond eMOPTCDL15 Beyond eMOP
TCDL15 Beyond eMOPMatt Christy
1.3K views31 slides
mchristy-DH2014-emop-bookhistory-tools by
mchristy-DH2014-emop-bookhistory-toolsmchristy-DH2014-emop-bookhistory-tools
mchristy-DH2014-emop-bookhistory-toolsMatt Christy
2.8K views21 slides
eMOP-PennSt-lunch by
eMOP-PennSt-luncheMOP-PennSt-lunch
eMOP-PennSt-lunchMatt Christy
1.4K views41 slides
DLF Forum 2015: Beyond eMOP by
DLF Forum 2015: Beyond eMOPDLF Forum 2015: Beyond eMOP
DLF Forum 2015: Beyond eMOPMatt Christy
1.4K views28 slides
Navigating the Storm: eMOP, Big DH Projects, and Agile Steering Standards by
Navigating the Storm: eMOP, Big DH Projects, and Agile Steering StandardsNavigating the Storm: eMOP, Big DH Projects, and Agile Steering Standards
Navigating the Storm: eMOP, Big DH Projects, and Agile Steering StandardsLiz Grumbach
2.1K views27 slides

More Related Content

What's hot

Dh2014 e mopcobre-complete by
Dh2014 e mopcobre-completeDh2014 e mopcobre-complete
Dh2014 e mopcobre-completeLaura Mandell
2.9K views45 slides
Can functional programming be liberated from static typing? by
Can functional programming be liberated from static typing?Can functional programming be liberated from static typing?
Can functional programming be liberated from static typing?Vsevolod Dyomkin
1.8K views39 slides
SAA 2014 Pre-conference Workshop - OCRing with Open Source Tools by
SAA 2014 Pre-conference Workshop - OCRing with Open Source ToolsSAA 2014 Pre-conference Workshop - OCRing with Open Source Tools
SAA 2014 Pre-conference Workshop - OCRing with Open Source ToolsMatt Christy
2.2K views48 slides
The State of #NLProc by
The State of #NLProcThe State of #NLProc
The State of #NLProcVsevolod Dyomkin
997 views19 slides
Aspects of NLP Practice by
Aspects of NLP PracticeAspects of NLP Practice
Aspects of NLP PracticeVsevolod Dyomkin
1K views37 slides
Crash-course in Natural Language Processing by
Crash-course in Natural Language ProcessingCrash-course in Natural Language Processing
Crash-course in Natural Language ProcessingVsevolod Dyomkin
1.6K views47 slides

What's hot(20)

Dh2014 e mopcobre-complete by Laura Mandell
Dh2014 e mopcobre-completeDh2014 e mopcobre-complete
Dh2014 e mopcobre-complete
Laura Mandell2.9K views
Can functional programming be liberated from static typing? by Vsevolod Dyomkin
Can functional programming be liberated from static typing?Can functional programming be liberated from static typing?
Can functional programming be liberated from static typing?
Vsevolod Dyomkin1.8K views
SAA 2014 Pre-conference Workshop - OCRing with Open Source Tools by Matt Christy
SAA 2014 Pre-conference Workshop - OCRing with Open Source ToolsSAA 2014 Pre-conference Workshop - OCRing with Open Source Tools
SAA 2014 Pre-conference Workshop - OCRing with Open Source Tools
Matt Christy2.2K views
Crash-course in Natural Language Processing by Vsevolod Dyomkin
Crash-course in Natural Language ProcessingCrash-course in Natural Language Processing
Crash-course in Natural Language Processing
Vsevolod Dyomkin1.6K views
Large Scale Text Processing by Suneel Marthi
Large Scale Text ProcessingLarge Scale Text Processing
Large Scale Text Processing
Suneel Marthi3.5K views
Big Data Spain 2017 - Deriving Actionable Insights from High Volume Media St... by Apache OpenNLP
Big Data Spain 2017  - Deriving Actionable Insights from High Volume Media St...Big Data Spain 2017  - Deriving Actionable Insights from High Volume Media St...
Big Data Spain 2017 - Deriving Actionable Insights from High Volume Media St...
Apache OpenNLP1.2K views
Embracing diversity searching over multiple languages by Suneel Marthi
Embracing diversity  searching over multiple languagesEmbracing diversity  searching over multiple languages
Embracing diversity searching over multiple languages
Suneel Marthi1.2K views
Natural Language Processing in Practice by Vsevolod Dyomkin
Natural Language Processing in PracticeNatural Language Processing in Practice
Natural Language Processing in Practice
Vsevolod Dyomkin3.2K views
Crash Course in Natural Language Processing (2016) by Vsevolod Dyomkin
Crash Course in Natural Language Processing (2016)Crash Course in Natural Language Processing (2016)
Crash Course in Natural Language Processing (2016)
Vsevolod Dyomkin1.8K views
Platforms and the Semantic Web by Danny Ayers
Platforms and the Semantic WebPlatforms and the Semantic Web
Platforms and the Semantic Web
Danny Ayers282 views
Quick Tour of Text Mining by Yi-Shin Chen
Quick Tour of Text MiningQuick Tour of Text Mining
Quick Tour of Text Mining
Yi-Shin Chen4.9K views
Quick tour all handout by Yi-Shin Chen
Quick tour all handoutQuick tour all handout
Quick tour all handout
Yi-Shin Chen615 views

Similar to mchristy-Dh2014- emop-postOCR-triage

Learning to assess Linked Data relationships using Genetic Programming by
Learning to assess Linked Data relationships using Genetic ProgrammingLearning to assess Linked Data relationships using Genetic Programming
Learning to assess Linked Data relationships using Genetic ProgrammingVrije Universiteit Amsterdam
664 views28 slides
CNS_poster12 by
CNS_poster12CNS_poster12
CNS_poster12Apurva Kumar
113 views1 slide
2014 khmer protocols by
2014 khmer protocols2014 khmer protocols
2014 khmer protocolsc.titus.brown
6.5K views38 slides
OCR with MXNet Gluon by
OCR with MXNet GluonOCR with MXNet Gluon
OCR with MXNet GluonApache MXNet
2.9K views39 slides
A Distributed Architecture System for Recognizing Textual Entailment by
A Distributed Architecture System for Recognizing Textual EntailmentA Distributed Architecture System for Recognizing Textual Entailment
A Distributed Architecture System for Recognizing Textual EntailmentFaculty of Computer Science
725 views24 slides
defense by
defensedefense
defenseQing Dou
319 views99 slides

Similar to mchristy-Dh2014- emop-postOCR-triage(20)

OCR with MXNet Gluon by Apache MXNet
OCR with MXNet GluonOCR with MXNet Gluon
OCR with MXNet Gluon
Apache MXNet2.9K views
defense by Qing Dou
defensedefense
defense
Qing Dou319 views
Approaching (almost) Any NLP Problem by Abhishek Thakur
Approaching (almost) Any NLP ProblemApproaching (almost) Any NLP Problem
Approaching (almost) Any NLP Problem
Abhishek Thakur9.3K views
Natural language processing and transformer models by Ding Li
Natural language processing and transformer modelsNatural language processing and transformer models
Natural language processing and transformer models
Ding Li613 views
Defensa.V11 by promanas
Defensa.V11Defensa.V11
Defensa.V11
promanas369 views
Machine Reading Using Neural Machines (talk at Microsoft Research Faculty Sum... by Isabelle Augenstein
Machine Reading Using Neural Machines (talk at Microsoft Research Faculty Sum...Machine Reading Using Neural Machines (talk at Microsoft Research Faculty Sum...
Machine Reading Using Neural Machines (talk at Microsoft Research Faculty Sum...
Isabelle Augenstein1.4K views
Atlanta Spark User Meetup 09 22 2016 by Chris Fregly
Atlanta Spark User Meetup 09 22 2016Atlanta Spark User Meetup 09 22 2016
Atlanta Spark User Meetup 09 22 2016
Chris Fregly576 views
ER1 Eduard Barbu - EXPERT Summer School - Malaga 2015 by RIILP
ER1 Eduard Barbu - EXPERT Summer School - Malaga 2015ER1 Eduard Barbu - EXPERT Summer School - Malaga 2015
ER1 Eduard Barbu - EXPERT Summer School - Malaga 2015
RIILP237 views
Beyond the Symbols: A 30-minute Overview of NLP by MENGSAYLOEM1
Beyond the Symbols: A 30-minute Overview of NLPBeyond the Symbols: A 30-minute Overview of NLP
Beyond the Symbols: A 30-minute Overview of NLP
MENGSAYLOEM1148 views
D01 choueka dershowitz_word_spotting_algorithm by evaminerva
D01 choueka dershowitz_word_spotting_algorithmD01 choueka dershowitz_word_spotting_algorithm
D01 choueka dershowitz_word_spotting_algorithm
evaminerva247 views
D01 choueka dershowitz_word_spotting_algorithm by evaminerva
D01 choueka dershowitz_word_spotting_algorithmD01 choueka dershowitz_word_spotting_algorithm
D01 choueka dershowitz_word_spotting_algorithm
evaminerva125 views
Scaling up genomic analysis with ADAM by fnothaft
Scaling up genomic analysis with ADAMScaling up genomic analysis with ADAM
Scaling up genomic analysis with ADAM
fnothaft1.5K views

Recently uploaded

Ch. 8 Political Party and Party System.pptx by
Ch. 8 Political Party and Party System.pptxCh. 8 Political Party and Party System.pptx
Ch. 8 Political Party and Party System.pptxRommel Regala
53 views11 slides
Narration lesson plan by
Narration lesson planNarration lesson plan
Narration lesson planTARIQ KHAN
59 views11 slides
Psychology KS5 by
Psychology KS5Psychology KS5
Psychology KS5WestHatch
103 views5 slides
CUNY IT Picciano.pptx by
CUNY IT Picciano.pptxCUNY IT Picciano.pptx
CUNY IT Picciano.pptxapicciano
54 views17 slides
CONTENTS.pptx by
CONTENTS.pptxCONTENTS.pptx
CONTENTS.pptxiguerendiain
57 views17 slides
Computer Introduction-Lecture06 by
Computer Introduction-Lecture06Computer Introduction-Lecture06
Computer Introduction-Lecture06Dr. Mazin Mohamed alkathiri
102 views12 slides

Recently uploaded(20)

Ch. 8 Political Party and Party System.pptx by Rommel Regala
Ch. 8 Political Party and Party System.pptxCh. 8 Political Party and Party System.pptx
Ch. 8 Political Party and Party System.pptx
Rommel Regala53 views
Narration lesson plan by TARIQ KHAN
Narration lesson planNarration lesson plan
Narration lesson plan
TARIQ KHAN59 views
Psychology KS5 by WestHatch
Psychology KS5Psychology KS5
Psychology KS5
WestHatch103 views
CUNY IT Picciano.pptx by apicciano
CUNY IT Picciano.pptxCUNY IT Picciano.pptx
CUNY IT Picciano.pptx
apicciano54 views
7 NOVEL DRUG DELIVERY SYSTEM.pptx by Sachin Nitave
7 NOVEL DRUG DELIVERY SYSTEM.pptx7 NOVEL DRUG DELIVERY SYSTEM.pptx
7 NOVEL DRUG DELIVERY SYSTEM.pptx
Sachin Nitave61 views
Ch. 7 Political Participation and Elections.pptx by Rommel Regala
Ch. 7 Political Participation and Elections.pptxCh. 7 Political Participation and Elections.pptx
Ch. 7 Political Participation and Elections.pptx
Rommel Regala105 views
Create a Structure in VBNet.pptx by Breach_P
Create a Structure in VBNet.pptxCreate a Structure in VBNet.pptx
Create a Structure in VBNet.pptx
Breach_P75 views
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively by PECB
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks EffectivelyISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively
PECB 598 views
Education and Diversity.pptx by DrHafizKosar
Education and Diversity.pptxEducation and Diversity.pptx
Education and Diversity.pptx
DrHafizKosar177 views
Monthly Information Session for MV Asterix (November) by Esquimalt MFRC
Monthly Information Session for MV Asterix (November)Monthly Information Session for MV Asterix (November)
Monthly Information Session for MV Asterix (November)
Esquimalt MFRC58 views
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB... by Nguyen Thanh Tu Collection
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
The basics - information, data, technology and systems.pdf by JonathanCovena1
The basics - information, data, technology and systems.pdfThe basics - information, data, technology and systems.pdf
The basics - information, data, technology and systems.pdf
JonathanCovena1126 views
The Accursed House by Émile Gaboriau by DivyaSheta
The Accursed House  by Émile GaboriauThe Accursed House  by Émile Gaboriau
The Accursed House by Émile Gaboriau
DivyaSheta212 views
Pharmaceutical Inorganic chemistry UNIT-V Radiopharmaceutical.pptx by Ms. Pooja Bhandare
Pharmaceutical Inorganic chemistry UNIT-V Radiopharmaceutical.pptxPharmaceutical Inorganic chemistry UNIT-V Radiopharmaceutical.pptx
Pharmaceutical Inorganic chemistry UNIT-V Radiopharmaceutical.pptx

mchristy-Dh2014- emop-postOCR-triage

  • 1. eMOP Post-OCR Triage Diagnosing Page Image Problems with Post-OCR Triage for eMOP Matthew Christy, Loretta Auvil, Dr. Ricardo Gutierrez- Osuna, Boris Capitanu, Anshul Gupta, Elizabeth Grumbach
  • 2.  emop.tamu.edu/  DH2014 Presentation  emop.tamu.edu/post- processing  eMOP Workflows  emop.tamu.edu/workflow s  Mellon Grant Proposal  idhmc.tamu.edu/projects /Mellon/eMOPPublic.pdf eMOP Info eMOP Website More eMOP  Facebook  The Early Modern OCR Project  Twitter  #emop  @IDHMC_Nexus  @matt_christy  @EMGrumbach DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 2
  • 3. The Numbers Page Images  Early English Books online (Proquest) EEBO: ~125,000 documents, ~13 million pages images (1475-1700)  Eighteenth Century Collections Online (Gale Cengage) ECCO: ~182,000 documents, ~32 million page images (1700-1800)  Total: >300,000 documents & 45 million page images. Ground Truth  Text Creation Partnership TCP: ~46,000 double-keyed hand transcribed docuemnts  44,000 EEBO  2,200 ECCO DH2014 - Book History and Software Tools: Examining Typefaces for OCR Training in eMOP 3
  • 4. Page Images DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 4
  • 5. The Constraints  45 million page images!  Only 2 years  Small IDHMC team focused on gather data and training Tesseract for early modern typefaces  Great team of collaborators focusing on post-processing  Software Environment for the Advancement of Scholarly Research (SEASR) – University of Illinois, Urbana-Champaign  Perception, Sensing, and Instrumentation (PSI) Lab, Texas A&M University  Everything must be open- source  Focus our efforts on post- processing triage and recovery  Triage system will score page results and route pages to be corrected or analyzed for problems  Results: 1. Good quality, corrected OCR output 2. A DB of tagged pages indicating pre-processing needs DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 5 Solution
  • 6. Post-ProcessingTriage DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 6
  • 7. Post-Processing DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 7 Triage Treatment Diagnosis
  • 8. Triage:De-noising DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 8  Uses hOCR results 1. Determine average word bounding box size 2. Weed out boxes are that too big or too small 3. But keep small boxes that have neighbors that are “words”
  • 9. Triage: De-noising DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 9 Before: 35% After: 58%
  • 10. Triage: De-noising DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 10 Before After
  • 11. Triage: Estimated Correctability DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 11 Page Evaluation  Determine how correctable a page’s OCR results are by examining the text.  The score is based on the ratio of words that fit the correctable profile to the total number of words Correctable Profile 1. Clean tokens:  remove leading and trailing punctuation  remaining token must have at least 3 letters 2. Spell check tokens >1 character 3. Check token profile :  contain at most 2 non-alpha characters, and  at least 1 alpha character,  have a length of at least 3,  and do not contain 4 or more repeated characters in a run 4. Also consider length of tokens compared to average for the page
  • 12. DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 12Triage: Estimated Correctability
  • 13. Treatment: Page Correction DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 13 1. Preliminary cleanup  remove punctuation from begin/end of tokens  remove empty lines and empty tokens  combine hyphenated tokens that appear at the end of a line  retain cleaned & original tokens as “suggestions” 2. Apply common transformations and period specific dictionary lookups to gather suggestions for words.  transformation rules: rn->m; c->e; 1->l; e
  • 14. DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 14Treatment: Page Correction 3. Use context checking on a sliding window of 3 words, and their suggested changes, to find the best context matches in our(sanitized, period-specific) Google 3- gram dataset  if no context is found and only one additional suggestion was made from transformation or dictionary, then replace with this suggestion  if no context and “clean” token from above is in the dictionary, replace with this token
  • 15. DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 15Treatment: Page Correction window: tbat l thoughc Candidates used for context matching:  tbat -> Set(thai, thar, bat, twat, tibet, ébat, ibat, tobit, that, tat, tba, ilial, abat, tbat, teat)  l -> Set(l)  thoughc -> Set(thoughc, thought, though) ContextMatch: that l thought (matchCount: 1844 , volCount: 1474) window: l thoughc Ihe Candidates used for context matching:  l -> Set(l)  thoughc -> Set(thoughc, thought, though)  Ihe -> Set(che, sho, enc, ile, iee, plie, ihe, ire, ike, she, ife, ide, ibo, i.e, ene, ice, inc, tho, ime, ite, ive, the) ContextMatch: l though the (matchCount: 497 , volCount: 486) ContextMatch: l thought she (matchCount: 1538 , volCount: 997) ContextMatch: l thought the (matchCount: 2496 , volCount: 1905) tbat I thoughc Ihe Was
  • 16. DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 16Treatment: Page Correction window: thoughc Ihe Was Candidates used for context matching:  thoughc -> Set(thoughc, thought, though)  Ihe -> Set(che, sho, enc, ile, iee, plie, ihe, ire, ike, she, ife, ide, ibo, i.e, ene, ice, inc, tho, ime, ite, ive, the)  Was -> Set(Was) ContextMatch: though ice was (matchCount: 121 , volCount: 120) ContextMatch: though ike was (matchCount: 65 , volCount: 59) ContextMatch: though she was (matchCount: 556,763 , volCount: 364,965) ContextMatch: though the was (matchCount: 197 , volCount: 196) ContextMatch: thought ice was (matchCount: 45 , volCount: 45) ContextMatch: thought ike was (matchCount: 112 , volCount: 108) ContextMatch: thought she was (matchCount: 549,531 , volCount: 325,822) ContextMatch: thought the was (matchCount: 91 , volCount: 91) that I thought she was
  • 17. Treatment: Results DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 17
  • 18. Treatment: Results DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 18
  • 19. Diagnosis: Page Tagging DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 19  Tags pages with problems that prevent good OCR results  Can be used to apply appropriate pre- processing and re- OCRing  Eventually, will end up with a list of pages that simply need to be re- digitized  This will be the first time any comprehensive analysis has been done on these page images.  Users tag sample pages in a desktop version of Picasa  Machine learning algorithms use those tags to learn how to recognize skew, warp, noise, etc.  Have developed algorithms to:  measure skew  measure noise
  • 20. Further/Current Work  Identifying multiple pages/columns in an image  Predicting juxta scores for documents without corresponding groundtruth  Identifying warp  Identify and fixing incorrect word order in hOCR output  can occur on pages with skew, vertical lines, decorative drop-caps, etc.  will affect scoring and context-based corrections Develop measure of noisiness Develop measure of skew-ness DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 20
  • 21. The end For eMOP questions please contact us at : mchristy@tamu.edu egrumbac@tamu.edu DH2014 - Diagnosing Page Image Problems with Post-OCR Triage for eMOP 21

Editor's Notes

  1. The Early Modern OCR Project (eMOP) is an Andrew W. Mellon Foundation funded grant project running out of the Initiative for Digital Humanities, Media, and Culture (IDHMC) at Texas A&M University, to develop and test tools and techniques to apply Optical Character Recognition (OCR) to early modern English documents from the hand press period, roughly 1475-1800. The basic premise of eMOP is to use typeface and book history techniques to train modern OCR engines specifically on the typefaces in our collection of documents, and thereby improve the accuracy of the OCR results. eMOP’s immediate goal is to make machine readable, or improve the readability, for 45 million pages of text from two major proprietary databases: Eighteenth Century Collections Online (ECCO) and Early English Books Online (EEBO). Generally, eMOP aims to improve the visibility of early modern texts by making their contents fully searchable. The current paradigm of searching special collections for early modern materials by either metadata alone or “dirty” OCR is inefficient for scholarly research.
  2. Some were great most were not Noisy Skewed Warped Or they posed challenges for OCR engines Multiple pages per image Multiple columns Images & decorative elements Marginalia Missing margins many were terrible
  3. CONSTRAINTS: We knew there were plenty of pre-processing algorithms to solve many of these problems, but given these constraints we felt we couldn’t conceivably pre-process all pages with all algorithms. SOLUTION: By making our triage system more robust we could attempt to correct as much as possible, but also identify page image problems and tag each page in the DB so that we’d know what pre-processing should be applied in order to get better results when re-OCRing again later.
  4. Before: 55% After: 73%
  5. This will be the first time that any sort of comprehensive analysis has been done on the page images of these collections.