1
工业机器视觉:基于灵闪平台的开发及应用
1.12.1 10.1 机器学习概述
10.1 机器学习概述

机器学习是一门涉及人工智能的科学,机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。由于算法中涉及大量统计学理论,所以机器学习与统计学联系尤为密切,也被称为统计学习理论。与前面几章所描述的针对具体图像特征所设计的算法不同,机器学习是一种数据驱动设计的算法。传统的机器学习算法包括很多种,如支持向量机、感知机、主成分分析。

在用于机器视觉的机器学习算法中,特征工程是非常重要的步骤。特征工程主要包括特征提取及处理,相应地,这一步骤中所采用的特征描述子和特征数据处理方式会直接影响机器视觉任务的精度。在机器视觉的研究历史中,有很多优秀的特征描述子,如SIFT、Harris、HOG。但是在计算机视觉的实际应用中,其场景复杂多样,被识别的物体也有多种形态,现有的特征描述子只能应对有限的情况。针对特定的图像,通常需要人工设计特征,对于特征数据的处理手段也要相应发生变化。这一过程需要进行大量的手动调整或应用复杂的规则,使得设计的算法具有很强的针对性,所以上述思路往往不能处理大量复杂形态的图像。根据设计的特征不同,最终算法的结果差异也会很大。这种情况下,需要选择更加具有鲁棒性和普适性的算法来适应这些复杂的场景。

深度学习是众多机器学习算法之一,随着深度学习的兴起,卷积神经网络作为其代表算法之一,成了一种强大的自动化特征工程工具,能够自动地在大量图片中学习到各种低阶和高阶的特征。在大部分情况下,神经网络可以节省人工构建特征的时间,直接从数据中学习或优化得到针对这一网络和图像的最佳特征。由人工提取出针对图像合适的特征,能够有效减少模型的复杂度,同时也可以用来指导卷积神经网络的设计思路,所以优秀的特征描述子仍然拥有不可替代的地位。由于卷积神经网络可以进行反向传播,同时训练特征提取和分类,并且通过后续的定位等其他操作可以获得需要的所有参数,所以训练得到的最佳模型一般为几个模块组合得到的最佳结果。

以下将介绍用于机器视觉的常见机器学习算法,主要包括图像分类、语义分割、超分辨、图像标定和去雾等。