Разметка трафарета по эталонному бланку
Аналитик открывает эталонный скан вида страницы, размечает клетки (checkbox/text) с путями и подписями вручную, опираясь на детекцию линий сетки, и выгружает трафарет в JSON.
1. Given
- Открыт редактор трафарета (
editor/template-editor.html) через локальный прокси. - Есть чистый эталонный скан нужного вида страницы (
page_type).
2. When
- Аналитик загружает эталонный скан; изображение выравнивается по вертикали (deskew).
- Редактор детектирует линии сетки (с NMS-порогом близости) и рамку-якорь по контенту.
- Аналитик размечает клетки: рисует прямоугольники или кликает по клетке сетки (примагничивание к линиям), задаёт тип (checkbox/text), путь-секцию и подпись; id клетки генерируется из подписи.
- Аналитик выгружает трафарет в JSON (рамка-якорь, линии, клетки в долях 0..1).
3. Then
- Получен JSON-трафарет вида страницы:
page_type,anchor_frame,lines,cells. - Клетки несут путь-секцию и подпись — самую трудоёмкую, смысловую часть разметки.
- Трафарет пригоден для применения к другим сканам того же вида (см. сценарий применения).
4. Альтернативы и ошибки
| Ситуация | Поведение |
|---|---|
| Линии бледные/рваные (низкое разрешение) | Часть направляющих не детектится; аналитик добавляет их вручную и двигает |
| Две направляющие близко, ячейка между ними | Клик приоритетно берёт ячейку, а не линию; линию можно взять вне ячеек |
| Готовый трафарет нужно поправить | Импорт JSON в редактор → правка клеток → повторный экспорт |
| Другой вариант того же бланка | Нужен отдельный трафарет: состав колонок отличается, не только координаты |
5. Трассировка
| Шаг | Инструмент |
|---|---|
| Разметка клеток, детекция линий, экспорт/импорт | editor/template-editor.html |
Эпик — эпик «Стенд распознавания карт».