Files
guitar_score/.agent/docs/devlog/entries/20260327-001.md

2.0 KiB

타일 기반 마디 분할 및 AI 마디번호 스탬핑 구축 (Tile Engine)

  • 시간: 2026-03-27 22:50
  • Commit: PENDING_COMMIT
  • Vikunja: 신규 생성 대기

결정 사항

  • 광학 추적 렌즈 분리 (Blue / Red Channel): OpenCV SIFT 알고리즘 구동 시, 노란색 하이라이트가 Red 채널(흰색 배경화)에서 투명해져 발생하는 '반복 구간 마디 삭제' 버그를 해결. 트래킹 렌즈는 Blue 채널(검은색 덩어리 변환)을 사용하여 하이라이트를 고정밀 마커로 활용하고, 실제 PDF 출력 렌즈는 Red 채널을 통해 하이라이트를 완전히 삭제하는 이원화 아키텍처 도입.
  • 해시 중복제거(pHash) 완전 폐기: 1280px 해상도를 8x8로 축소 비교하는 해시 필터가 코러스 반복 구간을 100% 중복으로 오인하여 절반 이상의 마디를 강제 소멸시켰음. 스크롤 모드에서는 이를 완전히 삭제.
  • Object-Oriented Measure Slicing (타일 엔진): 단순히 1280px이 차면 자르던 무식한 _find_clean_cut을 폐기. 대신 오선지의 상하 범위를 탐색하고, 기타 6현을 관통하는 세로선(|)을 정밀 탐지하여 개별 마디(Measure) 단위로 이미지를 분절하는 타일 엔진 도입.
  • AI-Stamping (순차 마커 결합): 추출된 각 마디 타일의 좌측 상단 여백에 cv2.putText를 이용해 연속된 마디 번호([ 1 ], [ 2 ])를 디지털로 각인. 원본 영상에 숫자가 아예 존재하지 않아도 절대 길을 잃지 않게 설계.
  • Top Margin 확장: 영상 상단에 원본 편집자가 적어둔 마디 숫자가 2% 밀도 필터(row_dark > 0.02)에 걸려 여백으로 간주되어 목이 잘려나가는(Decapitation) 버그를 패치. 밀도를 0.2%로 대폭 축소하고 상단 보호 영역을 120px로 확장하여 무결성 100% 확보.

미완료

  • (없음) 파이프라인 무결성 Sakanakushon 테스트 통과 완료 (20조각 1580x7825 A4 포팅).