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

大家好,我是公众号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课。

(0)

相关推荐

  • Photoshop-PS调色-黑白命令原理

    白命令由来与作用 "黑白"命令起始于PS CS2,目的是对彩色转化为灰度图像进行更加全面可控的控制. 转化为黑白的方法有图像模式转换.去色,但是这些方法是固定内置算法,用户不可以更 ...

  • 「知识包」从开球到进洞,这几个技巧值得关注!

    安卓用户直接点图片 苹果用户请长按识别二维码 安卓直接点图片,苹果扫 五一假期不知道大家都约了几天球~假期打球感觉手感不佳?不用怕!泰勒梅赞助教练.深圳星耀高尔夫学院院长孙立谦给大家准备了几个容易调整 ...

  • 资深律师揭秘:离婚不是交易,千万勿信「假离婚」!4张图必看!

    当婚姻掺杂着利益时,你是选择感情还是利益? 如果「离婚」沦为一种经济工具,当面对学区房的诱惑时,又有多少父母为了孩子去「假离婚」? 当面临限购.债务纠纷时,又有多少夫妻用「假离婚」兑换成待价而沽的筹码 ...

  • 这样建立自己的「知识体系」真的绝了

    作者 / 静静教主 排版 / 静静教主 文章字数 / 3887 阅读时长 / 6分钟 写在前面: 今天的文章很重要很重要很重要,是我最近在实践的一个「关于阅读的」超级棒的方法.大家一定要看完啊!!!一 ...

  • 帕金森病,你只知道「手抖」吗?一图掌握13种早期症状

    *仅供医学专业人士阅读参考 手抖不一定就是帕金森病,帕金森病不止有手抖! 一提起帕金森病, 很多人脑海里会不由自主地浮现这样的画面: 帕金森病与"手抖"就像是孪生兄弟一样. 的确, ...

  • 「知识分享」臭氧氧化技术的发展史及技术原理

    臭氧,化学式为O3,又称三原子氧.超氧,因其类似鱼腥味的臭味而得名,在常温下可以自行还原为氧气.比重比氧大,易溶于水,易分解.由于臭氧是由氧分子携带一个氧原子构成,决定了它只是一种暂存状态,携带的氧原 ...

  • 叹为观止的意思「知识普及」

    叹为观止的意思「知识普及」 2021-06-21 11:48·地推脑    叹为观止是一个夸张成语,表达的意思是:这个事物已经好到了极致,这是我所见到极致的美观.美景. 叹为观止用词举例     我第 ...

  • 临时身份证可以坐飞机吗「知识普及」

    临时身份证可以坐飞机吗「知识普及」 2021-06-21 11:46·地推脑    临时身份证可以坐飞机,同时临时身份证可以乘坐高铁.火车.汽车等所有的交通工具. 临时身份证     临时身份证是为了 ...

  • 身临其境是什么意思「知识普及」

    身临其境是什么意思「知识普及」 2021-06-21 11:46·地推脑     身临其境的意思是指:亲身来到某一个环境中. 身临其境用词举例     小明正在课堂中为大家讲述他五一假期旅游的地方,讲 ...

  • 连云港是哪个省「知识普及」

    连云港是哪个省「知识普及」 2021-06-21 11:44·地推脑     连云港是:江苏省的城市.     身为连云港人,个人认为从环境.舒适度.生活节奏各个方面,我们连云港还是非常不错的.说连云 ...