Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

What are the basic modules of OpenCV

2025-02-24 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/01 Report--

This article mainly introduces what are the basic modules of OpenCV. It is very detailed and has a certain reference value. Friends who are interested must finish reading it.

Brief introduction

The full name of OpenCV is Open Source Computer Vision Library. OpenCV is a cross-platform computer vision library released under the BSD license (open source) that can run on Linux, Windows, and Mac OS operating systems. It is lightweight and efficient-it consists of a series of C functions and a small number of C++ classes, provides interfaces to Python, Ruby, MATLAB and other languages, and implements many general algorithms in image processing and computer vision.

All new developments and algorithms use the C++ interface. A GPU interface using CUDA was also implemented in September 2010.

Official home page: http://opencv.org/

File structure

The header file distribution that you need to use when calling opencv (by default, the following is based on version 2.4.x):

For windows systems, it is generally under the OPENCV_DIR/build/include/ folder, so you need to configure additional library directories when calling in VS

For ubuntu systems, generally under the / usr/local/include/ folder and the system directory, the system can automatically identify

Include generally contains two folders:

The contents under the opencv folder are the header files retained by OpenCV1.0, which are rarely used now, so I don't pay attention to them here.

Under the opencv2 folder are the main functional modules to be used in the future.

The structure under the opencv2 folder is shown below:

The following is a separate description of the functions of each module (mainly refer to the book "introduction to OpenCV3 programming". There is a download link below, and those who are interested can check it out):

Common module

Core, the core function module, mainly includes the following contents:

OpenCV basic data structure (Basic Structures)

Basic C language data structures and operations (Basic C Structures and Operations)

Dynamic data structure (Dynamic Structures)

Array operation correlation function (Operations on Arrays)

Drawing function (Drawing Functions)

Support for XML and YAML syntax (XML/YAML Persistence)

Supported C language interface for XML and YAML syntax (XML/YAML Persistence (C API))

Clustering (Clustering)

Accessibility and system functions and macros (Utility and System Functions and Macros)

Interoperability with OpenGL (OpenGL interoperability)

Imgproc is the abbreviation of Image Processing. The image processing module mainly includes the following contents:

Linear and nonlinear image filtering (Image Filtering)

Geometric transformation of image (Geometric Image Transformations)

Other transformations of the image (Miscellaneous Image Transformations)

Histogram (Histograms)

Structural Analysis and shape description (Structural Analysis and Shape Descriptors)

Motion analysis and target tracking (Motion Analysis and Object Tracking)

Feature detection (Feature Detection)

Target detection (Object Detection)

Highgui is the abbreviation of High-level GUI and Media Imax O. The high-level user interface module and the media input / output module mainly include the following:

User interface (User Interface)

Reading and writing of pictures and videos (Reading and Writing Images and Video)

New QT features (Qt New Functions)

Features2d is the abbreviation of 2D Features Framework. 2D feature frame module, which mainly includes the following contents:

Feature detection and description (Feature Detection and Description)

General Interface for feature detector (Common Interfaces of Feature Detectors)

Generic interface for descriptor extractors (Common Interfaces of Descriptor Extractors)

Universal interface for descriptor matchmaker (Common Interfaces of Descriptor Matchers)

Universal descriptor matcher Universal Interface (Common Interfaces of Generic Descriptor Matchers)

Drawing function of key points and matching results (Drawing Function of Keypoints and Matches)

Target classification (Object Categorization)

Flann,Clustering and Search in Multi-Dimensional Spaces, multi-dimensional spatial clustering and search module, mainly includes the following:

Fast myopia nearest neighbor search (Fast Approximate Nearest Neighbor Search)

Clustering (Clustering)

Video is the abbreviation of Video Analysis. Video analysis module, which mainly includes the following contents:

Motion analysis and target tracking (Motion Analysis and Object Tracking), video-related, the above mentioned is picture-related

Calib3d is the abbreviation of Camera Calibration and 3D Reconstruction. This module is mainly related to camera calibration and 3D reconstruction, including basic multi-view geometry algorithm, single stereo camera calibration, object attitude estimation, stereo similarity algorithm, 3D information reconstruction and so on.

Acceleration module

