[IN-ISP] YOLOv8 (4)

junhjun·2023년 5월 13일
0

IN-ISP Project

목록 보기
10/16

Kaggle에서 또 다른 데이터셋을 찾았다. Road Pothole Images for Pothole detection


우리가 수집한 로드뷰 이미지와 유사한 각도에서 찍은 사진으로, 분명 유용하게 쓰일 수 있을 것 같았다.
화질도 우수하고, 데이터 양도 충분히 많았다.

하지만, 레이블 데이터가 따로 존재하지 않고 레이블 정보를 담은 csv 파일이 있을 뿐이었다.

Roboflow에 데이터와 레이블 정보를 함께 업로드 하면, 자동으로 Annotation을 적용해준다.

해당 csv 파일로는 불가능했고, 레이블 정보를 인식하여 이미지와 매칭해주는 특정 파일 형식이 정해져 있는 것 같다.

이전에 xml 파일로 Annotation을 적용했었기 때문에, xml 형식의 레이블 데이터를 직접 만들어줘야겠다고 판단했다.


이전에 레이블링에 사용했던 xml 데이터를 살펴보았다.

파일명, 파일 경로, 이미지 사이즈, 클래스명, Bounding Box 정보 등을 담고 있고,
이 정보를 이용해 해당하는 이미지 파일에 매칭되어 Annotation이 적용되는 것으로 보였다.



위 csv 파일에서 각 이미지의 정보를 읽어, xml 파일을 알맞게 생성해주면 될 것 같았다.

csv 파일에는 X, Y, Width, Height 정보로 입력되어 있지만,
xml 파일에는 Xmin, Ymin, Xmax, Ymax 정보로 입력되어야 했다.

따라서, 다음과 같이 계산하여 값을 변환하도록 했다.

  • Xmin <- X
  • Ymin <- Y
  • Xmax <- X + Width
  • Ymax <- Y + Height


각 이미지 별 xml 파일을 모두 생성했다.

이를 그대로 Roboflow에 업로드 하면, 바로 Annotation이 적용된다.



이전과 마찬가지로 YOLOv8을 학습시키고, 결과를 확인해봤다.

학습 데이터 자체의 품질이 좋고, 미세한 크기의 포트홀도 라벨링 했기 때문에 테스트 데이터에서의 성능은 매우 좋게 나타났다.



기대를 안고 우리의 데이터로 예측해봤다.

아쉽게도 좋은 결과는 못 냈다.

이미지에 큼지막한 포트홀이 존재하더라도, 오히려 미세한 포트홀만 감지해낸 경우가 종종 있었다.
학습 데이터에서 라벨링 된 포트홀이 대부분 작아서 이런 결과가 나온 것일까..

이전에 시도했던 데이터보다 양적, 품질적으로 우수하여 더 잘 예측할 것으로 기대했지만, 아쉬운 결과를 얻었다.



남은 것은 우리가 수집한 300장의 이미지 데이터셋에 Annotation을 모두 마치고,
각 이미지를 증강하여, 더 많은 데이터셋에서의 성능을 확인하는 일이다.

우선 Annotation이 먼저 되어야 하므로 팀원들과 나눠서 진행할 것이다.
그 후, Object Detection 평가지표 조사와 그것을 활용한 성능 비교를 수행할 것이다.


이번에 팀원들에게 데이터셋 조사를 부탁했고, 위 결과는 팀원이 찾아 온 데이터를 이용해 해 본 것이었다.
시간을 써 준 것에 고마움을 느낀다.

Task를 분배하는 일, 누군가에게 부탁하는 일이 정말 어려운 것 같다.

  • 혼자 다 하려 하면, 남들이 성장할 기회를 뺏는 것이라 생각하자.
  • 팀 프로젝트를 하는 이유를 생각하자.
  • 소통하고 협업하려는 자세를 기르자.
  • 도움을 요청하자.

내게 리더십이란 아직 턱없이 부족한 것 같다.
공부도 좋지만, 다른 쪽으로도 노력하자.

1개의 댓글

comment-user-thumbnail
2023년 7월 14일

안녕하세요. 영상처리 관련 일을 하고 있는데, 혹시 yolo에 대해서 자문을 구하고 싶은데 괜찮을까요?!

답글 달기