当前位置: 首页 > ops >正文

OpenCV4.X库功能全解---个人笔记

文章目录

  • 前言
  • 1.Core核心功能
    • 1.1 基本数据类型和结构:
    • 1.2 数组操作:
    • 1.3 数学函数:
    • 1.4 随机数生成:
    • 1.5 线性代数运算:
    • 1.6 常用数据结构和算法:
    • 1.7 XML/YAML文件读写:
    • 1.8 错误处理:
    • 1.9时间测量:
  • 2.imgproc图像处理
    • 2.1 图像滤波:
    • 2.2 几何变换:
    • 2.3 图像金字塔:
    • 2.4 图像阈值化:
    • 2.5边缘检测:
    • 2.6 形态学操作:
    • 2.7 颜色空间转换:
    • 2.8 直方图:
    • 2.9 图像修复:
    • 2.10 模板匹配:
    • 2.11 轮廓检测与分析:
    • 2.12 霍夫变换:
    • 2.13 图像分割:
    • 2.14 绘图函数:
    • 2.15 傅里叶变换:
  • 3. imgcodecs.图像文件读写
    • 3.1 图像读取:
    • 3.2 图像写入:
    • 3.3 编码参数设置:
    • 3.4 图像编码和解码:
    • 3.5 多页图像支持:
    • 3.6 图像质量评估:
  • 4 Videoio视频 I/O
    • 4.1 视频捕获:
    • 4.2 视频保存:
    • 4.3 视频流读取:
    • 4.4 视频流写入:
    • 4.5 视频帧获取和设置:
    • 4.6 摄像头参数设置:
    • 4.7 多平台支持:
    • 4.8 视频编解码器支持:
  • 5 highgui高级GUI
    • 5.1 图像显示:
    • 5.2 窗口管理:
    • 5.3 用户交互:
    • 5.4 轨迹条(滑动条):
    • 5.5 图像文件I/O:
    • 5.6 视频显示:
    • 5.7 基本绘图功能:
    • 5.9 跨平台支持:
  • 6 Video视频分析
    • 6.1 视频捕获:
    • 6.2 视频编解码:
    • 6.3 视频处理:
    • 6.4 对象跟踪:
    • 6.5 光流计算:
    • 6.6 视频分析:
    • 6.7 摄像头接口:
    • 6.8 视频帧处理工具:
    • 6.9时间戳处理:
  • 7 calib3d相机校准和3D重建
    • 7.1 相机校准:
    • 7.2 立体视觉:
    • 7.3 姿态估计:
    • 7.4 三维重建:
    • 7.5 畸变校正:
    • 7.6 图像拼接:
    • 7.7 结构光:
    • 7.8 外参估计:
  • 8 features2d 特征框架
    • 8.1 特征检测:
    • 8.2 特征描述:
    • 8.3 特征匹配:
    • 8.4 关键点检测和描述:
    • 8.5 图像对齐和拼接:
    • 8.6 局部特征提取和匹配:
    • 8.7 多尺度特征检测:
    • 8.8 特征点绘制:
    • 8.9 特征匹配过滤:
    • 8.10 自适应特征检测:
  • 9 objdetect目标检测
    • 9.1 对象检测:
    • 9.2 HOG特征和SVM检测:
    • 9.3 人脸检测和识别:
    • 9.4 QR码检测:
    • 9.5 基于模板的对象检测:
    • 9.6 条形码检测:
    • 9.7 自定义分类器训练:
    • 9.8 对象跟踪:
    • 9.9 人脸标志点检测:
  • 10 dnn深度神经网络模块
    • 10.1 深度学习模型加载和推理:
    • 10.2 支持的层类型:
    • 10.3 预处理和后处理:
    • 10.4 模型优化:
    • 10.5 兼容性和硬件加速:
    • 10.6 模型的转换工具:
    • 10.7 端到端应用:
    • 10.8 自定义层支持:
    • 10.9 示例和预训练模型:
    • 10.10 模型部署:
    • 11 ml机器学习
    • 11.1 分类算法:
    • 11.2 回归算法:
    • 11.3 聚类算法:
    • 11.4 贝叶斯分类:
    • 11.5 神经网络:
    • 11.6 决策树:
    • 11.7 随机森林:
    • 11.8 Boosting算法:
    • 11.9 SVM(支持向量机):
    • 11.10 核函数:
    • 11.11 模型评估和交叉验证:
    • 11.12 特征选择:
    • 11.13 数据预处理:
    • 11.14 概率模型:
    • 11.15 集成学习:
  • 12 flann.多维空间中的聚类和搜索
    • 12.1 快速最近邻搜索:
    • 12.2 索引构建和查询:
    • 12.3 参数自动调优:
    • 12.4 多维数据支持:
    • 12.5 可扩展性:
    • 12.6 高效的内存管理:
    • 12.7 并行处理:
    • 12.8 跨平台支持:
  • 13 photo计算摄影
    • 13.1 去噪算法:
    • 13.2 图像修复(Inpainting):
    • 13.3 HDR(高动态范围成像):
    • 13.4 色调映射(Tone Mapping):
    • 13.5 无缝克隆(Seamless Cloning):
    • 13.6 颜色转移(Color Transfer):
    • 13.7 曝光补偿(Exposure Compensation):
    • 13.8 去闪烁(DeFlicker):
    • 13.9 边缘保持滤波:
  • 14 stitching.图像拼接
    • 14.1 图像拼接:
    • 14.2 特征检测与匹配:
    • 14.3 图像配准:
    • 14.4 曝光补偿:
    • 14.5 图像混合:
    • 14.6 相机参数估计:
    • 14.7 图像矫正:
    • 14.8 旋转和缩放:
    • 14.9 多通道图像支持:
    • 14.10 GPU加速:
  • 15 G-API.图形 API
    • 15.1 图形处理管道(Graph API):
    • 15.2 延迟计算(Lazy Evaluation):
    • 15.3 跨平台和设备支持:
    • 15.4 自定义算子:
    • 15.5 优化的内存管理:
    • 15.6 易于集成:
    • 15.7 高层次抽象:
    • 15.8 支持多种后端:
    • 15.9 流水线并行处理:
    • 15.10 可视化调试:
  • 16.额外模块:

