当前位置:首页 > 文章中心 > 正文内容

「知识盲区」按键精灵找图、多点找色、找字的原理(续)

dgx6667个月前 (05-15)文章中心28

大家好,我是公众号3分钟学堂的郭立员,今天给带来一期基础知识的文章,主要讲一下找图、多点找色、找字之间的联系与区别,这是一篇基础原理的教程,可能会有些枯燥。


由于篇幅比较长,分两期更新,这是第二期,本期主要讲图色命令相似度参数的原理以及多点找色和找字的原理,如果没看过第一期,可以先看昨天的文章。


相似度


上期文章,我们讲完了找图命令的偏色这个参数的原理,这期我们来说说相似度这个参数的原理。


关于相似度可能很多朋友会有一些误区,比如拿找图参数中默认的0.9相似度来说:


误区一】假设找的图是10*10的图片,一共100个像素点,如果相似度是0.9,那么就是90%相似,100个点中有至少90个点一样,就认为是符合要求的图。


误区二】假设要找的颜色点是646464,为啥是这个颜色,因为它换算成10进制以后,蓝色、绿色、红色就是100,100,100。如果相似度是0.9,那么每个颜色符合要求的就是90~110。


以上两个都是误区,那么相似度到底是怎么计算呢?


还是以相似度0.9为例,那么容差的范围就是±10%,这个10%是针对于颜色的色阶(256个等级)的。


计算公式:256*10%=25.6

这是一个颜色的,蓝绿红一共3个颜色分量,所以容差就是25.6*3=76.8


得到容差值以后,我们怎么算出颜色值的有效范围呢?


还是以646464这颜色为例,76.8这个差值怎么分呢?可以单独给蓝色,那么100+76.8=176(结果取整数部分),100-76.8=23(结果取整数部分),颜色的范围就是176464~B06464。同样的道理绿色和红色也是这样计算。


除了给单一颜色分量以外,还可以把76.8分给每一个分量,比如均分每一个颜色分量就是±25.6的。当然随意分也可以。


说到随意分,可不可以这样,比如给蓝色100,给红色-30,两个加起来是70,也在76.8这个容差范围内,这样写行不行?


答案是不行,我们说的±指的是变化趋势,3个颜色分量相加是绝对值相加,那么给蓝色100,给红色-30的结果是100+负30的绝对值,也就是130,已经超出了76.8的容差范围。


那么相似度是0.9时,有效容差范围是蓝绿红3色变化数值的绝对值相加在76.8这个范围内,就是符合要求的颜色。


总结一下,相似度的容差范围计算公式:


容差值=256*(1-相似度)*3


有效颜色:(蓝色变化量+绿色色变化量+红色变化量)<=容差值


多点找色的原理


多点找色我们还是以上一期的马里奥那张图片为例:


无论是找图也好,还是多点找色也好,其实它们都是找一个符合要求颜色点的坐标。


这句话什么意思呢?这句话重点是“找一个点坐标”,上一期我们找图其实就是找序号1那个颜色点的位置,找到和序号1相同颜色的像素点以后,再判断后面15个点,从而得到序号1的像素点坐标。


多点找色要找的那个点相对于找图就比较“随意”了,找图只能找序号1的点,而多点找色就没有这个限制了,上图中1-16号点,都可以当做找色点。


多点找色的原理:


它也是在找色范围内,逐一匹配要得到坐标那个点的颜色,如果匹配到了,接下来和找图不同,找图只能是2-16号点依次比对颜色是否相同。而多点找色的匹配规则是可以自己写。




比如上图,要获取坐标的点可以不是1号点,可以是任意点,我们以7号点为例,规则可以是这样:


7号点上一行左侧移1点和2号点是不是一样;

7号点上一行右侧移1点和4号点是不是一样;

7号点下一行左侧移2点和9号点是不是一样;

7号点下一行右侧移1点和12号点是不是一样;

7号点下二行左侧移1点和14号点是不是一样;


如果上面5个条件都满足,那么和7号点匹配一致的点,就是我们要的点,它的位置就是多点找色命令返回的坐标。


如果不满足5个条件之一,就要继续匹配7号点,循环上面的过程。


多点找色和找图的优缺点


本质上说找图命令就是多点找色的一种特殊情况,它匹配规则是矩阵式逐个匹配,就如例子中一样,需要把16个点都匹配一致。


多点找色写规则的时候也可以按照这种矩阵式匹配,那就和找图一样了。


当然我们多点找色通常是匹配几个点就行。


【优点】


