![]() |
Finding green/pink flags
Hi everyone,
I am trying to use the Axis Camera to locate green and pink flags. However, it fails when actually finding the colors. Here's the relevant portion of my code so far: Code:
int i = StartCameraTask();I've tried it with PINK as well with the pink flag, and I've tried changing PASSIVE_LIGHT to FLORESCENT (neither work). Has anyone had any success with getting the camera to recognize the flags/know what I'm doing wrong? Thanks, Kevin |
Re: Finding green/pink flags
I have had the same problem. I also tried.
Code:
if (StartCameraTask(10, 0, k160x120, ROT_0) == -1){Code:
ParticleAnalysisReport par; |
Re: Finding green/pink flags
Try this,
1. Log into the camera 2. Goto Advanced Settings and set White Balance to Hold 3. Goto Settings and turn down the brightness 20% of what it's set too 4. Goto Live video settings and take a screen shot (Alt + Print Screen) 5. Open MSPaint and Paste in the Picture, save as a JPG 6. Open Labview Vision Assistant, Open the file, and 7. Select Color, then Color Threshold, and then Color Model:HSL 8. Play with the Hue, Sat, Lum levels until most of the target is high lighted red 9. Set the new levels by updating tdata parameters, here is the list, these worked for me. You only need to set the values you changed in Vision Assistant. //tdata.hue.minValue = 60; //tdata.hue.maxValue = 80; //tdata.saturation.minValue = 34; //tdata.saturation.maxValue = 200; //tdata.luminance.minValue = 128; //tdata.luminance.maxValue = 240; Edit: Also, it's a really good idea to start with the simple tracker demo 100% unmodified. Then you can tell if it's you or the camera values. |
Re: Finding green/pink flags
My friends and I are trying to get the Axis Camera to find the green/pink flags, but we are having a problem getting the camera to recognize anything and it didn't say it failed to recognize the camera, so what could help make it work?
The camera is just not working all together, but it is connected and on so we are in a jam. any Ideas? |
Re: Finding green/pink flags
Did you run the Camera Configuration Utility? Are you using the orange CAT-5 cable? Are you using the example? Does it work connected to your PC?
|
Re: Finding green/pink flags
There will be example code posted soon that will do the detection of the two color targets. The code will be able to differentiate between the red and blue alliances.
|
Re: Finding green/pink flags
Alright thanks very much for the help
|
Re: Finding green/pink flags
Actually it is still not working we used the CAT-5 and still are getting no feedback.
So the programmer and I are at a loss. also the utility isn't working so any ideas what to do? |
Re: Finding green/pink flags
Hey all-
I'm running WindRiver, and I'm running the SimpleTracker example code. I've used the NI Vision Assistant to get color values for my green vision target, and put those into the WindRiver code. Code:
tdata = GetTrackingData(GREEN, FLUORESCENT);Help, please? |
Re: Finding green/pink flags
the simple tracker demo 100% unmodified did not find anything...
|
Re: Finding green/pink flags
Quote:
Dave D |
Re: Finding green/pink flags
Oh ok that's good to know. Thanks. Any ideas as to when the code with those functions fixed will be posted. I looked through the functions but couldn't find the error (though I didn't spend that much time since you said its already fixed). The sooner its up the better. On that note I just wanna thank all the people who wrote and are writing this library (it makes all our lives much easier).
|
Re: Finding green/pink flags
Quote:
If you're a team that simply can't wait, you can look at GetLargestParticle and FindColor in TrackApi.cpp. Notice that GetLargestParticle never actually returns the largest particle index to the 2nd parameter. The code to return isn't there, and in the 2nd line of the function it actually blows away the pointer value so it becomes impossible to return the largest particle index. Since it's probably not a good idea to go fiddling with the supplied code unless you know what you're doing, I'll leave it as an exercise to the reader to figure out what to do. Further, in the full-size version of FindColor, its check for success is incorrect. Rather than "if(largestParticleIndex == 0), it seems that it should be if(largestParticleIndex >= 0) in case the largest particle is not the first one. |
Re: Finding green/pink flags
Quote:
|
Re: Finding green/pink flags
I helped team 1124 make the red/blue target tracker with great success (double thumbs up).
in labview, you basically copy the image from the camera, do a color threshold for each picture, do a particle report for each picture, and decide which one of those reports is the "top" color and which is the "bottom" color. once you have that data, you run a loop as follows: for each "top color: check if the area of the color is big enough. if so: for each "bottom" color: check if the bottom color is directly below (with some tolerance) the "top" color. add the "top" target to the output targets array that basic algorithm allowed us to differentiate between red/green targets and green/red targets. there was a slight bit of extra post-processing to deal with multiple visible targets (basically you pick the uppermost one or the largest one etc). what you do with the final target(s) is up to you... we cached the previous target position and velocity to do second-degree motion prediction for the target in case we lose it. (amongst other things) |
| All times are GMT -5. The time now is 02:41. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi