写点什么

开源跨平台计算机视觉库 OpenCV 4.0 正式发布

  • 2018-11-21
  • 本文字数:1667 字

    阅读完需:约 5 分钟

开源跨平台计算机视觉库OpenCV 4.0正式发布

OpenCV 是英特尔开源的跨平台计算机视觉库,它是一套包含从图像预处理到预训练模型调用等大量视觉 API 的库,并可以处理图像识别、目标检测、图像分割和行人再识别等主流视觉任务。OpenCV 提供了覆盖整个流程的工具,因此开发者不需要了解各个模型的原理就能基于各个 API 构建视觉任务。



OpenCV 使用 BSD 许可证,因此对研究和商业用途均免费。它具备 C++、Python 和 Java 接口,支持 Windows、Linux、Mac OS、iOS 和 Android 系统。OpenCV 旨在提高计算效率,专注于实时应用。它使用优化的 C/C++写成,能够有效利用多核处理。此外,在 OpenCL 的加持下,OpenCV 可以利用底层异构计算平台的硬件加速。OpenCV 应用广泛,目前在全世界约有 4.7 万用户,下载量约为 1400 万。



可以说 OpenCV 是 CV 领域开发者与研究者的必备工具包,Mask-RCNN 等很多开源项目都依赖于这个工具包。现在距离 3.0 版本的发布已经过去三年多,OpenCV 4.0 final 版本终于于近日发布,这也是 4.x 版本线的第一个稳定版本,它进一步完善了核心接口,并添加了二维码检测器、ONNX 转换格式等新特点。


重要更新如下:



  • OpenCV 4.0 现在是基于 C++ 11 的库,因此编译器需要与 C++ 11 兼容。所使用的 CMake 需要是 3.5.1 以上版本。

  • OpenCV 1.x 中大量 C 的 API 已经被移除,受影响的模块包括 objdetect、photo、video、videoio、imgcodecs、calib3d。

  • core 模块中的 Persistence(用于存储和加载 XML、YAML 或 JSON 格式的结构化数据)已经完全基于 C++重新实现,因此这里的 C API 也被移除了。目前,base64 支持尚未完成(仅支持加载 base64 编码的 XML 和 YAML)。 此外,存储在 FileNode 中的序列的随机访问是慢速 O(N)操作;使用cv :: FileNodeIterator可以做更快速的顺序访问。从积极的方面来说,加载FileStorage比原来的实现方法节省了 3-6 倍的内存。




  • 针对 DNN 的改进

  • 增加对 Mask-RCNN 的支持,官方提供了操作指南Python样例

  • 集成 ONNX 解析器。当前版本的 OpenCV 支持许多流行的分类网络,部分支持 YOLO 对象检测网络(ONNX 版本的 YOLO 缺少一些提供矩形列表的最终图层)。

  • 进一步提升使用英特尔 DLDT 构建的 DNN 模块的性能。DLDT 最近已经正式开源。 请参阅指南了解如何构建和使用支持 DLDT 的 OpenCV。

  • 添加实验性的 Vulkan 后端

  • 修复了 AMD 和 NVIDIA GPU 上的 OpenCL 加速问题。 现在,用户可以直接为模型启用DNN_TARGET_OPENCL,无需额外的环境变量。不过需要注意的是,DNN_TARGET_OPENCL_FP16仅在英特尔 GPU 上做了测试,因此仍需要额外的标志。

  • 为 OpenCV 支持的最流行的深度学习网络添加了快捷方式。开发者可以指定模型的别名,从而跳过预处理参数甚至模型路径的设置!下面是一个操作示例,原来的做法是:


   python object_detection.py --model    opencv_face_detector.caffemodel --config    opencv_face_detector.prototxt --mean 104 177 123 --width 300 --height 300
复制代码


现在只需要:


   python object_detection.py opencv_fd
复制代码



  • 添加了新模块 G-API,它可作为基于图的高效图像处理流程的引擎。详细信息可以参见Graph API(G-API)页面



  • 实现了流行的 Kinect Fusion 算法并集成到 opencv_contrib/rgbd 模块,同时针对 CPU 和 GPU (OpenCL) 做了优化。为了使实时样本正常工作,我们在 opencv/videoio 模块中添加了对 Kinect 2 的支持。在 4.0 beta 版本的代码中已经对 iGPU 做了加速,从而使得高分辨率的情况下(512x512x512 集成量)性能提升了 3 倍。

  • objdetect 模块中添加了二维码检测器和解码器,可以参考这里的代码示例

  • 将高效、高质量的 DIS dense optical flow 算法从 opencv_contrib 迁移到 video 模块。

  • 此外,OpenCV 4.0 性能也有所提升,图像处理操作可实现 15%-30%的速度提升。


