
10. API USAGE INFORMATION
10 API Usage Information
10.1 General Information
The cross-platform libvisiontransfer C++ API is available for interfacing cus-
tom software with SceneScan. For Windows, a binary version of the library is
available that can be used with Microsoft Visual Studio 2013 and 2015. For
Linux, please compile the library from the available source code. The API is
included as part of the available software release, which can be downloaded
from our support website
The libvisiontransfer API provides functionally for receiving the processing
results of SceneScan over a computer network. Furthermore, the API also
allows for the transmission of image pairs. It can thus be used for emulating
SceneScan when performing systems development, or for transmitting image
data to SceneScan when using network image input.
The transmitted processing results always consist of two images. Usually
these are the rectied left camera image and the computed left camera dispar-
ity map. If congured, however, SceneScan can also provide the raw camera
images or the rectied images of both cameras (see Section 9.4).
Original and rectied camera images are typically transmitted with a bit-
depth of 8 bits or 12 bits per pixel. The disparity map is always transmitted
with a bit depth of 12 bits. Inside the library, the disparity map and any 12-bit
images are inated to 16 bits, to allow for more ecient processing.
The API provides three classes that can be used for receiving and trans-
mitting image pairs:
•
ImageProtocol is the most low-level interface. This class allows for the
encoding and decoding of image pairs to / from network messages. You
will have to handle all network communication yourself.
•
ImageTransfer opens up a network socket for sending and receiving im-
age pairs. This class is single-threaded and will thus block when receiving
or transmitting data.
•
AsyncTransfer allows for the asynchronous reception or transmission
of image pairs. This class creates one or more threads that handle all
network communication.
Detailed information on the usage of each class can be found in the available
API documentation.
10.2 ImageTransfer Example
An example for using the class ImageTransfer to receive processing results
over the network, and writing them to image les, is shown below. This source
http://nerian.com/support/software/
41