|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Camera Programming
Hey everyone! I'm trying to program a D-link DCS-930L Network Camera. Due to the Cloud Settings on it, I can't get it to connect to my robot. Is there anyway I can get past the Cloud Settings?
|
|
#2
|
||||
|
||||
|
Re: Camera Programming
Quote:
Are you using the WPI Libraries, or some other method? |
|
#3
|
|||
|
|||
|
Re: Camera Programming
I haven't even gotten that far yet. I'm trying to setup the camera so I can access it through the WPI robotics library. I believe I need to enter the IP address still.
|
|
#4
|
|||
|
|||
|
Re: Camera Programming
If it isn't an Axis, WPILib will not work on it. You will have better luck using a web browser to log into the camera and using the web browser as your dashboard or a component in your dashboard.
Greg McKaskle |
|
#5
|
|||
|
|||
|
Re: Camera Programming
First, we should define the protocols. Because Panasonic has its own and D-Link has another. Moreover, we should pay additional attention to the data itself - MJPEG, MPEG2, MPEG4 ....
Last edited by DrTulof : 28-03-2014 at 08:46. |
|
#6
|
||||
|
||||
|
Re: Camera Programming
I am pretty sure there is a way to give the MJPEG stream URL into WPILib instead of just the IP address. Otherwise, you may also use OpenCV or RoboRealm!
After looking at some of our robot code, we just supply the address, "10.11.65.11". I am pretty sure you could find the AxisCamera object and modify it to connect to the right address of the camera! |
|
#7
|
|||
|
|||
|
Re: Camera Programming
The camera runs a web service. If you don't type in the right URL, it won't work. The WPILib camera libraries were built around the commands for Axis. It would actually be a good challenge for you to try and update them to support a new camera, but you would need to follow the documentation quite closely.
Greg McKaskle |
|
#8
|
||||
|
||||
|
Re: Camera Programming
It really depends on the internal workings of the WPILib. If it uses a standard MJPEG stream, you're golden. If it uses a JPEG image downloaded from the AXIS camera (standard: "[IP]/jpg/image.jpg", you are probably golden, otherwise, you'd need to create your own object. In this case, try a simple port of the OpenCV CvCapture because that will give a good standing point! It supports MJPG, and dozens of other protocols/file formats!
|
|
#9
|
||||
|
||||
|
Re: Camera Programming
The AxisCamera class doesn't just get images from the camera. It's able to change exposure, brightness and other settings on the fly.
|
|
#10
|
||||
|
||||
|
Re: Camera Programming
Quote:
. Maybe I could port that to OpenCV so it can change those variables too! ![]() You're brilliant! Thanks! |
|
#11
|
||||
|
||||
|
Re: Camera Programming
OpenCV can already configure those variables with VideoCapture::set
|
|
#12
|
||||
|
||||
|
Re: Camera Programming
If you're using a V4L based camera, you can also change camera settings during active capture. #3574 does that to switch our front facing camera out of autonomous mode to something more usable by a human.
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|