Skip to content
Projects

mesutpiskin/computer-vision-guide

View on GitHub

mesutpiskin/computer-vision-guide has 427 GitHub stars and 92 forks. GitHot measured 0 in 7 days. Last checked 2026-11-11 03:14 UTC. Last push 2026-05-18.

How these counts are measured

:book: This guide is to help you understand the basics of the computerized image and develop computer vision projects with OpenCV. Includes Python, Java, JavaScript, C# and C++ examples.

Measured star growth

in 24h
Update delayed
in 7 days
0
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.en-US.md

Original

English | Türkçe

Chapters Sponsor Video

Image Processing and Computer Vision Guide

A comprehensive, practical guide to building computer vision applications with OpenCV and modern deep learning frameworks.

This guide bridges theory and practice for both students and working developers. Each chapter opens with a real-world problem, builds intuition before introducing formulas, and delivers complete, copy-paste-ready Python examples. Students learn the concepts; developers ship the code.

31 chapters · Python 3.10+ · OpenCV 4.9+ · PyTorch · Ultralytics YOLOv8


Table of Contents


Documentation

Every chapter follows the same structure: real-world problem → intuitive explanation → formula (where needed) → complete working Python code → comparison table → summary and references.

Chapter Summary
What is OpenCV? OpenCV history and architecture, module overview, comparison with alternative libraries, OpenCV 4.x/5.0 highlights.
Development Environment Setting up Python, VS Code, Jupyter Notebook, Google Colab, and Conda for computer vision development.
OpenCV Wrappers EmguCV, JavaCV, LiveCV, RubyCV — what they are and when to use them.
Installation and Compilation OpenCV installation for Windows, Linux, macOS, and Raspberry Pi.
IDE Configuration Configuration for VS Code, PyCharm, Conda, Google Colab, and Android Studio.
Introduction and Basic Concepts Digital image as a matrix, BGR/RGB difference, reading from file and camera, pixel manipulation.
Video Recorders and Codecs Codec, FourCC, and video recording with cv2.VideoWriter.
Image Manipulation Resize, rotate, affine and perspective transforms; document scanner scenario.
Color Spaces and Histogram BGR, HSV, Lab color spaces; color-mask object detection; histogram equalization and CLAHE.
Morphological Image Processing Erosion, dilation, opening, closing, morphological gradient; Otsu and adaptive thresholding.
Filters and Edge Detection Convolution intuition, Gaussian/Median/Bilateral blur, Sobel, four-stage Canny pipeline.
Background Subtraction Frame differencing, MOG2 Gaussian mixture model, KNN subtractor; security camera scenario.
Video Analysis and Object Tracking Optical flow constraint, Lucas-Kanade pyramidal LK, Farneback dense flow, CSRT and KCF trackers.
Object Detection and Recognition Haar Cascade, Template Matching, real-time YOLOv8 detection; IoU, Precision/Recall, mAP metrics.
Camera Calibration and 3D Vision Pinhole camera model, radial distortion correction, chessboard calibration, stereo depth map.
Face Recognition Eigenfaces/LBPH, FaceNet embedding intuition, ArcFace angular margin, DeepFace integration.
Optical Character Recognition (OCR) OCR pipeline, image preprocessing, Tesseract PSM modes, EasyOCR, EAST text detection.
Feature Extraction and Matching SIFT DoG scale space, ORB, FLANN matching, Lowe ratio test, RANSAC homography; image stitching.
GPU and Parallel Computing CUDA module, OpenVINO model acceleration, threading for parallel image processing.
Pose Estimation 17 COCO keypoints, MediaPipe Pose skeleton detection, angle calculation, rep counter, YOLOv8-Pose.
Segmentation Semantic/instance/panoptic differences, Watershed, YOLOv8-seg, SAM (Segment Anything), IoU and mIoU.
Edge Deployment Model optimization with ONNX Runtime and TFLite, Raspberry Pi and mobile deployment.
OpenCV Mobile OpenCV on Android and iOS, camera stream processing, TFLite integration.
Augmented Reality ArUco marker detection, 3D axis projection, image overlay, MediaPipe face filter.
Vision Transformers Attention mechanism intuition, ViT patch embedding and CLS token, Swin shifted window, DETR, CNN vs ViT.
Generative Models and Diffusion GAN minimax game intuition, VAE latent space, DDPM noise process, Stable Diffusion, ControlNet.
3D Vision Stereo and monocular depth estimation, Open3D point cloud, PointNet permutation invariance, NeRF.
Video Understanding and Action Recognition Two-Stream, SlowFast dual-pathway architecture, VideoMAE tube masking, HuggingFace action classification.
Model Training and Evaluation Data preparation, augmentation, Mixup, ResNet50 fine-tuning, Cosine Annealing, confusion matrix.
Vision-Language Models CLIP contrastive loss, zero-shot classification, LLaVA, BLIP-2 Q-Former; visual question answering.

Getting Started

Install the core dependencies:

pip install opencv-python numpy matplotlib

For deep learning and modern chapters:

pip install torch torchvision ultralytics mediapipe easyocr deepface transformers diffusers open3d

All code examples require Python 3.10+ and OpenCV 4.9+. Sample source code is available in the /code directory.


Example Projects

Topic Python Java C++ C# JavaScript
Video I/O        
Image Manipulation        
Color Spaces        
Morphological Image Processing        
Filters        
Edge Detection      
Background Subtraction        
Video Analysis and Object Tracking      
Object Detection and Recognition      
Feature Extraction          
Camera Calibration and 3D Vision        
Machine Learning and Deep Learning      
Face Recognition      
Optical Character Recognition (OCR)        
Augmented Reality        

Contributing

Contributions are welcome — bug reports, new chapter proposals, code corrections, or translations. See CONTRIBUTING.en-US.md for guidelines.

Questions and discussions go in Issues. For direct contact, reach out via the website or email.


Support the Project

This guide is a free, open-source educational resource maintained entirely on a volunteer basis. If it has been useful to you and you'd like to support new chapters, updated examples, and the continued growth of the community, consider sponsoring via GitHub Sponsors.

GitHub Sponsors

Your support directly funds new content, code maintenance, and the broader Turkish computer vision community.


Release History

v3.0 — May 2026

The most comprehensive update since the repository's launch in 2018. Migration to a Python-first stack, eleven new chapters, and a ground-up rewrite of all existing chapters happened simultaneously. An O'Reilly-style pedagogical structure was adopted throughout: each topic opens with a real-world problem, intuition precedes formulas, and every code example is complete and runnable.

Rewritten chapters (15): 1, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 21, 22

New chapters (11):


v1.0 — 2018–2020 · v1 tag

Initial release. Java, Python, and C++ examples with OpenCV 3.x/4.x. Fundamental image processing topics.

Explore related projects