Answer the question
In order to leave comments, you need to log in
How to tell the time on an analog clock using machine vision?
Task: Determination of time (hour) using a photo from a smartphone camera on an analog clock with an accuracy of up to 3 hours (it can be better).
Conditions:
1) Smart camera is not the worst, iphone 6 landmark, etc. and medium and top solutions on android.
2) The clock is the same, in theory it will be a cardboard layout that all users will have the same and, accordingly, the colors of the hands and the dial can be selected as you like.
On this issue, I found trackingjs which can determine what is needed if it is given a file from opencv that is properly trained. Will this method work? Is it possible to train such a file? Will the required accuracy be achieved?
Answer the question
In order to leave comments, you need to log in
On the layout of the dial, apply fiducial marks to make it convenient to align the image.
You shoot the dial for 12 hours every minute - you get a set of reference images - about 720 images of the corresponding time within a 12-hour period.
Now we determine the time using machine vision:
1. We take a picture of the clock.
2. Align the image by fiducial marks, crop, scale, convert to the required format for comparison with reference images.
3. Find the most similar image from our set of reference images. It will match the time on the picture.
You don’t need neural networks and training here, it’s like going to a nearby store for bread, by helicopter, sitting on it in a neighboring city.
A clock is a set of lines and circles, use opencv to look for them (i.e. vectorize the image) then select only those segments that look like a clock (circle of the hours marks, hour and minute hands, optional numbers), so you understand which of lines - arrows, and then either through the numbers, or through the orientation of the phone (if there are no numbers), determine where the top is and where the bottom is.
With the help of Hough Transform and OpenCV, you can find the circle and arrow lines.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question