LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

image overlay and transmission accross a network

i posted this question on the "machine vision" forum, but did not get any answer. so i will try here...

 

i am using nivision 8, compiling with labwindows/cvi

 

i need to transmit an image accross the network. the image has some important informations overlaid onto it, which i absolutely need to keep. however, the ni vision image structure is not self contained: instead of being a single block of memory whose size can be computed, it is a set of pointers to memory blocks scattered all over the memory. also, the image structure is not documented (especially the way overlay informations are stored), so i can't serialize it myself. how can i transmit my image without losing any information ?

 

please note that:

- merging the overlay is not an option: i will have to resize the image on the destination computer. resizing before merging makes all overlay object disappear, and resizing after merging results in an ugly image where half the overlay has been cut-off by resampling.

-  for performance reason, i would like to avoid using a temporary file. i don't know if imaqWriteVisionFile saves overlay informations (the documentation is not clear on what is considered vision informations), but writing to a file, transmitting it accross the network, saving it to a file on the destination computer and opening it for display will kill the throughput of the application.

 

(as a side note: it would be nice if imaqWriteFile and the likes could write to an already opened file. that would allow for example: to use a socket handle instead of a file handle, or to embed the image into a file along with external informations).

0 Kudos
Message 1 of 2
(2,699 Views)

does anyone needs me to clarify the above message ?

0 Kudos
Message 2 of 2
(2,646 Views)