Over the years, EVS has developed extensive technical and scientific expertise working in the field of Embedded Vision Systems, often in close collaboration with research organizations and universities.
This internationally recognised expertise now allows EVS to offer high-performance embedding services for AI and Computer Vision algorithms.
EVS particularly specialises in the design of FPGA/ASIC solutions to accelerate inference in embedded Machine Learning applications and in the design and implementation of accelerators for vision algorithms.
We are a member of the Xilinx Alliance Program and are proficient in designing optimized solutions for Xilinx SoC (System on Chip) as a preferred platform. Nevertheless, we successfully use other enabling technologies in several projects and are not exclusively limited to the FPGA platform.
Our development and prototyping services include:
- Microarchitecture design
- Data-paths and controller design
- Software/Hardware partitioning and co-design
- FPGA resource occupation estimation
- Bit accurate software modelling of the hardware
- Rapid prototyping with development boards and design tools (e.g., High Level Synthesis and System Generator for DSP)
- Optimized RTL coding (for area, speed, power, memory bandwidth)
- RTL verification. Design of the verification environment, simulation test cases, code coverage, functional coverage
- Static timing analysis
- FPGA Implementation, timing closure
- Hardware/Software integration, System Testing and Debugging. Design of the regression environment, regression test cases, system level validation
- IP core development (AXI compliant, optimized for Zynq SoC).
- Design of problem-specific neural network acceleration engines and custom NPU
EVS is “heart and soul”: research and engineering, together. Research and engineering teams working closely together can build a single heavily optimized embedded software and hardware systems, accurately crafting the algorithms stack, neural network models and Neural Processing Unit (NPU) accelerators in lock-step.
Frequently Asked Questions
Embedded systems are processing systems integrated into a machine (e.g., robots, drones, cars, cameras, etc.). They are often autonomous and connected and are programmed to perform specific functions in a certain environment. Hardware resources are then optimised to achieve the required performances while minimising consumption, size and cost.
The explosion of IoT devices and edge computing are just examples of how embedded systems are becoming increasingly pervasive in technological evolution.
Numerous systems originate on conventional computing platforms, such as PCs and/or servers, often equipped with GPUs, and then need to migrate to embedded architectures to achieve otherwise prohibitive performance/cost targets. Conversely, embedded architectures impose greater limitations on designers than conventional solutions and, for effective use, require a profound knowledge of the problem to be solved and of the architecture itself.
Embedded systems based on Computer Vision and AI, in particular, add significant design challenges due to the amount of data to be processed and performance requirements that often need to be close to real-time.
An efficient embedding of Computer Vision and AI algorithms implies, on the one hand, designing custom accelerators optimised for the algorithms to be executed and, on the other, refactoring and approximating the algorithms themselves in order to adapt them to the computing architecture while respecting the required KPIs (Key Performance Indicators).
- Image denoising
- Histogram stretching
- Edge detection
- Image segmentation
- Feature extraction
- Image warping
- Image scaling with antialiasing
- Image pyramid generation
- Stereo matching
- Hough Transform for fitting of straight lines
- RANSAC for fitting of geometrical primitives
- Object detection based on HOG/SVM
- Object detection based on LBP and cascaded of boosted classifiers
- Object detection based on deformable part models
- Full-custom NPU (Neural Processing Unit) and its related toolchain