coco数据处理与分割

分割用的jfzhang95的pytorch版本deepLab

1. run train

非常简单易用,安装好git上那几项,数据集路径给到mypath.py就可以用了,用了tensorboardX,记录和模型都会保存在run/coco/deeplab-resnet/路径下,服务器传回到win10,装了cpu版的tensorflow,火狐和ie浏览器都打不开,这里是个坑,暂时没有管,反正拷贝到ubuntu上是可以看的。

如果单跑dataloaders/datasets/coco.py需要进coco.py所在路径,代码里加一行:

sys.path.append('../../')

这样才能把mypath.py里指定的路径传进来,就可以看到数据了

2. 改成单类别分割

只需要改coco.py:

class COCOSegmentation(Dataset):
    #NUM_CLASSES = 21
    #CAT_LIST = [0, 5, 2, 16, 9, 44, 6, 3, 17, 62, 21, 67, 18, 19, 4,
    #    1, 64, 20, 63, 7, 72]
    NUM_CLASSES = 2
    CAT_LIST = [0, 62]

就可以过滤掉其他类别了,但是loss一上来就特别小,Train loss: 0.002,怀疑有效训练样本太少了,所以解析了一遍COCO里的json

3. coco 读取一类标注信息并保存json文件

第一次用coco,发现json文件比pascal的xml好处理多了.......

python读写json

coco dataset 知乎解析

参考以上两个链接,单独提取其中的椅子(id=62)再重新写入:

View Code

 

原文地址:https://www.cnblogs.com/zhengmeisong/p/10900397.html