Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/ktaletsk/NCCV

Short course on computer vision and image processing using Numba+CUDA+OpenCV
https://github.com/ktaletsk/NCCV

computer-vision cuda jupyter-notebook numba

Last synced: about 16 hours ago
JSON representation

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

Lists

README

        

# 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).