多点找色由于匹配的点相较于找图少很多,所以匹配耗时也就少很多,所以多点找色要比找图速度快。


上一期有人问怎么找透明图,其实多点找色就是透明图,你可以看例子,白色部分都是不需要匹配的地方相当于图片的镂空,这也是它的优点。


【缺点】


多点找色由于找点比较少,存在误找的情况,比如要找色区域中有两块颜色相近的地方,如果多点找色选择的点正好是两个地方都有的,就会造成找色错误。


所以在用多点找色的时候,选颜色点不要太随意,尽量找具有唯一代表性的颜色,防止误找色,而且选点数量也不能太少。


找字的原理


关于找字命令的详细教程,我在基础课21课已经讲过了,它的原理和找图是一样的。


区别在于哪里,找图是全色系的匹配,找色是黑白二值化的匹配。


具体是什么意思呢?


找图的时候,我们是获取颜色点信息,然后和我们要找颜色比较是不是一样。


找字的时候,我们要先把当前要匹配像素点的颜色转成黑或者白,然后进行颜色匹配,这个相对于多了一个步骤,由于一张图有大量的像素点需要匹配,这也是为啥找字命令比找图命令慢很多的原因。


这里简单说一下黑白二值化的原理,在做字库的时候,会取一个颜色值,这个值作为基准颜色,会用白色表示,然后其它和这个颜色不一样的都用黑色表示,从而实现了黑白二值化。


考虑到一个找字的颜色可能存在细微差别,会把基准颜色+偏色,这样基准色就变成了一个范围色,使字体结构更加饱满。




关于找字这部分就说一下原理,具体操作部分就不说了,感兴趣的朋友可以看一下我的基础课第21课。

扫描二维码推送至手机访问。

版权声明:本文由第六芝士网发布,如需转载请注明出处。

本文链接:http://www.dgx666.com/post/1629.html

分享给朋友:

“「知识盲区」按键精灵找图、多点找色、找字的原理(续)” 的相关文章

2025年旺运十句诗·量子波动摸鱼版(附开光操作指南)

**一、正财暴击流** 1. **"春风得意马蹄疾"**(孟郊) 玄学解读:在工位东北角贴此句+马蹄铁emoji,可触发"项目奖金翻倍"隐藏成就 操作指南:每周四15:00用钉钉拍屏发工作群,配合「正在策马推进中」话术 **二、偏财玄学流** 2. **"柳暗花明又一村"**(陆游) 玄学解读:暗...

正式支持DirectX 12与OpenGL 4.2,摩尔线程发布驱动程序v280.90

IT之家 11 月 20 日消息,摩尔线程今日发布版本号为 v280.90 的图形显卡驱动程序。官方表示,新版驱动程序可以在 Windows 10 和 Windows 11 操作系统环境下实现对 DirectX 12 和 OpenGL 4.2 的支持:优化了 DirectX 12 模式下运行《黑神话...

Vigilante恶意软件行为怪异:修改Hosts文件以阻止受害者访问盗版网站

Sophos 刚刚报道了一款名叫 Vigilante 的恶意软件,但其行为却让许多受害者感到不解。与其它专注于偷密码、搞破坏、或勒索赎金的恶意软件不同,Vigilante 会通过修改 Hosts 文件来阻止受害者访问包括海盗湾(The Pirate Bay)等盗版资源网站。与此同时,它还会下载第二款...

如何才能激活office2010?Office 2010安装及激活的详细图文教程

现在office办公用得比较多的还是office 2010,但是有很多的小伙伴不知道怎么安装和激活,我把自己的一套方法共享给大家,希望可以帮到各位小伙伴们,不走冤枉路,我还是以图片文字的形式展示出来。第一步、安装方法首先下载microsoft Office2010,然后将下载的office2010压...

详解程序文件.DLL和.EXE 文件的区别

#.DLL 和 .EXE 文件的区别#.DLL(动态链接库)和 .EXE(可执行文件)是两种常见的文件类型,它们都属于 Windows 操作系统下的二进制文件,但有一些显著的区别:1.用途o .EXE(Executable File,执行文件):.EXE 文件是一个可执行程序,通常用来启动应用程序。...

科普:电脑自动重启的原因(一)

我们经常会碰到电脑自动重启的情况,你知道有哪些原因吗?1、病毒“冲击波”病毒发作时还会提示系统将在60秒后自动启动。木马程序从远程控制你计算机的一切活动,包括让你的计算机重新启动。清除病毒,木马,或重装系统。2、内存等硬件没有插好如果你一直没动过硬件的话,也不能排除这个原因,因为长时间的使用显卡、内...