SlideShare uma empresa Scribd logo
1 de 33
Calcutta Institute of Engineering and
Management
CS681 Seminar
 Contribution of the Application in real life:
o Our application integrates the working of an OCR with
Braille Translation.
o BrailleOCR is currently the only application that supports
conversion of Image document to Braille format.
o Will help in converting large documents to Braille format
and eventually help a lot of Visually Impaired people.
o Project site: code.google.com/p/brailleocr
o DOI IJCA Paper reference: 10.5120/11664-7254
 Open Source APIs used:
o Tesseract Engine[Open-source OCR Engine]
o Tess4J API [JNA Wrapper for using Tesseract with Java]
o JOrtho API [Java open-source spell checking API]
o Swing Graphics API
 Conversion of an Image Document to Braille
consists of the following steps:
Fig. 1. Steps to be Followed
 Conversion of an Image Document to Braille
consists of the following steps:
Fig. 1. Steps to be Followed
 Conversion of an Image Document to Braille
consists of the following steps:
Fig. 1. Steps to be Followed
 Conversion of an Image Document to Braille
consists of the following steps:
Fig. 1. Steps to be Followed
 Pre Processing Steps:
◦ Conversion to grayscale
◦ Conversion of grayscale image to binary
◦ The second sub-step is handled by Tesseract using
adaptive threshold.
 Reason for Grayscale conversion:
◦ Increases the accuracy in the Recognition step as
stated in Ref. [2].
◦ Table 1 gives the Accuracy rate for certain input
images.
Input Image No. of Images Accuracy
Color Image 10 89%
Grayscale Image 10 93%
Table 1: Accuracy of Tesseract
 Different Algorithms available:
 Averaging
 Luminosity method
 Luminosity method Benefits:
 Human perception has more sensitivity for green more that red and red
more than blue
 Wight of green color component is highest followed by red and blue
i.e weight of color channel ∝ sensitivity
 Algorithm Used:
The color image can be represented as a discrete function
f(x,y)=(xi,yj), 0<=i<N, 0<=j<M where N is the height of the image and
M is the width of the image.
for i=0 to N-1
for j=0 to M-1
gr(xi,yj) = 0.299*r(xi,yj)+0.587*g(xi,yj)+0.114*b(xi,yj)
Here gr(xi,yj) is the grayscale image pixel, r(xi,yj) is the red channel, g(xi,yj)
is the green channel and b(xi,yj) is the blue channel
Fig. 2. Scanned Image Fig. 3. Grayscale Image
 What is Optical Character
Recognition?
◦ Conversion of Scanned Image
document to Machine Encoded
Text.
◦ Useful in keeping backup of
important documents as text
format.
 Brief History:
◦ 1929-1975: OCR without
Electronic computers
◦ 1985-2000: Development in
OCR for computers
◦ 2000-2013: Developments of
industrial standard OCR
Fig. 4. OCR implementation
 Tesseract is currently the best Open Source OCR
Engine.
 Developed at HP between 1984 and 1994.
 Released Tesseract for open source in 2005 and
since then Google has taken over the Project.
Project site:
 Google recently launched Tesseract v3.0
 Used with Java Applications using a JNA wrapper
Tess4J.
Project site: code.google.com/p/tesseractocr
 Get outlines by connected
component analysis.
 Organize outlines to
Blobs
 Organize Blobs to Text
Lines
 Characters are chopped
and features are
extracted
Fig. 5. Architecture
 Features are extracted using polygonal
approximation.
 Matched with prototype to find matching patterns.
 The adaptive classifier scans the image twice to get
better result the second time.
Fig. 6. Prototype Matching
 Why Post Processing?
◦ Corrects errors in the previous step
◦ Gives error free text for Braille Conversion
◦ Spell checking systems provide the best results for post
processing step.
 JOrtho API
◦ JOrtho is an open source Java spell checking API that
gives suggestions for commonly misspelled words in the
text.
◦ The key algorithms include phonetic matching
algorithms such as Soundex
◦ Project site: jortho.sourceforge.net
 Soundex Code:
◦ The Soundex Code of a word returns a
alphabet followed by 3 numbers using the
algorithm bellow
 Algorithm:
