You are here: Start » SDK Installation

SDK Installation


FabImage Deep Learning is designed to be a part of applications working under control of the Microsoft Windows operating system. Supported versions are: 10 and 11, as well as the corresponding embedded editions.

To build an application using FabImage Deep Learning, Microsoft Visual Studio environment is required. Supported versions are: 2015, 2017 and 2019.

Running the Installer

The installation process is required to copy the files to the proper folders and to set the environment variables used for building applications using FabImage Deep Learning.

After the installation, a license for FabImage Library product has to be loaded. It can be done with the License Manager tool available in the Start Menu.

To verify that the installation has been successful and the license works correctly, one can try to load, build and run example programs, which are available from the Start Menu.

SDK Directories

FabImage Deep Learning is distributed as a set of header files (.h), dynamic (.dll) and static (.lib) libraries. The libraries (static and dynamic) are provided in versions for 32-bit and 64-bit system. The header files are common for both versions.

The picture below shows the structure of the directories containing headers and libraries included in FabImage Deep Learning.

The directories (installed in the Program Files system folder) being a part of FabImage Deep Learning are shortly described below.

  • ftl_visualizers – a directory containing the visualizers for Microsoft Visual Studio Debugger of FabImage Deep Learning data types.
  • bin – a directory containing dynamic linked library files (FIL.dll) for 32|64-bit applications. The libraries are common for all supported versions of Microsoft Visual Studio and for Debug|Release configurations. All the functions of FabImage Library are included in the FIL.dll file.
  • Documentation – a directory containing the documentation of FabImage Deep Learning, including this document.
  • include – a directory containing all header (.h) files for FabImage Deep Learning. Every source code file that uses FabImage Deep Learning needs the FIL.h header file (the main header file) to be included.
  • lib – a directory containing static (.lib) libraries ( FIL.lib ) for 32|64-bit applications. The FIL.lib file has to be statically-linked into the program that uses FabImage Deep Learning. It acts as an intermediary between the usage of FabImage Deep Learning functions and the FIL.dll file. The programmer creating an application does not need to bother about DLL entry points and functions exported from the FIL.dll file. FabImage Deep Learning is designed to be easy to use, so one only needs to link the FIL.lib file and can use all the functions from the FIL.dll just as easy as local functions.
  • tools – a directory containing the License Manager tool helping the user to load the license for FabImage Deep Learning to the developer's computer.
  • Examples – a directory located in the Public Documents system folder (e.g. C:\Users\Public\Documents\FabImage Deep Learning 1.0\Examples on Windows Vista/7) containing simple example solutions using FabImage Deep Learning. The examples are a good way of learning, how to use FabImage Deep Learning. They can be used as a base for more complicated programs as well. The shortcut to the Examples directory can be found in the Start Menu after the installation of FabImage Deep Learning.

Library Architecture

FabImage Library is split into four parts:

  1. FabImage Library - contains all functions for working with images.
  2. Standard Library - contains all auxiliary functions like: file operations, XML editing or mathematical operations.
  3. GenICam Library - contains all GenICam and GigEVision functions.
  4. Third Party Library - contains functions of third-party hardware producers.

The usage of the library is possible only when including one of the following header files:

  • FIL.h
  • STD.h
  • Genicam.h
  • ThirdPartySdk.h

Environment and Paths

FabImage Deep Learning uses the environment variable named FIL_PATH1_0 (1_0 stands for the 1.0 version) in the building process. The variable points the directory with the headers and libraries needed in the compile time (.h files and FIL.lib ) and in the run time ( FIL.dll ). Its value is typically set to C:\Program Files (x86)\FabImage\FabImage Deep Learning 1.0, but it can differ in other systems.

The projects using FabImage Deep Learning should use the value of FIL_PATH1_0 to resolve the locations of the header files and statically-linked FIL.lib file. Using an environment variable containing path makes the application source code more portable between computers. The FIL_PATH1_0 path is typically used in the project settings of the compiler (Configuration Properties | C/C++ | General | Additional Include Directories) to find the header files, settings of the linker (Configuration Properties | Linker | General | Additional Library Directories) to find the proper version of the FIL.lib and in the configuration of Post-Build Event (Configuration Properties | Build Events | Post-Build Event | Command Line) to copy the proper version of the FIL.dll file to the output directory of the project. All the settings can be viewed in the simple example applications distributed with FabImage Deep Learning.