![]() |
Re: Live Video on Dashboard
I would really like to get a look at the code when you get time to post it. I do not really get what everything means but I want to learn, and our programmers are going to start on a code to try to get this to work and we are prolly gonna need all the help we can get.
|
Re: Live Video on Dashboard
Everybody seems to be doing great on this thread. I only have a few things to add. I've seen the camera timing get flaky when compression is set too high. I'm not sure where the threshold is or if it involves images size or is simply affected by compression factor. By flaky I mean that the image framerate will drop because some frames will take two periods to be sent.
Also, modifying the image and recompressing on the cRIO doesn't seem like a good use of CPU time. If you can find a single camera setting so that the image can be piped to the dashboard, that will have minimal impact on other tasks and will get the highest framerate to the dashboard. Greg McKaskle |
Re: Live Video on Dashboard
Quote:
Quote:
It should be noted that our application was essentially a monitor to tell our operator if he should push the "dump" button, since our robot was tall and opaque; we weren't actually trying to drive the robot real time with this. It's my opinion that basically no matter how good you get the video framerate/quality, it's not going to be able to beat just watching the field for driving ability, due to the camera's relatively narrow field of view. I don't say this to discourage anyone, just to make sure teams are being reasonable about what this can accomplish. Quote:
However, I was finding that by using parallel while loops, I could keep the bottle neck as the network transfer speed (granted we were still using 10 frames to transfer one image). Again, I'll have to do more rigorous testing, but it seems like most teams won't be doing much else with CPU time than running a basic driver control loop, and using parallel whiles with appropriate considerations for timing should keep this running smoothly. --Ryan |
Re: Live Video on Dashboard
I'm extremely new to LabVIEW programming, and I'm wondering if I can have a copy of your Dashboard code if you actually got it working. Thanks.
|
Re: Live Video on Dashboard
I am new to programming things to send over a network. How do you compress files and images in the C++ code. How would i uncompress the files and images in VB.NET. I would love to see the hard code of the camera feed functions.
|
Re: Live Video on Dashboard
Quote:
Basic Robot Main.vi Computer Dashboard Note that the critical parts of the robot code are the two while loops at the top of the program. The rest is just drive code etc. For people who want to experiment, I'd recommend copying those two loops into their own code. Some changing of IP addresses might be required, I'm not sure if I hard coded any in. Again apologies for the sloppy code. --Ryan |
Re: Live Video on Dashboard
Quote:
There's also a series of imaqWriteTYPEFile functions, but these write to the filesystem, so you would then have to read in the file again in order to send it over the network. Unless of course someone knows if there are/how to use pipes in VxWorks. Assuming you've gotten your JPEG over the network unconvoluted Code:
Dim im = New Bitmap(stream)Code:
Dim im = New Bitmap(New IO.MemoryStream(byteArray)) |
Re: Live Video on Dashboard
Quote:
Thanks for your help! |
Re: Live Video on Dashboard
Quote:
This part of the code isn't mine; if you open up the default Build DashBoard Data.vi, you'll see a similar thing happening, which is where I got the code from. Let me know if you have any other questions. --Ryan |
| All times are GMT -5. The time now is 20:35. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi