基于卷积神经网络的辛普森角色识别

摘 要
基于深度学习在图像分类领域的优异性能,本文研究基于图像识别技术的辛普森角色自动识别方法 。首先采集18个角色的16503幅辛普森角色图像数据集,然后在CNN模型框架下,修改最顶端的全连接层与分类输出层组成卷积网络主体结构,并采用数据增强和技术防止过拟合 。实验结果验证了卷积神经网络在辛普森角色品种图像识别任务上具有优越性能,在测试集上的卷积神经网络识别准确率达到96% 。
关键词 图像识别;辛普森角色;卷积神经网络;特征学习;
引言
《辛普森一家》是由马特·格勒宁创作,经美国福克斯广播公司出品的一部家庭动画情景喜剧片 。该剧通过展现霍默、玛姬、巴特、丽莎和麦琪一家五口的生活,从多个角度对美国文化及人们的生活方式进行幽默地讽刺,其深刻的社会意义和风趣的表现方式吸引了大批剧迷 。除主角一家五口之外,在已播出的34季的故事中,该剧一共出现了近百个角色 。基于剧中角色构建一个人物识别的神经网络确是一项有趣且典型的计算机视觉项目 。
此前,有一位忠实粉丝 Attia首先提出该项目并且已经花时间对每个人物的多张照片进行手动标注,目前已经形成了第一版数据集于平台并持续更新 。
随着深度学习在感知数据建模上的优异表现,以卷积神经网络为代表的图像分类方法逐渐成为计算机视觉领域的主流方法之一 。针对《辛普森一家人》的角色识别问题,从辛普森剧集视频中逐帧截取并分析图片,采集到20个角色且每个角色拥有400~2000张图片,以作为后端,使用Keras训练构建卷积神经网络,逐层学习人物特征来识别角色 。
出于对该剧集的喜爱和对本学期《人工智能导论》课程的学习总结,本文基于平台已有数据集,实现对《辛普森一家》20类人物角色的识别 。特此说明,由于所学知识的浅薄和能力的欠缺,本文仅是对于 Attia工作的复现与整合 。主要工作有:
(1) 在《辛普森一家人》视频中逐帧分析并采集16503幅图片,并对20类角色进行人工标注,建立分布广泛的辛普森角色图像数据集 。
(2) 实验分析了卷积神经网络方法在辛普森人物识别上的准确率,并对卷积神经网络的泛化性能进行了实验分析 。
1 数据预处理
辛普森角色图像采集与人工标记是建立辛普森人物角色识别模型的基础 。本节主要介绍辛普森人物角色图像数据集的构建过程 。
1.1 数据采集
辛普森一家数据集主要从《辛普森一家》第4至第24季节中提取,包含20个角色,具体信息如表1所示,每个角色包括大约1000张图像,角色可能不是在每张图像都居中的,有时也会与其他角色在一起,但还是图像中最重要的部分 。
表1 不同角色图像个数
图1. 20个角色实例图像
1.2 数据增强
为了提高卷积神经网络模型的泛化能力,对每幅角色图像通过旋转、平移、扭曲、缩放、翻转等传统数字图像处理方法进行随机变换以扩充样本个数 。通过随机变换生成的角色图像大量扩充了数据集,使样本分布更广泛 。
2 神经网络模型 2.1 网络结构
本文采用具有ReLU激活的前馈4个卷积层 。如图2所示 。然后是一个完全连接的隐藏层的网络构建《辛普森一家》角色识别模型,使用层来正则化并避免过度拟合,输出层使用激活来输出每个类的概率 。
图2 模型整体结构图
2.2 损失函数

基于卷积神经网络的辛普森角色识别

文章插图
辛普森角色识别属于多分类任务,本文选用交叉熵函数作为模型的损失函数,用于评估卷积神经网络预测输出的类别概率分布与真实分布之间的差异,交叉熵损失函数对于不均衡的样本对网络的准确率的消极影响具有较好的抑制作用 。