Log in

View Full Version : Cannot write image to cRIO?


aminnich
29-01-2013, 19:35
We took the FRC 2013 Vision Example and uncommented the proper lines to write a threshold image to the cRIO. However, I am not seeing this image anywhere.

Here is some relevant code. All of the changes are in here; everything else is unmodified from the template.
//while (IsAutonomous() && IsEnabled()) {
/**
* Do the image capture with the camera and apply the algorithm described above. This
* sample will either get images from the camera or from an image file stored in the top
* level directory in the flash memory on the cRIO. The file name in this case is "testImage.jpg"
*/
ColorImage *image;
//image = new RGBImage("/testImage.jpg"); // get the sample image from the cRIO flash

camera.GetImage(image); //To get the images from the camera comment the line above and uncomment this one
BinaryImage *thresholdImage = image->ThresholdHSV(threshold); // get just the green target pixels
thresholdImage->Write("/testImage.jpg");
BinaryImage *convexHullImage = thresholdImage->ConvexHull(false); // fill in partial and full rectangles
//convexHullImage->Write("/ConvexHull.bmp");
BinaryImage *filteredImage = convexHullImage->ParticleFilter(criteria, 1); //Remove small particles
//filteredImage->Write("Filtered.bmp");

vector<ParticleAnalysisReport> *reports = filteredImage->GetOrderedParticleAnalysisReports(); //get a particle analysis report for each particle
scores = new Scores[reports->size()];

Anybody have an idea why an image isn't being written to the cRIO?

Alan Anderson
29-01-2013, 21:49
Anybody have an idea why an image isn't being written to the cRIO?

It looks to me like the entire while loop is commented out.

aminnich
30-01-2013, 17:18
It looks to me like the entire while loop is commented out.
It's commented out because we only want it to write an image once.

Toa Circuit
31-01-2013, 09:14
Change the .jpg and .bmp extensions to .png, I had the problem you had and this worked for me.
Also, you should uncomment these lines so you can see all the images proccessed:

//convexHullImage->Write("/ConvexHull.bmp");
//filteredImage->Write("Filtered.bmp");