# Get Image similarity Percentage

This is a pre-built Action located under the **@Custom Element.** The functionality of this Action in Avo Assure is to compare the image specified in the input with the image provided through the image path and return the similarity percentage. The result is stored in the given dynamic variable for further use during test execution.

{% hint style="info" %}
The **Get Image similarity Percentage** action works only when the **VerifyExists** action is executed in a preceding step.
{% endhint %}

### **Syntax**

**Input Value**: `<ObjectType>;<VisibleText(optional)>;<Index>;<image path>;<abs(optional)>`&#x20;

| Argument                            | Description                                                                                                                                            |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <p>\<ObjectType><br>(Required)</p>  | Provide the object type which you want to perform the get image similarity percentage operation. (e.g., Image)                                         |
| <p>\<VisibleText><br>(Optional)</p> | Provide the visible text associated with the object.                                                                                                   |
| <p>\<Index><br>(Required)</p>       | <p>Provide the position of the object you want to identify based on its sequence in the application.<br><strong>Note</strong>: Index start from 0.</p> |
| <p>\<image path><br>(Required)</p>  | Provide the path of the image which you want to get image similarity percentage.                                                                       |
| <p>\<abs><br>(Optional)</p>         | Provide the absolute XPath of the object you want to identify for this operation.                                                                      |

{% hint style="info" %}
**Note**:

* If the last argument **abs** is defined, the action executes using absolute identification based on the specified absolute XPath provided in the input.
* To skip an optional input value, use an extra semicolon (;).
  {% endhint %}

**Output Value**: `<Dynamic Variable>(Optional);<Dynamic Variable>(Optional)`

| Argument                                 | Description                                                       |
| ---------------------------------------- | ----------------------------------------------------------------- |
| <p>\<Dynamic Variable><br>(Optional)</p> | This dynamic variable stores the image similarity percentage.     |
| <p>\<Dynamic Variable><br>(Optional)</p> | This dynamic variable stores the status as **True** or **False**. |

### **Example 1: Finding the Image Similarity Percentage**

In this example, we are explaining how to find the similarity percentage between a specified object’s image and a reference image in the application.

* **Action**: Get Image similarity Percentage
* **Input Value**: img;;0;C:\TestImages\ExpectedLogo.png
  * The first argument (**img**) specifies the object type to be identified.
  * The second argument is left blank to skip an optional value.
  * The third argument (**0**) specifies the index of the object when multiple matching elements are present.
  * The fourth argument (**C:\TestImages\ExpectedLogo.png**) specifies the file path of the reference image used for comparison.
* **Output Value**: {Percentage}
  * The calculated image similarity percentage (89%) is stored in the **{Percentage}** dynamic variable.
  * If a second output variable is defined, it stores the execution status with the following possible values:
    * **True**: If the image similarity percentage is retrieved.
    * **False**: If the image similarity percentage is not retrieved.
* **Logical Explanation**: The **Get Image similarity Percentage** action reads the identification details and reference image path from the **Input Value** column (**img;;0;C:\TestImages\ExpectedLogo.png**). The action locates the matching object based on the specified object type and index and compares the actual image displayed in the application with the provided reference image. The calculated similarity percentage (89%) is stored in the **{Percentage}** variable.

<figure><img src="/files/tSmTJMEL36beLpEKtwSp" alt=""><figcaption></figcaption></figure>

### **Example 2: Finding the Image Similarity Percentage using Optional Parameters**

In this example, we are explaining how to calculate the similarity percentage between a specified object’s image and a reference image on the application using optional identification parameters.

* **Action**: Get Image Similarity Percentage
* **Input Value**: img;Logo;0;C:\TestImages\ExpectedLogo.png
  * The first argument (**img**) specifies the object type to be identified.
  * The second argument (**Logo**) specifies an optional identification value for the object.
  * The third argument (**0**) specifies the index of the object when multiple matching elements are present.
  * The fourth argument (**C:\TestImages\ExpectedLogo.png**) specifies the file path of the reference image used for similarity comparison.
* **Output Value**: {Percentage}
  * The calculated image similarity percentage (95%) is stored in the **{Percentage}** dynamic variable.
  * If a second output variable is defined, it stores the execution status with the following possible values:
    * **True**: If the image similarity percentage is retrieved.
    * **False**: If the image similarity percentage is not retrieved.
* **Logical Explanation**: The **Get Image similarity Percentage** action reads the identification details and reference image path from the **Input Value** column (**img;Logo;0;C:\TestImages\ExpectedLogo.png**). The action locates the matching object based on the specified object type, optional identification value, and index and compares the actual image displayed in the application with the provided reference image. The calculated similarity percentage (95%) is stored in the **{Percentage}** variable.

<figure><img src="/files/3vzpNaSnSKlkCHoIbKxK" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.avoautomation.com/avo-assure/actions/web/custom-1/get-image-similarity-percentage.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
