Image Recognition for FIRST Robotics Competitions

First let me say that the openMV V7 board is super cool. I started playing with it today.

I’m working with several High School robotics teams on vision systems for FTC (First Tech Challenge) robots and FRC (First Robotics Competition) robots. We have a variety of use cases to work through. We are experimenting with RPi 3 and the OpenMV platforms. We hope we can do everything with openMV because it will be so much simpler in so many ways.

One use case is to be able to recognize a standard image from the game play. This year’s FTC (fall 2016) game had these four images. If we can get image recognition working for these images I’m pretty confident that we do it for other images in upcoming years.

I’ve only played an hour with the openMV board so I have no detailed knowledge yet. I do know python and have done microprocessing projects with Arduino, RPi, BeagleBoards and more. I have not done much with images other than bright spot location.

I’m thinking these images will vary in color ratios or number of peaks in color histograms to allow detection. A challenge with this is that the brightness on the field varies from shadows to very bright. This year the images were in shadows but in future years that might be different. Also you can see that the two of the images are almost identical to the naked eye B&W characteristics.

I’m looking for any suggestions you might have for which path we should investigate.
Thanks in advance for your help.
Eric aka DaddyOh

Mmm, yeah, this is a hard problem. First question is… How is the camera mounted and looking at these scenes? You could use template matching to look for something only in one image if the height of the camera above everything is fixed. Otherwise doing histogram stuff will be there best best. Note that you can run the histogram on an ROI so you could split the image up into pieces, etc. Look at the get histogram and get stats methods. We also allow you to get the CDF of a histogram too.

Maybe LBP too? Ibrahim, any thoughts? Color and texture seems the best ways to segment.


We have whatever choices on camera mounting that we need. This year the images were maybe 12 inches above the ground and the camera could be at the center height of the image.

I’ll play with this in the next couple of days. I’m sure I will have more questions.

Thanks for the fast reply.