#
Page tree
Skip to end of metadata
Go to start of metadata

Read here the definition of the Perception Core UDP streaming protocol


A machine vision information consists of multiple streams (multiple features) sent by the Perception Core for each scan. The streams are differentiated by an ID described in the header section of each stream.

Version 2 (valid with release 1.0)

BytesTypeNameDescription
0uint8Protocoll Version2 in this case
1uint8Stream IDthis is currently the index. means 0,1,2 for 3 streams 1,2 for 2 streams and so on.
2uint8

Stream Type



0Sensor Raw
1Sensor Preprocessed
2CCI
3Decisions
4Features
5Class Indices (these are color values from the Cases method)
3 - 6uint32Timestampin microseconds since Perception System startup
7 - 10uint32Image Index

index of the image, this data belongs to. usually each packet contains exactly one full image, but in the case, that it needs to be split before transmitting, many packets may refer to one image index

11 - 12uint16Spatial Resolutionspatial resolution of the image. currently constant over all streams of one configuration
13 - 14uint16Spectral Resolution

spectral resolution of the image. may be 1 (grayscale) or 3 (RGB). depends on the model, which was used to create the stream. e.g. a CCI feature will produce a color image stream with spectral size = 3 (RGB), a statistical feature will create a grayscale stream with spectral size = 1

15uint8Bytes per Pixelhow many bytes does one pixel value take in the <Data> field. e.g. 2 if 16 bit data is transmitted, 4 if 32 bit data is transmitted
16 - 19uint32Start Pixel Index

the start pixel index if images are split before transmitting. if it is 0, you get the start of the image (usually the case). if the number is positive, this means you have to append the data from this packet to the last received data to assemble the image (multiple packets may be involved)

20 - 23uint32Pixel Counttotal number of pixels contained in this packet. for non-split images (usually the case) this number equals <Spatial Resolution x Spectral Resolution>
24 - end
Data
(Pixel Count * Bytes per Pixel) Bytes
the actual data, where <Byte per Pixel> defines the number type, e.g. 2 means 16bit int, 4 means 32 bit int.
Stream TypeComment
CCIA pixel-wise color stream of the format: R1G1B1R2G2B2R3G3B3…RnGnBn (R=red, G=green, B=blue)
Stream IDIdentification number of a stream. Corresponds to the Stream ID number defined when adding streams in Studio>Setup>Streams section.

char = 1 byte, int = 4 byte


Version 1 (valid till release 1.0)

stream idstream typedescription
0RGB-streamA pixel-wise color stream of the format: R1G1B1R2G2B2R3G3B3…RnGnBn (R=red, G=green, B=blue)
1mask-stream

A pixel-wise information that transports supplementary information per pixel.

bitdescription
0segmentation (1...foreground, 0...background)
1...31reserved

A stream always consists of a header information section followed by the payload data.


data typeshort descriptiondescription

unsigned

char

version

Version number of the protocol.

unsigned

int

line_number

Line counter.

unsigned

int

line_length

Number of pixels per line.

unsigned

int

start_pixel

Index of the first pixel described in this UDP packet.

unsigned

char

bytes_per_pixel

Number of bytes per pixel (RGB-stream: 3, mask-stream: 1)
unsignedint

pixel_count

Number of pixels per UDP packet.
unsignedintstream_idIdentifier of stream (see table above).
unsigned

char[bytes_per_pixel * pixel_count]

payload

The machine vision stream data.

char = 1 byte, int = 4 byte


 


© 2019 by Perception Park GmbH
The content of this page and any attached files are confidential and intended solely for the addressee(s). Any publication, transmission or other use of the information by a person or entity other than the intended addressee is prohibited. If you receive this in error please contact Perception Park and delete copied material. Perception Park GmbH, Wartingergasse 42, A-8010 Graz; Austria; FN 400381x

  • No labels