Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Transmit the image larger than 255x255

Hi, I find an intersting question.
I am using TCP and UDP communication tool provided by labview to transmit images through a survelliance camera.
I found that if the image size is greater than 255x255x8 bits (you can vary the size as long as their product is the same), the TCP transmission rate drops dramatically. For the UDP transmission, the image will not be sent anymore.
Could anyone provide me the possible reasons?
So far, I split the image myself and recombine them in the receiver part (but it looks stupid.)
Thanks!
0 Kudos
Message 1 of 4
(3,745 Views)
Hello �

UDP is not a very good way of transmitting images over a network (or Internet). TCP/IP is a more efficient, reliable method.

If the total amount of data has increased, it is normal for the transmission rate to drop. However, if the total amount of data being transmitted (and you are only varying the size), the transmission rate should remain the same.

Please take a look at the following example programs which can get you started programming an application that transmits images over a network.

Using IMAQ Grab to Send Images Over TCP/IP
E88D56A4E034080020E74861&p_node=DZ52507&p_source=External>Compress IMAQ Images to JPEG Streams for F...
Using IMAQ Grab to Send Compressed JPEG Images Over TCP/IP

Also, you might want to take a look at the following Knowledge bases to learn more about TCP.

Streaming IMAQ Images Over a Network (or Internet)
Poor Performance When Using Consecutive TCP Reads

Hope this helps!

S Vences
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(3,744 Views)
Hi,
The case I met is if the image is larger than 255x255x8 bits, the transmitting speed drops "dramatically". It does not follow the linear relation case. For example, for 255x255x8 bits, the TCP transmission can provide me 36 fps. If I set it to 256x256x8 bits, the frame rates drops to 1.4 fps.
For the UDP, I know it is unreliable. However, my test is done using cable with only two pcs connected. The 255x255x8 bits is still a magic number. I can get 48 fps per second under udp. However, if I set the image to 256x256x8 bit, it never transmits anything.
I can attach my code if you accepted.
Thanks for your help again!

Shawn
0 Kudos
Message 3 of 4
(3,744 Views)
Sorry...
One more thing. I read the document you referred. It talks about the Nagle algorithm will help to combine the small packets into one packet to relieve the congestion of the network. Does it mean the TCP tool in labview does not have that capability? Sorry that I am a little bit confused.

Shawn
0 Kudos
Message 4 of 4
(3,744 Views)