前言

在这里插入图片描述

1.Core核心功能

1.1 基本数据类型和结构:

  包括矩阵(Mat)、标量(Scalar)、点(Point)、大小(Size)、矩形(Rect)等基本数据结构,用于图像处理中的各种操作。

1.2 数组操作:

  支持多维数组的创建、访问、操作和变换,包括基本的矩阵运算(加减乘除、转置、求逆、求行列式等)。

1.3 数学函数:

  提供了各种数学函数,包括基础的算术运算、常见的数学函数(如三角函数、指数和对数函数)、统计函数(如均值、方差、直方图等)。

1.4 随机数生成:

  提供了各种随机数生成器,可以用于图像处理中的噪声添加、随机采样等操作。

1.5 线性代数运算:

  包括矩阵分解(如SVD、Cholesky分解等)和线性方程组的求解。

1.6 常用数据结构和算法:

  如查找表、优先队列、k-最近邻(k-NN)搜索等。

1.7 XML/YAML文件读写:

  提供了对XML和YAML格式文件的读写支持,可以保存和加载模型、参数等数据。

1.8 错误处理:

  包括错误处理机制和调试工具。

1.9时间测量:

  提供了用于时间测量的函数,可以用于性能分析和优化。

2.imgproc图像处理

2.1 图像滤波:

  包括各种图像滤波器,如均值滤波、高斯滤波、中值滤波、双边滤波等,用于图像平滑和去噪。

2.2 几何变换:

  包括图像的缩放、旋转、平移、仿射变换和透视变换等。

2.3 图像金字塔:

  支持图像的高斯金字塔和拉普拉斯金字塔操作,用于多尺度图像处理。

2.4 图像阈值化:

  包括简单阈值、自适应阈值和Otsu阈值等,用于图像分割。

2.5边缘检测:

  包括Sobel算子、Scharr算子、Laplacian算子和Canny边缘检测等。

2.6 形态学操作:

  包括腐蚀、膨胀、开操作、闭操作、形态学梯度、顶帽、黑帽等,用于图像形态学处理。

2.7 颜色空间转换:

  支持多种颜色空间的转换,如BGR与灰度图、HSV、Lab、YUV等之间的转换。

