ho due immagini uguali, una la ritaglio e vorrei che il computer riconosca che l'immagine tagliata sia una parte di quell'altra immagine...
ho realizzato questa funzione ma non capisco perchè non funziona...
codice:
public static bool ConfrontoImmagini(Bitmap imm1, Bitmap imm2)
{
/*
imm1 è l'immagine normale
imm2 è l'immagine ritagliata
*/
int w1 = imm1.Width, h1 = imm1.Height;
int w2 = imm2.Width, h2 = imm2.Height;
bool a = false;
for (int wImm = 0; wImm != w1; wImm++)
{
for (int hImm = 0; hImm != h1; hImm++)
{
if ((w1 - wImm) - w2 >= 0 && (h1 - hImm) - h2 >= 0)
{
if (imm1.GetPixel(wImm, hImm) == imm2.GetPixel(0, 0))
for (int wImm2 = 0; wImm2 != w2; wImm2++)
{
for (int hImm2 = 0; hImm2 != h2; hImm2++)
{
if (imm1.GetPixel(wImm + wImm2, hImm + hImm2) == imm2.GetPixel(wImm2, hImm2)) a = true;
else { a = false; break; }
}
if (!a) break;
}
}
//else { wImm = w1; hImm = h1; }
if (a) break;
}
if (a) break;
}
return a;
}
Perchè non funziona?
Grazie.