.. Cover Letter

전체 글 207

URDF, XACRO 마스터 하기 ! (ADDBOT Rviz에서 구현하기) (2/2)

이 글은 pinkLab의 pinkwink강사님의 강의자료를 참고하여 작성되었습니다. https://pinkwink.kr/ PinkWink 한 변두리 공학도의 블로그입니다. 재미있어 보이는 것들을 모두 기초스럽게 접근하는 블로그이며... 그보다 더욱 소중한 우리 아가 미바뤼의 발자취를 남겨두는 블로그이기도 합니다. pinkwink.kr 일단 이전글까지 끝마친 상태라면 이상태일 것입니다. 앞으로 작성되는 모든 코드는 이 코드에서 추가되는 부분만 다룹니다. 이제 이 로봇에 바퀴도 달아보고 카메라도 달아보고 나머지 부속품들을 다 달아봅시다. 먼저 바퀴를 달아봅시다. 그 전에 이 코드에서 type부분을 정리하고 가도록 하겠습니다. 휠 : continuous 고정된 경우 : fixed 회전 : revolute 직선..

URDF, XACRO 마스터 하기 ! (ADDBOT Rviz에서 구현하기) (1/2)

이 글은 pinkLab의 pinkwink강사님의 강의자료를 참고하여 작성되었습니다. https://pinkwink.kr/ PinkWink 한 변두리 공학도의 블로그입니다. 재미있어 보이는 것들을 모두 기초스럽게 접근하는 블로그이며... 그보다 더욱 소중한 우리 아가 미바뤼의 발자취를 남겨두는 블로그이기도 합니다. pinkwink.kr 다음의 과제가 주어졌습니다. 다음의 로봇(ADDBOT)에 대한 meshes 파일을 줄테니 urdf를 이용해서 이대로 만들어주시고, rviz에 띄워주세요. 이런식으로.. 아 그리고 작성하는 시점부터 galactic의 지원이 종료되어 22.04 humble로 올라온 상태입니다. 다른 글이지만 https://kimbrain.tistory.com/entry/3-%EC%9A%B0%E..

(실무리눅스) 12. 우분투 22.04에 ROS2 Humble 설치하고 rviz와 gazebo까지 설치하기

https://docs.ros.org/en/humble/Installation.html Installation — ROS 2 Documentation: Humble documentation Binary packages Binaries are only created for the Tier 1 operating systems listed in REP-2000. Given the nature of Rolling, this list may be updated at any time. If you are not running any of the following operating systems you may need to build from sourc docs.ros.org 도큐먼트가 정확해서 도큐먼트만 따라해도 ..

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 ..

비버웍스, PinkLab 주관 자연어처리 해커톤 대회를 참여했습니다.

비버웍스가 NLP 해커톤 대회를 통해 좋은 인재를 모집합니다. [feat. 핑크랩] (pinkwink.kr) 비버웍스가 NLP 해커톤 대회를 통해 좋은 인재를 모집합니다. [feat. 핑크랩] 오늘은 꽤 흥미로운 주제의 해커톤 대회를 소개할까 합니다. 지원기간이 12월 11일까지이며, 대회는 1월 27일부터 29일까지 2박 3일간 열립니다. 비버웍스라는 회사와 그 회사의 이번 NLP 대회 주제 pinkwink.kr 살면서 처음으로 참여해본 대회이면서 살면서 처음으로 참여해본 해커톤 대회였습니다. 일단 후기나 이런건 나중으로 미루고 PinkLab은 어떤 회사인가? 현 PinkLab의 대표이신 민형기 대표님(강사님?) 께서는 좋은 기업과 좋은 취준생들을 연결해주는 사업을 하고 계십니다. 대표님께 비버웍스라는..

H 모빌리티 자율주행 부분 상반기 1차 시험 결과

공통 : 95점 판단과목 : 95점 인지과목 95점 무난하게 마무리 하였습니다. 이제 다음주부터 다시 강의지옥이 시작 여튼.. 2023년 1월부터 엄청나게 바빴는데, 내일 딥러닝 프로젝트 발표까지하면 1월에 생각없이 벌려놓은 - 팀프로젝트 2개 - LG AImers - 자연어처리 해커톤 - H mobility 를 모두 마무리 했습니다. 해커톤 후기는 이따가 작성하도록 하고 내일은 딥러닝 프로젝트 진행과정을 글로 작성해보고자 합니다.

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..