Okay, so we’re using vision tracking this year, since we’re shooting for the high goal. We decided to use OpenCV, since we didn’t want to deal with FIRST’s apis or GRIP’s. I wrote up some code for getting images from the camera and did some calculations, and it all works great, except for one thing. 90% of the time I go to take a picture, the entire image is incredibly bright. Have you ever pressed something up close to a webcam and pulled it back and seen the webcam get really bright for a second? Yeah, that type of bright is what we’re getting. I think it may be due to how I’m getting the current image (opening the camera, getting the image, and closing the camera), and I’m not sure how to fix it. I haven’t figured out how to tell the HD Lifecam to not auto-adjust it’s settings, and I haven’t been able to find a working alternative to getting the current image other than just turning the camera on and off. We’re doing the vision processing on the RIO (I’m aware people like to do it on driver stations instead, but the RIO works fine for what we’re doing), so I’d appreciate if any suggestions keep that in mind (I am, however, willing to do it on the DS if there’s no other way). So, to summarize all this and put it into question form:
***** How can I stop the Microsoft HD Lifecam 3000 from adjusting it’s exposure/contrast/brightness/whatever automatically?
***** Is there a better, alternate way, using OpenCV, to grab the current image on the camera (Camera.getImage() returns the next frame the camera saw, not the current one).
Thank you to anyone who helps out. If you can, please provide some example code, as I’m much better at understanding your suggestion/logic if at least some of it is laid out in code.