현대 사회에서는 건강한 생활 방식이 점점 더 중요해지고 있으며, 이에 따라 스포츠 활동에 대한 관심도 높아지고 있습니다. 그러나 이 분야에서 경험과 지식을 얻는 것은 많은 사람들에게 어려운 일이 될 수 있습니다. 이러한 맥락에서 스포츠 부문에 인공지능(AI)을 적용하는 것은 스포츠 팀과 선수 개인의 성공적인 훈련, 분석, 발전을 위한 핵심 요소가 됩니다.
이 저장소는 프론트 스쿼트, 넓은 팔 푸시업, 이두박근 푸시업, 리버스 푸시업 등의 운동 기술을 향상시키는 데 도움이 되는 도구 세트를 제공합니다. 이 지능형 보조자는 실시간으로 기술을 분석하고 AI 모델(yolov8-pose)을 사용하여 자세를 평가하며 자세에 대한 피드백을 제공합니다.
올바르게 완료된 세트와 운동을 올바르게 수행하려는 시도에 대한 카운터도 추가되었습니다. 이는 운동 통계를 더 잘 이해하는 데 도움이 됩니다.
이 프로젝트는 훈련된 YOLOv8m 포즈 모델을 사용합니다. 그러나 각각 models/yolo
및 models/yolo2
폴더에 있는 2개의 다른 훈련된 모델 YOLOv8n-pose 및 YOLOv8s-pose의 가중치를 사용할 수 있지만 이러한 결과는 YOLOv8m-pose보다 나쁩니다.
이러한 모델은 COCO 포즈 유형 데이터에 대해 훈련된 포즈 감지 모델입니다. 이 데이터 세트에는 17개의 키포인트가 포함되어 있습니다. 명확성을 위해 아래는 마크업 이미지입니다.
데이터 세트에 대한 자세한 내용은 COCO-Human-Pose 및 Ultralytics: COCO-Pose 데이터 세트에서 확인할 수 있습니다.
저장소를 복제합니다.
git clone https://github.com/KKopilka/AI-FinessTrainer.git
요구 사항을 설치합니다.
pip install -r requirements.txt
스크립트를 실행합니다.
python manual.py
Streamlit을 사용하여 프로젝트를 실행할 수 있습니다.
streamlit run app/live.py
docker를 통해 프로젝트를 실행하려는 경우. Docker를 사용하여 Streamlit을 배포합니다.
docker build -t streamlit .
docker-compose up -d
인간의 자세 추정을 위한 모델을 훈련합니다.
모델을 프로젝트에 통합하고 핵심 사항을 처리합니다.
주요 근육 그룹에 대한 운동을 추가합니다.
접근 및 시도에 대한 카운터를 추가합니다.
로컬로 실행하거나 브라우저(streamlit)를 통해 실행합니다.
Docker를 통해 시작합니다.
이 프로젝트는 완전히 완성된 버전이 아니므로 아직 마무리 단계에 있을 수 있습니다.
이 프로젝트를 개선하는 방법에 대한 몇 가지 아이디어는 다음과 같습니다.
더 많은 운동을 추가하세요.
프로그램에 더 많은 통계를 추가합니다.
웹/모바일 앱을 추가하세요.
사운드 반주를 추가합니다.
프로젝트를 .exe 파일로 변환합니다.