|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#1
|
|||||
|
|||||
|
USB vs IP Camera
We used last years IP camera for driver help on our dashboard. While it functions well the size of the camera has become a problem.
We have a USB camera that we purchased for early vision processing testing that is much smaller and could be fitted into a more advantageous place. Our programmers are reluctant to switch cameras because the say if something goes wrong with the camera it will crash the code and put us out of a match. Is this assumption accurate, can it be avoided. We would be using the camera strictly for driver aid. We are programming in Java Thanks |
|
#2
|
||||
|
||||
|
Re: USB vs IP Camera
Quote:
|
|
#3
|
|||
|
|||
|
Re: USB vs IP Camera
This doesn't have to be true. They can write a separate program which interfaces with the USB camera and runs in a separate process from the main Robot program. So that, if the USB program ever dies, it does not crash your robot program.
There are other ways to do this as well in your main program, just handle all the Errors Properly, and test your code with the camera plugged in and unplugged to ensure it is robust and reliable. However, if it were my team, I would stick with the IP camera, or buy a smaller cheaper IP camera. It sounds like you are not doing any processing, and just accessing the stream of the camera from the camera itself on the driverstation. Because it appears you aren't doing any processing if you use a webcam via the USB, you will need to write a program on the RoboRio that grabs frames and feeds it to your DS, while this should be a minimal task, it means that you are giving up CPU on ur RoboRio for this task. Which I would never recommend to do, just for a view on the DS. The beauty of using the IP cam is that no additional hardware is required because it is streaming the video for you. However, if you are ok with giving up some of the CPU, then make a separate program to avoid crashing worries. You can take a look at our OPENCV example we released for the Microsoft USB cam this year. My recommendation is to use our version of OpenCV if you want to access the USB camera via the RoboRio. While we only tested it with the Microsoft HD3000 camera during beta testing, it should work for other cameras, and will be a step in the right direction if you go the USB camera route. Hope this helps, Kevin Last edited by NotInControl : 11-03-2015 at 19:05. |
|
#4
|
||||
|
||||
|
Re: USB vs IP Camera
Depends on to what the USB camera is plugged in.
Also depends on how you service the USB camera. If you plug the USB camera into a coprocessor and you feed IP from there you still have a USB camera now on IP. If you plug the USB camera into the RoboRio now you need to make sure you service the camera in such a way that if something odd happens you continue to run. Either way works but now you are in competition season. Might be asking a lot from your programmers to change this right now. In the past Team 11 used USB cameras from a wide variety of companies on a Gateway netbook on the robot. The data would be processed on that netbook and instructions like: LEFT, RIGHT, SHOOT where delivered by DIO, UDP or I2C to the cRIO. Even if the netbook entirely failed these same functions could be operated manually even if it happened in mid-match. We could stream either a series of pictures or low quality video to the DS computer. Last edited by techhelpbb : 11-03-2015 at 19:13. |
|
#5
|
|||
|
|||
|
Re: USB vs IP Camera
Be forewarned, if you want to display the camera on a dashboard and use anything but the LabView Dashboard, getting it to work will be a pain. You will have to install a patched widget that someone on Chief Delphi (graciously) made. Even with that widget we couldn't get the camera to work consistently enough were it would be worth it to constantly waste bandwidth.
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|