《学习OpenCV 3(中文版)》 —OpenCV的起源

举报
清华大学出版社 发表于 2019/10/23 20:31:53 2019/10/23
【摘要】 本节书摘来自清华大学出版社《学习OpenCV 3(中文版)》 一书中第一章,作者是[美]安德里安 • 凯勒 (Adrian Kaehler) 加里 • 布拉德斯基 (Gary Bradski) , 阿丘科技 刘昌祥 吴雨培 王成龙 崔玉芳 等译。

OpenCV的起源

OpenCV缘起于英特尔想要增强CPU集群性能的研究。该项目的结果是英特尔启动了许多项目,包括实时光线追踪算法以及三维墙体的显示。其中一位研究员Gary Bradski

(加里 布拉德斯基),当时正在为英特尔工作,他在访问大学的时候注意到很多顶尖大学研究机构,比如MIT的媒体实验室,拥有非常完备的内部公开的计算机视觉开发接口——代码从一个学生传到另一个学生手中,并且会给每个新来的学生一个有价值的由他们自己开发的视觉应用方案。相较于从头开始设计并完成基本功能,新来的学生可以在之前的基础上进行很多新的工作。

所以,OpenCV怀着为计算机视觉提供通用性接口这一思想开始了策划。在英特尔性能实验室(Performance Library)团队的帮助下,2OpenCV最初的核心代码和算法规范是英特尔俄罗斯实验室团队完成的,这就是OpenCV的缘起,从英特尔软件性能组的实验研究开始,俄罗斯的专家负责实现和优化。

俄罗斯专家团队的负责人是Vadim Pisarevsky(瓦迪姆 彼萨里夫斯基),他负责规划、编程以及大部分OpenCV的优化工作,并且到现在他仍是很多OpenCV项目的核心人物。与他一同工作的Victor Eruhimov(维克托 伊拉西莫夫)帮助构建了早期框架,Valery Kuriakin(瓦勒利 库里阿基恩)负责管理俄罗斯实验室并且为项目提供了非常大的助力。以下是OpenCV想要完成的一些目标。spacer.gif

2 Shinn Horng Lee(李信弘)是主要推动者,时任IPP(集成性能基元)首席架构师。

6  

  为高级的视觉研究提供开源并且优化过的基础代码,不再需要重复造轮子。

  以提供开发者可以在此基础上进行开发的通用接口为手段传播视觉相关知识,这样代码有更强的可读性和移植性。

  以创造可移植的、优化过的免费开源代码来推动基于高级视觉的商业应用,这些代码可以自由使用,不要求商业应用程序开放或免费。

这些目标阐述了Opencv创建的目的。启用计算机视觉程序,将会增加对运算更快处理器的需求,从而使得用户购买更快的处理器,相较于售卖额外的软件,能够更快增加英特尔的收入。也许这就是这样一个开源并且免费的代码库是由一个硬件厂商而非软件厂商开发的原因。有时,硬件厂商内部拥有更多针对软件的创新空间。

对于开源项目来说,项目需要超过一个临界质量使其能够自我维持,这是开源项目非常重要的一点。目前,OpenCV已经拥有接近1100万次的下载量(20093月,200万次),并且这个数字还在以平均每个月160 000次下载的速度增长。OpenCV得到了来自很多用户的贡献,研发主力也很大部分转移到英特尔之外。3OpenCV发展的时间线如图1-3所示。译注1在发展过程中,OpenCV受到互联网泡沫的影响,也受到管理层和方向变更等诸多变化的影响,在这些波动的过程中,有时候根本就没有英特尔公司任何人员参与。然而,随着多核处理器的出现以及计算机视觉的许多新应用的问世,OpenCV的价值开始上升。类似地,机器人领域的快速增长也推动了许多用户开始使用和开发这个库。在成为一个开源的函数库之后,OpenCV经过柳树车库几年的开发,现在已经得到了OpenCV基金会的支持。在今天,OpenCV由基金会以及一些上市公司和私人机构开发,更多关于OpenCV未来的信息,请参阅涉及OpenCV未来的相关章节。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。