1 Vision Transfer Library 5.0.1
2 -----------------------------
4 The given library provides functionally for receiving and transmitting
5 image pairs over a computer network. The intended use for this library
6 is to receive output data from Nerian's SceneScan or SP1 systems.
7 However, the library also provides functionality for transmitting image
8 pairs. It can thus be used for emulating SceneScan/SP1 when performing
9 systems development, or for transmitting image data to SceneScan/SP1
10 when using network image input.
12 Images can be transferred with a bit depth of either 8 or 12 bits. When
13 receiving 12-bit images, the library inflates the images internally to
14 16 bits, in order to allow for more efficient processing.
16 When receiving data from SceneScan/SP1, the first image of an image pair
17 is typically the rectified image of the left camera, with a bit depth of
18 8 or 12 bits. The second image is typically a disparity map with subpixel
19 resolution, which is transmitted as a 12-bit image. Each value in the
20 disparity map has to be divided by 16 in order to receive disparities at
23 There exist three possible ways for receiving and transmitting image
26 * `ImageProtocol` is the most low-level interface. This class allows for the
27 encoding and decoding of image pairs to / from network messages.
28 You will have to handle all network communication yourself.
30 * `ImageTransfer` opens up a network socket for sending and receiving
31 image pairs. This class is single-threaded and will thus block when
32 receiving or transmitting data.
34 * `AsyncTransfer` allows for the asynchronous reception or transmission of
35 image pairs. This class creates one or more threads that handle all
36 network communication.
38 Further, the library includes the class `Reconstruct3D`, which can be used
39 for transforming a received disparity map into a set of 3D points.
41 [Changelog](CHANGELOG.md)