# Number Recognition? Is it possible?

**URL:** <https://forums.openmv.io/t/number-recognition-is-it-possible/186>\
**Category:** OpenMV Boards\
**Created:** [January 16, 2017, 3:21am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186 "2017-01-16T03:21:10Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![rkguy](https://avatars.discourse-cdn.com/v4/letter/r/c2a13f/32.png) [@rkguy](https://forums.openmv.io/u/rkguy)\
**Post date:** [January 16, 2017, 3:21am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/1 "2017-01-16T03:21:10Z")

</div>

I thought of a project where the openMV could look at an odometer-type meter and quantify the analog output as a digital value.  
Is there any type of HARR that is sophisticated enough to do alphanumeric recognition?  
I imagine that this requires a neural network but I wanted to ask. Ideally I would segment the display into each column and then do a recognition of 0-9 on each segment. I am concerned that a neural net may be necessary to ID the numbers however one positive for the possibility of using openMV is that the numbers are consistent. If i provide consistent lighting then it may be possible to do some simpler “direct” image matching for each number rather than fuzzy matching / classification.

tags: OCR,

---

<div class="post-metadata">

**Author:** ![rkguy](https://avatars.discourse-cdn.com/v4/letter/r/c2a13f/32.png) [@rkguy](https://forums.openmv.io/u/rkguy)\
**Post date:** [January 16, 2017, 3:22am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/2 "2017-01-16T03:22:36Z")

</div>

I am looking for a rating of 1-10 in terms of how hard you think this would be. Anybody try this yet or have code examples?  
Thank you!

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [January 16, 2017, 3:58am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/3 "2017-01-16T03:58:56Z")

</div>

Ibrahim looked into this once for reading digits on a meter. It’s actually possible by using image templates. So what you do is basically take a picture of each number with the OpenMV Cam. Save these as templates, then since the camera will be locked into a fixed position with the display you also know the ROI for each digit. Then you just try all the 0-9 number templates at each location where a digit should be and this will let you get the answer. Ibrahim should be able to post the code I think. That said, this solution can’t really deal with numbers that are scrolling where you see half of one number and another like on an odometer. That said, you could save templates for all in between positions of numbers too.

When I have time in the future I will work on implementing the simplest MINST LENET-5 digit recognizer on the OpenMV Cam. The system is more than powerful enough to do this. But, there’s no pre-canned solution available so it’s going to take 2 weeks on concentrated effort which is time I don’t have right now.

---

<div class="post-metadata">

**Author:** ![prvns](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@prvns](https://forums.openmv.io/u/prvns)\
**Post date:** [January 22, 2018, 9:57pm UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/4 "2018-01-22T21:57:57Z")

</div>

Hi… do you have a MNIST based solution for reading numbers or characters using cam?

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [January 22, 2018, 11:11pm UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/5 "2018-01-22T23:11:52Z")

</div>

Yeah, we do, the next firmware version to be released soon has it working. You can do about 14 FPS.

It’s not instrumented to be super easy to use however yet. It just looks a 28x28 pixel ROI and tells you the number there. So, it will only work for apps where the number location and scale are known.

It’s quite possible to update it to scan a adaptive thresholded image and run it on any number sized blobs found. However, this approach will have a very dynamic frame rate and won’t be able to handle overlapping numbers. We may just make it this way though since handling overlap is very processing intensive.

---

<div class="post-metadata">

**Author:** ![effgee](https://avatars.discourse-cdn.com/v4/letter/e/7ea924/32.png) [@effgee](https://forums.openmv.io/u/effgee)\
**Post date:** [March 9, 2020, 11:20pm UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/6 "2020-03-09T23:20:38Z")

</div>

> [@](#):
>
> Ibrahim looked into this once for reading digits on a meter…

I’ve very interested in doing something very similar.

> [@](#):
>
> Ibrahim should be able to post the code I think.

Any chance of this happening anytime soon ?

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [March 10, 2020, 4:13am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/7 "2020-03-10T04:13:14Z")

</div>

Unless our code has changes the chars74k network we package with the IDE should still work. See the example under machine learning.

---

<div class="post-metadata">

**Author:** ![baeverell](https://avatars.discourse-cdn.com/v4/letter/b/e8c25b/32.png) [@baeverell](https://forums.openmv.io/u/baeverell)\
**Post date:** [April 26, 2021, 11:33am UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/8 "2021-04-26T11:33:00Z")

</div>

Hello, I am just getting started with the OpenMV IDE.  
I cannot seem to find the chars74k network you mentioned - [link](https://github.com/openmv/openmv/tree/master/scripts/examples/OpenMV/25-Machine-Learning)  
Is there a good replacement or place to start? Thank you.

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [April 26, 2021, 4:31pm UTC](https://forums.openmv.io/t/number-recognition-is-it-possible/186/9 "2021-04-26T16:31:18Z")

</div>

Hi, we removed that. Please train a custom CNN using Edge Impulse.
