opencv-开源计算机视觉python库

OpenCV(开源计算机视觉库:opencv.org)是一个开放源代码库,其中包含数百种计算机视觉算法。该文档介绍了所谓的OpenCV 2.x API,与基于C的OpenCV 1.x API相比,它实际上是C ++ API(自OpenCV 2.4发行以来,C API已被弃用,并且未经“ C”编译器进行测试)。

模块

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

  • 核心功能(core)-定义基本数据结构的紧凑模块,包括密集的多维数组Mat和所有其他模块使用的基本功能。

  • 图像处理(imgproc)-一种图像处理模块,包括线性和非线性图像过滤,几何图像转换(调整大小,仿射和透视变形,基于常规表的重新映射),颜色空间转换,直方图等。

  • 视频分析(video)-视频分析模块,包括运动估计,背景减法和对象跟踪算法。

  • 摄像机校准和3D重构(calib3d)-基本的多视图几何算法,单摄像机和立体摄像机校准,对象姿态估计,立体对应算法以及3D重构要素。

  • 2D要素框架(features2d)-显着特征检测器,描述符和描述符匹配器。

  • 对象检测(objdetect)-检测对象和预定义类的实例(例如,面孔,眼睛,杯子,人,汽车等)。

  • 高级GUI(highgui)-简单的UI功能的易于使用的界面。

  • 视频I / O(videoio)-用于视频捕获和视频编解码器的易于使用的界面。

  • ...其他一些帮助器模块,例如FLANN和Google测试包装器,Python绑定等。

安装

从源代码构建OpenCV

  • 下载并安装Visual Studio和CMake。

  • 将必要的Python软件包下载并安装到其默认位置

  • 确保Python和Numpy正常运行。

  • 通过网盘下载OpenCV源代码,或者也可以从Sourceforge(对于官方发行版)或来自Github(对于最新源)。

  • 将其解压缩到一个文件夹中,在opencv中创建一个新的文件夹。

  • 打开CMake-gui(开始>所有程序> CMake-gui)

  • 如下填写字段(请参见下图):

  • 您将看到所有字段都标记为红色。单击WITH字段将其展开。它决定了您需要哪些额外的功能。因此,请标记适当的字段。

  • 现在,单击“构建”字段以将其展开。前几个字段配置构建方法。

  • 其余字段指定要构建的模块。由于OpenCV-Python尚不支持GPU模块,因此可以完全避免使用它以节省时间(但如果使用它们,则将其保留在此处)。

  • 现在单击“启用”字段将其展开。确保未选中ENABLE_SOLUTION_FOLDERS(Visual Studio Express版本不支持解决方案文件夹)。

  • 还要确保在“ PYTHON”字段中,所有内容都已填充。(忽略PYTHON_DEBUG_LIBRARY)。

  • 最后,单击“生成”按钮。

  • 现在转到我们的opencv / build文件夹。在那里您将找到OpenCV.sln文件。用Visual Studio打开它。

  • 将构建模式检查为Release而不是Debug。

  • 在解决方案资源管理器中,右键单击解决方案(或ALL_BUILD)并进行构建。需要一些时间才能完成。

  • 再次,右键单击INSTALL并进行构建。现在将安装OpenCV-Python。

  • 打开Python IDLE,然后输入“将cv2导入为cv”。如果没有错误,则表明已正确安装。

OpenCV的Python

OpenCV-Python是旨在解决计算机视觉问题的Python绑定库。

Python是由Guido van Rossum发起的通用编程语言,很快就非常流行,主要是因为它的简单性和代码可读性。它使程序员可以用较少的代码行表达想法,而不会降低可读性。

与C / C ++之类的语言相比,Python速度较慢。也就是说,可以使用C / C ++轻松扩展Python,这使我们能够用C / C ++编写计算密集型代码并创建可用作Python模块的Python包装器。这给我们带来了两个好处:首先,代码与原始C / C ++代码一样快(因为它是在后台运行的实际C ++代码),其次,在Python中比C / C ++编写代码更容易。OpenCV-Python是原始OpenCV C ++实现的Python包装器。

OpenCV-Python使用Numpy,这是一个高度优化的库,用于使用MATLAB风格的语法进行数值运算。所有OpenCV数组结构都与Numpy数组相互转换。这也使与使用Numpy的其他库(例如SciPy和Matplotlib)的集成变得更加容易。

(0)

