提交 7bae6d90 编写于 作者: G Guanghua Yu 提交者: qingqing01

Fix import cocoapi (#3226)

上级 5006775a
...@@ -24,9 +24,6 @@ import cv2 ...@@ -24,9 +24,6 @@ import cv2
import numpy as np import numpy as np
import matplotlib import matplotlib
matplotlib.use('Agg') matplotlib.use('Agg')
from pycocotools.coco import COCO
from pycocotools.cocoeval import COCOeval
import pycocotools.mask as mask_util
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
...@@ -74,6 +71,7 @@ def bbox_eval(results, ...@@ -74,6 +71,7 @@ def bbox_eval(results,
is_bbox_normalized=False): is_bbox_normalized=False):
assert 'bbox' in results[0] assert 'bbox' in results[0]
assert outfile.endswith('.json') assert outfile.endswith('.json')
from pycocotools.coco import COCO
coco_gt = COCO(anno_file) coco_gt = COCO(anno_file)
cat_ids = coco_gt.getCatIds() cat_ids = coco_gt.getCatIds()
...@@ -104,6 +102,7 @@ def bbox_eval(results, ...@@ -104,6 +102,7 @@ def bbox_eval(results,
def mask_eval(results, anno_file, outfile, resolution, thresh_binarize=0.5): def mask_eval(results, anno_file, outfile, resolution, thresh_binarize=0.5):
assert 'mask' in results[0] assert 'mask' in results[0]
assert outfile.endswith('.json') assert outfile.endswith('.json')
from pycocotools.coco import COCO
coco_gt = COCO(anno_file) coco_gt = COCO(anno_file)
clsid2catid = {i + 1: v for i, v in enumerate(coco_gt.getCatIds())} clsid2catid = {i + 1: v for i, v in enumerate(coco_gt.getCatIds())}
...@@ -134,6 +133,9 @@ def cocoapi_eval(jsonfile, ...@@ -134,6 +133,9 @@ def cocoapi_eval(jsonfile,
max_dets: COCO evaluation maxDets. max_dets: COCO evaluation maxDets.
""" """
assert coco_gt != None or anno_file != None assert coco_gt != None or anno_file != None
from pycocotools.coco import COCO
from pycocotools.cocoeval import COCOeval
if coco_gt == None: if coco_gt == None:
coco_gt = COCO(anno_file) coco_gt = COCO(anno_file)
logger.info("Start evaluate...") logger.info("Start evaluate...")
...@@ -240,6 +242,7 @@ def bbox2out(results, clsid2catid, is_bbox_normalized=False): ...@@ -240,6 +242,7 @@ def bbox2out(results, clsid2catid, is_bbox_normalized=False):
def mask2out(results, clsid2catid, resolution, thresh_binarize=0.5): def mask2out(results, clsid2catid, resolution, thresh_binarize=0.5):
import pycocotools.mask as mask_util
scale = (resolution + 2.0) / resolution scale = (resolution + 2.0) / resolution
segm_res = [] segm_res = []
...@@ -362,6 +365,7 @@ def get_category_info_from_anno(anno_file, with_background=True): ...@@ -362,6 +365,7 @@ def get_category_info_from_anno(anno_file, with_background=True):
with_background (bool, default True): with_background (bool, default True):
whether load background as class 0. whether load background as class 0.
""" """
from pycocotools.coco import COCO
coco = COCO(anno_file) coco = COCO(anno_file)
cats = coco.loadCats(coco.getCatIds()) cats = coco.loadCats(coco.getCatIds())
clsid2catid = { clsid2catid = {
...@@ -552,4 +556,4 @@ def coco17_category_info(with_background=True): ...@@ -552,4 +556,4 @@ def coco17_category_info(with_background=True):
if not with_background: if not with_background:
clsid2catid = {k - 1: v for k, v in clsid2catid.items()} clsid2catid = {k - 1: v for k, v in clsid2catid.items()}
return clsid2catid, catid2name return clsid2catid, catid2name
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册