본문 바로가기
데이터 [Data]/Deep Learning

'헬스 트레이닝 플랫폼' ZA.BA - 인공지능 개발자 양성과정 최종 프로젝트

by 냉철하마 2021. 11. 14.

※ 인공지능 개발자 양성과정 내 프로젝트 수행

http://kcm.kfq.or.kr/_Information/Information_06.aspx

 

0. 개요

 

  1) 주제: 헬스 자세교정 플랫폼 [ WebRTC를 이용한 실시간 스트리밍  MediaPipe를 활용한 운동 자세 구분 ]

  2) 기간: 2021. 7. 17 ~ 10. 23

  3) 4인 1조 인원 구성

  4) 맡은 역할: '인공지능 모델'

    - 프로젝트 메인 기능 구현 및 테스트 (과정 초반 전원 참여)

    - 좌표(CSV) 기반 데이터 수집 및 학습

    - 스쿼트, 런지, 팔굽혀펴기, 플랭크, 윗몸일으키기 등 맨몸운동에 대한 인공지능(DNN) 모델 훈련 및 튜닝

    - 발표자료 제작

  5) ZA.BA 명칭 유래: 세를 르게 + 기회를 잡아내다 + 프로그래밍 언어 자바(Java)와 명칭만 다르게끔

 

1. 프로젝트 제작 동기

 

  1) 왜 홈 트레이닝인가?

    - 코로나19로 인한 건강 문제 발생 : 신체활동 감소, 흡연 증가 등으로 인한 체중 증가 및 건강 상태 악화

    - 코로나 시대에 따른 사회 변화 : 코로나 대유행 때마다 홈 트레이닝 언급량 증가

    - 트레이너가 겪는 어려움 : 코로나 영향 및 유튜브 시장 등으로 인해 대면 트레이닝에 어려움 발생

    - 올바른 자세의 중요성 : 정확하고 올바른 자세가 트레이닝에 있어서 가장 중요

        → 이를 모두 고려한 트레이닝 플랫폼에 대한 개발 필요성 대두

 

  2)  ZA.BA.인가?

    - 차별성 : 전문 트레이너의 피드백을 받을 수 없는 단순 AI 트레이닝 플랫폼과 차별화

    - 기획의도

      ◦ 트레이너에게 받을 수 있는 실시간 자세 피드백

      ◦ 줌과 같은 인터넷 서버와 인공지능 기술을 결합한 웹 사이트 개발

    - 개발 목적

      ◦ 트레이너의 전문적 코칭

      ◦ 정확한 자세를 측정하는 AI

      ◦ 운동량 측정 데이터 제공

 

2. 서비스 및 구조 설명

 

  3) 프로젝트 설계

    - 일정 : 구글 스프레드시트, 트렐로 등을 활용한 의사소통 및 협업 수행

    - 유스케이스 : 운동 선택, 화상 채팅 등 사용자 입장에서 설계한 유스케이스

    - 테이블 : 회원정보, 트레이너 정보, 운동량을 반영할 수 있는 테이블 설계

    - 인공지능 모델 : 수집, 훈련, 테스트 3단계를 거친 운동별 인공지능 모델 개발

 

  4) 서버 및 인공지능 모델 구조

    4.1) 서버 구조

    4.2) 인공지능 모델 구조

    - 데이터 수집

    - 모델 훈련 및 테스트 : CSV 파일을 활용하여 데이터 수집 후 운동별 모델 훈련, 시각화 및 테스트

    - 테스트 과정 : 훈련한 모델을 기반으로 하여 실제 테스트 수행

 

  5) 주요 제공 서비스

    - 서비스 안내 페이지 : 스쿼트, 런지, 푸쉬업, 플랭크, 윗몸일으키기 등 5개의 맨몸 운동 제공

    - 트레이너 선택 페이지 : 원하는 트레이너를 선택하여 방에 입실

    - 실제 운동 페이지 : 트레이너와 사용자들이 한 화면에서 트레이닝 실시

    - 대시보드 페이지 : 사용자 개인과 전체 사용자의 운동 결과 표시

       대시보드 1 : 사용자 개인의 오늘 운동량과 사용자 전원의 오늘 운동량 산출

       대시보드 2 : 운동 횟수에 따른 목표 수치 및 등급 제공

       대시보드 3 : 스쿼트 운동 횟수에 대한 사용자 순위와 인공지능 모델의 정확도 제공

       대시보드 4 : 시용자의 날짜별 운동량 제공

    - 고객센터 페이지 : 문의사항과 의견을 메일로 보내는 기능

 

3. 서비스 과정 시연

 

  6) 프로그램 영상 시연

    - 메인 페이지

    - 대시보드

    - 트레이너 인증 (+ 요청, 대기)

    - 스쿼트

    - 플랭크

    - 런지

 

4. 결과 정리 및 요약

  - 서비스 관련 : 실내 + 비대면 + 전문성의 세 가지 요소를 모두 고려한 헬스 트레이닝 플랫폼

  - 기술 관련 : 실시간 트레이닝을 통한 회원 맞춤 데이터 제공

  - ZA.BA.가 주는 가치 : 새로운 일상에서 건강을 챙기고, 서로를 만나는 새로운 방식

 

 

  •  발표자료 (일부)

<요약>

  1) 목적: 코로나로 인한 건강 문제, 홈 트레이닝 수요 증가, 대면 트레이닝에 어려움, 올바른 자세를 모두 고려하여 트레이너와 연동하는 인공지능 플랫폼을 개발
  2) 사용기술
    - OpenCV, MediaPipe를 활용한 신체 인식
    - NumPy, Pandas를 통한 데이터 수집 및 전처리
    - Matplotlib으로 손실 함수(loss function)을 시각화
    - Scikit-learn을 사용하여 모델 훈련 및 테스트
    - TensorFlow, Keras로 운동별 모델 생성 및 개선
    - 그 외 웹 구현에 사용된 라이브러리 다수
  3) 프로젝트 내 역할: 일정 예측, 목표 및 문제 정의, 데이터 수집 및 학습, 인공지능 모델 튜닝 역할 수행
  4) 프로젝트 결과: '새로운 일상에서 건강을 챙기고 서로를 만나는 새로운 방식'이라는 가치를 만들어냄

 

※ 프로그램 사용 환경(버전)

Java
- 이클립스 Version: 2020-03 (4.15.0)
- jdk1.8.0_241
- jre1.8.0_291

 

Tomcat9

 

Directiry path:
- Tomcat9 : /var/lib/tomcat9/webapps/ROOT/ (웹서버)
- Python : ~/dev/python
- Java : ~/dev/java
- STS : ~/dev/sts_workspace

 

Python
- Python : 3.8.8
- TensorFlow : 2.5.0
- OpenCV : 4.5.3.56
- numpy : 1.19.5
- Sklearn : 0.24.1

- MediaPipe : 0.8.6

 

MySQL
- 8.0.26
- Workbench 8 이상
- DBeaver

 

SpringBoot
- spring-tool-suite-4-4.11.0.RELEASE-e4.20.0

 

WebCam
- 1280x720

 

 

 

안동대, 2021 혁신성장 청년인재 집중양성사업 프로젝트 발표회 및 수료식 개최

 

biz.heraldcorp.com

 

 

★ 프로젝트 자료 - 팀장님 GitHub 주소 https://github.com/ansanghyun20/ZA.BA

 

GitHub - ansanghyun20/ZA.BA: 홈 트레이닝 자세 교정 플랫폼

홈 트레이닝 자세 교정 플랫폼. Contribute to ansanghyun20/ZA.BA development by creating an account on GitHub.

github.com

 

 

댓글