相关推荐

  • Python图像处理工具有哪些?五大工具推荐!

    使用Python进行图像处理的时候,肯定避免不了工具,今天小编向大家推荐五款Python图像处理工具,有需求的小伙伴快来看看吧. 1 scikit-image 是一个开源的Python包,适用于num ...

  • python+opencv图像处理(二十二)

    中值滤波 中值滤波是比较常用的一种图像平滑处理方法. 其基本思路是通过滤波器遍历图像,取滤波器区域像素值中值为新的像素值. 表示为数学表达式如下: 其中,f(x,y)和g(x,y)分别是原图像和处理后 ...

  • 【推荐】Python图像处理工具有哪些?

    对比其他编程语言,Python更适合图像处理,因为Python有好多工具包应用于图像处理当中,既能提高效率,也能节省时间.那么Python图像处理工具有哪些?本文为大家介绍10个Python图像处理工 ...

  • 基于Python的颜色识别器

    重磅干货,第一时间送达 在这篇文章中,我们将展示如何使用Python构建颜色识别器.此过程也称为"颜色检测".我们将创建一个基本应用程序,该应用程序将帮助我们检测图像中的颜色.该程 ...

  • 实战:使用 Python 用不到 10 行代码计算汽车数量

    重磅干货,第一时间送达 在这篇文章中,将教你如何使用 Python 用 10 行代码构建自己的汽车计数器程序.本文所依赖的 python 库: opencv-pythoncvlib matplotli ...

  • OpenCV-Python,计算机视觉开发利器

    人工智能,一个已经被谈论了几十年的概念(最早是图灵在1950年提出).如今这几年,相关技术的发展速度是越来越快.高大上如无人驾驶.智能安防.AI辅助诊断,接地气如刷脸支付.内容推荐.自动翻译等,众多领 ...

  • opencv和Python有什么不同?基础分析!

    Python不用过多的介绍,大家都比较了解它,它是一门高级的.面向对象的编程语言,那么它与opencv有什么不同呢?它们之间的区别是什么?我想很多人对它们都有所好奇吧,接下来我们一起来了解一下. 首先 ...

  • kornia-PyTorch的开源计算机视觉python库

    Kornia是一个微计算机视觉库PyTorch. 它由一组例程和可区分模块组成,用于解决通用计算机视觉问题.该软件包的核心是使用PyTorch作为其主要后端,以提高效率并利用反向模式自动微分来定义和计 ...

  • 微软开源计算机视觉专题库,含分类、检测、分割、关键点、跟踪、动作识别等主流方向

    微软在计算机视觉研究领域一直非常活跃,尤其是国内的微软亚洲研究院诞生了诸如残差网络(ResNet).Faster RCNN.高分辨率网络(HRNet)等影响巨大的算法. 微软从去年开源了 comput ...

  • 有哪些开源的 Python 库让你相见恨晚?

    之前在知乎回答了这个问题,得到不少人的喜欢,最近又发现了几个不错的 Python 库,赶在 520 之时一并整理分享给大家,希望对你有帮助,别问,问就是良心的一批. Arrow 我们知道 Python ...

  • ​关于深度学习、NLP和计算机视觉的30个顶级Python库

    再次感谢艾哈迈德·阿尼斯(Ahmed Anis)为收集这些数据做出的贡献,并感谢KDnuggets的其他工作人员的意见,见解和建议. 作者 / Matthew Mayo 原文链接 / https:// ...

  • OpenCV开发团队开源计算机视觉标注工具CVAT

    OpenCV开发团队开源计算机视觉标注工具Computer Vision Annotation Tool (CVAT) 同时支持图像和视频的标注,最大特点是专业!专业团队做的专业水准的工具! (关注& ...

  • 简直让人欲罢不能!820个ML Python库,star超260万,持续周更中...

    深度学习技术前沿 120篇原创内容 公众号 当你发愁找不到合适的开源项目时,有人已经悄悄地整理好了.今天要介绍的这个 GitHub 项目提供了大量机器学习 Python 库,覆盖机器学习框架.数据可视 ...

  • 终于把所有的Python库,都整理出来啦!

    Python爱好者社区 1周前 来源:法纳斯特 大家好,我是小五

  • Python库大全,建议收藏留用!

    学Python,想必大家都是从爬虫开始的吧.毕竟网上类似的资源很丰富,开源项目也非常多. Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 当我们在浏览器中输入一个url后回车,后台会发生 ...

  • 15个好用到哭的python库,真不错!

    为什么很多人喜欢Python?对于初学者来说,这是一种简单易学的编程语言,另一个原因:大量开箱即用的第三方库,正是23万个由用户提供的软件包使得Python真正强大和流行. 在本文中,我挑选了15个最 ...

  • 10大Python库介绍!

    现在转行学编程,很多人都会选择Python,很大一部分原因是因为Python具有丰富的第三方库,既可以帮助我们提高开发效率,还能够缩减代码量.那么你知道Python有哪些库吗?这里为大家介绍10个,总 ...