super
train_super
함수 이름: train_super
입력:
cfgfile: 학습을 위한 네트워크 구성 파일의 경로
weightfile: 미리 학습된 가중치 파일의 경로
clear: 이전 가중치 초기화 여부
동작:
주어진 cfgfile과 weightfile을 사용하여 네트워크를 로드하고, imagenet1k.train.list에서 이미지 경로를 가져온 뒤 이를 사용하여 네트워크를 학습시킨다.
각 배치마다 가중치를 업데이트하고, 일정 주기마다 가중치를 저장한다.
설명:
이 함수는 지도 학습을 위해 네트워크를 학습시키는 함수이다.
이 함수는 학습 데이터로부터 배치를 생성하고, 각 배치를 사용하여 네트워크를 학습시킨다.
학습 중에는 현재 학습된 배치의 수와 손실 함수의 값을 출력하며, 지정된 주기마다 가중치를 저장한다.
최종적으로 학습된 가중치는 backup_directory/base_final.weights 파일에 저장된다.
test_super
함수 이름: test_super 입력:
cfgfile: YOLO 모델의 configuration 파일 경로
weightfile: 학습된 YOLO 모델의 가중치 파일 경로
filename (선택적): 테스트할 이미지 파일 경로
동작:
YOLO 모델을 불러와서 테스트를 수행하는 함수
이미지 파일을 입력으로 받아 YOLO 모델을 통해 객체 검출을 수행하고, 결과를 출력함
이미지 파일이 주어지지 않으면, 표준 입력으로부터 이미지 파일 경로를 입력받음
테스트 결과는 출력 이미지 파일로 저장됨
설명:
load_network 함수를 이용하여 cfg 파일과 weight 파일을 이용해 YOLO 모델을 로드함
set_batch_network 함수를 이용하여 배치 크기를 1로 설정함
load_image_color 함수를 이용하여 입력 이미지를 로드함
resize_network 함수를 이용하여 모델의 입력 크기를 이미지의 크기로 조정함
network_predict 함수를 이용하여 YOLO 모델을 통해 객체 검출을 수행함
get_network_image 함수를 이용하여 검출된 객체를 이미지로 변환함
save_image 함수를 이용하여 검출된 객체를 출력 이미지 파일로 저장함
show_image 함수를 이용하여 검출된 객체를 화면에 출력함
run_super
함수 이름: run_super
입력:
argc와 argv, 두 개의 매개변수
동작:
주어진 인자(argv)를 기반으로 YOLOv3-super 모델을 학습, 테스트 또는 검증하며, 이에 필요한 매개변수(cfg, weights, filename)를 설정한다.
설명:
이 함수는 argv에서 인자를 읽어와서 YOLOv3-super 모델을 학습, 테스트 또는 검증하는 역할을 한다. 이 함수는 다음과 같은 동작을 수행한다.
argv에 전달된 인자의 개수를 검사하고 인자가 충분하지 않으면 사용법을 출력하고 함수를 종료한다.
cfg, weights 및 filename 매개변수를 설정한다.
clear 인자를 검사하여 이전에 생성된 모든 캐시와 결과 파일을 지우는지 여부를 결정한다.
만약 "train" 인자가 주어지면 train_super 함수를 호출하여 모델을 학습시킨다.
만약 "test" 인자가 주어지면 test_super 함수를 호출하여 모델을 테스트한다.
"valid" 인자는 주석 처리되어 있으므로 현재는 사용되지 않는다.
Last updated