按键精灵找图找到后跳出循环 按键精灵如何设置循环( 二 )


它们是做什么用的呢?
偏色和相似度的作用是一样的,都是为了增加找图的容差率(容错率),就是把与要找图非常接近的颜色也看做是有效的颜色,从而实现当找图区域的颜色发生细微变化后,还能通过找图命令找到我们想要的位置坐标 。
下面开始介绍一下偏色:
(一)偏色
在找图代码中,这个参数默认是000000,也就是无偏色 。这六个数字代表什么呢?
它们分成3组,每一组分别代表一种颜色 。

这里需要强调一下颜色顺序是蓝色、绿色、红色,如果你有关于颜色的基础,是不是想说颜色值的顺序不是红绿蓝吗,没错在多数颜色相关的软件或者程序中确实是红绿蓝RGB,但是按键不是,也不知道编写按键的作者是怎么想的,记住这个顺序就好 。
我们还是以上面百思特网马里奥找图为例:
序号1的像素点


颜色值是:d633百思特网0a,按照上面颜色值分组:
蓝色数值:d6
绿色数值:33
红色数值:0a
这里面数值为啥有字母呢,因为颜色值是十六进制的,而不是我们日常的十进制 。
十进制:0123456789 每满10个数字进一位
十六进制:0123456789ABCDEF 每满16个数字进一位,这里面A就相当于10,B就相当于11,C就相当于12,D就相当于13,E就相当于14,F就相当于15 。
关于十六进制和十进制转换自行百度,这里不讲 。
我们以蓝绿红每个颜色的最小偏色值为例,来了解一下偏色 。
每个颜色偏色的最小值是01,那么偏色值就是010101,假设我们给找图命令加上这个010101的偏色会有什么影响呢?
原本我们找序号1的颜色值是d6330a,如果加上偏色010101,那么符合要求的颜色值,就由原来的1个变成27个 。
符合要求颜色值的计算公式是d6330a010101
按颜色拆分计算:
蓝色:d601得到范围是d5~d7
绿色:3301得到范围是32~34
红色:0a01得到范围是09~0b
这些颜色范围得到的27个颜色是什么?
d53209 d5320a d5320b
d53309 d5330a d5330b
d53409 d5340a d5340b
d63209 d6320a d6320b
d63309 d6330a d6330b
d63409 d6340a d6340b百思特网
d73209 d7320a d7320b
d73309 d7330a d7330b
d73409 d7340a d7340b
红色是未偏色的颜色,其他都是偏色后,其实偏色可以理解为颜色偏移 。
原本一个颜色值d6330a,只是偏色值增加了01,就变成了27个颜色,那么找图命令中,比对序号1的颜色值时,就不是比对1个颜色,而是27个颜色,这样符合要求的颜色就有27种可能性,这么一来,找图的容差率(允许差别)就高了 。
当我们增大偏色值,这个找图的颜色范围会继续扩大 。
扩大的颜色范围计算公式:
(2*蓝色偏色 1)*(2*绿色偏色 1)*(2*红色偏色 1)
我们刚刚每个颜色最小偏色01的计算结果就是:
【按键精灵找图找到后跳出循环 按键精灵如何设置循环】 (2*01 1)*(2*01 1)*(2*01 1)=3*3*3=27
这里有一些特殊情况,颜色值是有上下限的,最小值是00,最大值是ff,如果最小值00再减去任何值都还是00,如果最大值ff再加上任何值都还是ff 。
回答新手一个常问的问题,偏色值要填多少合适呢?
偏色值的大小并不是一个固定的数值,但它有一个判断趋势,要根据你的需求来定,比如说:
你希望找的颜色非常精准,那偏色值就要填小一点,甚至是六个0这种无偏色的情况 。
如果你希望找的颜色相近的就算符合要求的,那么偏色就稍微填大一点 。
当然这里注意不要太大,否则就会把相差很大的颜色也误认为是符合要求的颜色 。

推荐阅读