【语义分割系列】用PointRend算法训练自己的数据集

1.代码地址:

https://github.com/zsef123/PointRend-PyTorch

2.下载cityscapes数据集吧。我用的是cityscapes数据集将上面程序调通。

3.将cityscapes的数据集换成自己的数据吧:例如,原来的数据集是做21类的语义分割。我们做语义分割用到的是gtFine这个文件夹下类似_gtFine_labelIds.png这样命名的图像,此图像的像素值 0 1 2 ....20   加上背景一共21类。而我用的是2分类的,那么我的数据就只有0 1 。 0是背景 1 是目标,图像命名格式直接按上面的来了(因为想快速的调通训练自己的数据,所以偷了个懒。)。训练数据就不同说了,也按这个数据集的内容来命名。

4.修改配置文件:

name: "cityscapes"#数据集名称
dataset:
root: "./cityscapes"#数据集位置
mode: "fine"
target_type: "semantic"#语义分割    因为还有实例分割分支啊
loader:
batch_size: 6#自己数据修改为4
num_workers: 8#自己数据修改为1 这两个是机器性能限制
 
  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 19
    评论
为了训练自己的语义分割数据集,你可以按照以下步骤进行操作: 1. 收集并标注数据集:首先,你需要收集一组包含所需特征的图像,并对它们进行标注,以指定每个像素的别或区域。这可以通过使用标注工具(如labelme)进行手动标注完成。 2. 数据增强:为了增加数据集的多样性和数量,你可以使用数据增强技术对图像进行扩充。例如,可以进行随机旋转、翻转、缩放或调整图像的亮度和对比度等操作。这将有助于提高模型的鲁棒性和泛化能力。 3. 准备数据集:将标注好的图像和对应的标签转换成适用于语义分割模型训练的数据格式。通常情况下,数据集应该包含输入图像和对应的标签图像。 4. 选择合适的模型和训练算法:根据你的需求和数据集特点,选择适合的语义分割模型和相应的训练算法。常见的模型包括UNet、DeepLab、PSPNet等,可以根据实际情况进行选择。 5. 划分数据集:将数据集划分为训练集、验证集和测试集。训练集用于模型的训练,验证集用于调整模型的超参数和监控模型的性能,测试集用于评估模型的泛化能力。 6. 模型训练:使用准备好的数据集和选定的模型,进行模型的训练。在训练过程,需要选择适当的损失函数和优化器,并设置合适的学习率和迭代次数。 7. 模型评估和调优:在训练完成后,使用验证集对模型进行评估,并根据评估结果进行模型的调优。可以尝试不同的超参数组合和训练策略,以获得更好的性能。 8. 模型测试和应用:最后,使用测试集对模型进行最终的评估,并将模型应用于实际场景进行语义分割任务。
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值