Optical Braille Recognition

edited October 2010 in Science & Tech
Hey,

I am absolutely new to MATLAB but have chosen it to develop an application for my final year project. I plan to use it to convert, Braille text into regular text.

Now, I have thought up of several algorithms for doing this but I am not sure which one will work, my school guide has absolutely no knowledge of image processing or MATLAB.

Approach 1: Pattern recognition. I plan to use segmentation, extraction and then create a grid for the 2x3 matrices and use pattern recognition on the back end. Problem, difficult to recognise blank spaces, build dynamic grids and computation complexity is unknown.

Approach 2: Mathematics. I recognise the pixels on the X-Y co-ordinate frame, group them together and try to recognise them. Problem, unknown. But it sounds difficult :p

Any help would be greatly appreciated, cause I am literally a blind man shooting in the dark.

Comments

  • shwaipshwaip bluffin' with my muffin Icrontian
    edited October 2010
    Some combination of the two is probably the best...however it depends on a couple factors:

    Is the braille grid aligned perfectly with the image (not skewed or anything). Will you know the spacing of the dots consistently (across multiple files)? If both of these are true, the task will be easier.

    I'm not familiar with the braille alphabet / punctuation / spacing, so I can't help too much designing your overall algorithm, but may be able to help you a little more with the matlab once you've decided how you want to do it
  • edited October 2010
    @Shwaip,

    Thank you.

    Alright, heres the thing. In practice, there are two types of braille; single embossed and double embossed. I am choosing single embossed style to reduce the complexity. Also, since this hasn't been tried on a project level, my school has allowed me to try to do this using printed, instead of embossed braille (i.e. using a printed Braille font from a word processor like MS Word)

    This is the link which gives the specifications on the Braille font -->

    http://acharya.iitm.ac.in/disabilities/br_intro.php

    (see section, The Braille Cell and Standard English Braille)

    Ill put my entire algorithm in proper format and let u know about it soon.

    :)
  • SnarkasmSnarkasm Madison, WI Icrontian
    edited October 2010
    Interesting project. Coupled with a voice synthesizer, you could devise a setup that could read Braille out loud to somebody.

    If you're certain you have a flat plane without camera skew or anything, the detection should be fairly reasonable to do assuming the page isn't full of As and Cs. I would probably start by scanning for some character with lots of or a simple pattern of dots and, if you find one that matches reasonably, define your grid size and distance measurements based off of that. L is a good letter for this (just three vertical dots in the left column), or P, Q, G, X... Good thing about braille is that, at least for alphabetical text, the patterns aren't really easily confused - i.e. there's three vertical dots in the left column for L, but there's no letter that's three vertical dots in the right column, if I'm reading your link correctly.

    If you can lay out your entire grid, you can theoretically do an OCR on each cell to map out the position of all the dots and map that out to your alphabet. I wrote a small algorithm a while back that I used for doing analyses on cell deposition studies - finding relevant area, standard deviations, dimensions of high-interest regions, distances between things, etc. I simplified the image down to black and white after a few transformations, which leaves you with nice boundaries and discrete regions; I imagine something like that, doing some small image manipulation on your page, would get you something functional like that.

    I didn't mean to write this much, but this is a fun thing to think about. Thanks for sharing. :)
  • edited October 2010
    Snarkasm wrote:
    Interesting project. Coupled with a voice synthesizer, you could devise a setup that could read Braille out loud to somebody.

    ...

    Hey Snarkasm ! Yes it is an interesting project. I haven't actually started coding yet .. I have to create the SRS for this semester. The University I am in, has some stupid fundas which obviously I have to abide to.

    I will post my algorithm and the subsequent coded MATLAB file here eventually ! :)

    Btw my problem definition is something similar to what you are suggesting, it is to convert Braille to regular text and then to audio. I am not sure if and how I am going to execute the audio conversion. I am told there are freely available modules which I can incorporate directly to read the regular text file.
    heineken
  • edited October 2010
    Hai sid-mallaya.. actually im doing the same type of project as u tis semester... there is any chances tht i can contact u..by email or messengers because i have no idea about this project so i might need your help i guess :)
Sign In or Register to comment.