Stage 2b. 도형/그래프 추출 (선택)¶
← 이전 Stage 2. 문제 잘라내기 | 다음 → Stage 3. 사람 확인 및 엑셀 정리
이 Stage는 선택이다
도형이나 그래프가 포함된 문제집일 때만 진행합니다. 시간이 부족하면 건너뛰고 Stage 3으로 가도 됩니다. 나중에 Skill을 만들 때 도형 추출 기능을 추가할 수도 있습니다.
이 단계의 목적
- 도형이 있는 문제를 빠르게 걸러냅니다 (사전 필터링)
- 도형 영역만 정확히 잘라서 별도 이미지로 저장합니다
- 나중에 엑셀에서 "이 문제에 도형이 있다"는 정보를 쓸 수 있게 합니다
2-3. 도형/그래프 이미지를 따로 잘라 저장하기¶
왜 이게 필요해요?
수학 문제엔 삼각형, 원, 좌표평면, 그래프 같은 도형이 꽤 많습니다. 나중에 엑셀에 정리할 때 "이 문제에 도형이 있었는지", "도형 이미지가 어디 저장돼 있는지"를 알아야 합니다. 도형이 없는 문제는 그냥 넘어가면 되고요.
AI에게 이렇게 말해보세요 — 도형/그래프 추출
단계 3에서 잘라낸 문제 이미지들 중에서, **도형이나 그래프가 포함된 문제를 골라내고, 도형 부분만 따로 잘라서 저장**해줘.
이걸 **두 단계**로 해줘:
**1단계 — 빠른 사전 필터링 (도형이 있을 것 같은 문제만 추리기)**
모든 문제를 다 정밀 분석하면 느리니까, 먼저 도형이 있을 가능성이 높은 문제만 추려내줘. 두 가지 방법을 쓰면 돼:
- **PDF 내부 정보 확인:** 단계 2에서 썼던 pdfplumber를 여기서도 써. PDF 안에는 "선", "곡선", "도형" 같은 벡터 그래픽 정보가 숨어있어. 각 문제 영역 안에 선이 3개 이상이거나, 곡선이 1개 이상이면 도형이 있을 가능성이 높아.
- **이미지 분석 보조:** PDF 정보만으로 애매하면, 이미지 자체도 봐줘. 글자만 있는 이미지에 비해 도형이 있는 이미지는 대각선 패턴이 많고, 선명한 윤곽선(edge)이 많아. 비어있는 부분이 거의 없이 글자만 꽉 찬 이미지는 도형이 없을 확률이 높아.
이 사전 필터링으로 **도형이 없는 60~70% 문제를 미리 걸러내줘.** 확실하지 않으면 일단 통과시켜 — 진짜 도형을 놓치는 것보다 괜히 한 번 더 확인하는 게 낫거든.
**2단계 — 도형 위치 잡고 잘라내기**
사전 필터를 통과한 문제만 대상으로, 도형의 정확한 위치를 잡아줘.
위치를 잡을 때 주의할 점:
- **도형 자체만 잡아야 해.** 문제 텍스트("삼각형 ABC에서...")는 도형이 아니야. 하지만 꼭짓점 라벨(A, B, C)이나 길이/각도 표시는 도형의 일부니까 같이 잡아줘.
- **너무 작으면 노이즈야.** 문제 이미지 면적의 3% 미만이면 도형이 아닐 가능성이 높아. 무시해줘.
- **너무 크면 잘못 잡은 거야.** 문제 이미지의 80% 이상이면 도형이 아니라 문제 전체를 잡은 거야. 다시 잡아줘.
- 잘라낸 도형 이미지 주변에 **여백을 약간** 남겨줘 (5% 정도). 너무 빡빡하게 자르면 도형 일부가 잘려.
잘라낸 도형은 `output/책이름/figures/` 폴더에 저장해줘. 파일 이름은 원래 문제 파일명에 `_figure`를 붙여줘 (예: `문제03_figure.png`). 도형이 없는 문제는 건너뛰면 돼.
끝나면 알려줘:
- 전체 문제 수 중 몇 개가 사전 필터를 통과했는지 (= 도형 후보)
- 그 중 실제로 도형이 발견된 건 몇 개인지
- 대표 예시 3~4개의 파일 경로
이상하면?
- "15번 문제에 삼각형이 있는데 figures에 안 들어있어" → 사전 필터가 너무 엄격
- "22번은 도형이 없는데 잘못 잡혔어" → 사전 필터가 너무 느슨
- "좌표평면인데 축이 잘렸어" → 여백을 더 넓혀달라고 해요
- "step1 12, step2 2, 11 이렇게 3개가 나와야하는데 나머지는 뭐야? 도형만을 추출하는 로직에 문제가 있는 것 같은데? 다시 확인해봐. 도형을 인식하는 것부터 출발해야할 것 같아"
체크포인트¶
-
output/책이름/figures/폴더에 도형만 잘라진 이미지가 있습니다 - 전체 문제의 30~40% 정도에서 도형이 발견됐습니다
- 도형이 없는 문제는 건너뛴 것을 확인했습니다
- 도형이 잘렸거나 빠진 경우를 피드백했습니다
← 이전 Stage 2. 문제 잘라내기 | 다음 → Stage 3. 사람 확인 및 엑셀 정리