分割用的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好处理多了.......
参考以上两个链接,单独提取其中的椅子(id=62)再重新写入:
