작성
·
179
1
라쿤데이터 성능평가에서
create generator = eval_create_generator(args) 을 실행하면
TypeError: create_generator() missing 1 required positional argument: 'preprocess_image' 란 오류메시지가 나옵니다.
그런데
generator = eval_create_generator(args, b.preprocess_image)를 실행하면
아무런 문제가 없네요.
이렇게 해도 문제가 안되는지요?
답변 1
1
안녕하십니까,
Retinanet 패키지가 버전업 되면서 eval_create_generator( ) 입력 인자가 변경되었습니다.
말씀하신대로 함수 인자를 넣으시면 됩니다. 아래 코드의 내용 참조 부탁드립니다.
조만간 동영상 강의를 업데이트 하겠습니다. 감사합니다.
from keras_retinanet.bin.evaluate import create_generator as eval_create_generator
import os
from pathlib import Path
HOME_DIR = str(Path.home())
ANNO_DIR = os.path.join(HOME_DIR, 'DLCV/data/raccoon/annotations')
class args:
dataset_type='csv'
score_threshold=0.05
iou_threshold=0.5
max_detections=100
image_min_side=800
image_max_side=1333
config=None
annotations=os.path.join(ANNO_DIR, 'raccoon_anno_retina_valid.csv')
classes=os.path.join(ANNO_DIR, 'raccoon_class.txt')
#아래가 추가 되어야 합니다.
backbone='resnet50'
# 기존 generator = eval_create_generator(args)는 삭제되고 아래로 변경되어야 합니다.
backbone = models.backbone(args.backbone)
generator = eval_create_generator(args, backbone.preprocess_image)