| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 10611 人关注过本帖
标题:2张图片如何对比的问题
取消只看楼主 加入收藏
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
B图是人工截取的,用zinking的方法是可行的 我想问问大家,A图和B图之间像素对比该用什么方法呢 难道说是像素值之间的加减吗 还是它有现成的函数呢, 我找到了读取一个像素的函数, 可没有找到读取一个整图像素阵列的函数 哪位大哥能告诉我A图和B图之间像素对比该用什么方法读取一个整图像素阵列的函数是什么呢.

2005-10-02 16:24
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
思路已经明确,
可是要我把程序写出来,我还没有那样的本事,
我在网上找了几天,连个例题都没有,
我写不出来,
不知道哪位大哥愿意把这个程序写出来供大家参考学习呢
能有详细解释就更好了,

2005-10-03 12:58
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]
我们可以让查找的用户查找图片的时候就给出规则的矩阵图。
这样行不行呢
[/QUOTE]
当然可以的,象我一样,自己先截取小老虎的像素矩阵,
然后在和大图对比,
而且让大家自己截取矩阵小图
灵活性有高,

2005-10-03 15:11
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]我在前面的帖子里已经说了,图像格式中最好处理的就是BMP 格式,而BMP格式中 MONO 是很特殊的一种。所谓MONO就是黑白,也就是说只有两种颜色,黑和白。 黑就意味着没有颜色,所以用0 来表示,那么白当然就用1来表示了。这样一来,文件的大小就大大缩小了。我们只是要知道某个图片在另外一副图片中的位置,所以图片的色彩,我们不敢兴趣。所以第一步是把图片转换成 BMP的MONO,接下来呢?关键的地方就来了。。。

我只讲一个单词,能不能明白就看大家的悟性了。这个单词就是 partpicture.
[/QUOTE]

我抓的就是BMP格式的,如果把图变成黑白在互相比较的话,处理的数据量肯定会大大减少.
我担心会不会降低识别率,辨认不出来咋办.
比如小老虎,你看它的裤子是深红色的,在这张大图里就它是那一种颜色.
如果抓住了这个特殊的颜色像素,绝对能辨认的很精确,
但是如果用黑白灰度辨认的话,可能会出现辨认失误的现象.
最后,关键的程序算法,我实在写不出来,我正把老虎的像素用十六进制编辑器分解呢,
可我还是写不出它的算法来,
我很希望有人带我做完着个题,希望斑竹愿意不

[此贴子已经被作者于2005-10-3 17:03:42编辑过]



2005-10-03 17:00
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]2。为在中国实现自由和民主而奋斗,反对任何人,任何集团,任何政党凌驾于他人之上[/QUOTE]
这句话加的最符合现实了,我早就说过,腐败的根源是官僚,官僚是根源是专政.可我一直不敢说出来,怕坐牢呀................

拼音我也能看懂,只是不给代码,就等于没有例题,没有例题做参考,
我实在不知道该咋下手,
别说半年,就是生生世世我也只能在想法中徘徊,无从下手呀
我编程刚学了不久,动手能力很差,正在琢磨像素获取函数的用法呢.
强烈希望斑竹给点代码,已作为我的指明灯~~~
partpicture我认真的想了,我觉得我门大家的思路是正确,尽管可能还不够简单直接快捷
起码是可行的,
只是代码问题才是我急需要掌握的知识
看来我真是没有什么悟性

[此贴子已经被作者于2005-10-4 17:38:22编辑过]



2005-10-04 17:06
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
说的是,政治的事情以后还是少说,不然会牵连整个论坛的. 至于BMP 的格式,我早就在学习了,它的存储格式, 包括位图文件头:(占用14个字节,前2个字节如果是424D,转换成ASCII码就是BM的意思,就是说这个图是BMP格式了,在下面4个字节表示位图文件的总字节数,在下来4字节是保留字,一般是00000000.在下来4字节表示位图阵列的起始位置), 信息头:(占用40个字节,分别表示位图的高度,宽度,分辨率,色彩级别等) 和位图阵列:(存储方式是由下到上,由左到右的方式).用的是16进制.16位以上的图象是没有颜色表的. 这些基础知识我还是懂的的,这么多天了,我是下了一番工夫的. 我所缺的知识是不知道如何运用像素读取函数,确切说是,我没有找到一个完整的例题,都是只给个函数公式.我实在不知道如何调用它们. 如果能有能有一个读取位图的完整代码的话,我想我绝对用不了你说的一年时间, 就能把它融会贯通了,不过有点向在窃取人家成果的味道. 位图格式我明白了,下一步大概就是如何读取位图了把,还请斑竹继续指点下一步该咋做