2.8 直方图:

  包括直方图计算、直方图均衡化、直方图比较和反向投影等。

2.9 图像修复:

  包括图像的内插和外推,用于修复图像中的缺陷。

2.10 模板匹配:

  用于在图像中搜索和定位模板图像。

2.11 轮廓检测与分析:

  包括轮廓检测、轮廓特征提取(如周长、面积、矩、边界框等)、轮廓近似和凸包计算等。

2.12 霍夫变换:

  用于检测直线和圆,如霍夫线变换和霍夫圆变换。

2.13 图像分割:

  包括分水岭算法、GrabCut算法等,用于图像的前景背景分割。

2.14 绘图函数:

  用于在图像上绘制基本图形,如线条、矩形、圆形、多边形、文本等。

2.15 傅里叶变换:

  支持图像的傅里叶变换和逆傅里叶变换,用于频域分析。

3. imgcodecs.图像文件读写

3.1 图像读取:

  支持从文件中读取图像。可以读取各种格式的图像文件,如JPEG、PNG、TIFF、BMP、WebP等。

3.2 图像写入:

  支持将图像保存到文件中。可以将图像保存为不同格式的文件,如JPEG、PNG、TIFF、BMP、WebP等。

3.3 编码参数设置:

  在保存图像时,可以指定各种编码参数,如JPEG的压缩质量、PNG的压缩级别等。

3.4 图像编码和解码:

  支持将图像数据编码为内存中的特定格式(如JPEG、PNG)或从内存中的特定格式解码为图像数据。

3.5 多页图像支持:

  支持读取和写入多页TIFF文件。

3.6 图像质量评估:

  提供了图像的质量评估函数,用于在编码过程中控制图像质量和文件大小的平衡。

4 Videoio视频 I/O

4.1 视频捕获:

  通过摄像头、视频文件或网络流捕获视频帧。支持多种格式和编码类型。

4.2 视频保存:

  将视频帧保存为视频文件,支持多种编码器和文件格式,如AVI、MP4等。

4.3 视频流读取:

  读取和解码视频文件或视频流中的帧,用于视频分析和处理。

4.4 视频流写入:

  编码和写入视频帧到视频文件或视频流,支持设置编码参数和输出格式。

4.5 视频帧获取和设置:

  获取和设置视频流中的帧属性,如帧宽度、帧高度、帧率、帧计数等。

4.6 摄像头参数设置:

  设置摄像头的参数,如曝光、亮度、对比度、饱和度等。

4.7 多平台支持:

  支持多种操作系统和平台,包括Windows、Linux和macOS。

4.8 视频编解码器支持:

  支持多种视频编解码器,如H.264、MPEG-4、MJPEG等。

5 highgui高级GUI

5.1 图像显示:

  使用cv::imshow函数在窗口中显示图像。可以创建多个命名窗口来显示不同的图像。

5.2 窗口管理:

  1.使用cv::namedWindow创建命名窗口。
  2使用cv::destroyWindowcv::destroyAllWindows关闭一个或所有窗口。
  3.设置窗口属性,如窗口大小、位置和自动大小调整。

5.3 用户交互:

  1.使用cv::waitKey函数等待键盘输入,可以捕捉用户的按键操作。
  2.使用cv::setMouseCallback函数设置鼠标回调,处理鼠标事件,如单击、拖动等。

5.4 轨迹条(滑动条):

  1.使用cv::createTrackbar函数在窗口中创建轨迹条(滑动条),用于调整参数并实时查看效果。

5.5 图像文件I/O:

  1.使用cv::imread函数读取图像文件,支持多种图像格式如JPEG、PNG、BMP等。
  2.使用cv::imwrite函数保存图像文件。

5.6 视频显示:

  使用cv::imshow函数显示视频帧,与videoio模块结合使用,可以实时显示摄像头捕获的视频流或视频文件的内容。

5.7 基本绘图功能:

  提供绘制线条、矩形、圆、文字等基本绘图功能,可以在显示图像或视频帧上叠加图形和文字。
  ## 5.8 简单GUI元素:
提供一些基本的GUI元素,如按钮和复选框(在某些版本中可用)。

5.9 跨平台支持:

  支持在不同操作系统(如Windows、Linux、macOS)上提供一致的图形界面功能。

