上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.3 OpenCV中的机器学习与深度神经网络模块
计算机视觉和机器学习结合得非常紧密,在许多机器视觉算法中都使用了机器学习算法以便完成不同的任务。例如,机器学习算法被广泛用于目标检测识别、图像分类和视觉搜索跟踪等应用中。
OpenCV拥有一个专门的机器学习模块(机器学习算法库),该机器学习模块包含贝叶斯分类器、K近邻(KNN)、支持向量机(SVM)、决策树、神经网络和深度学习模块等。机器学习模块是本书的重点内容。
随着深度学习算法应用场景的不断增多,OpenCV中的深度神经网络(DNN)模块在OpenCV 3.4之后移入主模块。深度神经网络模块仅被设计用于计算网络前向传播(即推理),不支持网络训练。深度神经网络模块主要包括:
◎ 用于创建新层的API,层是构建神经网络的基础;
◎ 一组内置的最常用的层;
◎ 用于从各个层构建和修改神经网络的API;
◎ 从不同框架加载序列化网络模型的功能。