Chaotic collection of test files, probes, hacks and ideas
- Python notes and links to interesting places
- General object classifier
- OpenCV Filtering GUI
- Sending emails with Python
- Manual image annotation with polygons
- Manual image annotation with rectangles
- Image viewer
- Advanced zoom
- C extension for Python
- OpenCV + Tkinter snapshot GUI
- OpenCV features
- Multilanguage for Python
- Dynamic menu
- Rolling window on NumPy arrays
- SIFT object tracking
- Tkinter progressbar
Python notes and links to interesting places
Bookmarks to remember and re-visit.
Image Processing with Python
My replica of this original course: Image Processing with Python.
General object classifier
Classifies 3 types of bears: bronw, black and teddy bear.
Object classifier is based on:
- Python and fast.ai for model training through deep learning;
- Render cloud provider to deploy your code in web.
- Flutter mobile development framework with a single code base for Android and iOS applications;
- Firebase for Google Analytics.
And consists of 3 components:
- model training script - Jupyter (Colab) script to train a classification model.
- web app - starter project to deploy a trained classification model to the web.
- mobile app - mobile application which connect your web app with mobile phone (tested for Android).
OpenCV Filtering GUI
OpenCV Filtering GUI is a set of various realtime filters to process images from the webcam. This GUI is based on the previous OpenCV features demo with enhanced Tkinter controls for user-friendly OpenCV real-time filters demonstration.
Sending emails with Python
Sending emails with Python.
Manual image annotation with polygons
Manual image annotation opens image where user can select polygon areas around the objects of interest. After selecting region of interest user presses menu button and program cuts rectangular images from selected polygons with a scanning window.
Manual image annotation with rectangles
Manual image annotation creates rectangular images with selected areas of interest (ROI). User opens image and selects rectangular areas of interest. After selecting rectangles and pressing menu button program cuts rectangle images from the bigger image.
Image viewer
Image viewer shows image and prints coordinates of the rectangular area in the console.
Advanced zoom
Advanced zoom for images of various formats and sizes from small to huge up to several GB.
C extension for Python
C language extension for Python language by example of co-occurrence matrix calculation.
OpenCV + Tkinter snapshot GUI
Take shapshot using webcamera, OpenCV and Tkinter. Example is well documented and has many comments inside.
OpenCV features
Demo of various OpenCV features. Application is tested for Windows OS and requires webcam. There is a newer version with GUI.
Multilanguage for Python
How-to implement multilanguage for Python.
Dynamic menu
Example of the dynamic menu for Tkinter GUI.
Rolling window on NumPy arrays
General examples for 1D, 2D, 3D and MD rolling window arrays in the on-line CoLab notebook.
It has zero Python cycles inside, so the speed is the same as in C programming language.
My previous examples of the rolling window for 2D array are here and here.
SIFT object tracking
Note: SIFT and SURF are for Python version 3.4.2.16 and older. Otherwise use ORB algorithm.
Example of the objects tracking using SIFT algorithm. SIFT algorithm is free of charge for non-commercial projects.
- Open GUI:
python sift_tracking.py
. - Place object in front of webcamera, so it take all visible space.
- Press "Snapshot!" button. Application will make snapshort of the object to track.
- After taking snapshort there will be blue rectangle around tracking object and green lines connecting specian points of the image.
Rectangular objects, like books, are tracked better than faces.
Tkinter progressbar
Example of the Tkinter progressbar GUI.