论文部分内容阅读
手绘草图从远古以来一直作为人们一种常用的沟通交流方式存在,近几年更是随着电子设备及触摸屏的发展而引起人们的广泛关注,也引起了关于手绘草图的一系列研究,例如手绘草图识别,手绘草图检索和基于手绘草图的3D模型检索等。其中手绘草图识别是目前很多学者研究的重点,也是本领域的基础。手绘草图的识别具有一定的难度,这主要是因为手绘草图与传统的自然图像相比有很多独特的特征,这些特征使得其识别起来比自然图像更有挑战。例如,手绘草图都是由非专业人士绘制,每个人都有自己的绘画特点和风格,这使得手绘草图具有高抽象性和夸张性。另外,手绘草图都是由黑色线条勾勒产生,没有相应的颜色和纹理信息,这也使得神经网络在进行特征学习时学习不到相应的特征而使图像识别更加艰难,影响识别准确率。虽然手绘草图有很多自身特点影响了其识别准确率,但它却有自己的优势,比如每个手绘草图都含有笔画顺序信息,且目前的数据集已将这种信息包含在内,更便于我们利用这种特征来提高手绘草图的识别准确率。在深度学习图像识别任务中,构建一个识别率高的网络除了需要一个好的网络结构之外,还需要使用大量的数据来进行网络训练,而现存的很多数据集数据规模较小,不能满足训练网络时对大量数据的要求,且当训练数据集过小的时候,网络很容易产生过拟合,影响网络的性能。现存有很多的数据增强技术,比如基本的翻转、旋转、随机切割、加噪等,可以通过这些增强技术增加训练集,提高训练模型的泛化能力。除此之外,针对特殊的数据集和图像,我们可以采用特殊的数据增强技术来扩充原数据集。在使用卷积神经网络进行图像处理时,最大的问题是训练一个网络的时间代价太高,即训练一个完整的性能较好的网络通常要花费几天甚至几个月的时间,这对于现实应用来说是一个很大的性能瓶颈。同样在我们的手绘图像识别中,训练一个性能较好的网络也需要很长的时间。随着大量高速计算硬件的出现和高性能计算领域的发展,我们可以根据CNN天然的并行性尝试将并行计算应用到CNN训练中。常见的并行技术有OpenMP、MPI、CUDA等,它们为并行计算提供了接口和平台,是目前使用最多的并行计算模型。本文针对手绘草图的特征提出了一种专门为手绘草图识别而设计的网络结构DCSN,DCSN网络是在AlexNet网络基础上进行改进,如首层采用了更大的卷积核来获取草图的结构信息,首层采用更小的步长来尽可能多的保留特征信息,通过增加网络层数加深网络深度等,这些改进有效的提高了手绘草图的识别准确率。为了解决网络的过拟合问题,进一步提高识别准确率,本文提出了两种数据增强策略,即小图形缩减策略和尾部移除策略。在进行卷积神经网络的训练过程中,我们发现网络的训练速度较慢,训练一个网络花费的时间较长,为了减少网络的训练时间,本文使用一种并行训练卷积神经网络的方法来完成DCSN网络的训练,该方法使用OpenMP和MPI混合编程模型,充分利用了OpenMP的节点内共享内存和MPI节点间数据通信的优势,完成节点间和节点内的两级并行,有效缩短了卷积神经网络训练的时间。