This documentation is for Macro Recorder v5 beta. Click here the for current production version 4 documentation.
Image detection methods
Macro Recorder can locate a bitmap image by either comparing the screen (region) pixel-wise or by using an abstracting "feature matching" algorithm.
Pixel-perfect bitmap matching can be fragile on modern desktops due to several factors:
Font Rendering: Small differences in font versions, hinting, or OS rendering can shift pixels, especially in text.
Zoom and DPI Scaling: Different system scaling (e.g. 125%, 150%) resizes UI elements, altering their pixel layout.
Anti-Aliasing: Smoothing effects introduce subtle color variations around edges, making exact matches unreliable.
Subpixel Rendering: Techniques like ClearType use RGB subpixels differently per display, causing color shifts even when content is identical.
Hardware Differences: GPU drivers, monitor calibration, and display profiles can all affect pixel color and rendering.
Image Compression and Color Depth: Screenshots or rendering outputs may differ due to compression artifacts or varying color bit depths.
Because of these variables, bitmap matching is rarely portable or reliable across systems.
To address these limitations, Macro Recorder also supports a feature matching algorithm which detects and compares structural features (e.g. edges, corners, shapes) of the image to search.
Advantages:
Robust to Scaling and Zoom: Works across different DPI and zoom settings.
Tolerant to Rendering Variations: Less affected by anti-aliasing, subpixel rendering, or font differences.
Resilient to Minor Visual Changes: Can still match elements with slight color or layout shifts.
Disadvantages:
More Computationally Intensive: Requires more processing power and time than simple pixel comparison.
Potential for False Positives: Similar-looking elements may occasionally be mismatched.
Lower Precision: May not be suitable for applications requiring exact pixel alignment (e.g. visual regression testing).
Feature matching offers a more flexible and robust solution for most desktop automation and recognition tasks. You can optionally let Macro Recorder try figuring the suitable method by selecting "
".