以下是目前 OpenCV 支持的一些框架:


  • Caffe

  • TensorFlow

  • Torch

  • Darknet

  • ONNX 交换格式的模型


最后附上 OpenCV 4.0 发布地址:https://opencv.org/opencv-4-0-0.html




会议推荐:12 月 20-21,AICon将于北京开幕,在这里可以学习来自 Google、微软、BAT、360、京东、美团等 40+AI 落地案例,与国内外一线技术大咖面对面交流。


公众号推荐:

AGI 概念引发热议。那么 AGI 究竟是什么?技术架构来看又包括哪些?AI Agent 如何助力人工智能走向 AGI 时代?现阶段营销、金融、教育、零售、企服等行业场景下,AGI应用程度如何?有哪些典型应用案例了吗?以上问题的回答尽在《中国AGI市场发展研究报告 2024》,欢迎大家扫码关注「AI前线」公众号,回复「AGI」领取。

2018-11-21 18:242481
用户头像
蔡芳芳 InfoQ主编

发布了 788 篇内容, 共 509.6 次阅读, 收获喜欢 2759 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

Dubbo 服务配置

青年IT男

dubbo

Dubbo 服务启动检查

青年IT男

dubbo

一念三年,心机流转|靠谱点评

无量靠谱

ISO/IEC 5055:软件代码质量的标尺

华为云开发者联盟

软件 代码质量 源代码 ISO/IEC 软件质量模型

聪明人的训练(二十五)

Changing Lin

4月日更

postman的url编码问题

箭上有毒

4月日更

Dubbo 直连提供者

青年IT男

dubbo

把黄金圣衣交给圣斗士:HDC.Cloud 2021的硬核春天

脑极体

MySQL事务机制是如何实现的?

冰河

MySQL 事务 Binlog Redo Log Undo Log

几个快速提升工作效率的小工具(Listary等)分享一下(强烈建议收藏)

码农飞哥

身边的最优化问题

PeterOne

人工智能 算法

KubeFed集群联邦

ilinux

Kubernetes 容器 云原生 kubernetes联邦

截图软件Snipaste超好用的贴图功能,在别的软件也能拥有 | 窗口置顶工具

彭宏豪95

效率 工具 windows 4月日更 窗口置顶

使用 rocketmq-spring-boot-starter 来配置、发送和消费 RocketMQ 消息

阿里巴巴云原生

容器 开发者 云原生 中间件 API

2021最全网页视频下载攻略 【建议收藏】

科技猫

软件 工具 网站 分享 视频处理

Redis 持久化

叶佳欣

redis持久化

Dubbo 入门简介

青年IT男

dubbo

Dubbo 服务注册与发现

青年IT男

dubbo

Dubbo快速入门

青年IT男

dubbo

Dubbo 集群容错

青年IT男

dubbo

源中瑞区块链BaaS平台搭建,为企业开发应用提供技术支撑

源中瑞-龙先生

区块链 源中瑞 Baas

B站HR炫耀资产、贬低面试者?无独有偶,校招污点事件记录帮你避雷

北游学Java

Java 面试

What's new in dubbo-go v1.5.6

阿里巴巴云原生

开发者 云原生 dubbo 中间件 Go 语言

Python基础语法和数据类型最全总结

华为云开发者联盟

Python

区块链电子发票的多维创新与变革效应

CECBC

电子税务

2.7w字!Java基础面试题/知识点总结!(2021 最新版)

JavaGuide

Java 面试

Dubbo 四大角色

青年IT男

dubbo

稻盛和夫的管理绝活:阿米巴经营模式

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

LeetCode题解:73. 矩阵置零,栈,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

面对大规模 K8s 集群,如何先于用户发现问题?

阿里巴巴云原生

容器 云原生 k8s 监控 调度

Leveldb解读之四:Compaction

Jowin

leveldb

开源跨平台计算机视觉库OpenCV 4.0正式发布_AI&大模型_蔡芳芳_InfoQ精选文章