GPGPU acceleration

We support 3 GPGPU acceleration frameworks: CUDA, OpenCL and OpenVINO.

CUDA

We use Tensorflow Deep learning framework which supports CUDA. Tensorflow was used to develop the following modules: Graph computation, Document detection and Document classification.

OpenVINO

For each Tensorflow model there is an OpenVINO equivalent. OpenVINO models can be executed on Intel GPUs, FPUs, FPGAs, CPUs…

OpenVINO is faster (by far) and less memory hungry than Tensorflow on CPUs. We highly recommend enabling OpenVINO to speedup the inference and reduce the memory usage.

OpenCL

The TMMS text segmenter and SVM predictor are accelerated using OpenCL. We wrote our own SVM predictor fully GPUPU-accelerated.
  • TMMS: used to segment the text (for deskewing)

  • SVM: used to classify the text (1 for text -1 for non-text). Mainly applied to the heatmap refiner.

TMMS paper: Text segmentation in natural scenes using toggle-mapping