论文部分内容阅读
伴随着互联网的快速发展,微博、微信等社交媒体的出现,每天有海量的文本、图像、音频、视频等数据在互联网上产生,其中图像的数据量已经达到PB级别。面对如此海量的图像数据,传统的图像搜索系统已不能满足实际需要,因此新型分布式图像搜索系统的研究与实现成为研究的热点。 针对该问题,研究了一种基于局部媒纹的分布式图像搜索系统,提供百万级以上规模图像的快速查询服务。平台系统主要包括索引服务器,搜索服务器,Web服务器,图片服务器和代理服务器五部分组成。系统设计充分考虑到搜索的高效性、扩展性和易存储性,采用了基于Zookeeper实现的索引自动同步和更新方法,实现了服务器的自动高效管理;通过增加代理服务器的方式,提高Web服务器和搜索服务器之间的通信效率;改进了负载均衡的策略,实现服务器更均衡地处理查询请求。在离线处理阶段,采用了基于hadoop的局部特征批量提取与索引构建方法,大幅度提高批量处理速度。 在图像局部媒纹的生成过程中,首先提取图像的SIFT特征,然后分别采用分组降维和PCA降维对特征进行转化,将长度为128的特征向量转化为32位的无符号整数,作为图像的局部媒纹。在基于媒纹的索引构建过程中,提出了基于大容量内存的索引结构,可根据查询索引快速定位到图像列表,大幅度提高查询速度;在分布式查询方面,对比了集中放置和分散放置两种不同的分布式方法,并针对不同服务器上查询时间不完全一致的问题,借鉴CPU指令流水线思想提出了改进的方法。 实验表明,采用PCA降维的方法比普通分组降维的方法在查询速度上有所提高。基于大容量内存的索引,在查询速度方面比使用Lucene构建的索引有着较大的提高。在不同的图像特征分布式方法对比中,发现分散放置的方法比集中放置的方法速度更快些。在改进分布式查询的实验中,发现借鉴CPU指令流水线实现能够有效减少图像的平均查询时间。