C# 判斷兩張圖片是否一致的快速方法

來源:互聯網
上載者:User
C# 判斷兩張圖片是否一致的快速方法

#region 判斷圖片是否一致   /// <summary>   /// 判斷圖片是否一致   /// </summary>   /// <param name="img">圖片一</param>   /// <param name="bmp">圖片二</param>   /// <returns>是否一致</returns>   public bool IsSameImg(Bitmap img, Bitmap bmp)   {   //大小一致   if (img.Width == bmp.Width && img.Height == bmp.Height)   {   //將圖片一鎖定到記憶體   BitmapData imgData_i = img.LockBits(new Rectangle(0, 0, img.Width, img.Height), ImageLockMode.ReadOnly, PixelFormat.Format24bppRgb);   IntPtr ipr_i = imgData_i.Scan0;   int length_i = imgData_i.Width * imgData_i.Height * 3;   byte[] imgValue_i = new byte[length_i];   Marshal.Copy(ipr_i, imgValue_i, 0, length_i);   img.UnlockBits(imgData_i);   //將圖片二鎖定到記憶體   BitmapData imgData_b = img.LockBits(new Rectangle(0, 0, img.Width, img.Height), ImageLockMode.ReadOnly, PixelFormat.Format24bppRgb);   IntPtr ipr_b = imgData_b.Scan0;   int length_b = imgData_b.Width * imgData_b.Height * 3;   byte[] imgValue_b = new byte[length_b];   Marshal.Copy(ipr_b, imgValue_b, 0, length_b);   img.UnlockBits(imgData_b);   //長度不相同   if (length_i != length_b)   {   return false;   }   else   {   //迴圈判斷值   for (int i = 0; i < length_i; i++)   {   //不一致   if (imgValue_i[i] != imgValue_b[i])   {   return false;   }   }   return true;   }   }   else   {   return false;   }   }   #endregion


以上就是C# 判斷兩張圖片是否一致的快速方法的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.