[此贴子已经被作者于2005-10-4 23:42:31编辑过]


2005-10-04 23:25
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]既然BMP格式你清楚了。接下来便是根据小图和大图来确定需要多少partpicture. 比如大图的尺寸为 x*y 小图的尺寸为 a*b 那么partpicture 的个数为 w * h; 其中 w = ((int) (float)x/(float)a + 0.5) ; h = ((int) (float)y/(float)b + 0.5); 如果我们建立了一个PartPic 的类,那么我们现在就可以开辟一个二维PartPic的数组。 代码这样:PartPic pp[h][w]; 然后我们将大图分割成 a*b 的PartPic, 并放入 那个数组中. 接下来就是比较了. 这比较里面还有很多技巧. 如果你明白了我上面的话,那么现在你就要写那个PartPic的class 你先想想这个class 怎么写, 把你写的给我看看, 我再来跟你说下一步怎么做[/QUOTE] 给我点时间,我的编程水平太差,得好好的理解你说的话.可能要久点. [QUOTE]1。灰阶化提高不了多少比较速度,比对准确性与B图样本有关。 2。推翻了我前面贴子的想法,若在1024*1024中查100*100既不需要10分钟,也不能在三秒之内完成。 [/QUOTE] 我测试了下,小老虎找的很正确,可找那个骑鹿的图片,就有点错误了,和 zinking斑竹指出的错误的地方一样速度的却无论是灰度化还是彩色化,感觉速度是一样的,有点疑惑.不过速度还算不错,我的电脑是800兆.用了4--6秒. knocker斑竹,能不能把你代码发出来给大家做学习用呢,虽然有点窃取人家成果的感觉,但是没有例题,实在太难做了.kai斑竹留的作业我还没做好呢,急需要参考资料. 我的油箱是yaoguai2005@163.com发到我的油箱里也行呀,斑竹行行好把

[此贴子已经被作者于2005-10-5 14:55:27编辑过]


2005-10-05 14:32
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE] 原码就不发了,我用的是BCB,与你用的VC代码相差很多。这次我得看kai的源码我才能发源码^_^
[/QUOTE]

神仙斗法,可苦了我了,没例题了.
要不你偷偷的给我发一份到我的油箱里.我假装不知道不和他们说就是了

2005-10-05 16:09
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]我不知道你现在的基础如何,如果你有一定的C语言的基础,那么就可以写Windows程序,当然Windows程序有自己的一个套路,熟悉它也需要一定的时间。如果你从来没有接触过Windows程序,那么上面的程序很有可能你会看不懂。

我在这个板块以前写过一个帖子,是关于Windows编程的,你可以先看一下那个帖子,先熟悉一下WindowsPrograming。那个帖子的名称为: all about windowsprograming
针对你的这个题目,我们下一步要做的是打开一幅 BMP 文件,在屏幕上显现出来。你先自己尝试一下,写个程序打开 BMP 文件,给你一个星期的时间够不够?

现在的代码都是C语言风格的,不过我会慢慢将你引到C++风格上来。当然不是用MFC,我们这个所写的程序完全用的是WinApi, 与MFC 无关。
[/QUOTE]

你这个师傅真是好的没话说了,我正在下载VC++NET2003,今天就可以下完了,马上就装上用.
我会点C语言,刚开始就学的它.C++我是不行的,语法略懂,编程就不行了MFC我更是不行,估计一个礼拜够用了.我下午装好2003就看你的程序.有你的指点,我会努力的.

2005-10-06 10:42
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
[QUOTE]为了编个windows 程序就下.net感觉有点....而且.n et用起来好像不太顺手哦!!!![/QUOTE]
下了一天,终于下完了,将近2G,我只装了个VBNET和VCNET,
真是被你说对了,的却很不顺手,竟然我连如何生成EXE文件都不知道.把写好的代码复制到它的代码栏里,它竟然都不给编译,在DEV++里编译好好的,在这里却出错,我明天要去买本2003NET的书看了,
没办法,VC6.0装不上呀,只好这样了,真搞不明白VC6.0他到底想要什么

2005-10-06 20:41
快速回复:2张图片如何对比的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved