mmdetection 训练COCO出现AttributeError ‘COCO‘ object has no attribute ‘get_cat_ids‘

mmdetection 训练COCO出现AttributeError: ‘COCO‘ object has no attribute ‘get_cat_ids‘

原因

mmdetection用到了pycocotools,本来接口是pycocotools.coco.getCatIds,但是mmdetection又在外包了一层,变成了get_cat_ids,而pycocotools.coco又没有这个成员函数,导致出错。

解决方法

方法1,参考github issue:

revert the coco.py file to the previous version via git checkout 206107 -- mmdet/datasets/coco.py
reinstall the mmdet compatible version of cocoAPI by pip install -U "git+https://github.com/open-mmlab/cocoapi.git#subdirectory=pycocotools"

方法2,手动修改(未连网情况下适用)

get_cat_ids ---> getCatIds
get_img_ids ---> getImgIds
cat_names   ---> catNms
load_imgs   ---> loadImgs
load_anns   ---> loadAnns
get_anno_ids(img_ids=) ---> getAnnIds(imgIds=)

你可能感兴趣的:(mmdetection,mmdetection,coco,get_cat_ids)