Skip to Content
👋 Hey, welcome to Auto Engine! We've just released the latest Beta version 0.2.0 Check it out
DocumentsNodesNode TypesImage Recognition Node

Image Recognition Node

The ImageRecognition node locates buttons, icons, text regions, or any other visual target on screen. It compares pre-captured template images, writes the detected coordinates back to the context, and unblocks downstream MouseMove, MouseClick, or sub-pipeline nodes.

Configuration Fields

FieldTypeRequiredDescription
namestringâœ”ī¸Node name, e.g. find-submit.
paramsImageRecognitionParamsâœ”ī¸Matching options, see below.
retrynumberâœ”ī¸Retry attempts after failure (-1 means retry forever).
intervalnumberâœ”ī¸Retry interval in milliseconds.
conditionsConditionsOptional guards combining exist/not_exist/condition.
err_returnbooleanStop immediately on failure, defaults to true.

ImageRecognitionParams

FieldTypeRequiredDescription
imagesstring[]âœ”ī¸Template list in priority order.
optimizationImageOptimizationImage tuning options, see below.

ImageOptimization

FieldTypeDefaultDescription
resizenumber1.0Scale factor before matching to adapt to different resolutions.
imread_typestringGRAYSCALEOpenCV read mode. Supports COLOR or GRAYSCALE.

YAML Example

- action_type: ImageRecognition name: find-submit retry: -1 interval: 500 params: images: - submit.png - submit-alt.png optimization: resize: 0.8 imread_type: COLOR err_return: true

With retry: -1 the node keeps matching both templates until one succeeds and stores the coordinates under variables such as find-submit.submit.png.

Outputs

Every matched template emits three context variables:

  • {node-name}.{image-name}.x: detected X coordinate.
  • {node-name}.{image-name}.y: detected Y coordinate.
  • {node-name}.{image-name}: boolean flag set to true on success.

For example, a node named find-submit matching submit.png produces:

find-submit.submit.png.x find-submit.submit.png.y find-submit.submit.png = true

Downstream MouseMove, MouseClick, or conditional nodes can reference these variables directly to move, click, or branch.

Usage Tips

  • Crop templates tightly to reduce background noise during matching.
  • Add multiple resolutions/themes to the images array and order them by priority.
  • Use retry = -1 when you must wait for UI elements to appear; otherwise specify a finite value to avoid blocking the pipeline.
  • After a successful match, reference the output inside conditions.exist so later nodes run only when the element is present.
Last updated on: