OpenCV 以 BSD 许可开源发布,是一款跨平台的计算机视觉库,可在 Linux、Windows、Android、mac 等常见系统上运行。它体量轻、效率高,由 C 函数与少量 C++ 构成,并向 Python、Ruby、MATLAB 等语言提供接口,覆盖图像处理与计算机视觉中的大量通用算法。
OpenCV 的核心代码基于 C++ 构建,因此对外提供的主要接口也以 C++ 为主,同时仍保留了数量可观的 C 语言接口;借助对其他编程语言接口的兼容,这款工具能更省力地为使用者提供便捷。它在识别方面表现尤为突出,因而在人机交互、图像分割、物体识别等场景中能发挥显著作用。若打算开发与视觉相关的程序、软件或其他内容,OpenCV 会是一个相当合适的视觉库选择。

计算机视觉领域的市场规模庞大,并且仍在不断扩大,而该领域目前尚缺乏统一的API标准。现有的计算机视觉软件大致可分为以下三类:
研究代码:运行速度偏慢,稳定性欠佳,且自成一体,难以与其他库配合使用。
商业软件成本高昂,例如 Halcon、MATLAB 搭配 Simulink 这类方案
针对视频监控、制造控制系统、医疗设备等依赖硬件的特定场景,目前已有相应的专用方案。若能有统一的API标准,计算机视觉程序与解决方案的开发难度将大幅降低,而OpenCV正是朝着成为这一标准API的方向推进。
OpenCV 面向真实场景中的实时应用需求,其底层由经过优化的 C 代码编写,执行效率因此获得明显改善;若再引入 Intel 的 IPP 高性能多媒体函数库(Integrated Performance Primitives),处理速度还能进一步提升。右侧图示给出了 OpenCV 与当前其他主流视觉函数库之间的性能对照。
1、人机互动
2、物体识别
3、图像分割
4、人脸识别
5、动作识别
6、运动跟踪
7、机器人
8、运动分析
9、机器视觉
10、结构分析
11、汽车安全驾驶
(您的评论需要经过审核才能显示)
0条评论