◦ Retain the first letter of the name and drop
all other occurrences of a, e, i, o, u, y, h, w.
◦ Replace consonants with digits as follows
(after the first letter):
b, f, p, v = 1
c, g, j, k, q, s, x, z = 2
d, t = 3
l = 4
m, n = 5
r = 6
◦ Two adjacent letters with the same number
are coded as a single number. Two letters
with the same number separated by 'h' or
'w' are coded as a single number
Example: “Metacalt”and
“Metacalf” return the same
string M324 as they are
phonetically same
Fig. 7. Spell Cheking
 History of Braille:
◦ Invented by Louis Braille in the 19th century
◦ Accepted throughout the world as aform of
written communication for blind individuals
◦ There have been some modifications to the
Braille system such as inclusion of
concatenated words.
 Use of Braille:
◦ Braille is the primary reading and writing
system used by the visually impaired.
◦ Helps in increasing literacy among the
visually impaired.
◦ In modern world Braille technologies are
supported by various electronic devices.
 Braille Cell:
◦ Braille cells are 6-dot cells having
some dots raised or lowered.
◦ 64 possible combinations.
◦ Used in Braille Refreshable Display
Fig. 9. six-dot Braille cell
Fig. 8 Braille Refreshable Display
 Braille Details:
◦ Grade 1 and Grade 2 are the most
commonly used.
◦ Grade 1 Braille includes single
letters, numbers while grade 2 Braille
includes concatenated words such as
for,with,you, etc..
◦ Numbers (0,1 to 9) are denoted by
(j,a to i) preceded by the number
denoting cell
◦ Compounds letters (ex: and, with,
wh, the,th…) have separate Braille
representations.
◦ Uppercase alphabets have a
preceding Braille cell denoting
capital letter. Fig. 10. Braille representations
 Braille ASCII:
◦ Subset of ASCII character set.
◦ Contains all 64 Braille representations (6-dot cell).
◦ Maps one-to-one ASCII input to Braille code.
◦ Supported by all Braille embossers.
◦ It uses ASCII codes to send information to Braille displays.
 Braille Patterns:
◦ Braille Patterns are Unicode patterns that represent Braille characters.
◦ Consists of 256 combinations of the 8-dot Braille cell. We require
only 64.
◦ Braille embossers and Braille Displays are recently upgraded to
support Unicode Braille.
◦ The Unicode Braille set ranges from U+2800 to U+28FF though we
need only U+2800 to U+283F
◦ In our application, we have focused on Unicode Braille representation.
Braille Code Example:
String: “6 dot Braille Cells for 64 combinations”
Braille:
 The flowchart bellow gives
the entire algorithm of
translation.
Fig. 11. Flow Chart for Translation
 Extracting Text and correcting errors.
Fig. 12. Extracting Text and Correcting Errors
 Translation to Braille
Fig. 13. Converting Text to Braille
 We have showed the process of integrating
Tesseract OCR Engine with Braille Translation.
 Our Future plans are to make it multilingual such
that it can support Bharti Braille too which has
Bengali, Hindi, Gujarati and all other Indian
languages.
 We will also provide better support for Grade 2
Braille as Grade 2 Braille is common now-days.
 Project Site: code.google.com/p/brailleocr
 [1] Tesseract Project Site: code.google.com/p/tesseractocr
 [2] Chirag Ptel, AtulPatel, Dharmendra Patel, Optical Character
Recognition using Tool Tesseract: A Case Study, IJCA, October 2012
 [3] Pijush Chakraborty and Arnab Mallik, An Open Source Tesseract based
Tool for Extracting Text from Images with Application in Braille
Translation for the Visually Impaired, IJCA, April 2013
 [4] R.Smith, An Overview of the Tesseract OCR Engine, Proc. Ninth Int.
Conference on Document Analysis and Recognition , IEEE Computer
Society (2007)
 [5] Ray Smith, Tesseract OCR Engine, OSCON 2007
 [6] Tess4J Project Site: http://tess4j.sourceforge.net/
 [7] JOrtho Project Site: http://jortho.sourceforge.net/
 [8] Soundex Reference: http://en.wikipedia.org/wiki/Soundex
 [9] The Rules of Unified English Braille, International Council on English
Braille(ICEB), June 2001
 [10] Braille ASCII: http://en.wikipedia.org/wiki/Braille_ASCII
 [11] BrailleOCR Project Site: code.google.com/p/brailleocr
Questions?

Mais conteúdo relacionado

Mais procurados

Chapter 02 instructions language of the computer
Chapter 02   instructions language of the computerChapter 02   instructions language of the computer
Chapter 02 instructions language of the computerBảo Hoang
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated AnnealingJoy Dutta
 
Number systems and conversions
Number systems and conversionsNumber systems and conversions
Number systems and conversionsSusantha Herath
 
Writing c code for the 8051
Writing c code for the 8051Writing c code for the 8051
Writing c code for the 8051Quản Minh Tú
 
Image Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine LearningImage Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine Learningijtsrd
 
Processor organization &amp; register organization
Processor organization &amp; register organizationProcessor organization &amp; register organization
Processor organization &amp; register organizationGhanshyam Patel
 
DEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTIONDEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTIONIRJET Journal
 
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒TAAZE 讀冊生活
 

Mais procurados (11)

Chapter 02 instructions language of the computer
Chapter 02   instructions language of the computerChapter 02   instructions language of the computer
Chapter 02 instructions language of the computer
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealing
 
Number systems and conversions
Number systems and conversionsNumber systems and conversions
Number systems and conversions
 
Writing c code for the 8051
Writing c code for the 8051Writing c code for the 8051
Writing c code for the 8051
 
Pattern recognition
Pattern recognitionPattern recognition
Pattern recognition
 
Image Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine LearningImage Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine Learning
 
Processor organization &amp; register organization
Processor organization &amp; register organizationProcessor organization &amp; register organization
Processor organization &amp; register organization
 
DEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTIONDEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTION
 
Deep Learning
Deep Learning Deep Learning
Deep Learning
 
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒
電腦常識(含計算機大意) 中油.台水.捷運.中華電學儒
 
Image captioning
Image captioningImage captioning
Image captioning
 

Destaque

A bidirectional text transcription of braille for odia, hindi, telugu and eng...
A bidirectional text transcription of braille for odia, hindi, telugu and eng...A bidirectional text transcription of braille for odia, hindi, telugu and eng...
A bidirectional text transcription of braille for odia, hindi, telugu and eng...eSAT Journals
 
Braille to text and speech for cecity persons
Braille to text and speech for cecity personsBraille to text and speech for cecity persons
Braille to text and speech for cecity personseSAT Journals
 
2 architecture anddatastructures
2 architecture anddatastructures2 architecture anddatastructures
2 architecture anddatastructuresSolin TEM
 
TCDL15 Beyond eMOP
TCDL15 Beyond eMOPTCDL15 Beyond eMOP
TCDL15 Beyond eMOPMatt Christy
 
reelyActive Brick & Mortar Retail Solution
reelyActive Brick & Mortar Retail SolutionreelyActive Brick & Mortar Retail Solution
reelyActive Brick & Mortar Retail SolutionreelyActive
 
手機自動化測試和持續整合
手機自動化測試和持續整合手機自動化測試和持續整合
手機自動化測試和持續整合Carl Su
 

Destaque (11)

A bidirectional text transcription of braille for odia, hindi, telugu and eng...
A bidirectional text transcription of braille for odia, hindi, telugu and eng...A bidirectional text transcription of braille for odia, hindi, telugu and eng...
A bidirectional text transcription of braille for odia, hindi, telugu and eng...
 
Braille to text and speech for cecity persons
Braille to text and speech for cecity personsBraille to text and speech for cecity persons
Braille to text and speech for cecity persons
 
Tiny Google Projects
Tiny Google ProjectsTiny Google Projects
Tiny Google Projects
 
2 architecture anddatastructures
2 architecture anddatastructures2 architecture anddatastructures
2 architecture anddatastructures
 
TCDL15 Beyond eMOP
TCDL15 Beyond eMOPTCDL15 Beyond eMOP
TCDL15 Beyond eMOP
 
reelyActive Brick & Mortar Retail Solution
reelyActive Brick & Mortar Retail SolutionreelyActive Brick & Mortar Retail Solution
reelyActive Brick & Mortar Retail Solution
 
OCR using Tesseract
OCR using TesseractOCR using Tesseract
OCR using Tesseract
 
Node way
Node wayNode way
Node way
 
