如何?“比較兩張圖片的相似性”,或者說“比較兩張圖片是否基本一致”的演算法?

來源:互聯網
上載者:User

這個演算法如果能實現, 有很多有用的地方。


        我的想法是從網路攝影機採集到的視頻, 取出其中的bmp圖片, 儲存一張靜止的圖片作為參照物, 這個時候假如有一個移動的物體從網路攝影機經過, 採集到的bmp圖片肯定與參照物不一致,這個時候就會把這張圖片儲存下來, 所以我需要一個演算法, 可以比較兩張圖片是否基本一致。


       在此列出該問題是希望大家各抒己見, 互相討論一下這個演算法的實現思路。


下面是有人提出的思路:

思路一:

有個簡單的方法就是隨機取兩幅圖上的相同座標的色素用Bitmap.GetPixel()方法。。你可以隨機取10000次或者多少。然後對比每次取的像素是否相等。。兩個變數來累計。。這樣就可以粗略的計算出兩個圖片是否相似了。


思路二:

迴圈 for  [i , j]
{
讀出圖片A 一點(像素)的 RGB 數值。
計算出灰階 YA[j][i] = 0.3*R + 0.59*G + 0.11*B
讀出圖片B 一點(像素)的 RGB 數值。
計算出灰階 YB[j][i] = 0.3*R + 0.59*G + 0.11*B
計算 一點 的 相似係數,
例如 灰階差除以兩點平均灰階:
fabs(YA[j][i]-YB[j][i]) /  ((YA[j][i]+YB[j][i])/2.0)  -- 數值越小越相似
}
有了所有點的相似係數,做統計算,例如,把相似係數分20檔,
計算落入各檔的像素點的個數--就是機率啦。
畫 機率分布圖 和 累加 機率分布圖。
當然,你可以設 累加 機率等於 幾的地方 為 相似性 判據。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.