定义

OpenCV于1999年由Intel建立,如今由Willow Garage提供支持。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。如今也提供对于C#、Ch、Ruby的支持。所有新的开发和算法都是用C++接口。一个使用CUDA的GPU接口也于2010年9月开始实现。OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。

发展历史

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。
2014年8月21日,发布OpenCv 3.0 alpha。
2014年11月11日,发布OpenCV 3.0 beta。
2015年6月4日,发布OpenCV 3.0。
2016年12月,发布OpenCV 3.2版(合并969个修补程序,关闭478个问题)
2017年8月3日,发布OpenCV 3.3版(最重要的更新是把DNN模块从contrib里面提到主仓库)
OpenCV 使用类BSDlicense,所以对非商业应用和商业应用都是免费(FREE)的。(细节参考 license)

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

为什么用OpenCV

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

应用领域

1、人机互动
2、物体识别
3、图像分割
4、人脸识别
5、动作识别
6、运动跟踪
7、机器人
8、运动分析
9、机器视觉
10、结构分析
11、汽车安全驾驶

版本发布时间

2010年12月06日,OpenCV 2.2.0 正式版发布。 
2011年06月25日,OpenCV-2.3.0rc 发布了,新增加了一个stitching拼接模块,Android支持更加方便了,使用Google test框架,其他变化主要是内部性能改进。
2013年07月03日,OpenCV 2.4.6发布。
主要更新是关于手持设备方面的:
首先,OpenCV 2.3的Android build终于变成了官方支持的NDK-Build的方式了。以前的方法相当让人头疼,使用的非Android官方的方法去写JNI接口,tutorial跟着走一遍也不知道所以然。
其次,What’s new里面说道,新的Android支持是NVidia在开发。本来OpenCV就是支持CUDA显卡加速的。
2013年12月31日,OpenCV 2.4.8发布。
2014年4月25日,OpenCV 2.4.9发布。
2014年8月21日,OpenCv 3.0 alpha版本发布。
2014年11月11日,OpenCV 3.0 beta版本发布。
2015年6月4日,OpenCV 3.0版本发布。
2015年7月30号,OpenCV2.4.12版本发布。
2015年12月21日,OpenCV3.1版本发布。
2016年12月23日,OpenCV3.2版本发布。
2017年8月3日,OpenCV3.3版本发布。

OpenCV(Open Source Computer Vision Library)简介相关推荐

  1. 人脸识别之人眼定位、人脸矫正、人脸尺寸标准化---Mastering OpenCV with Practical Computer Vision Projects

    代码来源于<Mastering OpenCV with Practical Computer Vision Projects > 她的另外几篇文章,也翻译的很好 http://blog.c ...

  2. Mastering OpenCV with Practical Computer Vision Projects

    1.书名:<Mastering OpenCV with Practical Computer Vision Projects> 2.书下载地址:https://download.csdn. ...

  3. 整理《Mastering OpenCV with Practical Computer Vision Projects》中第8章用Eigenfaces或Fisherfaces进行人脸识别操作流程

    These generally involve four main steps:(1).Face detection:(2).Face preprocessing:(3).Collect and le ...

  4. 行人检测算法(ICF DPM)CCV(A Morden Computer Vision Library)的使用VisualBox下使用Ubuntu

    文章搬家到了ICF,DPM等行人检测算法实践,CSDN上的博客不在进行维护,谢谢. 由于最近要用到ICF,DPM等新的行人检测算法,找到了开源库CCV http://libccv.org/tutori ...

  5. Artificial Intelligence Computer Vision ML and DL

    Ref:face_recognition Ref:seetaface Ref:百度AI开放平台 Ref:Face++开放平台 Ref:Cognitive Services Ref:AForge.NET ...

  6. OpenCV 1.x 2.x 编程简介(矩阵/图像/视频的基本读写操作)

    OpenCV 编程简介(矩阵/图像/视频的基本读写操作) Introduction to programming with OpenCV OpenCV编程简介 作者: Gady Agam Depart ...

  7. (1)课程简介-CS231A:Computer Vision, From 3D Reconstruction to Recognition

    斯坦福大学-源地址: CS231A: Computer Vision, From 3D Reconstruction to Recognition CS231AGitHub笔记:https://git ...

  8. 关于computer vision的会议及vision guys-机器学习与视觉大牛族谱深度挖掘

    原文地址:http://aimit.blog.edu.cn/2010/602210.html The genealogy relationship of the learning and vision ...

  9. Resource of computer vision, pattern recognition, machine learning etc.

    Resource of computer vision, pattern recognition, machine learning etc. 1.牛人 Serge Belongie at UC Sa ...

最新文章

  1. js赋值后 改变现有数据会修改原来的数据
  2. 【零基础入门数据挖掘】-建模调参
  3. java 存储cookie_java设置cookie,存储和读取 | 学步园
  4. altiumer designer学习
  5. [css] 说出至少十条你理解的css规范
  6. h3c 虚拟服务器 下一跳,H3C vLNS系列虚拟L2TP网络服务器 配置指导-E0324-5W100
  7. android tv的冷启动,YunOS智能电视操作系统——10秒快速冷启动开机
  8. 【Q】【POJ 2560】【POJ 2031】
  9. 【vue】vue中element表格导出为excel表格
  10. K66芯片解锁/J-link报错的解决思路
  11. 2022-03-05 使用 putty 远程连接阿里云服务器
  12. 基于拦截器实现防表单重复提交
  13. 2010页游报告:开测222款31款停运
  14. 操作系统发展历程 (Unix、Linux、windows)
  15. 调用百度人体属性检测api进行人员预标注
  16. 如何选择适合的短信通道
  17. 魔兽世界服务器名称修改,魔兽世界怀旧服新增6组服务器 新服务器名称一览
  18. UniSwap V3协议浅析(上)
  19. 面试如何回答 HR「你未来五年计划」的问题?
  20. JAVA判断是不是回文_Java 基础编程练习(判断是否为回文)

热门文章

  1. linux的挂载的问题,重启后就挂载就没有了
  2. 前端如何展示商品属性:SKU多维属性状态判断算法的应用-Vue 实现
  3. 用mac的chrome浏览器调试Android手机的网页
  4. HDU1166 (线段树/修改点,询问区间)
  5. Decoda Tutorial LUA调式器
  6. DefaultNetworkCredentials vs DefaultCredentials
  7. 案例:演示out对象的使用及原理分析
  8. java 乱序算法_前端面试(算法篇) - 数组乱序
  9. .net 批量更新_云子批量命名电脑版|云子批量命名PC版下载_v2021
  10. php echo nbsp,关于include里面的函数echo的问题