Scalable OCR with NiFi and Tesseract
Scalable OCR with NiFi and TesseractScalable OCR with NiFi and Tesseract
Scalable OCR with NiFi and Tesseract
 
From Zero to Data Flow in Hours with Apache NiFi
From Zero to Data Flow in Hours with Apache NiFiFrom Zero to Data Flow in Hours with Apache NiFi
From Zero to Data Flow in Hours with Apache NiFi
 
手機自動化測試和持續整合
手機自動化測試和持續整合手機自動化測試和持續整合
手機自動化測試和持續整合
 

Semelhante a BrailleOCR: An Open Source Document to Braille Converter Application

Bengali Numeric Number Recognition
Bengali Numeric Number RecognitionBengali Numeric Number Recognition
Bengali Numeric Number RecognitionAmitava Choudhury
 
OCR for Gujarati Numeral using Neural Network
OCR for Gujarati Numeral using Neural NetworkOCR for Gujarati Numeral using Neural Network
OCR for Gujarati Numeral using Neural Networkijsrd.com
 
V.karthikeyan published article
V.karthikeyan published articleV.karthikeyan published article
V.karthikeyan published articleKARTHIKEYAN V
 
Character recognition for bi lingual mixed-type characters using artificial n...
Character recognition for bi lingual mixed-type characters using artificial n...Character recognition for bi lingual mixed-type characters using artificial n...
Character recognition for bi lingual mixed-type characters using artificial n...eSAT Publishing House
 
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...Image Processing In Open CV. Image Processing In Open CV. Image Processing In...
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...Antoinette Williams
 
A Biometric Approach to Encrypt a File with the Help of Session Key
A Biometric Approach to Encrypt a File with the Help of Session KeyA Biometric Approach to Encrypt a File with the Help of Session Key
A Biometric Approach to Encrypt a File with the Help of Session KeySougata Das
 
Implementation of Computer Vision Applications using OpenCV in C++
Implementation of Computer Vision Applications using OpenCV in C++Implementation of Computer Vision Applications using OpenCV in C++
Implementation of Computer Vision Applications using OpenCV in C++IRJET Journal
 
Sign Language Detector Using Cloud
Sign Language Detector Using CloudSign Language Detector Using Cloud
Sign Language Detector Using Cloudijtsrd
 
IRJET- Sign Language Interpreter using Image Processing and Machine Learning
IRJET- Sign Language Interpreter using Image Processing and Machine LearningIRJET- Sign Language Interpreter using Image Processing and Machine Learning
IRJET- Sign Language Interpreter using Image Processing and Machine LearningIRJET Journal
 
Girish one year
Girish one yearGirish one year
Girish one yeargirish bb
 
Andromark_Shalabh10103435
Andromark_Shalabh10103435Andromark_Shalabh10103435
Andromark_Shalabh10103435Shalabh Mittal
 
YCIS_Forensic PArt 1 Digital Image Processing.pptx
YCIS_Forensic PArt 1 Digital Image Processing.pptxYCIS_Forensic PArt 1 Digital Image Processing.pptx
YCIS_Forensic PArt 1 Digital Image Processing.pptxSharmilaMore5
 
Deep convolutional neural network for hand sign language recognition using mo...
Deep convolutional neural network for hand sign language recognition using mo...Deep convolutional neural network for hand sign language recognition using mo...
Deep convolutional neural network for hand sign language recognition using mo...journalBEEI
 
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...IRJET Journal
 
Bangla Optical Digits Recognition using Edge Detection Method
Bangla Optical Digits Recognition using Edge Detection MethodBangla Optical Digits Recognition using Edge Detection Method
Bangla Optical Digits Recognition using Edge Detection MethodIOSR Journals
 
Human age and gender Detection
Human age and gender DetectionHuman age and gender Detection
Human age and gender DetectionAbhiAchalla
 
Opticalcharacter recognition
Opticalcharacter recognition Opticalcharacter recognition
Opticalcharacter recognition Shobhit Saxena
 
IRJET- Gesture Recognition for Indian Sign Language using HOG and SVM
IRJET-  	  Gesture Recognition for Indian Sign Language using HOG and SVMIRJET-  	  Gesture Recognition for Indian Sign Language using HOG and SVM
IRJET- Gesture Recognition for Indian Sign Language using HOG and SVMIRJET Journal
 
