在屏幕上找到图像

本文关键字:图像 屏幕 | 更新日期: 2023-09-27 18:13:51

我想在屏幕上找到我的图像。我已将图像保存在我的计算机上,并使用Image.FromFile()加载。

我正在使用

创建屏幕截图
var image = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppArgb);
var gfx = Graphics.FromImage(image);
gfx.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy);
return image;

但现在我不知道如何搜索屏幕图像中的第一个图像。

我在stackoverflow上搜索了一下,发现了一些答案,但没有一个合适的例子。

因为我的c#技能不是最好的,所以我用一个基本的例子来更好地工作,然后我可以理解和玩,以了解更多关于它的知识。

谁能给我一个这样的样品?

在屏幕上找到图像

你所描述的就是模板匹配。你有一个小图像(模板),它位于一个大图像的某个地方。

有很多关于算法的信息,但我真的建议你使用库来代替。

OpenCV是一个著名的开源库,它真的很容易使用。OpenCV是用c++编写的,所以在c#环境中可能很难使用它。幸运的是,还有一个叫做EmguCV的c#移植,它也可以免费使用。

http://www.emgu.com/wiki/index.php/Main_Page