论文部分内容阅读
当前我们正处在一个数据爆炸式增长的大数据时代,在大数据中,主要以半结构化和非结构化的数据为主,例如文本、图像和视频等。同时,挖掘分析这些多媒体资源也成为人们收集信息的重要途径,而对于图像数据的挖掘,图像分类是一个基本且重要的问题。近年来 BoF图像表示模型在图像分类领域得到了广泛的应用与研究,也取得了较好的性能。但是大多数的研究关注的是中等规模的图像数据集,这些数据集是能够放入单台计算内存的。显然面对当下大规模的图像数据,这些单机的处理算法是不合适的。在海量文本数据分析领域,Hadoop作为一个优秀的分布式处理平台得到了广泛应用。对于大规模的图像分类应用而言,如果能够结合Hadoop以及BoF图像模型,将基于BoF模型的图像分类技术用于大规模数据集的图像分类将是很有意义和应用前景的。 本文首先研究分析了传统的BoF构建过程以及核心算法,包括图像特征的提取与表示、视觉词典的生成以及图像的BoF表示等算法。然后通过扩展Hadoop平台的支持数据类型,使得海量图像数据能够在Hadoop平台方便地表示、存储和处理。同时将Opencv开源计算机视觉库集成到Hadoop,使得在Hadoop平台能够方便地应用一些现有的计算机视觉算法。最后研究分析了 MapReduce框架下算法设计方法和模式,结合Opencv开源计算机视觉库,提出了BoF构建过程中的图像特征提取与表示的MapReduce算法。使用Mapper内合并MapReduce算法设计模式改进了用于视觉词典构建的现有PKMeans聚类算法,在减少Map和Reduce之间传输数据量的同时提高了算法速度。分析对比了在生成 BoF图像表示时的视觉单词的加权策略,提出了生成图像的BoF表示的MapReduce算法。在研究了分布式SVM训练方法的基础上,结合SMO支持向量机训练算法,提出 Hadoop平台上的支持向量机训练的MapReduce算法。以上核心算法的实现可以处理更大规模的图像数据集。 搭建了实验平台,对比了 MapReduce算法和单机的算法之间的效率以及适用的数据集环境,同时也对比了 MapReduce算法之间的效率以及适用的数据集环境。实验结果表明,当数据集越来越大时,基于Hadoop使用BoF的图像分类技术效率更高,对分类精度影响很小,能够满足一般的图像分类需求。