opencv

简介: 引用:http://baike.so.com/doc/627476.html 基本简介   OpenCV(Open Source Computer Vision Library) 由公司在背后提供支持。

引用:http://baike.so.com/doc/627476.html

基本简介

  OpenCV(Open Source Computer Vision Library) 由公司在背后提供支持。它包含了超过500个函数来实现用于图形处理和计算机视觉方面的通用算法。

主要特点

  OpenCV于1999年由Intel建立,现在由Willow Garage提供支持。OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。最新版本是2.4.2。

  OpenCV是Intel®开源计算机视觉库。它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法。

  OpenCV 拥有包括 300 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。

  OpenCV 对非商业应用和商业应用都是免费(FREE)的。(细节参考 license)。

  OpenCV 为Intel® Integrated Performance Primitives (IPP) 提供了透明接口。 这意味着如果有为特定处理器优化的的 IPP 库, OpenCV 将在运行时自动加载这些库。[1]

优势

  为什么有OpenCV

  计算机视觉市场巨大而且持续增长,且这方面没有标准API,目前的计算机视觉软件大概有以下三种:

  1.研究代码(慢,不稳定,独立并与其他库不兼容)

  2.耗费很高的商业化工具(比如Halcon, MATLAB+Simulink)

  3.依赖硬件的一些特别的解决方案(比如视频监控,制造控制系统,医疗设备)这是目前的现状。而标准的API将简化计算机视觉程序和解决方案的开发。OpenCV致力于成为这样的标准API。

  OpenCV致力于真实世界的实时应用,通过优化的C代码的编写对其执行速度带来了可观的提升,并且可以通过购买Intel的IPP高性能多媒体函数库(Integrated Performance Primitives)得到更快的处理速度。右图为OpenCV与现在其他主流视觉函数库的性能比较。

发展历程

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

  2000年6月,第一个开源版本OpenCV alpha 3发布。

  2000年12月,针对linux平台的OpenCV beta 1发布。

  期间,继续各种研究。。。

  2006年,支持Mac OS的OpenCV 1.0发布。

  2009年9月,OpenCV 1.2(beta2.0)发布。

  2009年10月1日,Version 2.0发布。

  2010年12月6日,OpenCV 2.2发布。

  2011年8月,OpenCV 2.3发布。

  2012年4月2日,发布OpenCV 2.4.

  OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。

  OpenCV 使用类BSDlisence,所以对非商业应用和商业应用都是免费(FREE)的。(细节参考 license)。

  OpenCV 为Intel Integrated Performance Primitives (IPP) 提供了透明接口。 这意味着如果有为特定处理器优化的的 IPP 库, OpenCV 将在运行时自动加载这些库。

  OpenCV提供的视觉处理算法非常丰富,并且它部分以C语言编写,加上其开源的特性,处理得当,不需要添加新的外部支持也可以完整的编译链接生成执行程序,所以很多人用它来做算法的移植,OpenCV的代码经过适当改写可以正常的运行在DSP系统和单片机系统中,目前这种移植在大学中经常作为相关专业本科生毕业设计或者研究生课题的选题。

相关应用

  1、人机互动

  2、物体识别

  3、图象分割

  4、人脸识别

  5、动作识别

  6、运动跟踪

  7、机器人

其他资料

  作者列表可以在AUTHORS文件中找到。

  此外,还有很多人给出了建议、补丁、BUG 报告等等,在文件THANKS中对此有一个不完全的列表。

  想要了解OpenCV的新特征,请参考OpenCVChangeLog。

  如果有问题,在Google中输入"OpenCV"搜索。

  如果在安装/运行/使用OpenCV中遇到问题

  1、阅读FAQ中文

  2、在 OpenCV 邮件列表中搜索。

  3、加入到 yahoo group 上的 OpenCV 邮件列表中(如何加入请参考 FAQs),并发送你的问题到邮件列表中。(这个邮件列表可能会迁移到OpenCV's SourceForge site)

  4、参考 OpenCV 的例子代码,阅读参考手册    

 
参考资料:
开放分类:
开源  c语言  计算机视觉
相关文章
|
11天前
|
机器学习/深度学习 人工智能 算法
OpenCV
OpenCV
35 1
|
7月前
|
计算机视觉 Python
openCV之仿射
openCV之仿射
24 0
|
7月前
|
文字识别 计算机视觉
OpenCV演示程序 汇总
OpenCV演示程序 汇总
|
8月前
|
机器学习/深度学习 人工智能 算法
opencv
OpenCV(Open Source Computer Vision Library,开源计算机视觉库)是一个开源的计算机视觉和机器学习软件库,它包含了许多图像处理、视频分析和计算机视觉方面的功能。OpenCV 的目的是为人工智能、
135 0
|
8月前
|
计算机视觉
opencv遇到问题总结一
opencv遇到问题总结一
39 0
|
10月前
|
存储 编解码 算法
09 OpenCV图形检测
cv2.findContours() 函数是OpenCV中用于寻找轮廓的函数之一。它可以用于在二值图像中查找并检测出所有的物体轮廓,以及计算出这些轮廓的各种属性,例如面积、周长、质心等。
|
11月前
|
机器学习/深度学习 监控 算法
opencv
OpenCV是一个开源的计算机视觉库,可以用于图像处理、计算机视觉和机器学习等领域。OpenCV最初由Intel公司开发,后来在开放源代码许可证下发布,目前已经成为了计算机视觉领域最受欢迎的开源库之一。
295 0
|
算法 Java Android开发
OpenCV的获取和安装
OpenCV的获取和安装
318 0
OpenCV的获取和安装
|
计算机视觉
opencv初识
opencv初识
87 0
|
安全 机器人 Java
OpenCV初步了解
OpenCV是一个用于图像处理、分析、机器视觉方面的开源函数库.
192 1
OpenCV初步了解