0
\$\begingroup\$

This question already has an answer here:

For a project I am working on, I need some kind of way for a micro-controller (preferably Arduino, since I have background knowledge) to identify a certain symbol on a piece of paper (e.g. recognising an ampersand drawing), and then run some code depending on what it sees. The more symbols it could recognise, the better.

I understand that for identifying pictures in almost any program, you need a database to refer to. I assume this wouldn't be too difficult, but some tips on managing a database would be appreciated.

If there aren't any simple Arduino programs that exist, I could work with a pre-existing IC built for this purpose (I don't know if that would make sense, but just throwing ideas around). A link to a datasheet would also be appreciated.

\$\endgroup\$

marked as duplicate by Passerby, PeterJ, JRE, Daniel Grillo, uint128_t Apr 8 '16 at 14:46

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 1
    \$\begingroup\$ Rather than arduino have you looked at the Raspberry Pi? I've seen lots of these sorts of projects used with the Pi \$\endgroup\$ – Doodle Apr 8 '16 at 7:46
  • 2
    \$\begingroup\$ It's called Optical Character Recognition and no, it can't be done on a simple microcontroller/MCU based Arduino. You typically need a computer to do it. (maybe a FPGA). Said computer doesn't need to be a powerhouse, a RPi, or a smartphone can do it. \$\endgroup\$ – Passerby Apr 8 '16 at 8:01
  • 1
    \$\begingroup\$ Have a look at the Pixy board for Arduinos they are capable of 2d/3d shape and colour recognition. \$\endgroup\$ – Code Gorilla Apr 8 '16 at 8:26
0
\$\begingroup\$

The question is broad as weak to powerful processors are used in Arduino designs. Here we will assume the original Arduino Uno using the ATmega328 processor is to be used. This processor is too weak to run OpenCV, the popular open-source software normally used for this type of application. Going on, because of limited memory it is likely only low resolution bit mapped graphics can be processed. And any effects which change the scanned image (lighting, rotation, scanning-speed & other variables) will be very difficult to deal with. Controlling the physical world to compensate for these deficiencies, while possible, will tend to make this project impractical.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.