私はにある画像を持っています
C:\ImageOne.png
そして、ディレクトリに20枚の画像があるとしましょう
C:\Images
ImageOne.png をこれらすべての画像と比較するにはどうすればよいですか?
例:
C:\ImageOne.png として保存された 1 つの reCaptcha 画像を取得したと想像してください。
C:\Images にあるフォルダーには、他の reCaptcha 画像があります。
次に、C:\Images 内で同一の画像を見つけることができるコードが必要です
現在のコード:
public static bool ImageCompareString(Bitmap firstImage, Bitmap secondImage)
{
MemoryStream ms = new MemoryStream();
firstImage.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
String firstBitmap = Convert.ToBase64String(ms.ToArray());
ms.Position = 0;
secondImage.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
String secondBitmap = Convert.ToBase64String(ms.ToArray());
if (firstBitmap.Equals(secondBitmap))
{
return true;
}
else
{
return false;
}
}
Bitmap img2 = new Bitmap(@"C:\ImageOne");
private void CheckCaptcha()
{
foreach (string s in Directory.GetFiles(@"C:\Images"))
{
Bitmap img1 = new Bitmap(s);
if (ImageCompareString(img1, img2) == true)
{
Logging("Identical");
}
else
{
Logging("Not Identical");
}
img1.Dispose();
}
}