美文网首页
一 OpenCV 基础:OpenCV 简介

一 OpenCV 基础:OpenCV 简介

作者: 交大小丑 | 来源:发表于2018-10-23 10:53 被阅读0次

    一、 OpenCV 简介

    OpenCV(开源计算机视觉库 http://opencv.org ) 是一个开源的BSD许可库,包含数百种计算机视觉算法。 该文档描述了所谓的OpenCV 2.x API,它本质上是一个C ++ API,与基于C语言的OpenCV 1.x API有所差异。此文档针对于OpenCV 2.X API翻译,OPenCV 1.X API.pdf有关于C语言接口解释,敬请关注。

    官方文档:
    OpenCV 教程 — OpenCV 2.3.2 documentation http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html

    OpenCV具有模块化结构,这意味着该包包含多个共享库或静态库。 可以使用以下模块:

    • Core functionality:基础数据模块,包含一些发杂数据结构和基本函数方法。
    • Image processing :图像处理模块,包括线性和非线性图像滤波,几何图像变换(调整大小,仿射和透视扭曲,基于通用表的重新映射),颜色空间转换,直方图等。
    • video : 视频分析模块,包括运动估计,背景减法和对象跟踪算法。
    • calib3d : 基本的多视图几何算法,单一和立体摄像机校准,对象姿态估计,立体视觉匹配算法和3D重建元素。
    • features2d : 特征检测器,描述符和描述符匹配器。
    • objdetect : 检测预定义类的对象和实例(例如,面部,眼睛,马克杯,人,汽车等)。
    • highgui :UI界面以及UI功能
    • Video I/O :简单的视频捕获和视频编解码器接口。
    • gpu : 支持不同OpenCV模块的GPU加速算法.
    • ... 一些其他帮助器模块,例如FLANN和Google测试包装器,Python绑定等。
      文档的后续章节讲述了每个模块的功能。 但首先,请确保熟悉库中彻底使用的常见API概念。

    二、API 概述

    2.1 cv Namespace

    所有OpenCV类和函数都放在cv命名空间中。 因此,要从代码中访问此功能,请使用cv :: specifier或using namespace cv; 指示:

    #include "opencv2/core.hpp"
    ...
    cv::Mat H = cv::findHomography(points1, points2, CV_RANSAC, 5);
    ...
    
    or :
    #include "opencv2/core.hpp"
    using namespace cv;
    ...
    Mat H = findHomography(points1, points2, CV_RANSAC, 5 );
    ...
    
    在遇到OpenCV外部名称可能与STL或其他库冲突。 在这种情况下,使用显式名称空间说明符来解决名称冲突:
    Mat a(100, 100, CV_32F);
    randu(a, Scalar::all(1), Scalar::all(std::rand()));
    cv::log(a, a);
    a /= std::log(2.);
    

    参考:
    简介 - 简书 https://www.jianshu.com/p/299433ec71fe

    opencv 3.0 常用函数 (1) - 简书 https://www.jianshu.com/p/d67f53413c14

    学习资料
    https://blog.csdn.net/manyouxianfeng/article/details/78049648

    相关文章

      网友评论

          本文标题:一 OpenCV 基础:OpenCV 简介

          本文链接:https://www.haomeiwen.com/subject/temozftx.html