dic-160603172047.pdf
dic-160603172047.pdfdic-160603172047.pdf
dic-160603172047.pdfAkhilJoseph63
 
OCR speech using Labview
OCR speech using LabviewOCR speech using Labview
OCR speech using LabviewBharat Thakur
 

Semelhante a BrailleOCR: An Open Source Document to Braille Converter Application (20)

Bengali Numeric Number Recognition
Bengali Numeric Number RecognitionBengali Numeric Number Recognition
Bengali Numeric Number Recognition
 
OCR for Gujarati Numeral using Neural Network
OCR for Gujarati Numeral using Neural NetworkOCR for Gujarati Numeral using Neural Network
OCR for Gujarati Numeral using Neural Network
 
V.karthikeyan published article
V.karthikeyan published articleV.karthikeyan published article
V.karthikeyan published article
 
Character recognition for bi lingual mixed-type characters using artificial n...
Character recognition for bi lingual mixed-type characters using artificial n...Character recognition for bi lingual mixed-type characters using artificial n...
Character recognition for bi lingual mixed-type characters using artificial n...
 
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...Image Processing In Open CV. Image Processing In Open CV. Image Processing In...
Image Processing In Open CV. Image Processing In Open CV. Image Processing In...
 
A Biometric Approach to Encrypt a File with the Help of Session Key
A Biometric Approach to Encrypt a File with the Help of Session KeyA Biometric Approach to Encrypt a File with the Help of Session Key
A Biometric Approach to Encrypt a File with the Help of Session Key
 
Implementation of Computer Vision Applications using OpenCV in C++
Implementation of Computer Vision Applications using OpenCV in C++Implementation of Computer Vision Applications using OpenCV in C++
Implementation of Computer Vision Applications using OpenCV in C++
 
Sign Language Detector Using Cloud
Sign Language Detector Using CloudSign Language Detector Using Cloud
Sign Language Detector Using Cloud
 
IRJET- Sign Language Interpreter using Image Processing and Machine Learning
IRJET- Sign Language Interpreter using Image Processing and Machine LearningIRJET- Sign Language Interpreter using Image Processing and Machine Learning
IRJET- Sign Language Interpreter using Image Processing and Machine Learning
 
Girish one year
Girish one yearGirish one year
Girish one year
 
Andromark_Shalabh10103435
Andromark_Shalabh10103435Andromark_Shalabh10103435
Andromark_Shalabh10103435
 
YCIS_Forensic PArt 1 Digital Image Processing.pptx
YCIS_Forensic PArt 1 Digital Image Processing.pptxYCIS_Forensic PArt 1 Digital Image Processing.pptx
YCIS_Forensic PArt 1 Digital Image Processing.pptx
 
Deep convolutional neural network for hand sign language recognition using mo...
Deep convolutional neural network for hand sign language recognition using mo...Deep convolutional neural network for hand sign language recognition using mo...
Deep convolutional neural network for hand sign language recognition using mo...
 
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
 
Bangla Optical Digits Recognition using Edge Detection Method
Bangla Optical Digits Recognition using Edge Detection MethodBangla Optical Digits Recognition using Edge Detection Method
Bangla Optical Digits Recognition using Edge Detection Method
 
Human age and gender Detection
Human age and gender DetectionHuman age and gender Detection
Human age and gender Detection
 
Opticalcharacter recognition
Opticalcharacter recognition Opticalcharacter recognition
Opticalcharacter recognition
 
IRJET- Gesture Recognition for Indian Sign Language using HOG and SVM
IRJET-  	  Gesture Recognition for Indian Sign Language using HOG and SVMIRJET-  	  Gesture Recognition for Indian Sign Language using HOG and SVM
IRJET- Gesture Recognition for Indian Sign Language using HOG and SVM
 
dic-160603172047.pdf
dic-160603172047.pdfdic-160603172047.pdf
dic-160603172047.pdf
 
OCR speech using Labview
OCR speech using LabviewOCR speech using Labview
OCR speech using Labview
 

Último

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...software pro Development
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 

Último (20)

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

