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
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
- Matrox Imaging Library (MIL)
- Cognex VisionPro
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
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,”
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,
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
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
Wide angle cameras are hot in smartphones, cars, VR and surveillance, for convenience, cost or safety. Turning wide-angle, high-res input into pleasing and usable high-resolution output in real-time depends on a holistic solution with special optics, dedicated hardware and customized software. Recent-release phones have three cameras, for the iPhone 11 a wide-angle lens, a telephoto
This article was originally published at NVIDIA’s website. It is reprinted here with the permission of NVIDIA. XGBoost is a widely used machine learning library, which uses gradient boosting techniques to incrementally build a better model during the training phase by combining multiple weak models. Weak models are generated by… Learning to Rank with XGBoost
This blog post was originally published at videantis’ website. It is reprinted here with the permission of videantis. In the past decades that I have been developing electronics I’ve heard this a lot: “The algorithms our engineers developed are way beyond what our competition has.” I’ve seen it when developing image enhancement algorithms, I’ve heard
This article was originally published at MathWorks’ website. It is reprinted here with the permission of MathWorks. 3 Things You Need to Know A neural network is a computing model whose layered structure resembles the networked structure of neurons in the brain, with layers of connected nodes. A neural network… What Is a Neural Network?
This blog post was originally published at Intel’s website. It is reprinted here with the permission of Intel. Back in 2018, Intel launched the Intel® Distribution of OpenVINO™ toolkit. Since then, it’s been widely adopted by partners and developers to deploy AI-powered applications in various industries, from self-checkout kiosks to medical imaging to industrial robotics.
This blog post was originally published at Codeplay Software’s website. It is reprinted here with the permission of Codeplay Software. Codeplay has been a part of the SYCL™ community from the beginning, and our team has worked with peers from some of the largest semiconductor vendors including Intel and Xilinx for the past 5 years
Joseph Spisak, Product Manager at Facebook, delivers the presentation “PyTorch Deep Learning Framework: Status and Directions” at the Embedded Vision Alliance’s December 2019 Vision Industry and Technology Forum. Spisak gives an update on the Torch deep learning framework and where it’s heading. “PyTorch Deep Learning Framework: Status and Directions,” a Presentation from Facebook Register or
“Current and Planned Standards for Computer Vision and Machine Learning,” a Presentation from the Khronos Group
Neil Trevett, President of the Khronos Group and Vice President of Developer Ecosystems at NVIDIA, delivers the presentation “Current and Planned Standards for Computer Vision and Machine Learning” at the Embedded Vision Alliance’s December 2019 Vision Industry and Technology Forum. Trevett shares updates on recent, current and planned Khronos standardization… “Current and Planned Standards for
This article was originally published at Tryolabs’ website. It is reprinted here with the permission of Tryolabs. Introduction In the past few years, video analytics, also known as video content analysis or intelligent video analytics, has attracted increasing interest from both industry and the academic world. Thanks to the enormous advances made in deep learning,
“Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product,” a Presentation from Cocoon Health
Pavan Kumar, Co-founder and CTO of Cocoon Cam (formerly Cocoon Health), delivers the presentation “Edge/Cloud Tradeoffs and Scaling a Consumer Computer Vision Product” at the Embedded Vision Alliance’s September 2019 Vision Industry and Technology Forum. Kumar explains how his company is evolving its use of edge and cloud vision computing… “Edge/Cloud Tradeoffs and Scaling a
Raghuraman Krishnamoorthi, Software Engineer at Facebook, delivers the presentation “Quantizing Deep Networks for Efficient Inference at the Edge” at the Embedded Vision Alliance’s September 2019 Vision Industry and Technology Forum. Krishnamoorthi gives an overview of practical deep neural network quantization techniques and tools. “Quantizing Deep Networks for Efficient Inference at the Edge,” a Presentation from