본문 바로가기

팀프로젝트 - TailsRoute

(42)
TEAM Projcet - YOLOv7을 이용한 객체 감지 YOLOv7강아지 객체 감지를 위해 사용git clone https://github.com/WongKinYiu/yolov7.gitcd yolov7pip install -r requirements.txt 가상환경 정리가상환경이 복잡하거나 충돌이 심한 경우, 새로운 가상환경을 생성하여 문제를 해결 새 가상환경 생성python -m venv yolov7_env 가상환경 활성화yolov7_env\Scripts\activateYOLOv7과 numpy 버전 충돌 해결YOLOv7을 실행하려는 환경에서 numpy 버전 충돌이 발생YOLOv7은 numpy설치된 numpy 버전이 YOLOv7과 호환되지 않으므로 pip uninstall numpy 제거YOLOv7은 numpypip install numpy==1.23.5 -..
TEAM Project - SAMURAI 사용 흐름 및 오류 해결, 한계 진짜 최종최종최종SAMURAI 기반 데이터 전처리 및 학습 정확도 향상 계획SAMURAI를 활용하여 데이터 전처리 단계에서 불필요한 배경 데이터를 제거하고 모델 학습의 정확도를 높이기 목표초기 데이터 구조12개 행동, 각 행동당 86개 폴더각 폴더에는 약 13장의 프레임 이미지와 해당 키포인트를 나타내는 JSON 파일 포함SAMURAI를 활용한 데이터 전처리데이터셋의 품질 개선을 목적강아지 객체 탐지SAMURAI 모델 사용각 프레임 이미지에서 강아지 영역을 탐지탐지된 강아지 영역의 경계 상자 (bounding box)를 얻음강아지 영역 크롭탐지된 경계 상자를 기준으로 이미지를 크롭하여 강아지 영역만 남김배경 데이터와 잡음을 제거하여 학습 데이터의 품질을 개선키포인트 조정크롭된 이미지의 좌표계를 기준으로 ..
TEAM Project (12.02) - 데이터 전처리 (SAMURAI 적용, 데이터 양 조절) 0,data/train/feetup/frame_feetup\dog-feetup-001230\frame_0_timestamp_0.jpg,1.0666666666666667,0.28854166666666664,0.9666666666666667,0.18489583333333334,0.799074074074074,0.121875,1.0694444444444444,0.28854166666666664,1.2972222222222223,0.04114583333333333,0.9462962962962963,0.20208333333333334,1.1092592592592592,0.2171875,0.9101851851851852,0.24739583333333334,1.0638888888888889,0.3703125,1.07..
TEAM Project (12.01) - SAMURAI, SAM 2 설치 RandomOverSampler와 SMOTE는 모두 데이터 불균형 문제를 해결하기 위해 데이터 오버샘플링을 수행하는 방법 이지만 방식은 다르다.현재 RandomOverSampler 사용RandomOverSampler기존 데이터의 샘플을 단순히 복제하여 부족한 클래스의 샘플을 늘린다.빠르고 간단원본 데이터의 샘플을 그대로 복사하기에 데이터에 아무런 변형이 가해지지 않음과적합의 위험이 높음 (🫨)데이터 크기가 작고, 빠르게 균형을 맞추고 싶을 때, 데이터를 변형할 필요가 없는 경우 사용 SMOTE (Synthetic Minority Oversampling Technique)부족한 클래스의 샘플과 가까운 샘플들 사이에서 새로운 샘플을 생성새로운 데이터를 생성하기 때문에 원본 데이터보다 다양성이 높아짐과적합 ..
TEAM Project (11.30) 3차80:10:10 비율 (train : validation : test 의 csv 파일) 데이터 증강 샘플링, 오버 샘플링 적용해서 클래스 비율을 맞춤  Train Loss와 Validation Loss 간의 차이가 계속 존재하고 있으며, 특히 Validation Accuracy가 매우 낮은 상태로 유지검증 정확도가 10% 부근 정체 -> 모델이 데이터 분포를 제대로 학습하지 못하고 있음.. 데이터의 불균형 문제 또는 모델이 너무 단순해서..? .. .loss 불안정한 패턴은 학습과 검증 데이터 간 분포 차이 또는 과적합 때문일 수 있음
TEAM Project (11.29) - SAMURAI 적용 강사님의 조언을 듣고, SAMURAI를 기존 코드에 적용해보고자함.. 제발 훈련이 진행되고, 정확도가 올라가기를 빌면서 🙏기존 구조는Flask 서버 -> 영상 전처리 -> 관절 데이터 추출 -> ST-GCN -> 예측결과SAMURI를 적용하면Flask 서버 -> 영상 전처리 -> 관절 데이터 추출 + 프레임 피처 추가 -> SAMURAI (ST-GCN + 스파스 융합) -> 예측 결과 SAMURAI는 ST-GCN에 추출한 관절 특징과 프레임 이미지 피처를 통합하여 동작객체를 잡는 것은 SAMURAI가 자동으로 수행 가능-> 일단 SAMURAI에 입력된 데이터를 기반으로 자동으로 중요한 객체를 학습하고, 예측에 반영train_model에서 기존 ST-GCN 모델 학습 단계에 SAMURAI를 추가, 관절 ..
TEAM Project (11.28) 삽질을 연달아.. 최종최종사용자가 영상을 보내면 관절 데이터를 추출해서 ST-GCN 에 넣는다.ST-GCN 훈련 : 내가 가진 CSV 데이터로 ST-GCN을 가르친다.결과frame_number,frame_path,x1,y1,x3,y2,x5,y3,x7,y4,x9,y5,x11,y6,x13,y7,x15,y8,x17,y9,x19,y10,x21,y11,x23,y12,x25,y13,x27,y14,x29,y15,label0,data/train/bodylower/frame_bodylower\dog-bodylower-001010\frame_0_timestamp_0.jpg,0.5962962962962963,0.6640625,0.587037037037037,0.45625,0.7,0.5604166666666667,0.6768..
TEAM Project (11.26) Flask와 Spring Boot를 활용한 비디오 업로드 및 분석 시스템 구현흐름사용자 업로드 -> 사용자가 브라우저에서 비디오 파일을 업로드Spring Boot 처리-> 업로드된 비디오 파일을 Flask 서버로 전달-> Flask 서버가 비디오를 분석하고 결과를 반환결과 표시-> Spring Boot가 분석 결과를 HTML로 렌더링하여 사용자에게 같은 페이지에서 결과 표시 해당 페이지의 Spring Boot 디렉터리 구조 com└── project└── tailsroute├── api│ └── RestTemplateConfig.java // RestTemplate 설정├── controller│ └── BehaviorController.java // 요청 처리 컨트롤러├── service│ └── Be..

728x90