6 Video视频分析

6.1 视频捕获:

  1.使用cv::VideoCapture类从摄像头、视频文件或图像序列中捕获视频帧。
  2.支持各种视频文件格式(如AVI、MP4)和图像序列格式。

6.2 视频编解码:

  1.使用cv::VideoWriter类将图像序列写入视频文件。
  2.支持多种视频编解码器(如MJPEG、H.264)。

6.3 视频处理:

  1.提供函数进行视频帧的处理,如背景减除、光流计算、对象跟踪等。
  2.支持多种视频处理算法,如KNNMOG2背景减除算法。

6.4 对象跟踪:

  提供多种对象跟踪算法,如KLT(Kanade-Lucas-Tomasi)跟踪器、CSRT、KCF等。

6.5 光流计算:

  1/使用cv::calcOpticalFlowPyrLK等函数计算稠密或稀疏光流。
  支持多种光流计算方法,如Farneback光流法。

6.6 视频分析:

  1.提供运动检测、前景分割等视频分析功能。
  2.支持统计视频中对象的运动轨迹和变化情况。

6.7 摄像头接口:

  1.支持多种摄像头接口,如USB摄像头、IP摄像头。
  2.提供摄像头参数设置和查询功能。

6.8 视频帧处理工具:

  提供对视频帧进行基本图像处理的工具,如缩放、旋转、裁剪等。

6.9时间戳处理:

  支持获取视频帧的时间戳,以便进行同步处理或分析。

7 calib3d相机校准和3D重建

7.1 相机校准:

  1.提供多种相机校准方法,用于估算相机内参和畸变系数,如cv::calibrateCameracv::fisheye::calibrate。
  2.支持单目相机校准和双目相机校准(立体校准)。

7.2 立体视觉:

  1.提供立体匹配算法,如cv::StereoBMcv::StereoSGBM,用于计算视差图。
  2.支持立体整流(stereo rectification),如cv::stereoRectify

7.3 姿态估计:

  1.使用cv::solvePnPcv::solvePnPRansac等函数根据2D图像点和3D物体点估算相机姿态。
  2.提供cv::Rodrigues函数在旋转矩阵和旋转向量之间转换。

7.4 三维重建:

  1.使用cv::reprojectImageTo3D函数根据视差图重建三维点云。
  2.提供基础矩阵、单应矩阵计算,如cv::findFundamentalMatcv::findHomography

7.5 畸变校正:

  1.提供函数用于矫正相机镜头的畸变,如cv::undistortcv::initUndistortRectifyMap
  2.支持鱼眼镜头的畸变校正,如cv::fisheye::undistortImage

7.6 图像拼接:

  提供基于特征点的图像拼接功能,如全景图像的创建。

7.7 结构光:

  支持结构光扫描,用于三维重建。

7.8 外参估计:

  提供函数估计两个相机之间的旋转和平移,如cv::stereoCalibrate

8 features2d 特征框架

8.1 特征检测:

  提供多种特征检测算法,如Harris角点检测、FAST、STAR、SIFT、SURF、ORB等,用于检测图像中的关键点。

8.2 特征描述:

  提供多种特征描述子算法,如BRIEF、SIFT、SURF、ORB、FREAK等,用于计算图像关键点的描述子。

8.3 特征匹配:

  1.提供多种特征匹配算法,如BFMatcher(Brute-Force Matcher)和FLANN-based Matcher,用于匹配不同图像中的特征点。
  2.支持KNN(k近邻)匹配和暴力匹配方法。

8.4 关键点检测和描述:

  提供统一的接口,如cv::Feature2D类,可以同时进行特征检测和描述,方便使用。

8.5 图像对齐和拼接:

  使用特征点匹配实现图像对齐和拼接,如全景图像的创建。

8.6 局部特征提取和匹配:

  支持在图像中提取局部特征点并进行匹配,用于图像识别、物体识别和图像检索等应用。

8.7 多尺度特征检测:

  支持在不同尺度下检测特征点,适用于不同尺度的图像处理。

8.8 特征点绘制:

  提供绘制函数,如cv::drawKeypointscv::drawMatches,用于在图像中可视化特征点和匹配结果。

