We have a green light from superbrightleds, but I don’t think it would work well because the field is green. I tried to use grip to find the ball using the rgb value on GRIP, but that only went so far.
You will probably need to do some more advanced image processing using opencv. You may need to use something like this
The problem with doing RGB tracking of the boulder is that it is gray. In other words, you’re trying to track an absence of color sort of speak. You could investigate dynamically thresholding techniques such as Otsu’s method (which opencv has).
while it is not a video feed we were able to process a boulder while it was sitting on a beige table.
It did take some work to get the middle range of RGB to isolate most of the boulder in the picture.
I am unsure what will happen once the boulder start to show some wear.
GRIP is based on OpenCV. I’m not sure how many functions it exposes. There are LabVIEW examples for 2014 and perhaps other years that show an approach to do this using NIVision. Generally, color alone will not be a good enough predictor. I’d hope that your code doesn’t rely solely on color for targets either.
Don’t forget to think about your camera mounting if you are trying to identify a ball. A camera mounted low will see lots of background that intersects with the ball. A camera mounted a bit higher and aims down will see more carpet around the ball. It will also see less shadow. Also, if a silver ball is in a corner with a shiny diamond-plate wall on one side and a reflective lexan wall on the other, you probably shouldn’t expect a camera to be your best sensor option.
Greg McKaskle
After some strenuous testing, we were able to effectively get grip to find the bolder. My advice to you:
-
Using the image processing given, work on try to detect blobs or contours (whichever is more beneficial in the long run) to create an outline of the bolder
-
Mess around with color saturation (we used black and white) in addition to some sort of blur as a way to make a more structured object that looks more whole than the simple contours or blobs pictured in basic
-
There is a custom color script that works like a color drop that’s available somewhere online (I’d look for it but am kind of tied up for a while). We had some success with it, but we found a slightly more effective way following our usage.
I wish you luck with whatever trials in the future!
What kind of accuracy are you getting from using GRIP to do boulder tracking?
I’ll add that if you are planning on tracking the boulder, you will really want to take advantage of the time allotted for calibration at competitions (as guaranteed in section 5.5.8 of the manual).
The lights on the field at a competition are guaranteed to be different from the lights at your school or workspace. Since the balls are not retroreflective and you aren’t shining your own light at them, the calibration you do at home will likely be a little off.
The green light isn’t particularly well designed for bolder tracking- it is useful for the retroreflective tape on the goals because it creates a more or less known color that you can track irrespective of the ambient lighting.