Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/sidhyaashu/open_cv_fundamentals

Fundamentals about OpenCV with Python
https://github.com/sidhyaashu/open_cv_fundamentals

Last synced: about 1 month ago
JSON representation

Fundamentals about OpenCV with Python

Awesome Lists containing this project

README

        

# OpenCV Modules Overview

OpenCV (Open Source Computer Vision Library) is a powerful library for computer vision and image processing. It contains several modules, each dedicated to specific functionalities. Below is an overview of the key modules of OpenCV:

## 1. Core (`core`)
This module includes basic data structures (e.g., `Mat`, `Scalar`) and functions used by other modules. It provides support for matrix operations, linear algebra, and utility functions.

## 2. Image Processing (`imgproc`)
Contains functions for image processing tasks such as:
- Filtering
- Edge detection (e.g., Canny)
- Histogram equalization
- Color space conversions
- Geometric transformations

## 3. Video I/O (`videoio`)
Handles capturing and reading videos from various devices and file formats. It supports:
- Camera inputs
- Video file reading and writing

## 4. GUI (`highgui`)
Provides functionalities for:
- Simple GUI window management
- Image and video display
- Drawing functions

## 5. Video Analysis (`video`)
Focuses on video-related tasks, including:
- Background subtraction
- Motion analysis
- Object tracking
- Optical flow

## 6. Calibration and 3D (`calib3d`)
Includes functions for:
- Camera calibration
- Stereo vision
- 3D reconstruction (e.g., finding essential and fundamental matrices)

## 7. Features2D (`features2d`)
Contains feature detection, description, and matching methods, such as:
- SIFT
- SURF
- ORB
- BRIEF

## 8. Object Detection (`objdetect`)
Offers methods for detecting objects, including:
- Face detection using Haar cascades
- QR code detection and decoding

## 9. Machine Learning (`ml`)
Provides implementations for various machine learning algorithms like:
- K-Nearest Neighbors (KNN)
- Support Vector Machines (SVM)
- Decision Trees

## 10. Deep Neural Networks (`dnn`)
Supports the import, inference, and deployment of deep neural networks. It can handle models from frameworks like:
- Caffe
- TensorFlow
- ONNX

## 11. Photo Processing (`photo`)
Includes advanced algorithms for:
- Image restoration
- Deblurring
- Inpainting
- Denoising

## 12. Object Tracking (`tracking`)
Offers implementations for tracking objects in a video feed, including popular algorithms like:
- KCF
- MIL
- MOSSE

## 13. Stitching (`stitching`)
Used for stitching multiple images together to create panoramic images.

## 14. Structured Light (`structured_light`)
For capturing and processing 3D scans using structured light techniques.

## 15. Text (`text`)
Provides Optical Character Recognition (OCR) functionalities using libraries like Tesseract.

---

Each of these modules has a specific purpose and can be used to handle various aspects of computer vision and machine learning tasks.