一、前言
使用扩张卷积训练语义分割网络。语义分割网络对图像中的每个像素进行分类,从而生成按类分割的图像。语义分割的应用包括自动驾驶的道路分割和医疗诊断的癌细胞分割。
二、加载训练数据
该示例使用 32 x 32 个三角形图像的简单数据集进行说明。数据集包括随附的像素标签地面实况数据。为真实地面创建像素标签。
三、创建语义分割网络
此示例使用基于扩展卷积的简单语义分割网络。为训练数据创建数据源,并获取每个标签的像素计数。
大多数像素标签用于背景。这种阶级失衡使学习过程偏向于统治阶级。若要解决此问题,请使用类权重来平衡类。您可以使用多种方法来计算类权重。一种常见的方法是反频率加权,其中类权重是类频率的倒数。此方法增加了对代表性不足的类的权重。使用反频率加权计算类权重。
通过使用输入大小与输入图像大小对应的图像输入图层创建像素分类网络。接下来,指定卷积、批量归一化和 ReLU 层的三个块。对于每个卷积层,指定 32 个膨胀因子递增的 3×3 滤波器,并通过将选项设置为 来填充输入,使其与输出大小相同。要对像素进行分类,请包括一个具有 K 1×1 卷积的卷积层,其中 K 是类的数量,后跟一个 softmax 层和具有反类权重的卷积层。
四、训练网络
指定训练选项。使用 训练网络。
五、测试网络
加载测试数据。为图像创建一个。为真实地面创建像素标签。
使用测试数据和经过训练的网络进行预测。评估预测准确性。
六、细分新图像
读取并显示测试图像。
分割测试图像并使用 显示结果。
七、程序
使用Matlab R2022b版本,点击打开。(版本过低,运行该程序可能会报错)
程序下载:基于matlab使用扩张卷积的语义分割资源-CSDN文库