82 lines
1.8 KiB
Markdown
82 lines
1.8 KiB
Markdown
# TRNote - 철도 음성인식 시스템
|
|
|
|
TRNote는 철도 관제사와 기관사의 음성 대화를 인식하고 분석하는 시스템입니다.
|
|
|
|
## 주요 기능
|
|
|
|
- 다양한 음원 소스(윈도우 사운드 출력, 스피커, 마이크, LINE-IN 등)에서 오디오 캡처
|
|
- OpenAI Whisper API를 사용한 음성-텍스트 변환
|
|
- 관제사/기관사 화자 구분 및 대화 분석
|
|
- 전동차 편성 정보 및 고장 이력 조회
|
|
- 대화 내용을 기반으로 관련 데이터 검색 및 표시
|
|
|
|
## 시스템 요구사항
|
|
|
|
- Windows 10 이상
|
|
- Python 3.8 이상
|
|
- OpenAI API 키
|
|
- Poetry (패키지 관리)
|
|
|
|
## 설치 방법
|
|
|
|
### Poetry 설치
|
|
|
|
```
|
|
pip install poetry
|
|
```
|
|
|
|
### 프로젝트 설치
|
|
|
|
1. 저장소 클론
|
|
```
|
|
git clone https://github.com/username/TRNote.git
|
|
cd TRNote
|
|
```
|
|
|
|
2. Poetry를 사용하여 의존성 설치
|
|
```
|
|
poetry install
|
|
```
|
|
|
|
3. OpenAI API 키 설정
|
|
```
|
|
# Windows
|
|
set OPENAI_API_KEY=your_api_key_here
|
|
|
|
# Linux/MacOS
|
|
export OPENAI_API_KEY=your_api_key_here
|
|
```
|
|
|
|
## 실행 방법
|
|
|
|
Poetry 환경에서 실행:
|
|
```
|
|
poetry run trnote
|
|
```
|
|
|
|
또는 직접 실행:
|
|
```
|
|
poetry run python main.py
|
|
```
|
|
|
|
## 사용 방법
|
|
|
|
1. 음원 소스 선택 드롭다운에서 오디오 소스 선택
|
|
2. '시작' 버튼 클릭하여 음성 인식 시작
|
|
3. 인식된 대화는 왼쪽 대화창에 표시됨
|
|
4. 관련 열차 및 고장 정보는 오른쪽 패널에 표시됨
|
|
5. 과거 대화는 왼쪽 상단 목록에서 선택하여 볼 수 있음
|
|
|
|
## 구조
|
|
|
|
- `main.py`: 애플리케이션 메인 진입점
|
|
- `modules/`: 각 기능별 모듈
|
|
- `audio_source.py`: 오디오 소스 관리
|
|
- `speech_recognition.py`: 음성 인식 처리
|
|
- `conversation_analyzer.py`: 대화 분석 및 화자 구분
|
|
- `database_manager.py`: 데이터베이스 관리
|
|
- `gui_components.py`: GUI 컴포넌트
|
|
|
|
## 라이선스
|
|
|
|
MIT |