Руководство по GUI анализа изображений и CV pipeline
CV GUI and Pipeline Guide
Это руководство описывает работу с панелью CV/AI в Screph и особенно подробно объясняет расширенный pipeline.
Документ ориентирован на пользователя интерфейса: без внутренней реализации, но с практическими сценариями,
понятной терминологией и пошаговой навигацией по GUI.
This guide explains the Screph CV/AI panel and, in particular, the advanced pipeline editor.
It is written for GUI users: practical, task-oriented, and focused on how to work with the interface rather
than on internal implementation details.
1. Что делает CV GUI
1. What the CV GUI Does
CV GUI помогает находить области интерфейса на скриншоте, выделять маски и контуры, распознавать текст,
объединять несколько шагов обработки и превращать результат в элементы проекта. Обычно он используется, когда
нужно быстро отделить кнопку, иконку, поле ввода, панель или текстовый блок без ручного обводения каждого
пикселя.
The CV GUI helps you detect interface regions on a screenshot, build masks and contours, read text, combine
multiple processing steps, and turn the result into project elements. It is most useful when you want to
isolate a button, icon, input field, panel, or text block without manually drawing every detail.
-
Простой режим: выбрать один метод и настроить несколько параметров.
Simple mode: choose one method and tune a small set of parameters.
-
Линейный pipeline: собрать цепочку шагов один за другим.
Linear pipeline: build a straight sequence of steps.
-
Расширенный pipeline: собрать граф из методов, ветвлений, merge и runtime-inspector.
Advanced pipeline: build a graph with methods, branching, merges, and runtime inspection.
2. Базовый сценарий работы
2. Basic Workflow
-
Откройте изображение или выберите элемент/ROI на холсте.
Open an image or select an element/ROI on the canvas.
-
Откройте панель CV/AI и выберите режим обработки.
Open the CV/AI panel and choose a processing mode.
-
Включите live preview для быстрых итераций или оставьте ручной Apply для тяжёлых методов.
Enable live preview for quick iteration or keep manual Apply for heavier methods.
-
Проверьте preview и overlay на холсте.
Check the preview and the overlay on the canvas.
-
Сохраните результат, экспортируйте маску или добавьте найденные области как элементы проекта.
Save the result, export the mask, or add detected regions as project elements.
Практический совет:Practical tip:
если вы не уверены, с чего начать, сначала ограничьте область интереса (ROI), а уже потом
запускайте цветовую или сегментационную обработку. Это быстрее и обычно даёт меньше шума.
if you are unsure where to start, first reduce the area of interest (ROI), then run color or
segmentation processing. It is faster and usually produces less noise.
3. Основные части панели
3. Main Parts of the Panel
-
Режим обработкиProcessing Mode:
выбор метода или pipeline.
choose a method or a pipeline mode.
-
Параметры методаMethod Parameters:
динамическая форма с настройками выбранного метода.
dynamic form with settings for the selected method.
-
PreviewPreview:
показывает, что именно вернул метод или pipeline.
shows what the method or pipeline produced.
-
OverlayOverlay:
накладывает маску и контуры на холст, чтобы вы сравнивали результат с исходным изображением.
overlays masks and contours on the canvas so you can compare them with the original image.
-
Preset-ыPresets:
сохраняют удачные наборы параметров.
save useful parameter combinations.
-
Сохранение результатовResult Saving:
запись масок, сегментов и derived elements в текущую сессию.
store masks, segments, and derived elements in the current session.
4. Линейный pipeline
4. Linear Pipeline
Линейный pipeline удобен, когда вам нужен предсказуемый поток без ветвлений: например, сначала выделить
границы, потом очистить маску, потом извлечь контуры. Он проще для быстрого старта и легче переносится между
проектами.
The linear pipeline is the best option when you need a predictable flow without branching: for example,
detect edges, clean the mask, then extract contours. It is easier to learn and easier to reuse across
projects.
-
Каждый шаг исполняется сверху вниз.
Each step runs from top to bottom.
-
Вы редактируете параметры одного шага за раз.
You edit one step at a time.
-
Панель preview шагов помогает понять, на каком этапе появился шум или потерялся объект.
Step previews help you see where noise appeared or where an object was lost.
-
Если цепочка остаётся линейной, её легко поддерживать и потом переносить в advanced mode.
If the chain stays linear, it is easy to maintain and later move into advanced mode.
5. Расширенный pipeline: подробное руководство
5. Advanced Pipeline: Detailed Guide
Расширенный pipeline предназначен для сложных сценариев, где обычной линейной цепочки уже недостаточно.
Он позволяет строить полноценный граф обработки: использовать несколько веток, объединять результаты, держать
отдельный preview-выход и смотреть runtime-трассу по шагам.
The advanced pipeline is designed for scenarios where a simple linear chain is no longer enough. It lets you
build a full processing graph: split into branches, merge results, keep a dedicated preview output, and
inspect the runtime trace step by step.
Когда переходить в расширенный режим
When to Switch to Advanced Mode
-
Нужно сравнить две разные ветки обработки одной и той же картинки.
You need to compare two different branches for the same image.
-
Нужно выбрать один из вариантов по условию.
You need to choose between variants conditionally.
-
Нужно отдельно управлять результатом и предпросмотром.
You want to control the final result and the preview separately.
-
Нужен runtime inspector, чтобы видеть payload каждого узла и каждой связи.
You need the runtime inspector to see the payload of each node and connection.
Важно:Important:
расширенный режим экспериментальный. Пока у него свой draft-состояние, а линейный pipeline
остаётся основным форматом, пока вы явно не примените обратно exportable graph.
the advanced mode is still experimental. It keeps its own draft state, while the linear
pipeline remains the main format until you explicitly apply an exportable graph back.
Структура экрана advanced pipeline
Advanced Pipeline Screen Layout
-
Верхняя панель действийTop Action Bar:
быстрые операции вроде Quick Add, Snippets, Auto Layout, Repair Graph, Apply to Linear.
quick actions like Quick Add, Snippets, Auto Layout, Repair Graph, Apply to Linear.
-
Холст графаGraph Canvas:
основная рабочая область с узлами, связями, комментариями и группами.
the main editing area with nodes, connections, comments, and groups.
-
Правая колонка инспекторовRight-side Inspectors:
сведения о выбранном объекте, payload, pinned inspector и selection preview.
information about the selected item, payload, pinned inspector, and selection preview.
-
Runtime debug областьRuntime Debug Area:
история выполнения, scrubber по шагам, diff, pinned runtime step и preview истории.
execution history, step scrubber, diff, pinned runtime step, and preview history.
-
Validation / Search / RecommendationsValidation / Search / Recommendations:
быстрый переход к проблемам, поиск по графу и рекомендации по исправлению.
jump to issues, search the graph, and follow suggested fixes.
Типы узлов
Node Types
-
SourceSource:
входное изображение, point prompt, константы.
input image, point prompt, constants.
-
MethodMethod:
реальные CV-методы: edge detection, segmentation, OCR, contour extraction и т.д.
actual CV methods: edge detection, segmentation, OCR, contour extraction, and so on.
-
ControlControl:
условные узлы и merge для выбора или объединения веток.
conditional nodes and merge nodes used to choose or combine branches.
-
UtilityUtility:
технические узлы вроде reroute, чтобы сделать граф чище.
helper nodes such as reroute nodes to keep the graph readable.
-
SinkSink:
финальные точки вывода результата и preview.
final output targets for result and preview.
В типичном графе всегда присутствуют как минимум Input Image и Result Output.
Они задают начало и явную конечную точку потока. Если в графе несколько веток и нет явного result output,
runtime может посчитать конфигурацию неоднозначной.
A typical graph always includes at least Input Image and Result Output.
They define the start and the explicit end of the flow. If your graph has multiple branches and no explicit
result output, the runtime may treat it as ambiguous.
Как собирать граф на практике
How to Build a Graph in Practice
-
Откройте вкладку Advanced рядом с линейным редактором.
Open the Advanced tab next to the linear editor.
-
Добавьте узлы через Quick Add или кнопку Add Node.
Add nodes via Quick Add or the Add Node button.
-
Соединяйте порты перетаскиванием от выхода к совместимому входу.
Connect ports by dragging from an output to a compatible input.
-
Если граф разрастается, используйте reroute и comment/group frames.
If the graph becomes large, use reroute nodes and comment/group frames.
-
Для сложного ветвления вставляйте If и Merge узлы.
For branching logic, insert If and Merge nodes.
-
После изменений проверяйте validation panel и summary справа.
After editing, check the validation panel and summary on the right.
Рекомендуемый стартовый паттерн:Recommended starter pattern:
`Input Image -> один-два method nodes -> Result Output`. Сначала убедитесь, что этот скелет
работает, и только потом добавляйте ветвление, merge и отдельный preview sink.
`Input Image -> one or two method nodes -> Result Output`. First make sure this skeleton
works, then add branching, merge nodes, and a separate preview sink.
Редактирование и навигация
Editing and Navigation
-
Delete удаляет выбранные узлы, связи или группы.
Delete removes selected nodes, connections, or groups.
-
F2 переименовывает выбранный узел.
F2 renames the selected node.
-
Ctrl+D дублирует выделение.
Ctrl+D duplicates the current selection.
-
Tab или Space открывают Quick Add.
Tab or Space opens Quick Add.
-
A запускает auto layout.
A runs auto layout.
-
Ctrl+0 подгоняет масштаб под граф.
Ctrl+0 fits the graph into view.
Runtime inspector: как читать выполнение графа
Runtime Inspector: How to Read Graph Execution
После запуска обработки расширенный pipeline сохраняет runtime-снимок. Он показывает не только итоговую
картинку, но и то, что происходило в каждом узле: какие входы были доступны, что узел вернул, какая ветка
условия была выбрана, и где появился warning или error.
After execution, the advanced pipeline stores a runtime snapshot. It shows not only the final image but also
what happened in each node: which inputs were available, what the node returned, which branch was selected,
and where warnings or errors appeared.
-
Runtime scrubberRuntime scrubber:
переход между полным видом и отдельными runtime-шагами.
switch between the full view and individual runtime steps.
-
Current / Pinned stepCurrent / Pinned step:
удобно сравнивать два состояния графа или две ветки выполнения.
useful for comparing two states or two execution branches.
-
Selection previewSelection preview:
показывает preview именно выбранного узла или связи.
shows the preview for the selected node or edge.
-
Payload inspectorPayload inspector:
помогает понять, какой тип данных идёт по связи: image, mask, contours, detections, text.
helps you understand what kind of payload flows through a connection: image, mask, contours,
detections, or text.
Горячие клавиши runtime:Runtime shortcuts:
`Alt+Home` — к началу трассы, `Alt+Left/Right` — шаг назад/вперёд, `Alt+End` — полный вид.
`Alt+Home` jumps to the beginning of the trace, `Alt+Left/Right` moves backward/forward, and
`Alt+End` returns to the full view.
Draft, синхронизация и применение к линейному pipeline
Drafts, Sync, and Applying Back to Linear
У advanced mode есть собственное состояние редактирования. Пока граф содержит ветвления, utility/control
узлы или другие нелинейные конструкции, он может оставаться только advanced draft. Если же конфигурация
остаётся linearly exportable, вы можете нажать Apply to Linear и вернуть её в обычный
линейный pipeline.
Advanced mode has its own editable draft state. As long as the graph contains branching, utility/control
nodes, or other non-linear structures, it may remain an advanced-only draft. If the configuration stays
linearly exportable, you can press Apply to Linear and convert it back to the regular linear
pipeline.
-
Resync from Linear перезагружает граф из текущего линейного pipeline.
Resync from Linear rebuilds the graph from the current linear pipeline.
-
Apply to Linear записывает graph обратно в линейный формат, если это возможно.
Apply to Linear writes the graph back into the linear format when possible.
-
Repair Graph предлагает безопасные исправления, если структура неполная или сломана.
Repair Graph suggests safe fixes when the structure is incomplete or broken.
6. Советы по производительности
6. Performance Tips
-
Для тяжёлых графов выключайте live preview и запускайте Apply вручную.
For heavy graphs, turn off live preview and run Apply manually.
-
Ограничивайте ROI перед сложной обработкой, если не нужен весь экран.
Limit the ROI before running heavy processing if you do not need the full screen.
-
Используйте reroute и comment frames, чтобы не превращать граф в трудно читаемую “паутину”.
Use reroute nodes and comment frames to avoid turning the graph into unreadable spaghetti.
-
После крупных перестроений делайте Auto Layout и проверяйте validation summary.
After major changes, run Auto Layout and check the validation summary.
7. Частые проблемы и что делать
7. Common Problems and What to Do
-
Preview пустойPreview is empty:
проверьте, что граф заканчивается в Result Output или Preview sink и что у узлов есть совместимые входы.
make sure the graph ends in Result Output or a Preview sink and that nodes receive compatible inputs.
-
Граф не применяется к linearGraph cannot be applied back to linear:
обычно причина в ветвлении, merge, utility/control nodes или другом нелинейном фрагменте.
the usual reason is branching, merge nodes, utility/control nodes, or another non-linear fragment.
-
Слишком много шумаToo much noise:
уменьшите ROI, добавьте фильтрацию маски или разбейте задачу на несколько шагов вместо одного универсального метода.
reduce the ROI, add mask cleanup, or split the task into several steps instead of using one generic method.
-
Результат нестабилен между кадрамиThe result is unstable across frames:
зафиксируйте область, уменьшите количество веток и проверяйте runtime trace по шагам, а не только итоговый preview.
lock the area, reduce the number of branches, and inspect the runtime trace step by step instead of looking only at the final preview.
← Вернуться к оглавлению документации
← Back to Documentation Index