.. Cover Letter

ㅇ 프로젝트/TEAM_운동보조프로그램 13

딥러닝 프로젝트 개요서

팀 프로젝트 #3 (딥러닝) 개발 개요서 팀 번호 / 팀 명 팀. 1 : 알배긴 사람들 프로젝트 주제 까꿍 PT (딥러닝을 활용한 운동 자세교정 프로그램) 프로젝트 기간 2023년 1월 9일 ~ 2023년 1월 30일 ( 21일) 프로젝트 목표 운동을 하기 싫어하는 사람들이 운동과 친해질 수 있도록 돕는다. 소요 기술 딥러닝(pose estimation, 자연어처리), 머신러닝 Data 출처 직접 측정 ■ 프로젝트 필요성 및 주요 기능 ➤ 프로젝트 필요성 - 운동을 해야한다 말로만 하고, 실천하지 못하는 사람들이 많다. 그 이유는 운동을 하는 방법을 모르기 때문이다. 이러한 사람들에게 빅데이터와 딥러닝 기술을 통해 손쉽게 운동을 할 수 있는 환경을 만들어 줄 수 있을 것이라 생각한다. ➤ 프로젝트 구체화..

8. (완성, 시연영상) 까꿍PT

deeplearning-repo-1/README.md at main · addinedu-amr/deeplearning-repo-1 (github.com) GitHub - addinedu-amr/deeplearning-repo-1 Contribute to addinedu-amr/deeplearning-repo-1 development by creating an account on GitHub. github.com 💪까꿍 PT💪 🏃개요🏃 운동을 해야한다고 말만하고, 안하는 사람들이 있다. 그 이유는 운동을 하는 방법을 모르기 때문이라 생각한다. 그러니 딥러닝을 통해 자세를 교정해주고, 서로 양방향 소통이 가능한 프로그램을 제작하고자 한다. 🏃시연영상 및 발표자료🏃 시연영상 https://www.youtube..

7. 데이터베이스 구현하기 및 완성 코드

