博舍

OpenCV是什么有哪些技术应用领域 人工智能技术框架有哪些类型的应用领域包括

OpenCV是什么有哪些技术应用领域

1999年,GaryBradski(加里·布拉德斯基)当时在英特尔任职,怀着通过为计算机视觉和人工智能的从业者提供稳定的基础架构并以此来推动产业发展的美好愿景,他启动了OpenCV项目。

OpenCV(OpenSourceComputerVisionLibrary)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法(最基本的滤波到高级的物体检测皆有涵盖)。

OpenCV库用C语言和 C++ 语言编写,可以在Windows、Linux、MacOSX等系统运行。同时也在积极开发 Python、Java、Matlab以及其他一些语言的接口,将库导入安卓和iOS中为移动设备开发应用。

OpenCV是跨平台的,可以在  Windows、Linux、MacOS、Android、iOS等操作系统上运行。

OpenCV的应用领域非常广泛,包括图像拼接、图像降噪、产品质检、人机交互、人脸识别、动作识别、动作跟踪、无人驾驶等。

OpenCV还提供了机器学习模块,你可以使用正态贝叶斯、K最近邻、支持向量机、决策树、随机森林、人工神经网络等机器学习算法。

OpenCV自项目成立以来获得了来自英特尔和谷歌的大力支持,尤其需要感谢Itseez,该公司完成了早期开发的大部分工作。此后,Arraiy团队加入该项目并负责维护始终开源和免费的OpenCV.org。

Itseez是俄罗斯的一家视觉公司,专门从事计算机视觉算法。2016年5月,英特尔收购该公司,以“帮助英特尔的用户打造创新型深度学习的CV应用,如果自动驾驶、数字安全监控和工业检测”(英特尔物联网总经理DougDacies如此说)。

OpenCV设计用于进行高效的计算,十分强调实时应用的开发。它由C++语言编写并进行了深度优化,从而可以享受多线程处理的优势。

OpenCV的一个目标是提供易于使用的计算机视觉接口,从而帮助人们快速建立精巧的视觉应用。

OpenCV库包含从计算机视觉各个领域衍生出来的500多个函数,包括工业产品质量检验、医学图像处理、安保领域、交互操作、相机校正、双目视觉以及机器人学。

因为计算机视觉和机器学习经常在一起使用,所以OpenCV也包含一个完备的、具有通用性的机器学习库(ML模块)。这个子库聚焦于统计模式识别以及聚类。ML模块对OpenCV的核心任务(计算机视觉)相当有用,但是这个库也足够通用,可以用于任意机器学习问题。

 

IPPICV加速

如果希望得到更多在英特尔架构上的自动优化,可以购买英特尔的集成性能基元(IPP)库,该库包含了许多算法领域的底层优化程序。在库安装完毕的情况下OpenCV在运行的时候会自动调用合适的IPP库。

从OpenCV3.0开始,英特尔许可OpenCV研发团队和OpenCV社区拥有一个免费的IPP库的子库(称IPPICV),该子库默认集成在OpenCV中并在运算时发挥效用。

如果你使用的是英特尔的处理器,那么OpenCV会自动调用IPPICV。

IPPICV可以在编译阶段链接到OpenCV,这样一来,会替代相应的低级优化的C语言代码(在cmake中设置WITH_IPP=ON/OFF来开启或者关闭这一功能,默认情况为开启)。使用IPP获得的速度提升非常可观。

图:当OpenCV在IntelHaswell处理器上使用IPPICV时的加速效果

====================

许多计算机科学家和经验丰富的程序员多多少少都了解计算机视觉的某些方面,但是很少有人熟谙计算机视觉的每一个应用。比如:

        ✿很多人了解计算机视觉在安保行业的应用;

        ✿ 一些人也知道它在网页端的图像和视频处理中的应用在逐渐增加。

但很少有人知道计算机视觉在游戏交互中的应用。同时,也很少有人认识到大部分航空图像和街景图像(比如说谷歌街景)已经大量应用相机校正和图像拼接技术。

有一些人略微知道一点视觉在自动监控、无人机或者生物制药分析上的应用,但很少有人知道计算机视觉早已经在制造业普遍使用。事实上,批量制造的所有东西都已经利用计算机视觉在进行某些方面的质检工作了。

自从测试版本在1999年1月发布以来,OpenCV 已经广泛用于许多应用、产品以及科研工作中。这些应用包括在卫星和网络地图上拼接图像,图像扫描校准,医学图像的降噪,目标分析,安保以及工业检测系统,自动驾驶和安全系统,制造感知系统,相机校正,军事应用,无人空中、地面、水下航行器。

它也被运用于声音和音乐的识别,在这些场景中,视觉识别方法被运用于声音的频谱图像。

OpenCV亦是斯坦福大学的机器人斯坦利(Stanley)至关重要的一部分,这个机器人赢得了美国国防部高级研究计划署主持的DARPA机器人挑战赛野外机器人竞速的200万美元大奖。

DARPPA机器人挑战赛(DRC)是机器人领域的一项重大赛事,堪称“机器人的奥林匹克”。

 

OpenCV使用开源许可证

OpenCV的开源许可允许任何人利用OpenCV包含的任何组件构建商业产品。你也没有义务开源自己的产品或者对该产品所涉及领域进行反馈和改进,虽然我们希望你这样做。

在这种自由许可的影响下,项目有着极其庞大的用户社区,社区用户包括一些来自大公司的员工(IBM、微软、英特尔、索尼、西门子和谷歌等)以及一些研究机构(例如斯坦福大学、麻省理工学院、卡内基梅隆大学、剑桥大学以及法国国家信息与自动化研究所)。

此外,OpenCV项目还有一个雅虎论坛组为用户提供提问和讨论的地方,该论坛组有超过50000名成员。

OpenCV在世界范围内都非常流行,尤其是在中国、日本、俄罗斯、欧洲和以色列有着庞大的用户社区。

不管你是转行也好,初学也罢,进阶也可,如果你想学编程,进阶程序员~

【值得关注】我的 编程学习交流俱乐部 !【点击进入】

全栈程序员正在等你加入~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