Need help in Braille character recognition

  • Thread starter Thread starter mimitha
  • Start date Start date
AI Thread Summary
The discussion revolves around the challenge of converting Braille characters into normal text using MATLAB for a final year project. The initial query seeks assistance in developing a character recognition system. Participants highlight the necessity of physical sensors or image recognition techniques to read Braille, emphasizing the complexity of accurately identifying the physical dot patterns. Suggestions include using a 3x2 matrix representation for the Braille dots and employing image processing techniques such as thresholding and centroid location to identify dot positions.Key steps outlined for the project involve scanning Braille documents, determining dot positions and text orientation, and matching these patterns against a predefined array of Braille characters. The conversation also touches on the intricacies of translating Braille, particularly the challenges posed by context-sensitive shorthand in "level 2" Braille, which complicates the recognition process. Overall, while the basic character translation is deemed straightforward, the real challenge lies in accurately interpreting the scanned images and handling the nuances of Braille text.
mimitha
Messages
4
Reaction score
0
Need help in Braille character recognition!

Need Help on Braille character recognition!
Hai is there any1 to help me with the braille character recognition.. i need to convert the braille characters into normal text by using matlab!

Its my final year project i really need a help because i don't even know how to start it... PLS help me with the source code!


~mimitha
 
Technology news on Phys.org


Wait, braille character recognition? Wouldn't that require some sort of physical sensor to read data? You could in theory do image recognition, although the important part about braille is the physical protrusion, making images unreliable (sort of defeats the purpose).

I don't know much of anything about Matlab, but how are you going about getting your input?

DaveE
 


Use an array with 3x2 matrix representations of the dots, corresponding to letters and numbers?
 


davee - by scanning the real braille document

jack the stri - i advised to form an array with the use of region probs, thresholdin, bw label and centroid,location.

and i do have to find the minimum maximum function to get the coordination area
 


mimitha said:
davee - by scanning the real braille document

Scanning? As in, putting a piece of paper with Braille on it on a flatbed scanner, taking the resulting image, and then turning it into normal text? That'll take some doing. I'd assume the steps to take would be:

1) Determine X,Y positions on the image of all dots
2) Determine the angle of text (horizontal, vertical, angled)
3) Determine all the separate lines of text
4) For each line of text, cycle through an array of braille characters to see which one(s) match. Eliminate dots from your map as you recognize characters.
5) Make sure you don't have any dots remaining-- if you do, something's wrong.
6) Display the text translations you matched!

I would think the hardest parts would be recognizing a braille dot, and getting the text angle precisely enough to be accurate.

DaveE
 


post what it looks like from your scanner.
 


I don't really have a real braille documents yet.. but then i asked to define the 3x2 array dots into the matlabs 1st by using the normal braille characters & letters which is shown here http://en.wikipedia.org/wiki/Braille" then once define all the characters inside... and then scanned the real braille document n convert it into normal text so all can read it...
 
Last edited by a moderator:


mimitha said:
i asked to define the 3x2 array dots into the matlabs [...] then once define all the characters inside...

That really seems like an incredibly trivial part of this assignment. Make each dot a "bit" and make a corresponding character translation table. The character "R" for example has bits 1, 2, 3, and 5 turned on, making for a numeric value of 23 (that's following the standard number labelling of Braille dot positions). A translation array might look something like:

0) space
1) A or 1
2) ,
3) B or 2
4) '
5) K
6) ;
7) L
8) N/A
9) C or 3
10) I or 9
... etc ...

Given that letters are the default, and numbers will be in use if following #60 ("number follows" symbol), you could even make TWO arrays-- the first being alphabetic characters, and the second being numeric characters. Probably put in the characters 0-9, and also the "." character (assuming that's how Braille denotes decimal points). Then, when you encounter a #60, you set a flag-- and as long as the flag is set, use the 2nd array to translate rather than the 1st. And if something pops up that isn't defined in your 2nd array, unset the flag and go back to using the 1st array to translate.

Anyway, that part's dead easy.

mimitha said:
and then scanned the real braille document n convert it into normal text so all can read it...

There's your REAL task. Especially if you use genuine Braille documents, which supposedly contain a lot of context-sensitive shorthand, like using the letter "B" to mean "BUT", rather than spelling it out. Here's hoping you don't have to do anything THAT fancy.

DaveE
 
Last edited:


davee123 said:
Anyway, that part's dead easy.

It's not so easy for "real world" Braille, which uses many contractions, or abbreviations, similar to texting. The meaning of a character in the input often depends on its context.

The full description of "level 2" Braille including the contractions is 200 page document. Dealing with "level 3" Braille, which is widely used but not formally specified anywhere so far as I know, would probably be a good topic for a PhD in artificial intelligence.

But you are right that all this is independent of the other major problem, identifying the dot patterns from a scanned image.
 
Back
Top