Skip to content
/ NCCV Public

Short course on computer vision and image processing using Numba+CUDA+OpenCV

Notifications You must be signed in to change notification settings

ktaletsk/NCCV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Short course on computer vision and image processing

We will be looking at different ways to process images using Python in Jupyter Notebooks.

Lesson 1. We start with acquiring images from webcam using OpenCV and efficiently displaying them inside Jupyter Notebook using Pillow library.

🔗 Reference: https://medium.com/@kostal91/displaying-real-time-webcam-stream-in-ipython-at-relatively-high-framerate-8e67428ac522

📓 Notebook:

🛠 Dependencies installation:

conda install jupyter
pip install opencv-python

Lesson 2. We introduce GPU kernels and CUDA (using Numba) to achieve fast image processing. We introduce convolution operation and convolution kernels to achieve blurring or edge detection. We learn how to apply them using GPU kernels. Finally, we introduce the max pooling layer

🔗 Reference: Upcoming

📓 Notebook:

🛠 Dependencies installation:

conda install numba
conda install cudatoolkit

Lesson 3 (in the works). We connect the layers to build our first neural network.

Next lessons are TBD and will dive deeper in different aspects of image processing and computer vision

This course uses Python 3 and requires CUDA capable device (NVIDIA GPU) to run kernels (which may change in the future if I rewrite kernels to use AMD cards and/or CPUs).

About

Short course on computer vision and image processing using Numba+CUDA+OpenCV

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages