简介:本文介绍了Airtest 1.2.0版本中新增的图像识别算法mstpl,详细解析其特有参数scale_step和scale_max,并通过实例展示如何调整这些参数以提高图像识别准确率,为自动化测试提供实用指南。
在自动化测试领域,图像识别是一项关键功能,它使得测试脚本能够识别屏幕上的图像元素,进而执行相应的操作。Airtest作为一款强大的自动化测试工具,其图像识别能力尤为重要。在Airtest 1.2.0版本中,新增了mstpl图像识别算法,该算法在一定程度上提高了图像识别的正确率和效率。本文将详细介绍mstpl算法及其特有的参数调整方法,帮助用户更好地利用这一功能。
mstpl是Airtest 1.2.0版本中新增的图像识别算法,它基于模板匹配技术,通过比较待识别图像与模板图像之间的相似度来实现图像识别。mstpl算法在匹配过程中采用了更加精细的搜索策略和动态调整机制,从而提高了图像识别的准确性和效率。
mstpl算法包含两个特有的参数:scale_step和scale_max,这两个参数对于调节图像识别的精细度和范围具有重要作用。
scale_step以提高识别率。但请注意,减小scale_step会大幅增加匹配时间。scale_max越小,匹配速度越快,但可能无法匹配到较小的UI元素。在遇到截图非常小匹配不到的情况时,可以尝试调大scale_max。假设我们在进行图像识别时,遇到了识别率不高的问题,可以通过调整scale_step和scale_max参数来尝试解决。
scale_step=0.01scale_step调整为0.005scale_max=1000scale_max调整为1100在AirtestIDE中,双击图片打开图像编辑器,在右侧的参数表格中修改scale_step和scale_max的值,然后点击OK按钮保存。
在Airtest的脚本编辑窗中,切换到代码模式,直接在图像脚本里添加或修改scale_step和scale_max的值。例如:
from airtest.core.api import *touch(Template("search.png", scale_max=1100, scale_step=0.005))
scale_step和scale_max的值,应根据实际的测试场景和目标图像的特点进行调整。