|
|
||
|---|---|---|
| configs | ||
| data | ||
| src/eval_ppt2html | ||
| Makefile | ||
| README.md | ||
| pyproject.toml | ||
| requirements.txt | ||
README.md
PPT → HTML Evaluation Benchmark
이 프로젝트는 input PPTX와 변환된 HTML(Output) 간의
텍스트 / 레이아웃 / 시각적 유사도를 평가하는 로컬 평가 도구입니다.
Requirements
- Python 3.10+
- pip (Windows 환경 기준)
- 필요한 패키지는 requirements.txt로 설치
pip install -r requirements.txt
pip install beautifulsoup4
How to Run
1) Set PYTHONPATH
set PYTHONPATH=src
2) Prepare Sample List
data/raw/samples.csv 파일 예:
id,pptx_path,html_path
input_vs_v1,data/raw/pptx/input.pptx,data/raw/html/output_001.html
input_vs_v2,data/raw/pptx/input.pptx,data/raw/html/output_002.html
3) Preprocess
python -m eval_ppt2html.cli preprocess data/raw/samples.csv --work-dir data
4) Compute Metrics
python -m eval_ppt2html.cli metrics data/processed/json --output-csv data/reports/metrics.csv
Project Structure
ppt2html-eval-benchmark/
src/eval_ppt2html/
cli.py
models.py
preprocess/
metrics/
captions/
utils/
data/
raw/
processed/
reports/
📊 Metrics
- Text BLEU-like
- Text Length Ratio
- Layout IoU
- Final Score (0~100)
Expected Evaluation Output (예상 평가 결과)
아래는 본 평가 도구를 실행했을 때 생성되는
data/reports/metrics.csv의 예상 출력 예시입니다.
평가 결과 예시
| sample_id | text_bleu | text_length_ratio | layout_iou | ssim | final_score |
|---|---|---|---|---|---|
| input_vs_v1 | 82.3 | 0.97 | 0.71 | 0.00 | 78.1 |
| input_vs_v2 | 76.4 | 1.05 | 0.62 | 0.00 | 72.0 |
컬럼 설명
| 컬럼명 | 설명 |
|---|---|
| sample_id | 비교한 샘플 이름 (input vs output) |
| text_bleu | 텍스트 유사도 (BLEU-like, 0~100) |
| text_length_ratio | 텍스트 길이 비율 (1.0에 가까울수록 유사) |
| layout_iou | 레이아웃 IoU 평균값 (0~1) |
| ssim | 이미지 SSIM (현재 0으로 표시됨 — 동적 분석 미사용) |
| final_score | 가중치 기반 종합 점수 (0~100) |
Final Score 계산식
final_score = (
0.4 * (text_bleu / 100)
0.3 * layout_iou
0.3 * ssim
) * 100
해석 예시
input_vs_v1의 종합 점수 78.1input_vs_v2의 종합 점수 72.0
→ input_vs_v1(output_001.html)이 원본 PPT와 더 유사함을 의미.