语义分割 sementic segmentation

171 阅读1分钟

定义:从像素层次来识别图像;为图像中的每个像素指定类别标记。 代码下载:github.com/bubbliiiing… image.png

deeplabv3+ 代码训练自己的数据集:

  1. utils_fit.py中的torch.save(model.state_dict(), 'logs/ep%03d-loss%.3f-val_loss%.3f.pth'%((epoch + 1), total_loss / (epoch_step + 1), val_loss / (epoch_step_val + 1)))这边的路径记得要修改。
  2. dataloader.py中的 jpg = Image.open(os.path.join(os.path.join(self.dataset_path, "CMP_datasets/JPEGImages"), name + ".jpg")) png = Image.open(os.path.join(os.path.join(self.dataset_path, "CMP_datasets/SegmentationClass"), name + ".png"))也要修改
  • epochs:200

image.png 损失函数:

image.png

  • epochs:100

image.png

image.png

类别RGB
10,255,255
20,85,255
3255,255,0
485,255,170
5255, 170, 0
6170, 255, 85
7255,0,0
80,170,255
9255,85,0
10170,0,0
110,0,255
120,0,170
  • 用CMP_dataset数据集训练模型的结果:

image.png

image.png