해커톤 참여하기 전날 급하게 만들어서 그런지 AWS를 사용하지는 못해서 Local에서 진행할 수 밖에 없었다. 이건 그냥 코드 설명을 진행하면서 설명하도록 하겠다. 다음의 정보를 저장하며 코드레벨부터 살펴보자. import mysql.connector import pandas as pd import datetime as dt class DB_access(): username = "" password = "" login_success = 0 local = None history_df = None def __init__(self): try: self.local = mysql.connector.connect( host = "localhost", port = 3306, user = "root", password..

6. 자연어처리, 음성을 인식하자.

팀원의 이야기를 적는 글이므로 전문성이 떨어지며 내용이 빈약합니다. 처음 계획은 음성 API를 통해서 자연어를 처리하는 방안이였으나, 계획이 조금 수정되어 음성을 직접 인식시켜보는 방향으로 접근을 하게되었습니다. 우리의 음성 데이터는 다음과 같은 형식으로 이루어져 있습니다. 제 전공지식으로 이해를 하면 음의 높낮이에 따라서 그림으로 표현되는 방식이겠죠. 음성을 분석하기 위해서 필요한 과정은 Fourier Transform 전기전자를 전공한 사람들은 질리도록 하고 생으로도 풀어보는 그 푸리에 변환입니다. 뭐 이런 느낌의 노이즈가 낀 신호가 있다면 노이즈와 사인파가 합쳐진 신호라고 볼 수 있습니다. 그러면 노이즈의 주파수와 사인파의 주파수로 그래프를 그리자면 이런식으로 그림이 그려지게 되겠죠. 이를 이제 필..

5. Pose estimation 에서 스쿼트 자세를 측정하는 방법

이 글은 프로젝트가 마무리된 후 작성된 글입니다. 그래서 시각적 자료가 부족할 수 있습니다. 우선 이전 글에서 MediaPipe를 다운로드받고 CPU만으로 사람의 각관절을 detection했습니다. 예시를 들기위해 배경을 삭제함. 의자에 앉아있는 내 모습을 detection한 모습인데 GPU없이도 사람을 정확하게 detection하며 설치도 간편하고, 응용도 쉽습니다. 그러면 이의 좌표값을 통해 접근을 해야하는 상황에서 도큐먼트에 존재하는 32가지의 랜드마크들 중에서 원하는 값을 가져오면 됩니다. 일단 도큐먼트의 기초적인 설명이 부족하기 때문에 참고한 사이트는 Pradnya1208/Squats-angle-detection-using-OpenCV-and-mediapipe_v1: The purpose of ..

4. 좌표로 접근을 해보자. (실험)

해당 코드를 통해서 특정 자세를 취하고 import cv2 import mediapipe as mp import numpy as np import pandas as pd import datetime as dt def return_today(): year = dt.datetime.now().year month = dt.datetime.now().month day = dt.datetime.now().day hour = dt.datetime.now().hour minute = dt.datetime.now().minute second = dt.datetime.now().second return str(year) + "_" + str(month) + "_" +\ str(day) + "_" + str(hour) +..

3. 스쿼드 사진 찍고, 라벨링 진행중

조원들 5명 모두 스쿼트 20개씩 진행하고 각 프레임을 저장함 이를 욜로를 돌리기 위해 라벨링을 진행함. 준비자세 카운트 학습시작 yolo다운로드 받고 from glob import glob img_list = glob('/home/du/ws/yolo/images/*.png') label_list = glob('/home/du/ws/yolo/labels/*.txt') print(len(img_list), len(label_list)) from sklearn.model_selection import train_test_split train_img_list, val_img_list = train_test_split(img_list, test_size = 0.3, random_state = 200) print..

2. 딥러닝 프로젝트 설계 구체화

이번 프로젝트에서 경험해보고 싶은건 설계의 중요성이였다. 그래서 UML을 그려보라는 강사님의 조언에 UML에 대해 조사를 해보고 기초 UI 설계 엑티브 다이어그램과 시퀀스 다이어그램을 한 번 그려보고자 한다. FSM 도 그려보면 좋겠다고 하셨는데, 그건 손쉽게 그려버리기 힘들거 같아서 일단 첫 번 째로 그린건 대충 인터넷을 보고 그려보고 강사님한테 이게 엑티브 다이어 그램인가요? 물어보니 이것저것 짬뽕된거 같다고 하셔서 한시간 가량 UML에 대해 과외를 받았다 일단 UI를 먼저 그려보고 그 다음에 엑티브를 그리고 그 후 시퀀스를 그려보는게 좋다고 하셔서 우선 UI를 먼저 그려보았다. 이 상태에서 엑티브 다이어그램을 그려보는 것이다. 일단 그리는 중 그리다보니 뭔가 빠트린것도 많이 보였다. 더 무거워져 버..

1. 미디어 파이프에서 배경없이 Pose만 추출하기

생각보다 결과가 잘나왔다. 미디어 파이프가 굳이 GPU를 사용하지 않아도 스켈레톤을 검출하는데 문제가 없었다. 도큐먼트에서 배포하는 코드를 돌리면 배경과 함께 Pose가 detection된다. 여기서 두가지 구현방향을 생각해볼 수 있었다. 1. 각 관절의 point (좌표값)을 pandas를 통해 EDA하여 딥러닝을 시켜 자세의 정확도를 측정한다. -> 코드의 알고리즘이 복잡해짐은 물론, 좌표계로 접근하기 때문에 사람의 위치가 바뀐다면, 문제가 발생한다. -> 그러나 자세에 대한 피드백이 가능해진다. 2. 백그라운드를 제거하고, pose만 남겨 CNN을 돌린다. -> 굉장히 매력적인 방법이였다. 난이도가 낮아짐은 물론 사람의 위치가 바뀌는 문제는 사라진다. -> 그러나 객체를 검출하는 것이기 때문에 자세..

0. 딥러닝 팀프로젝트 설계

원래는 자율주행관련으로 자전거의 후방주행보조장치를 만들려 했다. 그러나 데이터 수집과정에서 발생할 여러 트러블들이 걱정되었기 때문에 기각되었고 그리고 나온게 헬스트레이너를 만드는 것이다. 데이터 수집도 자유롭고, 무언가 좋은 결과가 나올 수 있다. 대충 논의했던 내용을 필터링없이 올리면 뭐 이런걸 만들려고 한다. 헬스 트레이너 (pt) - 운동을 하고 싶은데, 안하는 사람을 위해서 기초를 알려준다 느낌 - 어렵게 접근을 하고, 하나씩 쳐내는 방식으로 가면 좋을 것 같고구현하고 싶은 것 ㅇ 딥러닝 - 미디어파이프 (라벨링 X) -> 관절의 좌표값 -> EDA -> 딥러닝 어려운점 1. 좌표값을 어떻게 할거냐? (엑셀) -> 사람마다 신체구조가 달라서 -> 이거에 대한 알고리즘 (데이터를 엄청늘려서 처리, ..

미디어파이프(media pipe)를 우분투에 설치 해보자.

일단 openPose는 포기하는 것이 맞고 그것보다 나은 것이 media pipe 그래서 이걸 한 번 설치하고자 한다. 우선은 Bazel을 설치해야한다. https://bazel.build/install/ubuntu Ubuntu에 Bazel 설치 이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English Ubuntu에 Bazel 설치 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 문제 신고open_in_new 소스 bazel.build 일단 도큐먼트에 따라서 설치를 진행하자. sudo apt install apt-transport-https curl gnupg -y curl -fsSL https://bazel.build/ba..

OpenPose 를 우분투에 설치해보자. (실패)

https://m.blog.naver.com/rhrkdfus/221531159811 [OpenPose] Python OpenPose 시작하기 * OpenPose : Caffe와 OpenCV를 기반으로 구성된 손, 얼굴 포함 몸의 움직임을 추적해주는 API * ... blog.naver.com 참고한 사이트 실패한 글임 실패한 글임 (안돌아가 안돌아가 포기해야함 이거 때문에 내 노트북을 포멧했어요) CUDA랑 CUDNN의 문제때문에 그걸 맞출 자신이 있다면 진행을 하는게 맞아요 그 관련자료가 너무 오래된 감도 있고, 사용하는 사람도 적어서 텐서플로우에서 제작한 Mediapipe를 갈아타는게 좋음 (근데, ㄱmediapip는 gpu설정을 모르겠음) https://github.com/CMU-Perceptual..

딥러닝 프로젝트 주제 구상

1. 포즈 이스티메션 (강력한 후보) (스켈레톤 트레킹) -> 볼링의 자세정확도 데이터 전처리를 해보고 싶다. -> 머신리닝 딥러닝 2. 자율주행으로 엮어볼까 (욜로 쓸때처럼) (시각장애인용 자율주행) (1번과 같은 정형화된 환경이 필요) - 자율주행, NLP(자연어처리), -> 발음교정, 텍스트를 다루는 느낌 (대화 형식으로 로봇 제어, 앱제어, IOT) - 로봇(ROS, 소프트웨어) 수화를 텍스트로 변환해주는 여행갔을때 바디랭귀지 시각장애인들 점자를 찍으면 해석(스켈레톤) (장면이 나왔을 때 무슨무슨장면이다 해석) - 로보틱스 자율주행 (서비스형 로봇) 주행, 이미지처리가 무조건 포함되어야한다. - 건설현장, 자전거 -> 안전용품을 제대로 착용했는가 재미 VS 실용성 (기업의 문제점 이런거를 분석해서..