OpenCV 4机器学习算法原理与编程实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 OpenCV中的机器学习与深度神经网络模块

计算机视觉和机器学习结合得非常紧密,在许多机器视觉算法中都使用了机器学习算法以便完成不同的任务。例如,机器学习算法被广泛用于目标检测识别、图像分类和视觉搜索跟踪等应用中。

OpenCV拥有一个专门的机器学习模块(机器学习算法库),该机器学习模块包含贝叶斯分类器、K近邻(KNN)、支持向量机(SVM)、决策树、神经网络和深度学习模块等。机器学习模块是本书的重点内容。

随着深度学习算法应用场景的不断增多,OpenCV中的深度神经网络(DNN)模块在OpenCV 3.4之后移入主模块。深度神经网络模块仅被设计用于计算网络前向传播(即推理),不支持网络训练。深度神经网络模块主要包括:

◎ 用于创建新层的API,层是构建神经网络的基础;

◎ 一组内置的最常用的层;

◎ 用于从各个层构建和修改神经网络的API;

◎ 从不同框架加载序列化网络模型的功能。