【发布时间】:2014-05-10 23:06:57
【问题描述】:
我正在使用AForge 库在使用this code example 的其他图像中查找(部分)图像。
(以下图片仅供参考)
我正在使用这个 1920x1080 像素的桌面截图:
然后我搜索并找到上面这张图片(55x557 像素):
但我将两个图像的大小调整为 25%(以获得比较速度),所以当我比较图像时,桌面截图是 480x270 px。剪切后的图像是13x14 px。
使用AForge 库,它返回我在调整大小的桌面屏幕截图中找到(剪切)图像的相对坐标,坐标为x=86, y=200。
现在我需要在我的桌面设置鼠标位置,在 VMWare 图标的中心(更确切地说是在找到的切割图像的中心),这就是我感到困惑的地方,算术运算是什么在那里设置鼠标位置?
我会记住的:
决议:
我的桌面:1920x1080
图片 1:1920x1080
在 Image1 中查找的图像:55x57
调整后的图像 1:480x270
调整大小的图像以在 Image1 中找到:13x14
在 Image1 中找到的已调整大小图像的相对坐标:
x=86,y=200
【问题讨论】:
-
第一个问题 - 你确定它找到了吗?如果您在 Photoshop 之类的工具中加载图像,它是否真的在那个位置(您有一个点错字:
x=86, x=2002 x's?)。也就是说,越大越小 4 倍,所以 x=344 y=800 似乎是正确的 -
x = (My Desktop.x / Resized Image1.x) * 相对坐标.x; y = (My Desktop.y / Resized Image1.y) * 相对坐标.y;
-
抱歉打错了,我已经改正了,是的,我确定找到了图像,我在 MSPaint 中看到了坐标,我需要澄清一下 AForge 的坐标给我对应于找到的剪切图像的左上角
-
larger/smaller 不明确 = 原始桌面是您搜索的较小桌面的 4 倍,因此使用系数 4。我想知道它是否找到不同比例的图像 - 将桌面大小调整 X% 和图像按 Y% 查找并查看是否找到
-
@Plutonix 我将相对坐标检索到
Rectangle,所以也许我可以使用矩形的Inflate方法来简化事情?...但数学不是我的
标签: c# .net vb.net math coordinates