图像分割 | 这个神经网络像“U”一样处理图像
今天图图来聊聊图像处理(分割),并介绍一种特殊的卷积神经网络U-net。
1 图像处理的基本流程

图像处理是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术。 目前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。

在不同类别和领域的图像信息提取、分析工作中,图像处理与特征提取的研究是不可或缺的。其中图像处理过程得到原始图像的像元,即图像中经过有效分离或增强处理而得到的特征集合;像元图像经过特征识别后得到最终的图像的信息,包括但不限于以下信息作为后续研究的数据支持:
类别信息
语义信息
特征形态分布
感兴趣的统计学信息
2 何为图像分割
图像分割处理是指以
灰度信息
色彩信息
形态特征
为依据,把图像内容划分成不相交的像素集合,且在同一集合中的像素表现出相似的性质和状态,而在不同集合间差异尽量大。

当一副图像中包含背景部分(无关后续特征识别的区域)和感兴趣区域(region of interest, ROI)时,图像分割的关键在于如何对图像中关键的信息进行识别并增强或提取,移除无关区域的像素信息从而避免对后续特征分析结果的干扰。

3 为何图像分割
图像分割问题是图像分析前的基础,对图像特定特征和区域的分割处理,一定程度简化了特征提取和语义分析过程,背景区域等非特征区域将被过滤。
因此,图像分割处理过程的精度也决定了后续图像特征识别的精度,被过度分割的残缺的前景可能导致关键特征的缺失,导致提取的特征信息失效。
4 图像分割应用于何处
图像分割方法被应用于众多领域,包括
医学图像
遥感图像
工业材料图像
语义分割等。
医学图像中传统的图像分割都是通过医师手动勾画来实现,往往需要耗费工作人员大量的时间精力;遥感图像中包含大量的森林、水利、海洋农业等资源信息,通过图像分割可为地形地质的探查任务减轻大量工作量;工业材料的特殊区域同样包含大量需要图像分割处理的应用场景,包括缺陷检测、材料纹理、裂缝区域和无损检测等;语义分割技术是图像分割的细分领域,涉及更加复杂的场景应用,大量用于自动驾驶、无人机以及可穿戴设备的图像识别与理解任务中,如图所示。

5 U-Net神经网络模型
Unet卷积神经网络是一种应用于图像分割任务的神经网络模型,其特点是网络结构轻量化、所需训练集小、易于训练,同时兼容实例分割和语义分割等多种任务同时具有良好性能。
如下所示为以128*128像素图像为输入的U-Net神经网络的典型结构,基本操作包括:
卷积
下采样
剪裁(本网络不涉及)
合并
上采样
由于模型结构类似“U”形结构,故得其名。

A
下采样过程是一个不断提炼信息的过程,通过池化操作实现。图中左图为原图,对每个4*4大小的子区域取其最大值得到特征图即为最大池化(Max Pooling),取平均值即为平均池化(Average Pooling)。

B
每次向下一层,图像特征得到一次精炼提取,本样例中图像经过了四次下采样操作,第五层的特征图大小仅为8*8。
U-Net相较于传统卷积神经网络更精明的一点在于:传统网络中下采样的次数是固定的,且通常基于人工选取该参数,U-Net网络巧妙地避开了这一点,运用了多次下采样得到的特征图,并能在训练过程中让网络自己学习到该使用多大深度的结构层次。
C.
上采样过程是下采样的反向操作,该操作与之前的下采样对应,目的是为了在对应层中特征图进行合并,实现了网络中的网络。
D
合并操作是在同层中进行的,在同一层的目的是特征图的采样深度基本对应,从而在合并后能够直接进行后续卷积操作,该过程对应U-Net网络结构示意图中虚线箭头。

E
网络结构具备一些基本的超参数,这些参数直接影响着网络最终的泛化能力、训练效率、对过拟合的控制等等,而这些参数的合理区间往往随着网络结构的不同、实际应用场景的不同而发生变化,并且这种变化是不可预测的,因此也成为当前人工神经网络难以训练的一大难题,也涌现了一批优秀的调参方法和策略。
F
主要超参数有:
学习率(learning rate):类似于搜索算法中的步长,过大或过小都会造成训练效率的降低

最大训练代数(maxEpochs):当训练大于该阈值停止网络训练
单批图像数量(batchSize):每次迭代训练选取的图像数据集大小
L2正则化系数(l2reg):控制L2正则化的强弱程度,从而有效抑制训练过程中的过拟合现象
6 U-Net MATLAB案例
主函数
运行结果



注:部分子函数来自 MATLAB自带库函数,部分图片来自tensoflow官网
获取本文中完整代码,关注微信公众号“图通道”回复“unet”