MapleStory Finger Point

Development/YOLO

YOLO cfg 파일에 대한 정보

吳鍾振 2023. 6. 19. 17:06

YOLO 모델 학습을 진행할 때, cfg 파일을 사용하는데 문득 어떤 용도로 사용하는지 궁금해져서 찾아보았다.

YOLO의 설정 파일인 cfg(config) 파일은 모델의 아키텍처, 하이퍼 파라미터, 데이터 경로 및 훈련 관련 설정 정보를 담고 있다.

 

anchors: 객체의 크기와 위치를 예측하기 위해 사용되는 bounding box, 즉 기본 박스 형태의 좌표를 의미한다. 중심 좌표 (x, y)와 width, height를 포함하며, 이를 사용해 다양한 크기와 비율의 물체를 탐지할 수 있다.

anchors:	# yolov7.yaml
  - [12,16, 19,36, 40,28]  # P3/8
  - [36,75, 76,55, 72,146]  # P4/16
  - [142,110, 192,243, 459,401]  # P5/32


backbone: 이미지의 특성을 추출하는데 사용되는 학습 신경망의 구조를 정의하는 부분이다. 입력 데이터에서 특징 맵을 설정하고 이를 다시 출력층에 전달하는 역할을 수행한다. 이를 통해 이미지에서 높은 수준의 특성을 얻을 수 있다.

backbone:	# yolov7.yaml
  # [from, number, module, args]
  [[-1, 1, Conv, [32, 3, 1]],  # 0
  
   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2      
   [-1, 1, Conv, [64, 3, 1]],
   ...

 

head: backbone에서 추출한 특성을 사용하여 물체 탐지, 분류, bounding box 좌표를 예측하는 부분이다. 각 레이어의 출력을 처리하여 최종 탐지 결과를 생성한다.

head:	# yolov7.yaml
  [[-1, 1, SPPCSPC, [512]], # 51
  
   [-1, 1, Conv, [256, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [37, 1, Conv, [256, 1, 1]], # route backbone P4
   [[-1, -2], 1, Concat, [1]],
   ...


 

반응형