大家好,我是公众号3分钟学堂的郭立员,今天给大家带来一个脚本工具类的代码。这个工具类脚本是测试找图命令中偏色是否填写的准确。

为啥会用到偏色

理论上来说我们在使用找图命令时,是不需要管偏色或者相似度,百分百一样就行,但是实际操作的时候会发现,如果不填写会经常找不多图,这是为啥呢?

因为在app每次加载图片经常会发生细微的变化,这个变化程度人眼是区分不出来的,但是对于脚本来说是很容易对比出区别。这就是为啥明明看着一样,找图却找不到的原因。

当我们给找图命令填写偏色或者相似度以后,会增加图色的容差率,把原本有细微差别的颜色点看做是同一个颜色,从而增加了找图命令的识别率。

测试偏色脚本的原理

测试偏色的数值原理是这样的,先在屏幕上截取一张图片,保存下来,之后重新加载页面或者等待一段时间,然后在相同位置上截取同一张图,再次保存。

接下来,把两张图片的颜色信息全部遍历出来,逐个颜色点进行颜色值对比,比对结果中偏差的最大值就是我们的偏色值。

按键精灵怎么设置找图优先级(测试你找图命令中)(1)

此图是设置了一个觉得合适的偏色值,经过测试发现还是会有几个点有差异,所以偏色值还需要增加。

偏色脚本编写过程

(1)截图,使用snapshot命令截图

(2)把图片名称用文本存储

(3)在相同位置再次截图

(4)获取两张截图的颜色数据

(5)通过遍历数组的方式,把两个截图的数据都遍历出来

(6)把颜色数据中的红绿蓝分量进行相减,把差值和预先设置的偏色值进行比较大小,如果大于偏色值了,说明颜色有较大的变化了。

(7)记录颜色变化较大点的数量,用这个数除以截图所有点的数量,得到变化点占得比例。

(8)多次测试,逐渐增加偏色值的大小,使变化点的占比为0,这里注意必须是0,即使是0.00001也不行。

(9)最终得到偏色值

偏色脚本有啥用

写这个最大用处就是解决不知道偏色填多少合适的问题,通过这个脚本多轮测试找到一个满意的偏色值。

当然除了偏色以外,还可以用来写相似度,近似算法

相似度=1-(偏色/256)

,