Skip to content

readingbuddy-pjt/ReadingBuddy

Repository files navigation

Reading Buddy

난독증 아동을 위한 VR 기반 한글 학습 시스템

image

서비스 소개

Reading Buddy는 난독증을 가진 어린이들을 위한 VR 기반 한글 학습 플랫폼입니다.

AI 음성 인식 기술을 활용하여 자음과 모음 발음을 정확하게 분석하고, 몰입감 있는 VR 게임 환경에서 재미있게 한글을 익힐 수 있도록 돕습니다.

서비스 배경

난독증(Dyslexia)은 읽기와 쓰기에 어려움을 겪는 학습 장애로, 전체 아동의 약 5-10%가 경험합니다.

특히 한글은 자음과 모음을 조합하는 독특한 구조로 인해 난독증 아동에게 학습 난이도가 높습니다. 기존 학습 방법은 반복적이고 지루하여 학습 의욕을 떨어뜨리는 문제가 있습니다.

Reading Buddy는 VR 기술과 AI를 결합하여:

  • 몰입감 있는 훈련 환경에서 자연스럽게 한글을 학습
  • 음소 단위 발음 분석으로 정확한 피드백 제공
  • BKT(Bayesian Knowledge Tracing) 알고리즘으로 개인별 학습 진도 관리
  • 모바일 앱을 통한 학습 현황 추적 및 취약 음소 분석

주요 기능

1. VR 한글 학습 게임

  • 자모 중심 학습: 자음(ㄱ, ㄴ, ㄷ...), 모음(ㅏ, ㅓ, ㅗ...) 개별 발음 연습
  • 스테이지별 난이도: 자모 → 음절 → 단어로 점진적 학습
  • 실시간 음성 인식: AI 기반 발음 분석 및 즉각적 피드백
  • 게임화된 학습: 마법사가 되어 주문(한글)을 외우는 재미있는 스토리
  • BKT 기반 진도 관리: 개인별 음소 숙련도(KC)를 추적하여 맞춤형 문제 제공

2. 모바일 컴패니언 앱

  • 간편 VR 로그인: 4자리 코드로 VR 기기와 빠른 연결
  • 학습 현황 대시보드: 출석 기록, 스테이지별 성취도, 일일 학습 시간
  • 취약 음소 분석: 개인별로 어려워하는 자음/모음 파악 및 추천 학습
  • KC 숙련도 그래프: BKT 기반 학습 진행도 시각화
  • 학습 통계: 정답률, 평균 시도 횟수, 음소별 성공률

3. AI 발음 분석 엔진

  • Wav2Vec2 + LoRA: 한국어 어린이 음성(3500시간) 특화 파인튜닝
  • 음소 단위 분석: 자모(ㄱ, ㄴ, ㅏ, ㅓ) 개별 발음 정확도 평가
  • 음절/단어 지원: "가", "나", "감자", "사과" 등 다양한 단위 분석
  • 실시간 피드백: 평균 0.1초 이내 발음 교정 피드백
  • 성능 지표:
    • PER: 36.67% → 14.55% (60.3% 개선)
    • CER: 26.40% → 10.51% (60.2% 개선)
    • 베이스 모델 대비 2.5배 정확도 향상

기술 스택

Category Technologies
Frontend (VR) Unity C# Meta Quest
Frontend (Mobile) Flutter Dart Riverpod
Backend Spring Boot Java Spring Security PostgreSQL
AI PyTorch Wav2Vec2 LoRA FastAPI
DevOps Docker Jenkins Kubernetes Traefik
Monitoring Prometheus Grafana
Collaboration Git GitLab Jira Notion

시스템 아키텍처

diagram-export-2026 -4 -15 -오전-1_53_26

ERD

A206(Reading Buddy) ERD PUBLIC

API 명세서

image image image

프로젝트 구조

