fbpx

Vision Algorithms for Embedded Vision

Most computer vision algorithms were developed on general-purpose computer systems with software written in a high-level language

Most computer vision algorithms were developed on general-purpose computer systems with software written in a high-level language. Some of the pixel-processing operations (ex: spatial filtering) have changed very little in the decades since they were first implemented on mainframes. With today’s broader embedded vision implementations, existing high-level algorithms may not fit within the system constraints, requiring new innovation to achieve the desired results.

Some of this innovation may involve replacing a general-purpose algorithm with a hardware-optimized equivalent. With such a broad range of processors for embedded vision, algorithm analysis will likely focus on ways to maximize pixel-level processing within system constraints.

This section refers to both general-purpose operations (ex: edge detection) and hardware-optimized versions (ex: parallel adaptive filtering in an FPGA). Many sources exist for general-purpose algorithms. The Embedded Vision Alliance is one of the best industry resources for learning about algorithms that map to specific hardware, since Alliance Members will share this information directly with the vision community.

General-purpose computer vision algorithms

Introduction To OpenCV Figure 1

One of the most-popular sources of computer vision algorithms is the OpenCV Library. OpenCV is open-source and currently written in C, with a C++ version under development. For more information, see the Alliance’s interview with OpenCV Foundation President and CEO Gary Bradski, along with other OpenCV-related materials on the Alliance website.

Hardware-optimized computer vision algorithms

Several programmable device vendors have created optimized versions of off-the-shelf computer vision libraries. NVIDIA works closely with the OpenCV community, for example, and has created algorithms that are accelerated by GPGPUs. MathWorks provides MATLAB functions/objects and Simulink blocks for many computer vision algorithms within its Vision System Toolbox, while also allowing vendors to create their own libraries of functions that are optimized for a specific programmable architecture. National Instruments offers its LabView Vision module library. And Xilinx is another example of a vendor with an optimized computer vision library that it provides to customers as Plug and Play IP cores for creating hardware-accelerated vision algorithms in an FPGA.

Other vision libraries

  • Halcon
  • Matrox Imaging Library (MIL)
  • Cognex VisionPro
  • VXL
  • CImg
  • Filters

Upcoming Virtual Seminar Series Discusses Smart Devices That Understand and Seamlessly Communicate With the World Around Them

On June 2 (Communication), 3 (Connectivity and Sensing), 9 (AI and Vision), and 10 (Wireless Audio), Edge AI and Vision Alliance Member company CEVA will deliver a four-part virtual seminar series focusing on how to create smart devices that understand the world around them and seamlessly communicate. Also included in the event, and available in

Read More »

Unified Programming Model Critical to Uncompromised Application Performance, Saves Time and Money, Study Finds

What’s New: New computing accelerators are rapidly emerging, and organizations need to examine time and financial considerations associated with developing performance-sensitive applications that can run on both new and existing computing platforms. Commissioned by Intel, a recent research report from J.Gold Associates, “oneAPI: Software Abstraction for a Heterogeneous Computing World,” discusses the importance of application

Read More »

SLAMcore Debuts Full-stack Spatial AI SDK in Industry Competition

This blog post was originally published at SLAMcore’s website. It is reprinted here with the permission of SLAMcore. The three most challenging questions in autonomous robotics are: where am I? how far away are the objects around me? and, what are those objects? The vast majority of robot failures stem from an inability to answer

Read More »

Khronos Group Releases OpenCL 3.0

Provisional Specifications publicly available today for industry feedback Enhanced deployment flexibility sets stage for new pervasively available core functionality IWOCL – April 27, 2020 – 6:00 AM GMT – Today, The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, publicly releases the OpenCL™ 3.0 Provisional Specifications. OpenCL 3.0 realigns the OpenCL

Read More »

Codeplay Implements MKL-BLAS for NVIDIA GPUs Using SYCL and DPC++

This blog post was originally published at Codeplay Software’s website. It is reprinted here with the permission of Codeplay Software. Software developers are looking more than ever at how they can accelerate their applications without having to write optimized processor specific code. SYCL is the industry standard for C++ acceleration, giving developers a platform to

Read More »

Speeding Up Deep Learning Inference Using TensorRT

This article was originally published at NVIDIA’s website. It is reprinted here with the permission of NVIDIA. This is an updated version of How to Speed Up Deep Learning Inference Using TensorRT. This version starts from a PyTorch model instead of the ONNX model, upgrades the sample application to use… Speeding Up Deep Learning Inference

Read More »

NVIDIA VRSS, a Zero-Effort Way to Improve Your VR Image Quality

This article was originally published at NVIDIA’s website. It is reprinted here with the permission of NVIDIA. The Virtual Reality (VR) industry is in the midst of a new hardware cycle – higher resolution headsets and better optics being the key focus points for the device manufacturers. Similarly on the software front, there has been

Read More »

Object Recognition: 3 Things You Need to Know

This article was originally published at MathWorks’ website. It is reprinted here with the permission of MathWorks. What Is Object Recognition? Object recognition is a computer vision technique for identifying objects in images or videos. Object recognition is a key output of deep learning and machine learning algorithms. When humans look at a photograph or

Read More »

Accelerating WinML and NVIDIA Tensor Cores

This article was originally published at NVIDIA’s website. It is reprinted here with the permission of NVIDIA. Every year, clever researchers introduce ever more complex and interesting deep learning models to the world. There is of course a big difference between a model that works as a nice demo in… Accelerating WinML and NVIDIA Tensor

Read More »

Speeding Up Deep Learning Inference Using TensorFlow, ONNX, and TensorRT

This article was originally published at NVIDIA’s website. It is reprinted here with the permission of NVIDIA. Starting with TensorRT 7.0,  the Universal Framework Format (UFF) is being deprecated. In this post, you learn how to deploy TensorFlow trained deep learning models using the new TensorFlow-ONNX-TensorRT workflow. Figure 1 shows… Speeding Up Deep Learning Inference

Read More »

“OpenCV: Past, Present and Future,” a Presentation from OpenCV.org

Gary Bradski, the President and CEO of OpenCV.org, delivers the presentation “OpenCV: Past, Present and Future” at the Edge AI and Vision Alliance’s March 2020 Vision Industry and Technology Forum. Bradski shares the latest developments in the OpenCV open source library for computer vision and deep learning applications, as well… “OpenCV: Past, Present and Future,”

Read More »

Maximize CPU Inference Performance with Improved Threads and Memory Management in Intel Distribution of OpenVINO Toolkit

This blog post was originally published at Intel’s website. It is reprinted here with the permission of Intel. The popularity of convolutional neural network (CNN) models and the ubiquity of CPUs means that better inference performance can deliver significant gains to a larger number of users than ever before. As multi-core processors become the norm,

Read More »

CEVA Announces DSP and Voice Neural Networks Integration with TensorFlow Lite for Microcontrollers

WhisPro™ speech recognition software for voice wake words and custom command models now available with open source TensorFlow Lite for Microcontrollers implementing machine learning at the edge TensorFlow Lite for Microcontrollers from Google is already optimized and available for CEVA-BX DSP cores, accelerating the use of low power AI in conversational and contextual awareness applications

Read More »

What Is Object Detection?

This article was originally published at MathWorks’ website. It is reprinted here with the permission of MathWorks. 3 Things You Need to Know Object detection is a computer vision technique for locating instances of objects in images or videos. Object detection algorithms typically leverage machine learning or deep learning to… What Is Object Detection? Register

Read More »

Here you’ll find a wealth of practical technical insights and expert advice to help you bring AI and visual intelligence into your products without flying blind.

Contact

Address

1646 North California Blvd.,
Suite 360
Walnut Creek, CA 94596 USA

Phone
Phone: +1 (925) 954-1411
Scroll to Top