OpenCV

来自Local Chinese Wikipedia
imported>InternetArchiveBot2025年2月10日 (一) 10:17的版本 (补救4个来源,并将0个来源标记为失效。) #IABot (v2.0.9.5)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

Template:NoteTA 脚本错误:没有“Infobox”这个模块。Template:Template other脚本错误:没有“Check for unknown parameters”这个模块。

脚本错误:没有“Lang”这个模块。的全称是脚本错误:没有“Lang”这个模块。,是一个跨平台的计算机视觉库。脚本错误:没有“Lang”这个模块。是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理计算机视觉以及模式识别程序。2011年起,OpenCV开始支持GPU实时加速运算[1]

历史[编辑]

OpenCV项目最早由英特尔公司于1999年启动,致力于CPU密集型的任务,是一个包括如光线追踪3D显示的计划的一部分。早期OpenCV的主要目标是

  • 为推进机器视觉的研究,提供一套开源且优化的基础库。不重造轮子
  • 提供一个共同的基础库,使得开发人员的代码更容易阅读和转让,促进了知识的传播。
  • 透过提供不需要开源或免费的软件许可,促进商业应用软件的开发。

OpenCV的第一个预览版本于2000年在国际计算机视觉与模式识别会议公开,并且陆续提供了五个测试版本。1.0版本于2006年发布。

OpenCV的第二个主要版本是2009年10月的OpenCV 2.0。该版本的主要更新包括C++接口,更容易、更类型安全的模式,新的函式,以及对现有实现的优化(特别是多核心方面)。现在每6个月就会有一个官方版本[2],并由一个商业公司赞助的独立小组进行开发。

在2012年8月,OpenCV的营运由一个非营利组织(OpenCV.org)来提供,并保留了一个开发者网站[3]和用户网站。[4]

应用领域[编辑]

OpenCV可用于解决如下领域的问题:

编程语言[编辑]

OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的PythonJavaMATLAB/OCTAVE(版本2.5)的接口。这些语言的API接口函数可以透过在线文档取得[5]。现在也提供对于Template:TslTemplate:Tsl[6]的支持。在 3.4 版本中,释出了OpenCV函数的JavaScript绑定,称为OpenCV.js。

硬件加速[编辑]

如果OpenCV在系统中找到了英特尔集成性能原语,它就会使用优化的例程去加速运行。

CUDA为基础的图形处理器(GPU)接口于2010年9月起开展[7]

OpenCL为基础的GPU接口则从2012年10月起开启[8],2.4.13.3版的相关文件可以在docs.opencv.org阅览[9]

操作系统支持[编辑]

OpenCV可以在WindowsAndroid[10]Maemo[11]FreeBSDOpenBSDiOS[12]LinuxMac OS等平台上运行。另外也可以在移动设备的系统上运行,诸如:Android, iOS, Maemo,[13] BlackBerry 10 以及 QNX.[14]使用者可以在Github获得官方版本,或者从Git获得开发版本。OpenCV使用CMake

Windows 操作系统要求[编辑]

在Windows上编译OpenCV中与摄像输入有关部分时,需要DirectShow SDK中的一些基类。该SDK可以从预先编译的Microsoft Platform SDK (or DirectX SDK 8.0 to 9.0c / DirectX Media SDK prior to 6.0)的子目录Samples\Multimedia\DirectShow\BaseClasses获得。

参考文献[编辑]

外部链接[编辑]

  1. 重定向 Template:Official website