首页 > 编程语言 >基于感知哈希算法的以图搜图系统的设计

基于感知哈希算法的以图搜图系统的设计

时间:2024-09-01 14:21:22浏览次数:8  
标签:检索 based algorithm 搜图 image 算法 以图 哈希

摘  要
随着数字媒体和计算机网络的迅猛发展,互联网上在线图像的飞速增长,用户对图形图像的搜索需求日益提高,一种“以图搜图”的新型搜索模式应运而生。“以图搜图”是以用户提供的图形图像图片等为视觉特征基础,为用户提供互联网上相关图形图像资料检索服务,这是一种专业的搜索引擎系统。
本文主要探讨了关于图像检索相关内容。先介绍了该项技术在国内外的发展,再介绍了该项技术几种不同的实现方法,大致有基于文本的图像检索、基于内容的图像检索和基于哈希算法的图像检索。本文主要讨论了基于哈希算法的图像检索,其中包括了平均哈希算法、感知哈希算法以及差异哈希算法。并且比较了这几种算法的差异和优劣。最后实现基于感知哈希算法来达到“以图搜图”的目的,使用JAVA实现了通过感知哈希算法计算哈希值,来比较图片的相似性,根据图片的相似性,可以实现图像检索的功能。
关键词:以图搜图;图像检索;哈希算法;感知哈希算法                                                                                                                                                                                                         
Abstract
With the rapid development of digital media and computer network, Internet online image of rapid growth, increasing demand of users of graphics and image search, a "search" new search mode arises at the historic moment. "Search" is to provide users with graphic pictures as visual feature based, for the user to provide on the Internet related to graphics and image data retrieval service, which is a professional search engine system.
This paper mainly discusses the related content of image retrieval. First introduced the development of the technology at home and abroad, and then introduces the realization method of the technology of several different, generally there are text based image retrieval, content-based image retrieval and hash algorithm based image retrieval based on. In this paper, we mainly discuss the image retrieval based on Hashi algorithm, which includes the average Hashi algorithm, Hashi algorithm and differential Hashi algorithm. And compared the differences and advantages and disadvantages of these algorithms. Finally realized based on Perceptual Hashing Algorithm to achieve "search", using JAVA to realize through perceptual hashing algorithm to compute the hash value, to compare the image similarity, based on the similarity of the picture, can realize the function of image retrieval.
Keywords: search; image retrieval; Hashi algorithm; perceived Hashi algorithm

目  录
摘  要    I
Abstract    II
第1章 绪论    1
1.1 研究目的以及意义    1
1.2 国内外的研究现状    1
1.3 本文的研究内容及章节安排    3
第2章 图像检索的介绍    5
2.1基于文本的图像检索    5
2.2基于内容的图像检索    5
2.2.1基于颜色的特征提取    6
2.2.2基于纹理的特征提取    6
2.2.3基于形状的特征提取    6
2.3 基于哈希算法的图像检索    7
2.3.1平均哈希算法(aHash)    7
2.3.2感知哈希算法(pHash)    8
2.3.2差异哈希算法(dHash)    9
第3章 基于感知哈希算法实现目的    11
3.1感知哈希算法的运算过程    11
3.2离散余弦变换(DCT)    11
3.3使用JAVA实现感知哈希算法    12
3.4结果分析    17
第4章 总结与展望    18
参考文献    19
附  录    21
致  谢    32
 

标签:检索,based,algorithm,搜图,image,算法,以图,哈希
From: https://blog.csdn.net/qq_28582649/article/details/140919352

相关文章

  • 代码随想录算法day5 - 哈希表1
    题目1242.有效的字母异位词给定两个字符串*s*和*t*,编写一个函数来判断*t*是否是*s*的字母异位词。字母异位词是通过重新排列不同单词或短语的字母而形成的单词或短语,通常只使用所有原始字母一次。示例1:输入:s="anagram",t="nagaram"输出:true示例2:......
  • 哈希表hashtable课堂笔记
    /*哈希表,表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。它的每个元素都是一个存储在DictionaryEntry对象中的键/值对。键不能为空引用,但值可以。哈希表的构造函数有多种,这里介绍两种最常用的。*///(1)使用默认的初始容量、加载因子、哈希代码提供程序和比......
  • Hash哈希学习笔记
    概念:通过一个hash函数建立值与存储地址的关系原则:开小数组+冲突解决冲突越少,用时越少;可通过调整余数或优质的hash算法尽量使hash值分散,减少碰撞hash算法的构成:hash函数的初始化构造hash函数:典型的函数包括除余法H......
  • 哈希
    树状数组是个好东西,写起来也相对好看。但是操作比较局限,区间修改就掉回\(O(nlogn)\),那还不如\(O(n)\)。线段树完美的解决问题。线段树,也可以理解的一堆线段组成的树。大致如上,有一线段\([l,r]\)当\(l\ner\)可化为\([l,mid]\),\([mid+1,r]\)PS:\(mid=(l+r......
  • Python——集合基本操作以及哈希函数
    Python中的集合(Set)是一个无序的、不包含重复元素的数据结构。集合主要用于数学上的集合操作,如并集、交集、差集和对称差集等。集合使用大括号 {} 来表示,但注意空集合不能使用 {} 表示(这会创建一个空字典),而应该使用 set() 来创建。创建集合1.使用大括号 {}:这是最直接......
  • 哈希表(及简单实现)
    1、什么是哈希表(散列表)要说哈希表,我们必须先了解一种新的存储方式—散列技术。散列技术是指在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使每一个关键字都对应一个存储位置。即:存储位置=f(关键字)。这样,在查找的过程中,只需要通过这个对应关系f找到......
  • 哈希-快乐数
     解决这个问题的关键在于,判断结束遍历的条件,即当n!=1或者在循环过程中,没有出现过重复的数。 classSolution:defisHappy(self,n:int)->bool:defget_score(n):sum_=0whilen>0:end_=n%10......
  • 代码随想录 -- 哈希表 -- 四数之和
    18.四数之和-力扣(LeetCode)思路:(与三数之和类似,在外面加一层循环)    1. 先将nums 按升序排序    2. 初始状态:k=0,i= k+1,left= i+1,right= len(nums)-1        3. 进入第一层for循环:        如果 nums[k]>0andtarget>0 ......
  • 算法与数据结构——哈希算法
    哈希算法前面介绍了哈希表的工作原理和哈希冲突的处理方法。然而无论是开放寻址还是链式地址,它们只能保证可以在发生冲突时正常工作,而无法减少哈希冲突的发生。如果哈希冲突过于频繁,哈希表的性能则会急剧劣化。如下图所示,对于链式哈希表,理想情况下键值对均匀分布在各个桶中,达到......
  • 字符串哈希 详解+例题
    字符串哈希观看讲解视频:董晓算法做的笔记理论部分字符串哈希是把不同的字符串映射成不同的整数。对于一个长度为\(n\)的字符串\(s\),我们定义它的Hash函数为:\(h(s)=\Sigma^n_{i=1}\)\(s[i]\timesp^{n-i}\)\((mod\)\(m)\)例如:字符串\(abc\),他的hash函数值......