Running GRIP from driver station?

Has anybody had any success with running a GRIP program on the driver station using a camera on the robot? For example, the robot takes an image from a USB camera, sends it to the laptop, processes it, and sends data back over NetworkTables. Is this even possible, as CD and the GRIP wiki didn’t seem to have much on it.

Secondly, how can you change the exposure of this camera in the code, before sending the image to GRIP? I have modified the camera settings but it likes to reset itself. We are using a Microsoft USB Lifecam.

Thanks!

We’ve tested with DS based grip with an IP camera on the bot and it worked smoothly. We used network tables to drive a motor turning the camera as a proof of concept. Definitely do-able.

If you’re pushing video to DS, make sure that you are aware of the bandwidth you’re using based upon compression and resolution. FRC has a table to determine bandwith based upon compression, resolution and frame rate. Additionally, even though you get 7mbps on your wifi, the same FRC document points out that packet latency spikes after using 6mbps.

Brian

Thanks Bryan, it’s good to see that another team did this. How did you go about doing this, and how bad was the latency? Do you think you could describe some of the steps you took to get this set up, and what you had to have open to have it work (GRIP, DS, etc.).

Thanks a lot!

In another thread, I was told that you can’t do this with a USB camera, at least not at this time. You need an IP camera. (The developers were contemplating adding some sort of support.)

We have successfully run grip on the driver station, and exchanged data with the Roborio via network tables.