本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

wzatv:【组图】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

时间:2017-03-19 17:06来源:天下彩论坛 作者:118开奖 点击:
△ Who’s that Pokmon? 王新民 编译自 博客Journal of Geek Studies 量子位QbitAI 出品 还记得去年异常火爆,然而最终也没能入华的Pokmon Go么?我们今天要讲的,就和《口袋妖怪》有关。 这一系

  

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  Who’s that Pokémon? 王新民 编译自 博客Journal of Geek Studies

  量子位·QbitAI 出品

  还记得去年异常火爆,然而最终也没能入华的Pokémon Go么?我们今天要讲的,就和《口袋妖怪》有关。

  这一系列游戏是由任天堂发行的,官方名字叫精灵宝可梦,可以说是近20多年来世界上第二畅销的电子游戏(第一当然是超级马里奥),现在已经发行到第七世代,精灵数量也从第一代的151只增加到了802只。

  玩家在游戏中扮演着精灵训练师的角色,捕捉精灵然后与它们并肩作战。

  802只精灵不知道有没有人认得全,反正量子位编辑们只认识比卡丘等等最常见的,比如说初学者系列:

  

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  △ 图1:妙蛙种子、小火龙和杰尼龟(从左到右)

  就算能认全802只也还没完。这些小精灵们,每只都具有一两种特殊的属性,来表明其“元素亲和力”,当它们对抗其他属性的精灵时都存在自己的优势及弱点。这种设定就像是复杂版的石头剪刀布,构成了战斗系统的基础,大大提高了游戏的趣味性(和记忆难度)。如下图所示,最新版本口袋妖怪共有18种属性:

  

  △ 图2:18种口袋妖怪的属性,用它们常用背景颜色来进行区分

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

来个中文版

  想不起来这只小精灵是什么属性,我会去求助精灵图鉴,不过一位认真好学的外国Geek想到了卷积神经网络

  他写了一篇博客文章,通过卷积神经网络ConvNets实现口袋妖怪中精灵属性的分类任务,该网络可通过某个精灵的图像来判断该游戏精灵的属性。

  他在博客中详细介绍了数据集构建、预处理过程和训练步骤,以及分析所选模型的性能指标,同时在GitHub上公开了所有的数据,实现代和分析结果。

  在公众号会话界面回复“口袋妖怪”,我们会把英文版PDF、GitHub地址全部发给你。 以下内容译自博客

  Journal of Geek Studies 数据预处理 数据集特征

  为了训练网络模型,我在Veekun(https://veekun.com/)上获得了所有游戏精灵的数据集。这个数据集包括了游戏第一代到第五代出现的精灵。后来发布的第六、七代游戏中有新的精灵,但这些精灵使用了三维动画模型,从游戏中提取精灵图像比较困难,机器学习的方法不支持对这种格式进行训练。因此在本文中,我们将只使用Pokémon前五代所推出的649个精灵图像。

  

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  △ 图3:三只关都地区的初学者精灵,在历代游戏中的变化

  我们可以看到,由于游戏机硬件和功能的不同,游戏中的原画精细程度不同。在任天堂的Game Boy游戏机里,第一代版本的每一个精灵几乎没有色调变化,但是数据集中提供了一些色调信息,如Bulbasaur是绿色的,Charmander是红色的,Squirtle是蓝色的。从Game Boy到Nintendo DS,我们发现随着版本的更新,小精灵的精细程度突飞猛进,不只色调有了变化,形状都不太一样了。

  同时,我们遇到了图像分类任务中的一个典型问题,即图像具有不同的分辨率。虽然所有图像的长宽比都是1:1,但是请注意看上图中每个子画面上的边框刻度,在第一代游戏中,图像还是40像素宽,到第五代已经增加到96像素。

  此外,所有精灵在每个图像中的所占空间也不尽相同。早期版本的精灵似乎填充了图像中的更大空间。在同一个版本中,随着精灵的进化,其大小也会发生相应的变化。

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  △ 图4:第五代游戏中,随着妙蛙种子进化成妙蛙草、妙蛙花,它的体型也在增大,占据图片空间的比例也随之增大 图像居中

  当我们应用计算机视觉技术来识别图像中的主要对象,需要确定它的边界框,并将图像进行居中处理,其步骤是:

  1.将彩色图像转换成灰度图;

  2.用Sobel滤波器处理图像,突出精灵的轮廓。Sobel滤波器是一个3×3的卷积核,它能够通过图像的梯度,得到主体的轮廓坐标;

  3.填充图像中的空白,获得精灵的轮廓;

  4.计算轮廓中能够包含所有像素的最小面积;

  5.根据精灵轮廓确定方形边界框的大小;

  6.将方形边界框调整为64x64像素;

  

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  △ 图5:对小精灵图像居中处理的完整步骤

  在执行上述步骤后,我们获得主体填充率最大化的精灵图像。这个过程是基于Python的图像处理库skimage来进行实现的。

  针对精灵的居中处理,这种方法是非常有效的。因为我们要处理图片很简单,由精灵形象和白色背景构成。

  最后,我们用这种方法处理了所有的精灵图像。

  

wzatv:【j2开奖】看图猜口袋妖怪属性,这个神经网络可能比你强!(教程)

  △ 图6:多个第五代精灵居中后的结果 目标变量

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容