Gpu, short for GPU-accelerated Computer Vision, is a visual module accelerated by GPU, which mainly includes the following:

Introduction to GPU module (GPU Module Introduction)

Initialization and Information (Initalization and Information)

Data structure (Data Structures)

Matrix operation (Operations on Matrices)

Element by element operation (Per-element Operations)

Image processing (Image Processing)

Matrix dimensionality reduction (Matrix Reductions)

Target detection (Object Detection)

Feature detection and description (Feature Detection and Description)

Image filtering (Image Filtering)

Camera calibration and 3D reconstruction (Camera Calibration and 3D Reconstruction)

Video Analysis (Video Analysis)

Ocl, short for OpenCL-accelerated Computer Vision, is a visual module accelerated by OpenCL. It mainly includes the following contents:

Introduction to OpenCL module (OpenCL Module Introduction)

Data structures and common functions (Data Structures and Utility Functions)

Data structure (Data Structures)

Matrix operation (Operations on Matrics)

Matrix dimensionality reduction (Matrix Reductions)

Image filtering (Image Filtering)

Image processing (Image Processing)

Machine learning (ml.Machine Learning)

Target detection (Object Detection)

Feature detection and description (Feature Detection And Description)

Video Analysis (Video Analysis)

Camera calibration and 3D reconstruction (Camera Calibration and 3D Reconstruction)

Other modules

Contrib is the abbreviation of Contributed/Experimental Stuff. This module contains some unstable optional features that have been added recently, which are generally unnecessary and do not pay too much attention to. It mainly includes the following contents:

Stereo matching (Stereo Correspondence)

Face recognition model (FaceRecognizer Documentation)

Retinal model (Retina Documentation)

Open source fast appearance mapping algorithm (OpenFABMAP,Fast Appearance-based Mapping algorithm)

Objdetect is the abbreviation of Object Detection. The target detection module mainly includes the following contents:

Cascade classification (Cascade Classification)

SVM classification model (Latent SVM)

Ml is the abbreviation of Machine Learning. The machine learning module mainly includes the following contents:

Statistical model (Statistical Models)

General Bayesian classifier (Normal Bayes Classifier)

K-nearest neighbor (K-Nearest Neighbors)

Support vector machine (Support Vector Machines)

Decision tree (Decision Trees)

Promotion (Boosting)

Gradient raising tree (Gradient Boosted Trees)

Random number (Random Trees)

Super random tree (Extremely randomized trees)

Expectation maximization (Expectation Maximization)

Neural network (Neural Networks)

Machine learning data (MLData)

Photo,Computational Photography, computational photography module, mainly includes the following:

Repair (Inpainting)

Denoising (Denoising)

Stitching,Images stitching, image stitching module, mainly includes the following:

Splicing pipeline (Stitching Pipeline)

References (References)

High-level function, splicer (High Level Functionality)

Camera (Camera)

Feature finding and image matching (Features Finding and Images Matching)

Rotation estimation (Rotation Estimation)

Automatic Calibration (Autocalibration)

Image distortion (Images Warping)

Seam estimation (Seam Estimation)

Exposure compensation (Exposure Compensation)

Graphic blending (Image Blenders)

Nonfree,Non-free functionality, not free function, some patented algorithm modules, mainly include the following:

Feature extraction and description (Feature Detection and Description)

Legacy,Deprecated stuff, some obsolete code modules, is left behind for backward compatibility, mainly including the following:

Motion analysis (Motion Analysis)

Expected maximum (Expectation Maximization)

Histogram (Histograms)

Plane subdivision C language interface (Planar Subdivisions (C API))

Feature extraction and description (Feature Detection and Description)

Generic interface for descriptor extractors (Common Interfaces of Descriptor Extractors)

Universal Interface for Universal descriptors (Common Interfaces of Generic Descriptor Matchers)

Superres, the abbreviation of Super Resolution, super-resolution technology module, mainly includes the following:

Super resolution (Super Resolution)

Viz, the abbreviation of 3D Visualizer, 3D visualization tool module, mainly includes the following contents:

Visualization (Viz)

Component (Widget)

These are all the contents of the article "what are the basic modules of OpenCV?" Thank you for reading! Hope to share the content to help you, more related knowledge, welcome to follow the industry information channel!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report