Step by step instructions to bind OpenCV libraries with CUDA drivers to enable GPU processing on OpenCV codes. I am renting an EC2 instance with a p3.8xlarge instance in the AWS, which has 4 Nvidia GPUs.
By default, there is no need to enable OpenCV with CUDA for GPU processing, but during production, when you have heavy OpenCV manipulations to do on image/video files, we can make use of the OpenCV CUDA library to make those operations to run on GPU rather than CPU and it saves a lot of time.
It was not easy as it is said to connect the OpenCV library to enable it with CUDA, I had to go through a painful process for a week to establish the connection properly, also its both time & money consuming process. So this time I want to record the overall process for my future, as well as for others.
For the demonstration, I am renting an EC2 instance with a p3.8xlarge instance in the AWS, which has 4 Nvidia GPUs.
Source — AWS EC2 Pricing
So if you need any help in starting an EC2 instance for the first time, you can refer to my previous post on Step by Step Creation of an EC2 Instance in AWS and Access it via Putty & WinSCP and during the process select the GPU instance you require.
Now after ssh-ing into the instance, before we get into the process we need to install a lot of packages to make the environment ready.
Note: I have consolidated all the commands I ran from start to end and added them at the bottom. If you are more curious find them here in this __link __and follow along.
Run the below commands one after another on your instance and also I have attested the screenshots to compare the outputs against mine.
All the screenshots used hereafter are sourced by the author.
sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential cmake unzip pkg-config sudo apt-get install gcc-6 g++-6 sudo apt-get install screen sudo apt-get install libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev sudo apt-get install libjpeg-dev libpng-dev libtiff-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev sudo apt-get install libopenblas-dev libatlas-base-dev liblapack-dev gfortran sudo apt-get install libhdf5-serial-dev sudo apt-get install python3-dev python3-tk python-imaging-tk sudo apt-get install libgtk-3-dev sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-driver-418 sudo reboot
Learn Free how to create a virtual pen and eraser with python and OpenCV with source code and complete guide. This entire application is built fundamentally on contour detection. It can be thought of as something like closed color curves on compromises that have the same color or intensity, it's like a blob. In this project we use color masking to get the binary mask of our target color pen, then we use the counter detection to find the location of this pen and the contour to find it.
OpenCV Python in Python will explain all the basics of OpenCV. It also explains how to create a face recognition system and a motion detector.
In this tutorial, you’re going to learn a variety of Python tricks that you can use to write your Python code in a more readable and efficient way like a pro.
Today you're going to learn how to use Python programming in a way that can ultimately save a lot of space on your drive by removing all the duplicates. We gonna use Python OS remove( ) method to remove the duplicates on our drive. Well, that's simple you just call remove ( ) with a parameter of the name of the file you wanna remove done.
To draw a rectangle in Python using OpenCV, use cv2.rectangle() function. The cv2 rectangle() method is used to draw a rectangle on any image.