Encontre uma imagem menor em outra grande e rápida
De qualquer maneira para fazer essa coisa ir mais rápido? porque agora são 6 segundos na sourceImage do tamanho de 1024x768 e do modelo 50x50. Isso está usando o AForge, se alguém conhece outras maneiras mais rápidas e simples, envie. A tarefa que estou tentando fazer é encontrar uma imagem menor em uma captura de tela. E de preferência rápido, meu limite é de 1 segundo. A imagem que estou procurando é uma imagem simples de retângulo vermelho e a captura de tela é mais complexa.
System.Drawing.Bitmap sourceImage = (Bitmap)Bitmap.FromFile(@"C:\SavedBMPs\1.jpg");
System.Drawing.Bitmap template = (Bitmap)Bitmap.FromFile(@"C:\SavedBMPs\2.jpg");
// create template matching algorithm's instance
// (set similarity threshold to 92.5%)
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching(0.921f);
// find all matchings with specified above similarity
TemplateMatch[] matchings = tm.ProcessImage(sourceImage, template);
// highlight found matchings
BitmapData data = sourceImage.LockBits(
new Rectangle(0, 0, sourceImage.Width, sourceImage.Height),
ImageLockMode.ReadWrite, sourceImage.PixelFormat);
foreach (TemplateMatch m in matchings)
{
Drawing.Rectangle(data, m.Rectangle, Color.White);
MessageBox.Show(m.Rectangle.Location.ToString());
// do something else with matching
}
sourceImage.UnlockBits(data);