이 저장소는 현재 v3 아키텍처 재구성 중이다. 목표는 논문용 구조적 다이어그램을 generic reconstruction이 아니라 family-constrained parsing + editable primitive scene으로 정규화하는 것이다.
현재 기준 문서는 plan.md다. 큰 구조 판단, 현재 단계, 다음 단계, legacy 보존 정책은 모두 이 문서를 source of truth로 본다.
- broad PPT export는 아직 복구하지 않았다.
- old v2 runtime과 old CLI 동작은 의도적으로 제거되었다.
- 현재 실제로 동작하는 경로는 v3 debug/inspection path다.
- 지원 family는 아직 좁다.
- 현재 활성 family:
orthogonal_flow
- 현재 활성 family:
- benchmark / eval / GT sidecar / workbench 자산은 보존되어 있다.
- 다만 old validation runtime은 복구하지 않았다.
- 대신 debug path에서 읽는 최소
eval_runtimeadapter와 emit diff inspection bootstrap은 추가되었다.
개발용 inspection 경로:
python -m pip install -e .
python tools/run_v3_debug.py input.png --output-dir artifacts/v3_debug/sample이 경로는 다음 artifact를 저장한다.
family_proposals.jsondiagram_instances.jsonconnector_evidence.jsonprimitive_scene.jsonattached_connectors.jsonsolved_connectors.jsonemit_scene.jsonmanifest.jsoneval_stage_artifacts.jsonemit_diff.jsonoverlay_proposals.pngoverlay_instances.pngoverlay_connector_evidence.pngoverlay_ports.pngoverlay_primitives.pngoverlay_attached_connectors.pngoverlay_solved_connectors.pngoverlay_emit_scene.pngoverlay_emit_diff.png08_eval/*- input 이미지 옆에
*.gt.jsonsidecar가 있으면 GT-backed eval artifact - 없으면 unavailable payload
- input 이미지 옆에
파이썬에서 직접 v3 convert를 호출할 수도 있다.
from image_to_editable_ppt.v3 import V3Config, convert_image
result = convert_image("input.png", config=V3Config())
print(result.slide_ir.family_proposals)
print(result.slide_ir.diagram_instances)
print(result.slide_ir.connectors)
print(result.slide_ir.primitive_scene)현재 파이프라인은 아래 순서까지 구현되어 있다.
- multiview branch 생성
- text extraction + soft masking
- raster/non-diagram split
- residual structural canvas 생성
orthogonal_flowfamily detection- node/container parsing
- connector evidence 수집
- port 생성
- evidence attachment
- solved connector resolve
- primitive scene mapping
- image-space emit adapter scene mapping
- eval adapter manifest/stage artifact 조립
- emit pre/post diff inspection artifact 저장
- debug/inspection artifact 저장
아직 하지 않은 것:
- broad PPT emit
- old validation runtime 복구
- 여러 family 동시 확장
- full connector routing/optimization
- 확실한 구조만 남기고, 애매한 것은 공백이나 residual로 둔다.
- non-diagram raster는 초기에 분리한다.
- connector는 evidence -> attachment-aware candidate -> solved connector 순서로 늦게 확정한다.
- emit adapter 좌표는 현재
image-space를 그대로 유지한다. - preserve-eval bridge는
manifest.json+08_eval/*artifact를 읽는 최소 adapter로만 연결한다. - detector 결과를 바로 emit하지 않고, typed IR과 primitive scene을 거친다.
상위 원칙은 principle.md에 있다.
다음 자산은 보존 중이다.
- benchmark report / diagnostics artifact reader
- GT sidecar와 기존 benchmark summary
- workbench 산출물
하지만 이것이 old runtime이 여전히 동작한다는 뜻은 아니다. 현재는 artifact reader는 유지, old conversion runtime은 제거 상태다.
- conversion-spec.md: archived historical draft
- v2.0 instruction.md: obsolete historical instruction
현재 구현 방향은 위 문서보다 plan.md가 우선한다.