8.9 特征匹配过滤:

  提供基于距离比值的匹配过滤方法,如Lowe’s ratio test,用于去除错误匹配。

8.10 自适应特征检测:

  支持自适应阈值和非最大抑制,提供更鲁棒的特征检测结果。

9 objdetect目标检测

9.1 对象检测:

  1.提供基于Haar级联分类器(Haar Cascade)的对象检测功能,如人脸检测、眼睛检测、车牌检测等。
  2.提供基于LBP(局部二值模式)级联分类器的对象检测。

9.2 HOG特征和SVM检测:

  1.使用Histogram of Oriented Gradients(HOG)特征结合支持向量机(SVM)进行行人检测。
  2.提供预训练的行人检测模型,可以直接使用cv::HOGDescriptor类进行行人检测。

9.3 人脸检测和识别:

  1.提供DNN(深度神经网络)模型用于人脸检测和人脸关键点检测,如cv::dnn::readNet加载预训练的DNN模型。
  2.支持多种人脸检测算法,如MTCNN、SSD(Single Shot Multibox Detector)等。

9.4 QR码检测:

  提供QR码检测和解码功能,可以检测图像中的QR码并提取其中的信息。

9.5 基于模板的对象检测:

  使用模板匹配方法进行对象检测,如cv::matchTemplate函数。

9.6 条形码检测:

  提供条形码检测功能,可以检测和解码一维条形码和二维条码。

9.7 自定义分类器训练:

  提供工具和接口用于训练自定义的Haar级联分类器,用于检测特定对象。

9.8 对象跟踪:

  提供对象检测和跟踪的集成方法,结合检测和跟踪算法实现实时对象跟踪。

9.9 人脸标志点检测:

  提供人脸标志点检测功能,可以检测人脸的特征点,如眼睛、鼻子、嘴巴等。

10 dnn深度神经网络模块

10.1 深度学习模型加载和推理:

  1.支持加载多种深度学习框架的模型,包括Caffe、TensorFlow、Torch、Darknet、ONNX等。
  2.提供cv::dnn::readNetcv::dnn::readNetFromONNX等函数加载模型。
  3.使用cv::dnn::Net类进行模型推理,包括前向传播。

10.2 支持的层类型:

  提供多种神经网络层类型,如卷积层、池化层、全连接层、激活层、归一化层、RNN/LSTM层等,支持构建和运行复杂的神经网络。

10.3 预处理和后处理:

  1.提供图像预处理函数,如cv::dnn::blobFromImage,将图像转换为网络输入的格式。
  2.提供常用的后处理操作,如非极大值抑制(NMS)和检测结果的解码。

10.4 模型优化:

  支持对深度学习模型进行优化,如量化、剪枝和转换,以提高推理速度和减少内存占用。

10.5 兼容性和硬件加速:

  1.支持CPU、GPU和OpenVINO等多种硬件加速平台。
  2.提供对多种深度学习推理引擎的支持,如OpenCV自带的推理引擎、Intel’s OpenVINO、NVIDIA TensorRT等。

10.6 模型的转换工具:

提供工具和接口将其他框架的模型转换为OpenCV可用的格式,如ONNX模型转换工具。

10.7 端到端应用:

  支持构建端到端的深度学习应用,如物体检测、图像分类、语义分割、人脸识别等。

10.8 自定义层支持:

  允许用户定义和使用自定义的神经网络层,满足特殊应用需求。

10.9 示例和预训练模型:

  提供大量的示例代码和预训练模型,帮助用户快速上手和开发深度学习应用。

10.10 模型部署:

  支持将深度学习模型部署到各种平台,如嵌入式设备、服务器、移动设备等,实现实际应用。

11 ml机器学习

11.1 分类算法:

  支持多种分类算法,如k近邻算法(k-Nearest Neighbors, KNN)、支持向量机(Support Vector Machine, SVM)、决策树(Decision Trees)、随机森林(Random Forests)、Boosting算法(如AdaBoost)等。

11.2 回归算法:

  提供线性回归(Linear Regression)和逻辑回归(Logistic Regression)等回归算法。

11.3 聚类算法:

  提供k均值聚类(k-Means Clustering)算法,用于对数据进行聚类分析。

11.4 贝叶斯分类:

  支持朴素贝叶斯分类器(Naive Bayes Classifier),适用于分类任务。

11.5 神经网络:

  提供简单的人工神经网络(Artificial Neural Network, ANN)实现,包括多层感知器(Multilayer Perceptron, MLP)。

11.6 决策树:

  提供CART(Classification and Regression Tree)决策树算法,支持分类和回归任务。

11.7 随机森林:

  支持随机森林算法(Random Forests),通过集成多个决策树进行分类和回归。

11.8 Boosting算法:

提供AdaBoost和Gradient Boosting算法,提升弱分类器的性能。

11.9 SVM(支持向量机):

  支持线性和非线性支持向量机(SVM),可用于分类和回归。

11.10 核函数:

  支持多种核函数(Kernel Functions),如线性核、RBF核、多项式核等,适用于支持向量机和其他核方法。

11.11 模型评估和交叉验证:

  提供模型评估和交叉验证工具,如K折交叉验证(K-Fold Cross Validation)和混淆矩阵(Confusion Matrix),用于评估模型性能。

11.12 特征选择:

  提供特征选择和降维工具,如主成分分析(PCA)和特征重要性评估。

11.13 数据预处理:

  支持数据标准化、归一化和分割,便于训练和测试模型。

11.14 概率模型:

  支持隐马尔可夫模型(Hidden Markov Model, HMM)和高斯混合模型(Gaussian Mixture Model, GMM),用于时间序列分析和聚类。

11.15 集成学习:

  提供集成学习方法,通过集成多个弱学习器提高模型的泛化能力。

12 flann.多维空间中的聚类和搜索

12.1 快速最近邻搜索:

  1.提供快速最近邻搜索(Fast Approximate Nearest Neighbors, FLANN)功能,用于高维数据的快速最近邻查找。
  2.支持多种近似最近邻搜索算法,如k-d树(k-d Tree)、LSH(Locality-Sensitive Hashing)等。

12.2 索引构建和查询:

  1.提供构建不同类型索引的功能,如线性索引、k-d树索引、k-means索引等,便于进行高效的最近邻搜索。
  2.提供索引查询功能,通过flann::Index类进行快速的最近邻查询。

12.3 参数自动调优:

  1.提供自动选择最优参数的功能,确保在不同数据集上获得最佳的搜索性能。
  2.支持通过参数优化算法自动选择最佳的索引构建和搜索参数。

12.4 多维数据支持:

  1.支持对多维数据进行处理,适用于图像特征匹配、图像检索、聚类分析等任务。
  2.提供高效的数据预处理和转换功能,确保快速和准确的搜索结果。

12.5 可扩展性:

  1.支持扩展和定制化,允许用户定义自定义距离度量和索引结构,以满足特定应用需求。
  2.提供灵活的接口,便于集成到其他机器学习和计算机视觉应用中。

12.6 高效的内存管理:

  1.提供高效的内存管理策略,确保在处理大规模数据集时的性能和资源使用优化。
  2.支持内存映射文件,便于处理超大规模数据集。

12.7 并行处理:

  支持多线程并行处理,提高搜索速度和效率,特别是在大数据集和高维数据场景下。

12.8 跨平台支持:

  提供跨平台支持,适用于Windows、Linux、macOS等多种操作系统,确保广泛的应用场景。

13 photo计算摄影

13.1 去噪算法:

  提供多种图像去噪算法,如非局部均值去噪(Non-Local Means Denoising)、快速非局部均值去噪(Fast Non-Local Means Denoising)等,用于减少图像中的噪声。

13.2 图像修复(Inpainting):

  提供图像修复算法,通过cv::inpaint函数实现,用于修复图像中缺失或损坏的部分。支持基于纹理合成和基于区域增长的修复方法。

13.3 HDR(高动态范围成像):

  支持HDR图像的生成和处理,包括多曝光图像融合、色调映射(Tone Mapping)等。提供cv::createMergeMertenscv::createMergeDebeveccv::createMergeRobertson等函数用于HDR图像生成。

13.4 色调映射(Tone Mapping):

  提供多种色调映射算法,用于将HDR图像转换为可显示的低动态范围图像。支持线性色调映射、Drago色调映射、Reinhard色调映射和Mantiuk色调映射等。

