01-28-2020 11:57 PM
I want to send the Live camera data from my place to other place with minimum human intervention How can it be done using LabVIEW...
01-29-2020 12:59 AM
You can take a live image, convert it to a numeric array and send the data via TCP/IP to another network connected computer and view it 'live'. The best way is to convert the live image data to jpg string and send the jpg string via TCP/IP. It's a compressed format and will take less memory - the packets will be smaller.
01-29-2020 01:08 AM
Yeah thanks for that and can I do this continuously for some time say 2 hrs in which we can do the conversion of video to jpg string and what all modules do I need to install for this?
NI IMAQ or Vision module or both?
01-29-2020 06:16 AM
@swaroop929 wrote:
Yeah thanks for that and can I do this continuously for some time say 2 hrs in which we can do the conversion of video to jpg string and what all modules do I need to install for this?
You can do that all day long, if you program it right. As long as you consume the incoming data faster that you send the data, you should be ok.
I'd go for lossy PNG, because there is a build in function for that "NI_WebServices.lvlib:PNG Data to LV Image.vi" and "NI_WebServices.lvlib:LV Image to PNG Data.vi" (use quick drop "png"). You can do a similar thing with jpg, but it's not standard in LV.
@swaroop929 wrote:NI IMAQ or Vision module or both?
It depends on how you want to get the images. Compressing and sending it doesn't require a toolkit, but acquiring an image from a camera might.
For the TCP\IP part, I start with an example (use the example finder). There should be client and server TCP\IP examples that send strings. As your compressed data is a string, that should give you a starting point.
You might need to escape characters from the string. You might be able to misuse "NI_WebServices.lvlib:Escape HTTP URL.vi"\"NI_WebServices.lvlib:Unescape HTTP URL.vi" for that.