Book Image

Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA

By : Bhaumik Vaidya
Book Image

Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA

By: Bhaumik Vaidya

Overview of this book

Computer vision has been revolutionizing a wide range of industries, and OpenCV is the most widely chosen tool for computer vision with its ability to work in multiple programming languages. Nowadays, in computer vision, there is a need to process large images in real time, which is difficult to handle for OpenCV on its own. This is where CUDA comes into the picture, allowing OpenCV to leverage powerful NVDIA GPUs. This book provides a detailed overview of integrating OpenCV with CUDA for practical applications. To start with, you’ll understand GPU programming with CUDA, an essential aspect for computer vision developers who have never worked with GPUs. You’ll then move on to exploring OpenCV acceleration with GPUs and CUDA by walking through some practical examples. Once you have got to grips with the core concepts, you’ll familiarize yourself with deploying OpenCV applications on NVIDIA Jetson TX1, which is popular for computer vision and deep learning applications. The last chapters of the book explain PyCUDA, a Python library that leverages the power of CUDA and GPUs for accelerations and can be used by computer vision developers who use OpenCV with Python. By the end of this book, you’ll have enhanced computer vision applications with the help of this book's hands-on approach.
Table of Contents (15 chapters)

Introduction to the Jetson TX1 Development Board and Installing OpenCV on Jetson TX1

The last chapter described various computer vision applications that use OpenCV and CUDA. When these applications need to be deployed in real-life situations, there is the need for an embedded development board that can process images at high speed by taking advantage of OpenCV and CUDA. Nvidia provides several GPU-based development boards, such as Jetson TK1, TX1, and TX2, which are ideal for high-end computing tasks such as computer vision. One of these development boards, the Jetson TX1, will be introduced in this chapter. The features and applications with which this board can be used are also discussed in detail. CUDA and OpenCV are essential for computer vision applications, so steps to install them on the Jetson TX1 are discussed in detail.

The following topics will be covered in this...