13.5 无缝克隆(Seamless Cloning):

  提供无缝克隆算法,通过cv::seamlessClone函数实现,用于在目标图像上无缝地合成源图像内容。支持混合克隆和普通克隆两种模式。

13.6 颜色转移(Color Transfer):

  提供颜色转移算法,通过cv::colorChange函数实现,用于将源图像的颜色特征转移到目标图像上,实现颜色风格化效果。

13.7 曝光补偿(Exposure Compensation):

  提供曝光补偿功能,通过cv::createAlignMTBcv::CalibrateDebevec等函数实现,用于对多曝光图像进行对齐和曝光补偿。

13.8 去闪烁(DeFlicker):

  提供视频去闪烁功能,通过多帧处理减少视频中的闪烁现象,提高视频质量。

13.9 边缘保持滤波:

  提供边缘保持滤波算法,如双边滤波(Bilateral Filter)、细节增强(Detail Enhancement)等,用于增强图像细节和保持边缘信息。

14 stitching.图像拼接

14.1 图像拼接:

  提供图像拼接功能,通过cv::Stitcher类实现,将多张重叠图像拼接成一张全景图像。
支持全景图像和宽视角图像的生成。

14.2 特征检测与匹配:

  提供特征检测和匹配算法,如SIFT、SURF、ORB等,用于检测图像中的特征点,并在图像之间进行特征匹配。

14.3 图像配准:

  通过估计图像间的变换矩阵,实现图像配准。支持多种变换模型,如平移、仿射、透视变换等。

14.4 曝光补偿:

  提供曝光补偿功能,通过调整不同图像的曝光度,使得拼接后的图像具有一致的亮度。

14.5 图像混合:

  提供图像混合算法,使用多频段融合(Multi-band Blending)技术,实现无缝的图像拼接,减少拼接区域的缝隙和重影。

14.6 相机参数估计:

  提供相机参数估计功能,支持从多张图像中估计相机的内部和外部参数,提高拼接的精度。

14.7 图像矫正:

  提供图像矫正功能,通过去除透视失真和径向畸变,提高拼接图像的质量。

14.8 旋转和缩放:

  支持旋转和缩放操作,以确保图像在拼接前对齐。

14.9 多通道图像支持:

  支持RGB、灰度和多通道图像的拼接,适用于不同类型的图像数据。

14.10 GPU加速:

  在支持的硬件上,提供GPU加速选项,以提高拼接处理的速度。

15 G-API.图形 API

15.1 图形处理管道(Graph API):

  提供图形处理管道功能,通过定义和执行图像处理和计算机视觉任务的图形结构,优化数据流和计算效率。

15.2 延迟计算(Lazy Evaluation):

  支持延迟计算技术,避免不必要的计算和数据传输,仅在需要时执行图像处理操作,提高整体性能。

15.3 跨平台和设备支持:

  支持跨平台运行,包括CPU、GPU和其他硬件加速设备,实现高效的图像处理和计算。

15.4 自定义算子:

  允许用户定义自定义算子(Custom Kernels),扩展G-API的功能,满足特定的图像处理需求。

15.5 优化的内存管理:

  提供优化的内存管理策略,减少内存拷贝和数据冗余,提高处理速度和资源利用率。

15.6 易于集成:

  设计为易于与现有的OpenCV代码和其他第三方库集成,提供一致的API接口和兼容性。

15.7 高层次抽象:

  提供高层次的抽象,简化图像处理和计算机视觉任务的定义和实现,降低开发难度。

15.8 支持多种后端:

  支持多种后端,如OpenCL、CUDA、OpenVX嵌入式等,实现跨平台和跨设备的优化加速。

15.9 流水线并行处理:

  支持流水线并行处理,提高多任务处理的效率和吞吐量。

15.10 可视化调试:

  提供可视化调试工具,帮助开发者理解和优化图像处理管道,提高开发效率。

16.额外模块:

