|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
||||
|
||||
|
Camera resolution might be too much for bandwidth?
Hi everyone,
My team is using the Axis M1011 camera with a resolution of 640X480,20 fps,(I think 30% compression) Could there be a problem with the band width limit or it it ok? If too much could it be enough to lower fps and increase compression?(We really want to use the current resolution) Thanks! |
|
#2
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
If you are using the default or LV dashboard, it includes an indication of the bandwidth being used and an LED that will be green, yellow, or red based on the value.
I thought there was a screensteps that showed how to display the bandwidth usage printed on the image, but I couldn't find it this morning. I suspect that your camera settings are over the limit and will need to be either more compressed, lower the framerate, or both. The bandwidth is proportional to the framerate, and pixels, so using the next lower size will cut usage by 4x. Compression is not a linear scale, so is harder to predict. Greg McKaskle |
|
#3
|
||||
|
||||
|
Re: Camera resolution might be too much for bandwidth?
I'm not sure what compression we're using, but we can get 640x480@10fps using roughly 1.5 Megabits. We've verified it via Wireshark and our own counter in our Java display. It spikes to 2.2Megabits every so often though, thus we'll give it plenty of overhead.
|
|
#4
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
That is a good benchmark. 20fps would double the bandwidth at the same compression, which I'm guessing is more than 30.
I know the bandwidth numbers for the field were largely based on camera usage. The intent was to leave enough bandwidth for multiple lower resolutions cameras per robot or a single 640x480. Greg McKaskle |
|
#5
|
||||
|
||||
|
Re: Camera resolution might be too much for bandwidth?
Thanks guys!
I'll lower the fps and check. From your experience was 10 fps good enough for the drivers to use?(Our camera is mainly used for vision but assisting the drivers could be nice as well) |
|
#6
|
||||
|
||||
|
Re: Camera resolution might be too much for bandwidth?
Just to use for comparison, we use the following settings.
320 by 240, 15 FPS, 30 compression. Our bandwidth utilization is around 1.5 megabits. This image is sufficient for on board image processing and Driver utilization. |
|
#7
|
||||
|
||||
|
Results after changing:
640x480 Resolution,10 fps,30% compression Takes up 3 mb/s(according to the dashboard), Changed settings don't seriously affect the vision proccessiong or drivers ![]() |
|
#8
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
I believe the default encoding for the M1011 camera is MJPEG. The camera also supports H.264 and MPEG4, which use dramatically less bandwidth.
Does anyone know if it's possible to configure the stream from the camera to the DS to use MPEG4? Doing so directly on the camera via its web config interface doesn't have any effect on the stream used by the DS - it appears the DS is over-riding the on-camera settings, probably via VAPIX or ONVIF. |
|
#9
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
At present, I've only found MJPEG support in the driver station. MJPEG is basically just a stream of standalone JPEG images (I-Frame Only) so the driver station just provides a JPEG decoding function.
H.264 is more complex and would also induce some delay in the picture (amount depends on specific usage). I'm not sure you would want that it even if you could get it. |
|
#10
|
||||
|
||||
|
Re: Camera resolution might be too much for bandwidth?
Quote:
|
|
#11
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
In our case, the DS isn't doing any processing. It's just displaying the stream. We have a simple crosshairs overlay configured on the camera via its web interface that is used for manual aiming by the driver/shooter.
Does anyone know what implementation the DS uses to render the stream? Is it Windows Media, the Axis Media Control (AMC), QuickTime, something else? |
|
#12
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
The FIRST LabView updates have a Sub-VI in the getcamera VI to decode the JPEG to BMP. It then uses LabView to render the BMP on the DS. How Labview does it is a question for NI. I would assume the C++ & Java versions have a similar function.
|
|
#13
|
|||
|
|||
|
Re: Camera resolution might be too much for bandwidth?
The LV Dashboard decodes using NI-IMAQ. It takes in the JPEG stream and an allocated image. If the buffer contains a valid JPEG, it updates the image. The display is the built-in LV display that is specific to NI IMAQ image format, supports ROI and overlays, etc.
I believe the Java smart dashboard uses a media control, but that is a guess. The NI-IMAQ doesn't include a codec for H.264 and other formats since they are rarely used in industrial settings. If you are going to use the H.264 with LV, delete the IMAQ display and use an ActiveX media control instead, update the camera CGI request and glue the two together. Greg McKaskle |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|