Traceback (most recent call last):
File "cocoEvalCapDemo.py", line 56, in <module>
cocoEval.evaluate()
File "/storage/st2/image_caption/coco-caption/pycocoevalcap/eval.py", line 54, in evaluate
score, scores = scorer.compute_score(gts, res)
File "/storage/st2/image_caption/coco-caption/pycocoevalcap/spice/spice.py", line 54, in compute_score
json.dump(input_data, in_file, indent=2)
File "/storage/st2/anaconda33/lib/python3.6/json/__init__.py", line 180, in dump
fp.write(chunk)
File "/storage/st2/anaconda33/lib/python3.6/tempfile.py", line 483, in func_wrapper
return func(*args, **kwargs)
TypeError: a bytes-like object is required, not 'str'
源码
out_file = tempfile.NamedTemporaryFile(delete=False, dir=temp_dir )
改为
out_file = tempfile.NamedTemporaryFile(delete=False, dir=temp_dir, mode='w')