alphamat. Alpha 抠图
aruco. Aruco 标记(功能已移至 objdetect 模块)
bgsegm. 改进的背景前景分割方法
bioinspired. 生物启发的视觉模型及相关工具
cannops. Ascend 加速的计算机视觉
ccalib. 3D 重建的自定义校准模式
cudaarithm. 矩阵运算
cudabgsegm. 背景分割
cudacodec. 视频编码/解码
cudafeatures2d. 特征检测和描述
cudafilters. 图像过滤
cudaimgproc. 图像处理
cudalegacy. 旧版支持
cudaobjdetect. 物体检测
cudaoptflow. 光流
cudastereo. 立体匹配
cudawarping. 图像变形
cudev. 设备层
cvv. 用于计算机视觉程序交互式可视调试的 GUI
datasets. 用于处理不同数据集的框架
dnn_objdetect. 用于物体检测的 DNN
dnn_superres. 用于超分辨率的 DNN
dpm. 变形部件模型
face. 面部分析
freetype. 使用 freetype/harfbuzz 绘制 UTF-8 字符串
fuzzy. 基于模糊数学的图像处理
hdf. 层次数据格式 I/O 例程
hfs. 高效图像分割的层次特征选择
img_hash. 不同图像哈希算法的实现
intensity_transform. 调整图像对比度的强度变换算法的实现
julia. OpenCV 的 Julia 绑定
line_descriptor. 从图像中提取线条的二进制描述符
mcc. Macbeth 色卡模块
optflow. 光流算法
ovis. OGRE 3D 可视化工具
phase_unwrapping. 相位展开 API
plot. 用于 Mat 数据的绘图功能
quality. 图像质量分析(IQA)API
rapid. 基于轮廓的 3D 物体跟踪
reg. 图像配准
rgbd. RGB-深度处理
saliency. 显著性 API
sfm. 从运动中重建结构
shape. 形状距离和匹配
signal. 信号处理
stereo. 立体匹配算法
structured_light. 结构光 API
superres. 超分辨率
surface_matching. 表面匹配
text. 场景文本检测和识别
tracking. 跟踪 API
videostab. 视频稳定
viz. 3D 可视化工具
wechat_qrcode. 用于检测和解析二维码的微信二维码检测器
xfeatures2d. 额外 2D 特征框架
ximgproc. 扩展图像处理
xobjdetect. 扩展物体检测
xphoto. 额外的照片处理算法

http://www.xdnf.cn/news/18838.html

相关文章:

  • 【解锁Photonics for AI:系统学习光学神经网络与超表面设计,成就下一代光芯片工程师】
  • TCP并发服务器构建
  • Linux 离线环境下 Anaconda3 与核心机器学习库(scikit-learn/OpenCV/PyTorch)安装配置指南
  • React内网开发代理配置详解
  • 安装了TortoiseSVN但是在idea的subversion里面找不到svn.exe
  • LangChain4J-(3)-模型参数配置
  • 力扣 30 天 JavaScript 挑战 第41天 (第十二题)对异步操作,promise,async/await有了更深理解
  • 部署k8s-efk日志收集服务(小白的“升级打怪”成长之路)
  • 在 Ubuntu 系统上安装 MySQL
  • Spring Cloud 高频面试题详解(含代码示例与深度解析)
  • 浏览器与计算机网络
  • 计算机网络:服务器处理多客户端(并发服务器)
  • 【Redis#8】Redis 数据结构 -- Zset 类型
  • Java 大视界 -- Java 大数据机器学习模型在电商推荐系统冷启动问题解决与推荐效果提升中的应用(403)
  • Containerd 安装与配置指南
  • 基于Spring Boot的民宿服务管理系统-项目分享
  • THM Smol
  • Redis 数据结构
  • Content-Type是application/x-www-form-urlencoded表示从前端到后端提交的是表单的形式
  • vue新能源汽车销售平台的设计与实现(代码+数据库+LW)
  • 数据结构-串
  • 【微信小程序教程】第13节:用户授权与登录流程狼惫
  • ES03-常用API
  • 前端工程化与AI融合:构建智能化开发体系
  • 【git】P1 git 分布式管理系统简介
  • 开源 C++ QT Widget 开发(七)线程--多线程及通讯
  • 使用openCV(C ++ / Python)的Alpha混合
  • 安卓闪黑工具:aosp16版本Winscope之搜索功能剖析
  • GTCB:引领金融革命,打造数字经济时代标杆
  • 微生产力革命:AI解决生活小任务分享会