前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenCV-Python学习(1)—— OpenCV历史与安装

OpenCV-Python学习(1)—— OpenCV历史与安装

作者头像
Rattenking
发布2022-09-30 08:37:14
8770
发布2022-09-30 08:37:14
举报
文章被收录于专栏:Rattenking

1. OpenCV 介绍

OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令, 如今也提供对于C#、Ch、Ruby,GO的支持。

2. OpenCV 发展历史

时间

发布版本

1999年

CVL项目启动。主要目标是人机界面,能被UI调用的实时计算机视觉库,为Intel处理器做了特定优化。

2006年

支持Mac OS的OpenCV 1.0发布。

2009年

Version 2.0发布。

2015年

发布OpenCV 3.0。

2018年

发布OpenCV 4.0。

2022年4月

发布OpenCV 4.5.5。

注意

OpenCV 1.0版本和OpenCV 2.0版本差距比较大;OpenCV 2.0版本和OpenCV 3.0版本近似;OpenCV 3.0版本和OpenCV 4.0版本差距比较大。因此开始需要找到python对应版本的OpenCV版本。

3. OpenCV 模块

1. OpenCV 主要模块

模块

介绍

ml

机器学习库(Machine Learning Library, MLL)是一组可用于分类、回归和聚类目的的类和方法

calib3d

摄像机标定和三维重建,包括基本的多视点几何算法、立体匹配算法、目标姿态估计、单摄像机和立体摄像机标定以及三维重建

features2d

二维特征框架,该模块包括特征检测器、描述符和描述符匹配器

objdetect

目标检测,检测预定义类的对象和实例(例如,人脸、眼睛、人和汽车)

stitching

图像拼接,实现了一个自动拼接全景图像的拼接流水线

photo

计算摄影,提供一些计算摄影的函数

dnn

深度神经网络(Deep neural network, DNN)模块,本模块包含以下内容:用于创建新层的API、一组预定义的常用层、从层构造和修改神经网络的API、从不同深度学习框架加载序列化网络模型的功能等

Core

核心模块,是定义基本数据结构的模块,也包括库中所有其他模块使用的基本函数

Imgproc

图像处理模块,包括图像滤波、几何图像变换、颜色空间变换和直方图

Imgcodecs

图像文件读写

HighGui

高级GUI,提供UI功能的接口,可以执行以下操作:创建和操作可以显示的窗口、将滑动条添加到窗口、键盘命令和处理鼠标事件等

VideoIO

视频I/O,视频捕获和视频编解码器的接口

Video

视频分析模块,包括背景减法、运动估计和目标跟踪算法

2. OpenCV 扩展模块

视频编码解码、CUDA加速、IE加速、DNN扩展功能、背景分析、图像分析、光流分析。

3. 注意
  1. 没有足够稳定性;
  2. 需要自己编译。

4. OpenCV 源码和教程

  1. GitHub源码
  2. OpenCV 4.5.5 文档

5. OpenCV-Python 安装

1. 只安装【主模块】
代码语言:javascript
复制
pip install opencv-python==4.6.0.66
2. 使用镜像安装 OpenCV-Python
代码语言:javascript
复制
pip install opencv-python==4.6.0.66 -i https://pypi.tuna.tsinghua.edu.cn/simple
3. 安装【主模块和附加模块】
代码语言:javascript
复制
pip install opencv-contrib-python
4. 注意

在不使用附加模块的情况,尽量只安装主模块!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. OpenCV 介绍
  • 2. OpenCV 发展历史
    • 注意
    • 3. OpenCV 模块
      • 1. OpenCV 主要模块
        • 2. OpenCV 扩展模块
          • 3. 注意
          • 4. OpenCV 源码和教程
          • 5. OpenCV-Python 安装
            • 1. 只安装【主模块】
              • 2. 使用镜像安装 OpenCV-Python
                • 3. 安装【主模块和附加模块】
                  • 4. 注意
                  相关产品与服务
                  图像处理
                  图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档