[AIVLE SCHOOL] 딥러닝(8) - Object Detection(2)

춤추는 머쉬룸·2024년 11월 8일

AIVLE SCHOOL 6기

목록 보기
65/80
post-thumbnail

11/8 5, 6, 7세션

A. Roboflow로 데이터셋 생성하고, YOLO로 학습하기

A-1. 모델 학습 및 예측 순서

  1. 트레이닝 할 이미지를 찾는다. 100개 이상
  2. 새로운 Project를 만들고 이미지를 업로드 한다.
  3. 라벨링을 한다.
  4. 모델을 학습시킨다. (Augmentation, train-val 사이즈 지정 등 수행)
  5. 만든 모델을 다운로드 받는 코드를 복사한다.
  6. 코랩에 붙여넣기 한다.
  7. 해당 데이터셋으로 모델을 학습시킨다.
  8. 학습한 데이터로 새로운 사진을 예측한다.
# 학습
model_transfer = YOLO('yolo11n.pt')

results_train = model_transfer.train(model='/content/yolov11n.pt',
                                     data='/content/exam_000000/data.yaml',
                                     epochs=40,
                                     seed=2024,
                                     patience=10,
                                     pretrained=True,
                                     )
                                     
image_path = 'a.jpg'

# 예측
results_pred = model_transfer.predict(source=image_path,
                                      save=True,
                                      )

A-2. 예측 결과

두 개 이상의 클래스로 예측하는 경우

각 클래스 간에 차이점이 보이지 않는다.

점수가 낮은 경우

분류를 하긴 했으나, 명확하지 않다.

박스가 쳐지지 않는 경우

분류를 하지 못했다.

  • epochs를 조정하여 학습을 많이 시킨다.
  • patience를 조정한다
  • lou를 조정한다

박스가 쳐졌는데 두 개를 하나로 인식한 경우

  • predict 에서 conf (threshold) 를 조정한다.



기타

책 추천
1. 비전 시스템을 위한 딥러닝
2. 모두의 딥러닝
3. 딥러닝 파이토치 교과서

강좌 추천
앤드류 응, 인프런

0개의 댓글