View Single Post
  #2   Spotlight this post!  
Unread 13-02-2013, 22:09
Ginto8's Avatar
Ginto8 Ginto8 is offline
Programming Lead
AKA: Joe Doyle
FRC #2729 (Storm)
Team Role: Programmer
 
Join Date: Oct 2010
Rookie Year: 2010
Location: Marlton, NJ
Posts: 174
Ginto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of light
Re: Getting then manipulating camera images?

Miss Daisy's code from last year is a great example of how to use SmartDashboard and OpenCV to process images and then send the data back to the robot.

As for where to do processing, I would definitely advocate doing it on the driver station laptop. You have much more processing power available and your processing is very unlikely to compromise the robot's operations -- it's much harder to lag a laptop than a cRIO. Also, your camera will only stream to one location, while if you're processing on the cRIO and also providing a stream to the dashboard, that's double the bandwidth usage. This can be minimized by having the camera send images to the cRIO with a lower frequency, but it can't be entirely eliminated if both are receiving images.

The image, by the way, is not on the cRIO. All images are streamed directly from the camera, and if you are processing on the laptop, the cRIO does not receive any images at all. SmartDashboard uses the FFMPEG library to retrieve the images from the camera, so you don't have to worry about that bit.
__________________
I code stuff.
Reply With Quote