You are here: Start » Appendices » Deep Learning Service Installation
Deep Learning Service Installation
- Installation guide
- FabImage Deep Learning Library and Filters
- FabImage Deep Learning Service
- FabImage Deep Learning Examples
- FabImage Deep Learning Standalone Editor
1. Installation guide
To use Deep Learning Filters, Library or Service with FabImage Studio or FabImage Library, a corresponding version of FabImage Deep Learning must be installed (the best idea is to use the newest versions of both from our website). Before installation, please check your hardware configuration.
Deep Learning is available in two versions:
- GPU version (recommended) - version working with CUDA GPU acceleration. Much faster than CPU counterpart.
- CPU version - uses only CPU, GPU is not required and used. Relatively slow, especially during training phase.
- Graphics card compatible with CUDA toolkit. List of compatible devices can be found on this website (all CUDA devices with "Compute Capability" greater than or equal 3.5 and less than or equal 8.6). Minimum 2 GB of graphic memory is recommended. Display Driver with at least 461.33 version is required (recommended latest display driver version).
- At least 3.5 GB disk space for program files, SSD recommended.
- At least 8 GB RAM memory.
- 64-bit processor, Intel i5, i7 or better are recommended. AVX support is required.
- Windows 7, 8 or 10.
If you are getting Access Denied errors during updating (or uninstalling), close all processes that may use previously installed Deep Learning files, like programs that need Deep Learning Library, FabImage Studio, FabImage Executor and so on.
2. FabImage Deep Learning Library and Filters
FabImage Deep Learning provides Filters for usage in FabImage Studio in 64-bit version. 32-bit version is not supported.
FabImage Deep Learning also provides Library (with Training Api) in 64-bit version (32-bit version is not supported). It is installed in Library subdirectory of main installation directory. It contains more subfolders:
- bin/x64 – a directory containing DLL file (FILDL.dll) for 64-bit applications written in C++. This library is common for all supported versions of Microsoft Visual Studio and for Debug|Release configurations. This directory also contains FilDl.Net.dll file (along with its documentation in FilDl.Net.xml file), which is .Net wrapper for FILDL.dll.
- include – a directory containing all header (.h) files for Library (FILDL.h) and Training Api (Api.h).
- lib/x64 – a directory containing import library (FILDL.lib) for 64-bit applications. This file needs to be linked into a program that uses Library or Training Api as it serves as intermediary to FILDL.dll.
Installer sets environment variable named
FILDL_PATH5_3 containing path to Library subdirectory.
Exemplary use of
FILDL_PATH5_3 is presented in C++ examples distributed with FabImage Deep Learning.
3. FabImage Deep Learning Service
The Service is installed into Service subdirectory in main installation directory. After starting the Service, a new icon should be displayed in system tray.
The Service icon can be displayed in three colors, indicating the Service status:
- Red - Service is starting or an error has occurred;
- Yellow - Service is ready to accept clients;
- Green - client is connected.
Running filters does not require working Service (this is even discouraged). Training always require running Service, regardless of tool.
Please note: to open the Deep Learning Editor, place a relevant Deep Learning filter (DL_DetectFeatures, DL_ClassifyObject, DL_LocatePoints, DL_DetectAnomalies1, DL_DetectAnomalies2 or DL_SegmentInstances) in the Program Editor, go to its Properties and click on the icon next to inModelId.ModelDirectory parameter.
Alternatively, to open Deep Learning Editor from DL_*_Deploy filter (DL_DetectFeatures_Deploy, DL_ClassifyObject_Deploy, DL_LocatePoints_Deploy, DL_DetectAnomalies1_Deploy, DL_DetectAnomalies2_Deploy or DL_SegmentInstances_Deploy), go to its Properties and click on the icon next to inModelDirectory parameter.
To change the default graphics card, change its index in the settings.xml file in the UsedGPUIndex field. The file can be found in: %APPDATA%\..\Local\FabImage\FabImage Deep Learning 5.3 or click on the Open Log Directory button in Deep Learning Service GUI.
The list of available graphics cards and their indexes is displayed in the Deep Learning Service GUI window.
4. FabImage Deep Learning Examples
Examples are installed only if corresponding component has been selected during installation.
Examples for FabImage Studio are installed into %ProgramData%/FabImage/FabImage Studio 5.3 Professional/Examples directory. It means that they are located next to other Studio examples, which simplifies opening them from Studio. All Deep Learning Examples are prefixed with "Deep Learning".
Examples using FabImage Deep Learning Library and Training Api are located in the Public Documents system folder (e.g. C:\Users\Public\Documents\FabImage Deep Learning 5.3\Examples on Windows 10). Shortcut to this directory can be found in the Start Menu after the installation.
5. FabImage Deep Learning Standalone Editor
Standalone Deep Learning comes in both runtime and professional version installers. It can be very useful to performing training on client site.
Standalone Editor can be executed using command line with following parameters:
DeepLearningEditor.exe path [--alwaysOnTop] [--disableChangingLocation] [--language "language-code"]
- path - path to directory with Deep Learning model,
- --alwaysOnTop (optional) - setting this flag does not allow Deep Learning Editor to be covered by other windows.
- --disableChangingLocation (optional) - user cannot change the model path from the editor.
- --language (optional) - language to be used in the editor. Possible values "en","de","ja","pl","zh_hans","zh_hant".
Standalone editor can be started using additional HMI controls or Execute filter.
Deep Learning Service and Filters logs some information during execution to several files, located at %LocalAppData%/FabImage/FabImage Deep Learning 5.3 directory. Total disk space used by these files should not exceed several MB. Files older than a couple of days are automatically deleted. More information are provided in the documentation of DL_ConfigureLogging filter.
If this disk space requirement is unacceptable, Service can be executed in "minimal logging" mode. This can be achieved by running run_service_minimal_logging.bat script, located at Service installation folder. Note, that it will not lead to any observable performance improvement.
Most common problems encountered by our clients can be separated into two groups:
Problems with installed Nvidia drivers - most problems occurs during loading Deep Learning Filters into FabImage Studio.
Most common error from the console log:
Unable to load filter library "(...)FilDlFilters.dll". Win32 error: The specified procedure could not be found.
Resources exhaustion during the training - training takes to much GPU/System memory that cannot be handled by current system. In such state your computer may
lost stability and different problems my occur.
Most common errors:
Out of memory. Try freeing up hard disk space, using less training images, increasing downsample or resizing images to smaller ones.or
Common reported problems and solutions:
- Invalid or old version of graphical card drivers - verify if your GPU card have supported version of drivers. It can be checked in Window's Control Panel.
Corrupted installation of the GPUs drivers - verify if your GPU drivers are installed properly. In some cases full re-installation of Nvidia drivers may be necessary.
Please verify if following files are found on your computer C:\Windows\System32\nvml.dll and C:\Windows\System32\nvcuda.dll.
- Deep Learning product version is too old for latest version of the latest FabImage Studio - Update Deep Learning to the latest version.
Changes in environment PATH variable may affects how Deep Learning filters works - Remove all paths from PATH variable which may point to Nvidia CUDA runtime DLL. Please verify
where cudnn_ops_infer64_8.dllreturns no results.
- GPU card doesn't meet minimum software requirements - in some cases older GPU cards may encounter runtime problems during training or inference.
- Machine Vision Guide: Deep Learning - Deep Learning technique overview,
- Creating Deep Learning Model - how to use Deep Learning Editor.
|Previous: Quick Start Guide for C/C++ Programmers|