’Petkin’은 반려동물 보호자를 위한 AI 피부질환 예측 서비스입니다. 사용자는 반려동물의 피부 사진을 업로드하여 딥러닝 모델을 활용한 피부질환 분석 결과를 확인할 수 있습니다. 이 서비스는 병원 방문 전 기본적인 피부 건강 진단을 가능하게 하며, 보호자가 반려동물의 피부 상태를 기록하고 모니터링할 수 있도록 지원합니다.
- 반려동물 보호자들의 반려동물 건강에 대한 관심도 증가
- 동물병원 방문 전 기본적인 피부 상태를 확인할 수 있는 AI 기반 서비스 필요
- 시간과 비용 문제로 인해 반려동물의 피부 상태를 자가 진단할 수 있는 도구 제공
✅ 반려동물 피부 상태 분석
사용자가 반려동물 피부 사진을 업로드하면 AI가 분석하여 피부 질환 여부 및 유형을 예측합니다.
✅ 반려동물 건강 정보 기록
반려동물의 건강과 관련된 상태를 하루 단위로 기록할 수 있습니다.
-
AI Hub 제공 반려동물 피부질환 데이터셋 활용🔗 데이터셋 링크
-
데이터 구조:
- A1: 구진, 플라크
- A2: 비듬, 각질
- A3: 태선화, 과다색소침착
- A4: 농포, 여드름
- A5: 미란, 궤양
- A6: 결절, 종괴
- A7: 무증상
-
데이터 분포:
-
데이터 전처리:
-
이미지 데이터에 대해 Transform 적용 -> 이미지 데이터 특징 다양화
-
학습에 사용한 Features
age breed gender label 인 lessons 수치형 데이터이므로, MinMaxScaling 적용 범주형 데이터 이므로, One-hot encoding 적용 범주형 데이터이므로, One-hot encoding 적용 범주형 데이터이므로, One-hot encoding 적용
-
- EfficientNet-b1 기반 Multi Modal Model 활용 (이미지 데이터 학습이 주 목적이지만, 다른 features 을 통한 학습 성능 향상 기대)
- Adam, AdamW 옵티마이저 사용
- CosineAnnealingLR 스케줄러 적용
- CrossEntropy Loss 적용
- Hyper Parameter 조정을 통한 최적화 실험 진행
- 실험 1) 데이터 불균형 해결을 위한 Undersampling 적용
- 실험 2) Multi Modal Model 적용 시 성능 변화 분석
- 실험 3) Batch Size 및 Learning Rate 변경 실험
Frontend | Backend | AI Model | Deployment |
---|---|---|---|
📺 시연 영상 보기
-
API 문서
-
🏠 회원 API (Customer Controller)
회원 API (Customer Controller) 설명 엔드포인트 메서드 카카오 토큰 갱신 리프레시 토큰을 이용해 새로운 액세스 토큰을 발급 /api/customers/token/refresh
POST
카카오 로그인 Oauth 제공자(KAKAO) 로그인 후, 액세스 및 리프레시 토큰 반환 /api/customers/oauth/login/{oauthProvider}
POST
내 정보 조회 로그인한 회원의 닉네임 반환 /api/customers/me
GET
-
🧑⚕️ 질병 예측 API (Prediction Controller)
기능 엔드포인트 메서드 상태 설명 질병 분석 (Client → Server) /predict/disease
POST
✅ 완료 서버에서 AI 서버로 질병 분석 요청 -
📖 건강 기록 API (Health Record Controller)
기능 엔드포인트 메서드 상태 설명 특정 반려동물 건강 기록 조회 /api/pets/{pet_id}/health-records/
GET
✅ 완료 특정 반려동물의 모든 건강 기록 조회 건강 기록 생성 /api/health-records
POST
✅ 완료 로그인된 사용자가 건강 기록 생성 건강 기록 조회 /api/health-records/{record_id}
GET
✅ 완료 특정 건강 기록 세부 정보 조회 건강 기록 수정 /api/health-records/{record_id}
PUT
✅ 완료 특정 건강 기록 내용 수정 건강 기록 삭제 /api/health-records/{record_id}
DELETE
✅ 완료 특정 건강 기록 삭제 특정 날짜 건강 기록 조회 /api/pets/{pet_id}/health-records?date={date}
GET
✅ 완료 특정 날짜의 건강 기록 조회 특정 달 건강 기록 조회 /api/pets/{pet_id}/health-records?month={month}
GET
✅ 완료 특정 달의 건강 기록 조회 📌 사전 정의된 건강 기록 아이템
ItemType Item Name 1 📷 Photo (사진 기록) 2 🛁 Bath (목욕) 3 🚶 Walk (산책) 4 🍖 Snack (간식) 5 💊 Medicine (약) 6 💉 Vaccination (예방 접종) 7 🏥 Hospital (병원 방문) 8 📝 Memo (메모) -
🐶 반려동물 API (Pet Controller)
기능 엔드포인트 메서드 상태 설명 반려동물 등록 /api/pets
POST
✅ 완료 새로운 반려동물을 등록하고 고유 ID 반환 반려동물 정보 조회 /api/pets/{pet_id}
GET
✅ 완료 등록된 반려동물 조회 반려동물 정보 수정 /api/pets/{pet_id}
PUT
✅ 완료 등록된 반려동물 정보 수정 반려동물 삭제 /api/pets/{pet_id}
DELETE
✅ 완료 등록된 반려동물 삭제 회원 반려동물 목록 조회 /api/pets/mine
GET
✅ 완료 로그인된 회원의 반려동물 목록 조회
-
aengzu @aengzu |
@choisieun | Heewon Choi @o4e3 |