TC官方合作论坛

标题: 终于搞明白了一个透明图的问题,分享一下 [打印本页]

作者: 花落莫相离    时间: 2011-11-24 12:25
标题: 终于搞明白了一个透明图的问题,分享一下

       大家练习找图的时候,在软件的功能描述里都会发现这句话:“根据四角的颜色判断是否为透明图”
那么什么是透明图呢?看了阿斌哥做透明图的视频明白了一点,就是为了找图更精确,把截图的背景用一种颜色抹掉,这样不管背景怎么变,都能找到你所要找的图,这就是透明图。如图

[attach]1301[/attach]图片名称:我的电脑


[attach]1302[/attach]图片名称:电脑2
于是,我就把我的电脑四个字分别截图为:电脑1(电脑1这里没传图片)和透明图电脑2并写了下边的代码看看哪个更精确。

空间 找图
功能 逻辑型 开始_点击()
整型 图像序号
整型 x,y
图像序号=图像.找图(0,0,1024,768,"e:\\电脑1.bmp",#102030,1.0,0,x,y)
如果(图像序号==0)
鼠标.移动(x+15,y)
鼠标.左键双击(1)
否则
    辅助.消息框("没有找到图像")
如果结束
返回 真
//函数返回语句
功能结束
功能 逻辑型 退出_点击()
//这里添加你要执行的代码
辅助.退出()
返回 真
//函数返回语句
功能结束
空间结束
//脚本动作:通过找图返回坐标(x,y),鼠标移动到坐标(x+15,y),然后双击鼠标左键打开我的电脑。

我做了下边的操作:
1)把“电脑1”这张图片放上去,没问题,能顺利打开我的电脑。
2)把透明图“电脑2”换上,有问题,始终提示"没有找到图像",我想,可能是图小了,就把“我的电脑”连图带字都截图,手工涂成透明图,放上去,结果还是一样。
        为什么呢,就这样一直纠结了好久,也找不到原因,想到过是色差取值不对,究竟怎么样取色差呢教程没有,什么百度呀,谷歌呀谷姐呀乱七八糟的都查了,也没有明确的说法,也不明白什么是色差。一想,干脆直接取字的色算了,把色差改成了#ffffff,运行一下,倒是不提示找不到图了,鼠标直接飞到左上角去了,打开了我的文档,抓狂了,跳过研究别的去了,一放就是七八天。今天突然想到有人说过色偏取值#000000,可以默认所有,就把透明图电脑2的色偏改成了#000000,一运行,哇咔咔,居然没问题。因为透明图是无视背景的嘛,打开我的电脑,窗口的标题栏上夜有这四个字,我接着运行程序,哇,鼠标准确的移动到了那四个字的位置。
       总结一下:对于会的可能没什么大不了的,刚接触找图的朋友可能会碰到我的情况,发出来和大家分享一下能提高学习效率。





作者: Soy_meng    时间: 2011-11-24 12:34
当图片四个顶点的颜色相同时,这个颜色会当作透明色处理。
可以理解为这个颜色不作比较。此时找图的结果为第一个有色点的坐标,而不是图片左上角的坐标
作者: TC    时间: 2011-11-24 12:53
楼上正解
作者: 792185998    时间: 2011-11-24 13:03
。。。没懂是什么意思。呵呵
作者: 花落莫相离    时间: 2011-11-24 13:22
回复 2楼Soy_meng的帖子

哎呀,真是太感谢了,请教一下,色偏取值问题怎么解决,有没有好的办法,总觉得每次填#000000,有一种牵强的感觉
作者: 章昊    时间: 2011-11-24 14:05
:*感谢分享 很正确
作者: Soy_meng    时间: 2011-11-24 15:30
色偏可以简单的理解为颜色偏差,取值的话其实就是一个相减的问题.
比如说有2个颜色值(16进制)为#f0f0f0,#feaaf0
#f0f0f0 : R = f0 ,G = f0 ,B = f0 换算为10进制也就是:R = 15×16+0 = 240,G=240,B=240
#feaaf0:R=fe ,G=aa,B=f0 换算为16进制也就是:R = 15×16+14 = 254,G=10*16+10=170,B=240
二者相减(取绝对值)的结果就是R = 14,G=70,0 换算为16进制,也就是:0e4600
那么你取色的时候用“f0f0f0-0e4600”就可以取到这2个颜色值的点

总的来说加上色差也就是取色的范围增大了
选取的是在小于(目标色【f0f0f0】+色差【0e4600】)到大于(目标色【f0f0f0】-色差【0e4600】)这个范围内的颜色值
作者: 花落莫相离    时间: 2011-11-24 16:21
回复 7楼Soy_meng的帖子

感谢您的耐心讲解,又学到了不少东西,再次感谢:D
作者: tc88    时间: 2011-11-24 16:34
值得借鉴 虽然LZ表达的不太准确
作者: 花落莫相离    时间: 2011-11-24 16:40
回复 9楼tc88的帖子

:L太实在了,伤自尊了。领会精神就好:D
作者: 254642432    时间: 2011-11-24 17:16
谢谢 楼主  分享了你的好东西  真的感谢
作者: 杨波    时间: 2011-11-28 02:07
楼上说的我头有点晕!~~~~~~~
作者: zhenchong3    时间: 2011-11-28 10:14
真心看不懂。。。。
作者: 炎殇恋曲    时间: 2011-11-28 11:50
en ,hao
作者: 568988502    时间: 2011-11-28 12:51
这星期开始学习取图样
作者: saemy    时间: 2011-11-28 14:52
:)看看
作者: zhchfei88    时间: 2011-12-5 09:44
不错。又学到一个好方法啦
作者: tlp53060217    时间: 2011-12-5 13:57
回复 7楼Soy_meng的帖子

:* 讲的明白啊




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1