S13P31A206/
├── frontend/              # VR Unity 프로젝트
│   ├── unity/             # Unity 프로젝트 루트
│   │   ├── Assets/        # 게임 에셋, 스크립트
│   │   └── ...
│   └── README.md          # VR 프론트엔드 상세 문서
│
├── reading_buddy_app/     # Flutter 모바일 앱
│   ├── lib/               # Dart 소스 코드
│   │   ├── features/      # 기능별 모듈 (Clean Architecture)
│   │   ├── core/          # 공통 기능 (네트워크, 라우팅 등)
│   │   └── main.dart
│   └── README.md          # 모바일 앱 상세 문서
│
├── backend/               # Spring Boot API 서버
│   ├── src/               # Java 소스 코드
│   ├── build.gradle       # Gradle 빌드 설정
│   └── README.md          # 백엔드 상세 문서
│
├── ai/                    # AI 음성 인식 서버
│   ├── app/               # FastAPI 애플리케이션
│   │   ├── main.py        # API 엔드포인트
│   │   ├── routers/       # 라우터 (자모/음절/단어 검사)
│   │   └── services/      # 추론 서비스 (Wav2Vec2 + LoRA)
│   ├── models/            # Wav2Vec2 + LoRA 모델 (1.2GB + 23MB)
│   ├── Dockerfile
│   └── README.md          # AI 서버 상세 문서
│
├── Fine-tuning/           # AI 모델 학습 파이프라인
│   ├── scripts/           # 학습/평가 스크립트
│   │   ├── training/      # Phase 1→2→3 학습
│   │   └── evaluation/    # WER/CER 평가
│   ├── docs/              # 학습 계획 및 분석 문서
│   ├── results/           # 실험 결과 (WER 14.8%)
│   └── README.md          # Fine-tuning 상세 문서
│
├── monitoring/            # 모니터링 (Prometheus + Grafana)
│   ├── prometheus/        # Prometheus 설정
│   ├── grafana/           # Grafana 대시보드
│   └── docker-compose.yml
│
├── dummy-scripts/         # 유틸리티 스크립트
│   ├── generate_voice.py  # gTTS 기반 음성 파일 생성 및 S3 업로드
│   └── README.md          # 스크립트 사용법
│
└── .gitlab/               # GitLab CI/CD 설정
    └── merge_request_templates/

상세 문서

각 모듈별 상세 문서는 아래 링크를 참고하세요:

모듈 설명 문서 링크
VR Frontend Unity 기반 VR 한글 학습 게임 frontend/README.md
Mobile App Flutter 기반 학습 현황 대시보드 앱 reading_buddy_app/README.md
Backend Spring Boot 기반 RESTful API 서버 backend/README.md
AI Server Wav2Vec2 + LoRA 기반 한국어 발음 분석 API ai/README.md
Fine-tuning 어린이 음성 특화 AI 모델 학습 파이프라인 Fine-tuning/README.md
Scripts 학습용 음성 데이터 생성 유틸리티 (gTTS + S3) dummy-scripts/README.md

팀 구성

Backend

이름 역할 주요 담당 업무 GitHub
백태균 백엔드 API 설계, Spring Security 인증/인가, 데이터베이스 설계, JWT 토큰 관리, DevOps @TaegyunB
정연수 백엔드 학습 세션 관리, 대시보드 API, 출석/통계 기능, 데이터 분석 @cheesecrust
지준오 백엔드 BKT 알고리즘 구현, KC 숙련도 추적, 개인 맞춤형 학습 로직, 음소 분석 @MegaZizon

Frontend

이름 역할 주요 담당 업무 GitHub
이채연 프론트엔드 VR 게임 로직, 스테이지 시스템 설계, AI 음성 인식 연동, 학습 세션 관리, VR UI/UX @amy010510
최유진 프론트엔드 Flutter 모바일 앱 개발, 대시보드 UI, 학습 통계 시각화, VR 디바이스 로그인, 상태 관리 @jinnyujinchoi

AI

이름 역할 주요 담당 업무 GitHub
김광현 AI Wav2Vec2 모델 파인튜닝, LoRA 학습 파이프라인, FastAPI 추론 서버, 음소 유사도 분석 @kimgwang-hyeon


라이선스

교육 목적으로 제작된 프로젝트입니다.


Project: SSAFY 13기 특화 프로젝트

About

난독증 아동을 위한 VR 기반 한글 학습 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors