weixin_43407975
「已注销」
2018-10-13 15:46
采纳率: 100%
浏览 1.4k

安卓图片处理-怎么样在大图中识别到小图位置?(图中搜图)

安卓图片处理-怎么样在大图中识别到小图呢

入移动端的坑,初入AS学习,直接上个例子:
例如消消乐布局,怎么样把它转换为一个二位数组,详细说明:

图片说明

这里想具体问的技术是,怎么实现在总图里找到小图,并标记下来(有时需要模糊查找,有时匹配的图有细节的小变化)?

说一下原来自己的思路:

  • ①bitmap读入图片
  • ②createScaledBitmap缩小图片
  • ③由于不会图搜图,所以getPixel()遍历像素
  • ④遍历背景灰色,确定有用部分边缘(图中红框部分)
  • ⑤根据图的宽高和刚刚确定的部分,确定下来几行几列
  • ⑥将有用部分根据几行几列进行分割
  • ⑦遍历每个分割部分的特征像素点颜色,根据颜色编码
  • ⑧最后完成数组

最后自己的思路卡在了第③步,遍历时间久耗内存,导致程序崩溃,也许还有什么最好的方法,请教大神指点~~

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • weixin_43407975
    「已注销」 2019-04-15 13:37
    已采纳

    已解决,因为元素9×9是固定的,所以直接切割出来并切成81份。
    然后有两种方式进行核对,对比元素图像:
    1.通过哈希算法进行像素对比 参考:https://blog.csdn.net/luoweifu/article/details/7733030
    2.通过提取样点进行颜色对比(我采用的这个,因为方法1误差太大)
    计算出来数据map后面就好办了,通过算法计算并提示。

    点赞 评论

相关推荐