Computer vision

Pedestrian detection

Computer vision enables many new applications. Self-driving cars, gesture user interfaces, augmented reality, face analysis, and better picture-taking experiences all depend on smart image analysis. This image analysis, whether it’s based on deep learning or classical computer vision,  requires high performance image processing capabilities, which CPUs and GPUs cannot provide. The videantis v-MP6000UDX processor architecture is ideally suited for a wide range of embedded vision applications. Performance improvements of 100x and power reductions of 1000x are typical when comparing against CPUs or GPUs, allowing always-on, deeply embedded, lower power and low cost embedded vision applications.

Deep learning

While deep learning is a relatively new field, we’ve been shipping our vision and image processing optimized solutions already for over 10 years. Our v-MP6000UDX processor architecture provides plenty of horse power to run even the most complex nets and v-CNNDesigner makes it very easy to port your trained networks to our architecture.

Learn more about our deep learning solutions.

Computer vision acceleration

Our comprehensive computer vision acceleration libraries include seamless acceleration for APIs such as OpenCV and OpenVX. In addition, proprietary algorithms can be optimized for our architecture using our state-of-the-art toolchain and prototyped on our hardware development platforms.

We accelerate a large set of image processing functions, seamlessly offloading the host CPU. Examples of vision functions that are available for the v-MP6000UDX architecture:

  • Object detection (Haar/Adaboost, HOG/SVM, CNN)
  • Optical flow (Lucas Kanade, sparse, dense)
  • SLAM or Structure from motion to capture 3D data using a 2D camera
  • Feature detection and description (Harris, MinEigenVal, etc.)
  • Image resizing and pyramid generation
  • Edge and line detection (Canny, Hough)
  • Image operations (add, sub, absdiff, average)
  • Logical image operations (and, or, xor)
  • Filtering (dilate, erode, Laplace, Sobel, Gaussian)
  • Image transforms, (affine transform, warp)
  • Color conversion (RGB to HSV, RGB to gray)
  • Histogram operations

OpenCV

250px_OpenCV_Logo_with_text

The videantis OpenCV library is an adaption of the publicly available open source computer vision library OpenCV, with additions to speed up processing of the OpenCV API functions on systems that have a videantis processor IP integrated. For these accelerated API functions, either the complete processing or parts of the processing are offloaded from the host processor and executed on the videantis subsystem, using optimized firmware. The optimized OpenCV library is scalable, running on multiple cores in parallel.

In the videantis library implementation, the full OpenCV library can run natively on the Host CPU, which means that already existing OpenCV applications can be compiled and will execute completely on the Host CPU. The videantis OpenCV library contains a large set of accelerated functions, which are processed by firmware running on the cores of the v-MP6000UDX subsystem.

OpenVX

OpenVX_300The videantis v-MP6000UDX processor architecture supports acceleration of the OpenVX primitives, resulting in a low-power, high-performance embedded vision system. OpenVX is a standardized, royalty free, and open API for computer vision acceleration, developed by the Khronos Group. Compared to OpenCV, OpenVX is a smaller library with fewer image-processing functions, but is standardized, which warrants portability of the software from one system to another. In contrast to OpenCV, OpenVX uses a graph manager, which can greatly reduce the amount of memory read and write operations, further saving power and increasing performance.

Learn more?

Read about our deep learning solutions, processor IP, video coding, or tools capabilities, or feel free to contact us for more information.