所有砖块显然可以用二维数组来表示,同时要保证相同的砖块数组元素相等,例如可以使用特定数字来表示各个砖块。 手工定义这个数组费时费力,因此借助AI图片识别来实现
首先要从一张游戏截图中得到所有砖块及其对应位置,目前是使用Java API实现的图片切割,也许更好的方案是使用边缘识别
下一步从得到所有砖块的图片后下一步就是图片比对找到相同的图片,目前是使用 opencv
库来实现的,它能够计算得到一个图片相似度得分进而判定是否是同一个图片
理想情况下通过上面两个步骤就能得到最终需要的数组,不过目前图片相似度比对仍不完善,会出现把不同砖块识别为相同或者把相同砖块识别为不同的情况,因此把得到的数组保存为文件再人工校对一遍
最后一步就是从文件中读出数组进行核心的计算了