SW중심대학 디지털 경진대회_SW와 생성AI의 만남 : SW 부문

SW중심대학 | SW부문 | AI·SW개발 | 생성AI | 생성형 AI

  • moneyIcon Prize : 1,220 만원
  • 253명 마감

 

BING(Basketball Insight Narration Generator)

공동작성자

stroke
2024.07.08 00:01 1,140 Views language

해당 코드는 농구 경기 분석을 위해 AWS와 온프레미스 환경에서 MLOps를 구축한 코드이다. 모델의 결과와 학습을 위한 데이터 서빙을 위해 AWS Lambda를 사용하였고, 모델 학습은 온프레미스 환경에서 진행하였다. 구체적으로 Lambda 함수와 농구 경기 분석에 사용된 모델에 대해 아래와 같이 설명한다.

AWS Lambda
- Python 3.12.3를 사용하여 코드를 구성하였다.
- 사용자로부터 영상을 받아 업로드하고, 이 영상을 MOT 예측 모델에 API로 요청한다.
- MOT 모델 결과를 다시 업로드하고, 이를 행동 인식 예측 모델에 API로 요청한다.
- 최종적으로 행동 인식 모델 결과를 기반으로 영상을 해설하고, 해설을 영상에 결합하여 사용자에게 전달한다.
- MOT 모델 학습을 위해 새로운 데이터 트리거를 설정하고 API 요청을 한다.
- 행동 인식 모델 학습을 위해 새 데이터를 트리거하고 API 요청한다.
- 학습된 모델을 이용해 예측 모델에 API 요청을 보낸다.

모델 구성
- YOLOv8-m
오브젝트 트래킹을 위해 사용되며, 프레임에서 선수와 공을 인식하는 역할을 한다.
- YOLOv8-seg
경기장 영역을 추출하고 선수의 코트 상 위치를 인식하는 데 사용된다.
- YOLOv8n-cls
선수 유니폼 색상을 분류하여 소속 팀을 인식하는 데 사용된다.
- R(2+1)D
선수의 행동을 인식하는 데 사용됩니다. 예를 들어, 정지, 달리기, 드리블, 슛, 블락 등의 행동을 인식한다.
- ChatGPT-4.0-turbo
선수 위치 인식과 행동 인식 모델의 결과를 입력으로 받아 해설 프롬프트를 생성하고, 이를 바탕으로 영상에 대한 해설을 생성한다.

사용자 인터페이스
- StreamLit(v1.36.0)을 사용하여 유저가 농구 경기 영상을 업로드하고, 모든 과정을 거친 결과를 반환받을 수 있도록 합니다.

PDF