Basic Computer Vision Applications using OpenCV CUDA module
We have seen in the earlier chapters that CUDA provides an excellent interface to utilize the parallel computing capability of GPU to accelerate complex computing applications. In this section, we will see how we can utilize the capability of CUDA alongside OpenCV for Computer Vision applications
Introduction to OpenCV CUDA module
OpenCV has a CUDA module which has hundreds of functions which can utilize GPU capabilities. It is only supported on Nvidia GPUs because it uses Nvidia CUDA runtime in the background. OpenCV has to be compiled with WITH_CUDA flag set to ON for using CUDA module.
The great feature of using CUDA module of OpenCV is that it provides a similar API to regular OpenCV API. It also does not require detail knowledge of programming in CUDA although knowledge of CUDA and GPU architecture will not do any harm. The research have shown that using functions with CUDA acceleration can provide 5x-100x speedup over similar...