我有两个bmp图片。ImageA是一个屏幕截图(例如),ImageB是其中的子集。比如,一个图标。
我想找到ImageB在ImageA中的X、Y坐标(如果存在的话)。
你知道我该怎么做吗?
我有两个bmp图片。ImageA是一个屏幕截图(例如),ImageB是其中的子集。比如,一个图标。
我想找到ImageB在ImageA中的X、Y坐标(如果存在的话)。
你知道我该怎么做吗?
Image A
是我们要查找的图像,Image B
是包含Image A
的大图像。Image A
在Image B
中的比例没有改变,并且颜色都得到了保留,您可以将Image B
放在HTML 5画布上并迭代像素数据。您将从Image A
加载第一行像素,然后迭代Image B
中的每个像素。如果一个像素相同,则会将该像素列存储在变量中,并检查下一个是否匹配。如果第一行完全匹配,则跳转到下一行并进行比较。重复此过程,直到获得匹配或达到足够数量的不匹配像素。在这种情况下,您将重置所有变量并重新开始寻找与第1行匹配的内容。Image A
在Image B
中不是完全相同的,则会出现新的复杂情况,事情变得更加复杂。如果只有比例发生变化,我们可以对方法1进行一些调整,以获得可行的解决方案。我们需要额外跟踪图像的剪切/压缩。Image A
中找到了一个距离0有20个插槽的像素,并且在Image B
中只相隔10个像素(请记住,10是我们的增量),则我们的原始图像放大了2倍。换句话说,新图像的大小是原始图像的一半。1) compression = target_width / original_width
2) compression = 20 / 10
3) compression = 2