opencv3.3头文件使用

2024-01-04 21:32
文章标签 使用 头文件 opencv3.3

本文主要是介绍opencv3.3头文件使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    opencv3.3解压后文件夹目录仅包含build和source文件夹,其中build主要包含已编译好的各个系统下的头文件及库文件source文件夹存放了开发相关的技术文档与资料、源程序数据模块及实例程序等。

     ...opencv\build\include目录下,仅包含opencv和opencv2两个文件夹,其中opencv文件夹支持opecv1.x接口的头文件(C)opencv2文件夹支持opencv2.x接口的头文件(C++)

    注:1.相同头文件对应的.hpp文件包含.h文件,因而凡是用到.h的地方都可以用.hpp替换。例如:可以用highgui.hpp代替highgui.c,直接写成#include"opencv2/highgui/highgui.hpp"。这样无需再将cpp文件添加到项目中编译,减少了编译次数,也不用发布烦人的lib,dll 文件,因此非常适合用来编写公用的开源库。

    2.所有的opencv头文件都可以写成#include <opencv2/opencv.hpp>,如果熟悉opencv里的函数分布,也可以直接调用opencv2文件夹里的具体头文件,这样在头文件预编译提高效率。

    以下是opencv3.3的主要模块及结构

参考https://blog.csdn.net/zmdsjtu/article/details/54924727

[calib3d]: Calibration(校准)以及3D,相机校准和三维重建。主要包括基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性算法,3D信息的重建等等。

[core]: 核心功能模块,定义了Opencv最为基础的数据结构,是一个内容非常详实与紧凑的模块。主要包括最基础的结构体,动态结构,数组操作,绘画的功能,XML/YAML文件进行存储或调用Opencv的各种数据结构,聚类,辅助功能与系统函数和宏,OpenGL交互相关。

[dnn]: 深层神经网络模块。目前只有3.3以上版本有该功能。

[features2d]: Features2D, 2D功能框架 。主要包括特征检测和描述、特征检测器(Feature Detectors)通用接口、描述符提取器(Descriptor Extractors)通用接口、描述符匹配器(Descriptor Matchers)通用接口、通用描述符(Generic Descriptor)匹配器通用接口、关键点绘制函数和匹配功能绘制函数、物体分类。

[flann]: 高维的近似近邻快速搜索算法库。主要包括快速近似最近邻搜索FLANN、聚类Clustering

[highgui]: 高层级的用户交互以及媒体的IO接口。主要包括媒体的I / O输入输出, 视频捕捉、图像和视频的编码解码、图形交互界面的接口、Qt新功能等内容。

[imgcodecs]: 用于图片的读写。主要内容

[imgproc]: 图片处理。主要包括图像滤波Image Filtering、图像的几何变换、各种图片形式的转换、直方图Histograms 、结构分析和形状描述、动作分析以及物体追踪、特征检测、物体检测。

[ml]: 机器学习模块。基本上是统计模型和分类算法,主要包括统计模型Statistical Models 、一般贝叶斯分类器Normal Bayes Classifier 、K-近邻K-Nearest Neighbors 、支持向量机SVM Support Vector Machines:之前尝试过的案例:SVM案例 、决策树Decision Trees 、级联分类器Boosting 、梯度树Gradient Boosted Trees 、随机树Random Trees 、超随机树Extremely randomized trees 、期望最大化Expectation Maximization 、神经网络Neural Networks 、机器学习数据的形式相关MLData。

[objdetect]: 目标检测模块。包含Cascade Classification(级联分类)和Latent SVM这两个部分。

[photo]: 主要包括图像修复Inpainting、图像降噪Denoising。

[shape]: 形状的匹配以及距离计算。

[stitching]: 图像拼接模块。主要包括拼接流水线、特点寻找和匹配图像、估计旋转、自动校准、图片歪斜、接缝估测、曝光补偿、图片混合。

[superres]: 超分辨率技术的相关功能模块。

[video]: 视频分析模块。主要包括动作分析Motion Analysis 、物体追踪Object Tracking。

[videoio]: OpenCV3特有的仅用来读写视频的模块。

[videostab]: 视频稳定相关的组件。主要包括全局运动估计Global Motion Estimation 、快速步进法Fast Marching Method。







这篇关于opencv3.3头文件使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/570664

相关文章

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

java变量内存中存储的使用方式

《java变量内存中存储的使用方式》:本文主要介绍java变量内存中存储的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、变量的定义3、 变量的类型4、 变量的作用域5、 内存中的存储方式总结1、介绍在 Java 中,变量是用于存储程序中数据

关于Mybatis和JDBC的使用及区别

《关于Mybatis和JDBC的使用及区别》:本文主要介绍关于Mybatis和JDBC的使用及区别,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、JDBC1.1、流程1.2、优缺点2、MyBATis2.1、执行流程2.2、使用2.3、实现方式1、XML配置文件

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

Java资源管理和引用体系的使用详解

《Java资源管理和引用体系的使用详解》:本文主要介绍Java资源管理和引用体系的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、Java的引用体系1、强引用 (Strong Reference)2、软引用 (Soft Reference)3、弱引用 (W

ubuntu系统使用官方操作命令升级Dify指南

《ubuntu系统使用官方操作命令升级Dify指南》Dify支持自动化执行、日志记录和结果管理,适用于数据处理、模型训练和部署等场景,今天我们就来看看ubuntu系统中使用官方操作命令升级Dify的方... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。