updates
This commit is contained in:
parent
a699c901d3
commit
0f6954fa04
39
test.py
39
test.py
|
@ -167,26 +167,26 @@ def test(cfg,
|
|||
|
||||
# Save JSON
|
||||
if save_json and map and len(jdict):
|
||||
try:
|
||||
imgIds = [int(Path(x).stem.split('_')[-1]) for x in dataset.img_files]
|
||||
with open('results.json', 'w') as file:
|
||||
json.dump(jdict, file)
|
||||
imgIds = [int(Path(x).stem.split('_')[-1]) for x in dataset.img_files]
|
||||
with open('results.json', 'w') as file:
|
||||
json.dump(jdict, file)
|
||||
|
||||
try:
|
||||
from pycocotools.coco import COCO
|
||||
from pycocotools.cocoeval import COCOeval
|
||||
|
||||
# https://github.com/cocodataset/cocoapi/blob/master/PythonAPI/pycocoEvalDemo.ipynb
|
||||
cocoGt = COCO('../coco/annotations/instances_val2014.json') # initialize COCO ground truth api
|
||||
cocoDt = cocoGt.loadRes('results.json') # initialize COCO pred api
|
||||
|
||||
cocoEval = COCOeval(cocoGt, cocoDt, 'bbox')
|
||||
cocoEval.params.imgIds = imgIds # [:32] # only evaluate these images
|
||||
cocoEval.evaluate()
|
||||
cocoEval.accumulate()
|
||||
cocoEval.summarize()
|
||||
map = cocoEval.stats[1] # update mAP to pycocotools mAP
|
||||
except:
|
||||
print('WARNING: missing dependency pycocotools from requirements.txt. Can not compute official COCO mAP.')
|
||||
print('WARNING: missing pycocotools package, can not compute official COCO mAP. See requirements.txt.')
|
||||
|
||||
# https://github.com/cocodataset/cocoapi/blob/master/PythonAPI/pycocoEvalDemo.ipynb
|
||||
cocoGt = COCO('../coco/annotations/instances_val2014.json') # initialize COCO ground truth api
|
||||
cocoDt = cocoGt.loadRes('results.json') # initialize COCO pred api
|
||||
|
||||
cocoEval = COCOeval(cocoGt, cocoDt, 'bbox')
|
||||
cocoEval.params.imgIds = imgIds # [:32] # only evaluate these images
|
||||
cocoEval.evaluate()
|
||||
cocoEval.accumulate()
|
||||
cocoEval.summarize()
|
||||
map = cocoEval.stats[1] # update mAP to pycocotools mAP
|
||||
|
||||
# Return results
|
||||
maps = np.zeros(nc) + map
|
||||
|
@ -198,16 +198,17 @@ def test(cfg,
|
|||
if __name__ == '__main__':
|
||||
parser = argparse.ArgumentParser(prog='test.py')
|
||||
parser.add_argument('--cfg', type=str, default='cfg/yolov3-spp.cfg', help='cfg file path')
|
||||
parser.add_argument('--data', type=str, default='data/coco.data', help='coco.data file path')
|
||||
parser.add_argument('--data', type=str, default='data/coco_16img.data', help='coco.data file path')
|
||||
parser.add_argument('--weights', type=str, default='weights/yolov3-spp.weights', help='path to weights file')
|
||||
parser.add_argument('--batch-size', type=int, default=16, help='size of each image batch')
|
||||
parser.add_argument('--img-size', type=int, default=416, help='inference size (pixels)')
|
||||
parser.add_argument('--batch-size', type=int, default=4, help='size of each image batch')
|
||||
parser.add_argument('--img-size', type=int, default=800, help='inference size (pixels)')
|
||||
parser.add_argument('--iou-thres', type=float, default=0.5, help='iou threshold required to qualify as detected')
|
||||
parser.add_argument('--conf-thres', type=float, default=0.001, help='object confidence threshold')
|
||||
parser.add_argument('--nms-thres', type=float, default=0.5, help='iou threshold for non-maximum suppression')
|
||||
parser.add_argument('--save-json', action='store_true', help='save a cocoapi-compatible JSON results file')
|
||||
parser.add_argument('--device', default='', help='device id (i.e. 0 or 0,1) or cpu')
|
||||
opt = parser.parse_args()
|
||||
opt.save_json = True
|
||||
print(opt)
|
||||
|
||||
with torch.no_grad():
|
||||
|
|
Loading…
Reference in New Issue