BrailleOCR: An Open Source Document to Braille Converter Application

  • 1. Calcutta Institute of Engineering and Management CS681 Seminar
  • 2.
  • 3.  Contribution of the Application in real life: o Our application integrates the working of an OCR with Braille Translation. o BrailleOCR is currently the only application that supports conversion of Image document to Braille format. o Will help in converting large documents to Braille format and eventually help a lot of Visually Impaired people. o Project site: code.google.com/p/brailleocr o DOI IJCA Paper reference: 10.5120/11664-7254  Open Source APIs used: o Tesseract Engine[Open-source OCR Engine] o Tess4J API [JNA Wrapper for using Tesseract with Java] o JOrtho API [Java open-source spell checking API] o Swing Graphics API
  • 4.
  • 5.
  • 6.  Conversion of an Image Document to Braille consists of the following steps: Fig. 1. Steps to be Followed
  • 7.  Conversion of an Image Document to Braille consists of the following steps: Fig. 1. Steps to be Followed
  • 8.  Conversion of an Image Document to Braille consists of the following steps: Fig. 1. Steps to be Followed
  • 9.  Conversion of an Image Document to Braille consists of the following steps: Fig. 1. Steps to be Followed
  • 10.
  • 11.  Pre Processing Steps: ◦ Conversion to grayscale ◦ Conversion of grayscale image to binary ◦ The second sub-step is handled by Tesseract using adaptive threshold.  Reason for Grayscale conversion: ◦ Increases the accuracy in the Recognition step as stated in Ref. [2]. ◦ Table 1 gives the Accuracy rate for certain input images. Input Image No. of Images Accuracy Color Image 10 89% Grayscale Image 10 93% Table 1: Accuracy of Tesseract
  • 12.  Different Algorithms available:  Averaging  Luminosity method  Luminosity method Benefits:  Human perception has more sensitivity for green more that red and red more than blue  Wight of green color component is highest followed by red and blue i.e weight of color channel ∝ sensitivity  Algorithm Used: The color image can be represented as a discrete function f(x,y)=(xi,yj), 0<=i<N, 0<=j<M where N is the height of the image and M is the width of the image. for i=0 to N-1 for j=0 to M-1 gr(xi,yj) = 0.299*r(xi,yj)+0.587*g(xi,yj)+0.114*b(xi,yj) Here gr(xi,yj) is the grayscale image pixel, r(xi,yj) is the red channel, g(xi,yj) is the green channel and b(xi,yj) is the blue channel
  • 13. Fig. 2. Scanned Image Fig. 3. Grayscale Image
  • 14.
  • 15.  What is Optical Character Recognition? ◦ Conversion of Scanned Image document to Machine Encoded Text. ◦ Useful in keeping backup of important documents as text format.  Brief History: ◦ 1929-1975: OCR without Electronic computers ◦ 1985-2000: Development in OCR for computers ◦ 2000-2013: Developments of industrial standard OCR Fig. 4. OCR implementation
  • 16.  Tesseract is currently the best Open Source OCR Engine.  Developed at HP between 1984 and 1994.  Released Tesseract for open source in 2005 and since then Google has taken over the Project. Project site:  Google recently launched Tesseract v3.0  Used with Java Applications using a JNA wrapper Tess4J. Project site: code.google.com/p/tesseractocr
  • 17.  Get outlines by connected component analysis.  Organize outlines to Blobs  Organize Blobs to Text Lines  Characters are chopped and features are extracted Fig. 5. Architecture
  • 18.  Features are extracted using polygonal approximation.  Matched with prototype to find matching patterns.  The adaptive classifier scans the image twice to get better result the second time. Fig. 6. Prototype Matching
  • 19.
  • 20.  Why Post Processing? ◦ Corrects errors in the previous step ◦ Gives error free text for Braille Conversion ◦ Spell checking systems provide the best results for post processing step.  JOrtho API ◦ JOrtho is an open source Java spell checking API that gives suggestions for commonly misspelled words in the text. ◦ The key algorithms include phonetic matching algorithms such as Soundex ◦ Project site: jortho.sourceforge.net
  • 21.  Soundex Code: ◦ The Soundex Code of a word returns a alphabet followed by 3 numbers using the algorithm bellow  Algorithm: ◦ Retain the first letter of the name and drop all other occurrences of a, e, i, o, u, y, h, w. ◦ Replace consonants with digits as follows (after the first letter): b, f, p, v = 1 c, g, j, k, q, s, x, z = 2 d, t = 3 l = 4 m, n = 5 r = 6 ◦ Two adjacent letters with the same number are coded as a single number. Two letters with the same number separated by 'h' or 'w' are coded as a single number Example: “Metacalt”and “Metacalf” return the same string M324 as they are phonetically same Fig. 7. Spell Cheking
  • 22.
  • 23.  History of Braille: ◦ Invented by Louis Braille in the 19th century ◦ Accepted throughout the world as aform of written communication for blind individuals ◦ There have been some modifications to the Braille system such as inclusion of concatenated words.  Use of Braille: ◦ Braille is the primary reading and writing system used by the visually impaired. ◦ Helps in increasing literacy among the visually impaired. ◦ In modern world Braille technologies are supported by various electronic devices.  Braille Cell: ◦ Braille cells are 6-dot cells having some dots raised or lowered. ◦ 64 possible combinations. ◦ Used in Braille Refreshable Display Fig. 9. six-dot Braille cell Fig. 8 Braille Refreshable Display
  • 24.  Braille Details: ◦ Grade 1 and Grade 2 are the most commonly used. ◦ Grade 1 Braille includes single letters, numbers while grade 2 Braille includes concatenated words such as for,with,you, etc.. ◦ Numbers (0,1 to 9) are denoted by (j,a to i) preceded by the number denoting cell ◦ Compounds letters (ex: and, with, wh, the,th…) have separate Braille representations. ◦ Uppercase alphabets have a preceding Braille cell denoting capital letter. Fig. 10. Braille representations
  • 25.  Braille ASCII: ◦ Subset of ASCII character set. ◦ Contains all 64 Braille representations (6-dot cell). ◦ Maps one-to-one ASCII input to Braille code. ◦ Supported by all Braille embossers. ◦ It uses ASCII codes to send information to Braille displays.  Braille Patterns: ◦ Braille Patterns are Unicode patterns that represent Braille characters. ◦ Consists of 256 combinations of the 8-dot Braille cell. We require only 64. ◦ Braille embossers and Braille Displays are recently upgraded to support Unicode Braille. ◦ The Unicode Braille set ranges from U+2800 to U+28FF though we need only U+2800 to U+283F ◦ In our application, we have focused on Unicode Braille representation. Braille Code Example: String: “6 dot Braille Cells for 64 combinations” Braille:
  • 26.  The flowchart bellow gives the entire algorithm of translation. Fig. 11. Flow Chart for Translation
  • 27.
  • 28.  Extracting Text and correcting errors. Fig. 12. Extracting Text and Correcting Errors
  • 29.  Translation to Braille Fig. 13. Converting Text to Braille
  • 30.
  • 31.  We have showed the process of integrating Tesseract OCR Engine with Braille Translation.  Our Future plans are to make it multilingual such that it can support Bharti Braille too which has Bengali, Hindi, Gujarati and all other Indian languages.  We will also provide better support for Grade 2 Braille as Grade 2 Braille is common now-days.  Project Site: code.google.com/p/brailleocr
  • 32.  [1] Tesseract Project Site: code.google.com/p/tesseractocr  [2] Chirag Ptel, AtulPatel, Dharmendra Patel, Optical Character Recognition using Tool Tesseract: A Case Study, IJCA, October 2012  [3] Pijush Chakraborty and Arnab Mallik, An Open Source Tesseract based Tool for Extracting Text from Images with Application in Braille Translation for the Visually Impaired, IJCA, April 2013  [4] R.Smith, An Overview of the Tesseract OCR Engine, Proc. Ninth Int. Conference on Document Analysis and Recognition , IEEE Computer Society (2007)  [5] Ray Smith, Tesseract OCR Engine, OSCON 2007  [6] Tess4J Project Site: http://tess4j.sourceforge.net/  [7] JOrtho Project Site: http://jortho.sourceforge.net/  [8] Soundex Reference: http://en.wikipedia.org/wiki/Soundex  [9] The Rules of Unified English Braille, International Council on English Braille(ICEB), June 2001  [10] Braille ASCII: http://en.wikipedia.org/wiki/Braille_ASCII  [11] BrailleOCR Project Site: code.google.com/p/brailleocr