首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

200分求圖像比較算法,该如何解决

2012-04-11 
200分求圖像比較算法背景:用攝像頭攝像,我想當圖像變化時進行拍照,這就要求我能夠判斷,當前圖像和前一張圖

200分求圖像比較算法
背景:用攝像頭攝像,我想當圖像變化時進行拍照,這就要求我能夠判斷,當前圖像和前一張圖像是否相同,或者相似度有多少?

問題:有2個Bitmap的圖像,我想比較它們是否完全相同(比較相似度也可以),但是如果逐個像素比較的話,比較耗系統資源,但是又沒有想到別的好的方法,以下是我寫的比較方法,很菜
請求高手指點方法多謝

C# code
private bool BitMapBIjiao(Bitmap bitmap1, Bitmap bitmap2) {     bool BSame = true;     if (bitmap1 == null | bitmap2 == null) {         return false;         return;     }     if (bitmap1.Width == bitmap2.Width & bitmap1.Height == bitmap2.Height) {         for (int i = 0; i <= bitmap1.Width - 11; i += 10) {             for (int j = 0; j <= bitmap1.Height - 11; j += 10) {                 if (bitmap1.GetPixel(i, j) != bitmap2.GetPixel(i, j)) {                     BSame = false;                     break;                 }             }         }     }     else {         BSame = false;     }     return BSame;     } 

請高手多多指點,分不夠可以加。C#,vb.net 實現的都可以

[解决办法]
http://www.codeproject.com/KB/GDI-plus/comparingimages.aspx
[解决办法]
拍照这种单纯的比较同一个位置的像素是否相等估计是得不到的,毕竟外界因素太多
应该考虑用个阀值,认为在一定范围内都是允许的,然后再去考虑计算相似度。。。
相似度计算:满足的像素点的个数/总像素点个数
个人看法。。。
[解决办法]
帮顶
[解决办法]
好像有这样的算法!!
http://www.codeproject.com/KB/GDI-plus/comparingimages.aspx
[解决办法]
帮顶
[解决办法]

听说国外高层建筑的安保系统有人像识别技术
[解决办法]
早先有这样一个想法,把图片转换成黑白,比较灰度差。
不过只是想,没有做,不知道可不可行!
[解决办法]
看到这句代码“bitmap1.GetPixel(i, j)”就知道效率不高。

对于位图的逐点扫描得通过内存直接遍历才够快,参考Bitmap.LockBits()方法

热点排行