DTK LPR SDK (Automatic Number Plate Recognition/License Plate Recognition) is a software development kit designed for software developers who want to integrate vehicle license plate recognition into their software products. The LPR Engine detects and recognizes license plates from various video sources (IP cameras, video files, video capture devices) and still images (JPEG, PNG, BMP). The fast and stable LPR Engine is built on the latest technologies and algorithms, provides highly accurate plate recognition from the real-time video at a resolution up to 1920x1080 (Full HD), and supports many plate formats of different countries.
The base programming interface for LPR Engine is C++ native library with header file (<DTKLPR.h>) where defined all available API functions.
However, LPR engine can be used with many other programming languages (like .NET, Java, etc.) and development environments.
The SDK package have samples included for various programming languages, such as C++, C#, Java.
The samples source codes you can find under the following directories:
/samples/cpp
/samples/csharp
/samples/java
/samples/python
etc.
The LPR Engine is a library which is built for different architectures for Windows and Linux operating systems.
The SDK package include the following versions of LPR Engine:
/lib/windows/x64/DTKLPR.dll (Windows 64-bit)
/lib/windows/x64/DTKLPR_Cuda.dll (Windows 64-bit, CUDA)
/lib/linux/x86_64/libDTKLPR.so (Linux 64-bit)
/lib/linux/x86_64/libDTKLPR_Cuda.so (Linux 64-bit, CUDA)
/lib/linux/armhf/libDTKLPR.so (Linux ARM hard-float)
/lib/linux/arm64/libDTKLPR.so (Linux ARM64 / AArch64)
All libraries also require a DTKLPR.dat resource file, which must be placed in the same directory as the library. The library version must match the .dat file version, and you cannot update just the library file while leaving the .dat file from the previous SDK version.
The DTKLPR library require the following dependency libraries:
for Windows:
DTKVID.dll
DTKAVCodec.dll
DTKAVFormat.dll
DTKAVUtil.dll
DTKSWScale.dll
DTKSWResample.dll
for Linux:
libDTKVID.so
libavcodec.so
libavformat.so
libavutil.so
libswscale.so
libswresample.so
Those libraries are located under folders where appropriate version of DTKLPR library is located.
CUDA libraries (DTKLPR_Cuda.dll and libDTKLPR_Cuda.so) require the NVIDIA TensorRT and CUDA runtime libraries.
TensorRT-10.14.1
CUDA 12.6
You can download these libraries from the official NVIDIA website:
TensorRT 10.14.1
https://developer.nvidia.com/tensorrt/download/10x
CUDA 12.6
https://developer.nvidia.com/cuda-12-6-0-download-archive
For the Windows (64 bit) you can download a minimal set of required libraries from the DTK Software website using the link below.
https://www.dtksoft.com/download/windows-x64-trt10.14-cuda12.6.7z
Supported NVIDIA GPU Compute Capability: 7.5 and higher.
The list of supported NVIDIA GPUs you can find using the following link.
https://developer.nvidia.com/cuda/gpus
NOTE: Before using the CUDA library, you need to build the TensorRT engines on your computer. The built engines will be cached on your computer for future use. For more information, see the CUDA Functions section of the documentation.
The license plate recognition (LPR) library includes a specially trained model designed to recognize vehicle make/model and view (front/rear) using a zone around the license plate. Compared to the make/model recognition model included in the VMMR SDK, this model is significantly lighter (to allow for faster processing during real-time recognition) and is specifically trained to "see" the front or rear part of the vehicle, rather than the entire vehicle as implemented in the VMMR SDK. The LPR library provides vehicle make and model information without generation, as implemented in the VMMR SDK.