A different kind of OCR
January 8, 2010 6:52 AM Subscribe
Image Data acquisition.... Is there software out there that can take an image and translate it to data? Kinda like a specialized OCR software.
Ideally I would like to be able to to translate pictures of dials or displays and turn them into data. An example would be taking a picture of the dials on a gas or an electric meter and having those images turned into the corresponding data that the dials represent. Any ideas?
Ideally I would like to be able to to translate pictures of dials or displays and turn them into data. An example would be taking a picture of the dials on a gas or an electric meter and having those images turned into the corresponding data that the dials represent. Any ideas?
Response by poster: I quickly scanned your original answer before the server problems. I walked into work this morning and luckily the tab was still open in Firefox I copied and pasted the original answer here both for my reference and anyone els who might be interested.
-----
This is what the field of computer vision tries to do. It's a fairly active research area. One place where it's been successful is automated number plate recognition (ANPR) where finding the number plate on a car and reading it pretty much works now and there are commercial applications to do the job. Other areas, it's not so developed - very much at the "unfinished and interesting research" end of the computer science spectrum.
What are your constraints? Are the pictures aligned? Are the dials all in about the same place? Are they the same size? Are you able to confirm that the pictures are all the right way up?
There are code libraries that could be used to build something custom, if some or all of these constraints are met - OpenCV is the one I use the most.
For example, if the dials are circular, the right way up, and are like clock faces, I'd probably use a Hough Transform to find the circles in the image; this will hopefully give you the dials. Then you'd have to find the hands, and work out what way they're pointing. You could probably do that with edge detection stuff (e.g. Canny).
If you're not a coder, you might be able to find someone to do it on the cheap/for free if you contact a university with a vision department. I know that some unis where I've worked in the past have run student projects for outside companies or people - this is good for the student as they get an interesting project and also get the "dealing with clients" experience to put on their CV.
posted by jmsta at 5:34 AM on January 11, 2010
-----
This is what the field of computer vision tries to do. It's a fairly active research area. One place where it's been successful is automated number plate recognition (ANPR) where finding the number plate on a car and reading it pretty much works now and there are commercial applications to do the job. Other areas, it's not so developed - very much at the "unfinished and interesting research" end of the computer science spectrum.
What are your constraints? Are the pictures aligned? Are the dials all in about the same place? Are they the same size? Are you able to confirm that the pictures are all the right way up?
There are code libraries that could be used to build something custom, if some or all of these constraints are met - OpenCV is the one I use the most.
For example, if the dials are circular, the right way up, and are like clock faces, I'd probably use a Hough Transform to find the circles in the image; this will hopefully give you the dials. Then you'd have to find the hands, and work out what way they're pointing. You could probably do that with edge detection stuff (e.g. Canny).
If you're not a coder, you might be able to find someone to do it on the cheap/for free if you contact a university with a vision department. I know that some unis where I've worked in the past have run student projects for outside companies or people - this is good for the student as they get an interesting project and also get the "dealing with clients" experience to put on their CV.
posted by jmsta at 5:34 AM on January 11, 2010
« Older How much would a basic online database for... | How do I dynamically render a hyperlink within PDF... Newer »
This thread is closed to new comments.
yes, but the programs are bespoke and it's an active research area. If you're a coder, look into OpenCV. If you're not a coder and you have a specific problem, you might be able to get a student to do it if you've got contacts in a local uni as it'd probably be a cool final year project.
Comment if you need to know more and I'll try to reconstruct my earlier, longer answer.
posted by handee at 3:45 PM on January 9, 2010