CN109376256A - 图像搜索方法及装置 - Google Patents

图像搜索方法及装置 Download PDF

Info

Publication number
CN109376256A
CN109376256A CN201811145570.4A CN201811145570A CN109376256A CN 109376256 A CN109376256 A CN 109376256A CN 201811145570 A CN201811145570 A CN 201811145570A CN 109376256 A CN109376256 A CN 109376256A
Authority
CN
China
Prior art keywords
image
searched
original image
analysis
scale features
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811145570.4A
Other languages
English (en)
Other versions
CN109376256B (zh
Inventor
刘向阳
唐小军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BOE Technology Group Co Ltd
Original Assignee
BOE Technology Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BOE Technology Group Co Ltd filed Critical BOE Technology Group Co Ltd
Priority to CN201811145570.4A priority Critical patent/CN109376256B/zh
Publication of CN109376256A publication Critical patent/CN109376256A/zh
Priority to US16/376,207 priority patent/US11080553B2/en
Application granted granted Critical
Publication of CN109376256B publication Critical patent/CN109376256B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/54Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/30Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • G06V10/464Salient features, e.g. scale invariant feature transforms [SIFT] using a plurality of salient features, e.g. bag-of-words [BoW] representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/242Division of the character sequences into groups prior to recognition; Selection of dictionaries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Library & Information Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提出一种图像搜索方法及装置,其中方法包括:获取待搜索图像;提取待搜索图像的多尺度特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像,从而能够需要比对的原始图像数量,缩短图像搜索时间,提高搜索效率。

Description

图像搜索方法及装置
技术领域
本发明涉及图像处理技术领域,尤其涉及一种图像搜索方法及装置。
背景技术
目前的图像搜索方法,是直接将待搜索图像与图像库中的各个原始图像进行比对,确定待搜索图像对应的相似图像,比对工作量大,且比对时参考的特征较少,导致搜索时间长,搜索效率差。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的第一个目的在于提出一种图像搜索方法,用于解决现有技术中待搜索图像搜索时间长,搜索效率差的问题。
本发明的第二个目的在于提出一种图像搜索装置。
本发明的第三个目的在于提出一种图像搜索系统。
本发明的第四个目的在于提出另一种图像搜索装置。
本发明的第五个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本发明第一方面实施例提出了一种图像搜索方法,包括:
获取待搜索图像;
提取所述待搜索图像的多尺度特征;
根据所述多尺度特征,确定所述待搜索图像的哈希值;
将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
可选的,所述的方法还包括:
提取所述待搜索图像的尺度不变特征;
将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像。
可选的,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
获取原始图像;
提取所述原始图像的多尺度特征,根据所述原始图像的多尺度特征,确定所述原始图像的哈希值;
根据所述原始图像以及对应的哈希值生成索引库;所述索引库中包括:至少一个哈希桶;所述哈希桶中包括:至少一个哈希值与原始图像的对应关系;
根据所述原始图像以及对应的多尺度特征生成多尺度特征库;所述多尺度特征库中包括:至少一个原始图像与多尺度特征的对应关系。
可选的,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
提取所述原始图像的尺度不变特征;
根据所述原始图像以及对应的尺度不变特征生成尺度不变特征库;所述尺度不变特征库中包括:至少一个原始图像与尺度不变特征的对应关系。
可选的,所述提取所述待搜索图像的多尺度特征之前,还包括:
去除所述待搜索图像中的干扰信息。
可选的,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像,包括:
根据所述待搜索图像的哈希值,获取所述哈希值所属的哈希桶中各个哈希值对应的原始图像;
获取各个原始图像的多尺度特征;
针对每个原始图像,将所述原始图像的多尺度特征与所述待搜索图像的多尺度特征进行比对,确定所述原始图像与所述待搜索图像的第一相似度;
当所述第一相似度满足对应的第一阈值时,将所述原始图像确定为所述待搜索图像对应的相似原始图像。
可选的,所述将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像,包括:
根据所述待搜索图像的哈希值,获取所述哈希值所属的哈希桶中各个哈希值对应的原始图像;
获取各个原始图像的尺度不变特征;
针对每个原始图像,将所述原始图像的尺度不变特征与所述待搜索图像的尺度不变特征进行比对,确定所述原始图像与所述待搜索图像的第二相似度;
当所述第二相似度满足对应的第二阈值时,将所述原始图像确定为所述待搜索图像对应的相同原始图像。
可选的,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
针对所述原始图像,在所述原始图像中添加第一干扰信息,得到第一图像;
在所述原始图像中添加第二干扰信息,得到第二图像;所述第一干扰信息与经过干扰信息去除的待搜索图像中存在的干扰信息一致;所述第二干扰信息与未经过干扰信息去除的待搜索图像中存在的干扰信息一致;
提取所述第一图像中的多尺度特征,并进行存储;
提取所述第二图像中的多尺度特征,并进行存储;
将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像,包括:
判断所述待搜索图像是否去除过干扰信息;
若所述待搜索图像去除过干扰信息,则将所述待搜索图像的多尺度特征与所述各个原始图像对应的第一图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像;
若所述待搜索图像未去除过干扰信息,则将所述待搜索图像的多尺度特征与所述各个原始图像对应的第二图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
可选的,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之后,还包括:
显示各个相似原始图像对应的缩略图;
获取用户的选择请求,所述选择请求中包括:用户所选择的缩略图;
根据用户所选择的缩略图,获取对应的原始图像,将对应的原始图像推送给画屏进行显示。
可选的,提取所述待搜索图像的多尺度特征以及哈希值的方式为,将所述待搜索图像输入深度哈希模型,获取所述待搜索图像的多尺度特征;
所述深度哈希模型包括:至少三层卷积神经网络;中间层卷积神经网络的输出包括:多尺度特征和哈希值;最后一层卷积神经网络的输出为图像中的标签、标识两个图像是否相同的数值;
所述深度哈希模型的训练方式为,
获取训练数据;所述训练数据中包括:多条训练样本;每条训练样本中包括:两个图像、两个图像中的标签、以及标识两个图像是否相同的数值;
根据所述训练数据对所述深度哈希模型进行训练。
本发明实施例的图像搜索方法,通过获取待搜索图像;提取待搜索图像的多尺度特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像,从而能够需要比对的原始图像数量,缩短图像搜索时间,提高搜索效率。
为达上述目的,本发明第二方面实施例提出了一种图像搜索装置,包括:
获取模块,用于获取待搜索图像;
提取模块,用于提取所述待搜索图像的多尺度特征;
确定模块,用于根据所述多尺度特征,确定所述待搜索图像的哈希值;
比对模块,用于将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
可选的,所述提取模块,还用于提取所述待搜索图像的尺度不变特征;
所述比对模块,还用于将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像。
本发明实施例的图像搜索装置,通过获取待搜索图像;提取待搜索图像的多尺度特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像,从而能够需要比对的原始图像数量,缩短图像搜索时间,提高搜索效率。
为达上述目的,本发明第三方面实施例提出了一种图像搜索系统,包括:画屏、移动终端以及服务器;
所述移动终端,用于获取待搜索图像,将所述待搜索图像上传到所述服务器,获取所述服务器返回的搜索结果,并将所述搜索结果中用户所选择的图像通过所述服务器推送到画屏进行显示;
所述服务器,存储有包括至少一个哈希桶的索引库、多尺度特征库和尺度不变特征库,用于接收移动终端上传的所述待搜索图像,调用图像搜索方法搜索与所述待搜索图像对应的相同原始图像和/或相似原始图像,将所述相同原始图像和/或所述相似原始图像作为搜索结果推送给所述移动终端,并将所述搜索结果中用户所选择的图像推送到画屏进行显示;
所述图像搜索方法为如上所述的图像搜索方法。
为达上述目的,本发明第四方面实施例提出了另一种图像搜索装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述的图像搜索方法。
为了实现上述目的,本发明第五方面实施例提出了一种非临时性计算机可读存储介质,当所述存储介质中的指令被处理器执行时,实现如上所述的方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例提供的一种图像搜索方法的流程示意图;
图2为深度哈希模型的示意图;
图3为建立索引库、多尺度特征库和尺度不变特征库的流程示意图;
图4为本发明实施例提供的另一种图像搜索方法的流程示意图;
图5为后台服务器执行图像搜索方法的原理示意图;
图6为本发明实施例提供的另一种图像搜索方法的流程示意图;
图7为本发明实施例提供的一种图像搜索装置的结构示意图;
图8为本发明实施例提供的另一种图像搜索装置的结构示意图;
图9为本发明实施例提供的另一种图像搜索装置的结构示意图;
图10为本发明实施例提供的另一种图像搜索装置的结构示意图;
图11为图像搜索系统的搜索示意图;
图12为本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的图像搜索方法及装置。
图1为本发明实施例提供的一种图像搜索方法的流程示意图。如图1所示,该图像搜索方法包括以下步骤:
S101、获取待搜索图像。
本发明提供的图像搜索方法的执行主体为图像搜索装置,图像搜索装置具体可以为移动终端、服务器等硬件设备,或者硬件设备上安装的软件。本实施例中,以图像搜索装置为画屏APP对应的后台服务器为例进行说明。
本实施例中,后台服务器获取待搜索图像的方式可以为,后台服务器从画屏APP获取待搜索图像。其中,画屏APP可以调用移动终端上的摄像头对实画进行扫描、拍摄等,从而获取到待搜索图像,并将待搜索图像发送给后台服务器;另外,画屏APP也可以接收其他APP发送的待搜索图像,或者获取预存的图像作为待搜索图像。
S102、提取待搜索图像的多尺度特征。
本实施例中,多尺度特征例如可以为卷积神经网络(Convolutional NeuralNetwork,CNN)特征等。其中,后台服务器提取待搜索图像的多尺度特征的方式可以为,将待搜索图像输入深度哈希模型,获取待搜索图像的多尺度特征和哈希值。其中,深度哈希模型可以包括:至少三层卷积神经网络;中间层卷积神经网络的输出包括:多尺度特征和哈希值;最后一层卷积神经网络的输出为图像中的标签、标识两个图像是否相同的数值。例如,当数值为0时,标识两个图像相同;当数值为1时,标识两个图像不同。其中,深度哈希模型的示意图可以如图2所示,在图2中,显示了深度哈希模型的输入以及最后一层卷积神经网络的输出。
本实施例中,图像中的标签可以包括以下参数中的任意一种或者多种:类型信息、图像中的内容。其中,类型信息例如,动物、植物、风景画、人物画等。图像中的内容例如,具体的动物、人物、植物、其他物体等。
本实施例中,深度哈希模型中参数的初始值可以为图像库内已有的图像调整模型的参数,其中,图像调整模型例如对图像进行特征提取的特征提取模型等。该参数由图像库中的图像训练调整得到,具有一定的准确度,采用该参数作为深度哈希模型中参数的初始值,可以加快深度哈希模型的训练速度,提高训练得到的深度哈希模型的准确度。深度哈希模型的训练方式具体可以为,获取训练数据;训练数据中包括:多条训练样本;每条训练样本中包括:两个图像、两个图像中的标签、以及标识两个图像是否相同的数值;根据训练数据对深度哈希模型进行训练,调整深度哈希模型中的系数值。其中,深度哈希模型的主体例如可以为AlexNet神经网络。
可选的,在上述实施例的基础上,步骤102之前,所述的方法还可以包括以下步骤:去除待搜索图像中的干扰信息。其中,干扰信息可以包括以下干扰中的任意一种或者多种:背景信息、畸变信息、旋转信息等。本实施例中,通过对待搜索图像进行实画扫描来去除待搜索图像中的干扰信息。其中,实画扫描可以采用各种滤波器、畸变数学模型等来去除干扰信息。其中,滤波器例如均值滤波器、中值滤波器、自适应维纳滤波器等能够去除背景信息等噪声干扰;畸变数学模型能够去除畸变信息等干扰。
本实施例中,干扰信息的去除,能够降低待搜索图像中的干扰信息,降低干扰信息对相似度的影响,从而提高搜索效率。
S103、根据多尺度特征,确定待搜索图像的哈希值。
本实施例中,需要说明的是,深度哈希模型的中间层卷积神经网络,是先提取待搜索图像的多尺度特征,然后根据多尺度特征,确定哈希值,然后输出多尺度特征和哈希值。因此,结合深度哈希模型,就可以获取到待搜索图像的哈希值。
本实施例中,针对两个相同图像或者相似图像,对应的多尺度特征的相似度也高,因此,根据多尺度特征来确定哈希值,能够使得相同图像或者相似图像的哈希值位于同一个哈希桶中,从而可以通过对同一个哈希桶中的各图像的多尺度特征进行比对,来确定相同图像或者相似图像,而不需要对图像库中的每个图像进行多尺度特征比对,从而减少需要比对的图像的数量,缩短搜索时间,提高搜索效率。
S104、将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像。
本实施例中,后台服务器执行步骤104的过程具体可以为,根据待搜索图像的哈希值,获取哈希值所属的哈希桶中各个哈希值对应的原始图像;获取各个原始图像的多尺度特征;针对每个原始图像,将原始图像的多尺度特征与待搜索图像的多尺度特征进行比对,确定原始图像与待搜索图像的第一相似度;当第一相似度满足对应的第一阈值时,例如大于第一阈值时,将原始图像确定为待搜索图像对应的相似原始图像。其中,原始图像为可以进行画屏展示,且经过干扰信息去除,其中的干扰信息很少的图像。当原始图像中的干扰信息较少时,可以减少干扰信息对多尺度特征的影响,从而降低干扰信息对相似度计算的影响,能够提高计算得到的相似度的准确度,进而提高搜索效果。
本实施例中,原始图像的多尺度特征可以为原始图像中各个特征点的多尺度特征。后台服务器确定原始图像与待搜索图像的第一相似度的过程具体可以为,将原始图像中各个特征点的多尺度特征与待搜索图像中各个特征点的多尺度特征进行比对,获取原始图像与待搜索图像中多尺度特征相同的特征点的数量以及特征点的总数量,将多尺度特征相同的特征点的数量与总数量的比值,确定为原始图像与待搜索图像的第一相似度。
可选的,结合参考图3,在图1所示实施例的基础上,步骤104之前,所述的方法还可以包括:建立索引库、多尺度特征库和尺度不变特征库的过程,如图3所示,该过程具体可以为:获取图像库中的原始图像;提取原始图像的多尺度特征以及尺度不变特征,根据原始图像的多尺度特征,确定原始图像的哈希值;根据原始图像以及对应的哈希值生成索引库;索引库中包括:至少一个哈希桶;哈希桶中包括:至少一个哈希值与原始图像的对应关系;根据原始图像以及对应的多尺度特征生成多尺度特征库;多尺度特征库中包括:至少一个原始图像与多尺度特征的对应关系;根据原始图像以及对应的尺度不变特征生成尺度不变特征库;尺度不变特征库中包括:至少一个原始图像与尺度不变特征的对应关系。然后将索引库、多尺度特征库、以及包括所有原始图像的图像库保存到数据库中,以便后台服务器调用。其中,图像库的作用,为当后台服务器需要向画屏推送图像时,可以从图像库中获取图像并推送给画屏。
本实施例中,原始图像的数量为多个。在获取到多个原始图像以及对应的哈希值后,可以根据原始图像的哈希值,确定哈希值所属的哈希桶,然后将原始图像以及对应的哈希值添加到对应的哈希桶中,从而得到索引库。其中,每个哈希桶对应一个哈希值范围,哈希桶中包括有位于哈希值范围内的各个哈希值以及对应的原始图像,且哈希值与原始图像之间为一一对应关系。
可选的,在上述实施例的基础上,步骤104之后,所述的方法还可以包括以下步骤:显示各个相似原始图像对应的缩略图;获取用户的选择请求,选择请求中包括:用户所选择的缩略图;根据用户所选择的缩略图,获取对应的原始图像,将对应的原始图像推送给画屏进行显示。
本实施例中,后台服务器可以将各个相似原始图像对应的缩略图发送至画屏APP,由画屏APP在移动终端的界面上显示各个相似原始图像对应的缩略图,以便用户从各个缩略图中选择其中一个缩略图进行画屏显示。画屏APP在接收到用户所选择的缩略图后,向后台服务器发送携带所述缩略图的选择请求,以便后台服务器将所述缩略图对应的原始图像推送给画屏进行显示。
本发明实施例的图像搜索方法,通过获取待搜索图像;提取待搜索图像的多尺度特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像,从而能够需要比对的原始图像数量,缩短图像搜索时间,提高搜索效率。
图4为本发明实施例提供的另一种图像搜索方法的流程示意图,如图4所示,在图1所示实施例的基础上,所述的方法还可以包括以下步骤:
S105、提取待搜索图像的尺度不变特征。
本实施例中,尺度不变特征例如可以为尺度不变特征变换(Scale-invariantfeature transform,SIFT)特征等,或者为根据SIFT特征生成的聚类特征等。当尺度不变特征为根据SIFT特征生成的聚类特征时,后台服务器提取待搜索图像的尺度不变特征的方式可以为,提取待搜索图像的SIFT特征点;将SIFT特征点输入预设的词袋模型,词袋模型可以将SIFT特征点聚类为K类,从而得到待搜索图像对应的K维词袋模型特征向量。
S106、将待搜索图像的尺度不变特征与哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像。
本实施例中,后台服务器执行步骤106的过程具体可以为,根据待搜索图像的哈希值,获取哈希值所属的哈希桶中各个哈希值对应的原始图像;获取各个原始图像的尺度不变特征;针对每个原始图像,将原始图像的尺度不变特征与待搜索图像的尺度不变特征进行比对,确定原始图像与待搜索图像的第二相似度;当第二相似度满足对应的第二阈值时,将原始图像确定为待搜索图像对应的相同原始图像。
可选的,步骤106之前,所述的方法还可以包括以下步骤:获取图像库原始图像;提取原始图像的尺度不变特征;根据原始图像以及对应的尺度不变特征生成尺度不变特征库;尺度不变特征库中包括:至少一个原始图像与尺度不变特征的对应关系。
本实施例中,后台服务器执行图像搜索方法的原理具体可以如图5所示,在图5中包括:建立索引库、多尺度特征CNN库、尺度不变特征SIFT库的过程,以及图像的具体搜索过程。其中,建立索引库、多尺度特征CNN库、尺度不变特征SIFT库的过程为,获取图像库中的原始图像,提取原始图像中的SIFT特征,生成SIFT特征库;提取原始图像中的CNN特征,生成CNN特征库;根据CNN特征计算原始图像的哈希值,确定哈希值所属的哈希桶的索引,并将原始图像以及哈希值添加到对应的哈希桶中。
图像的具体搜索过程为,移动终端行安装的画屏APP扫描或拍摄获取图像,对图像进行实画扫描,去除旋转等干扰,得到待搜索图像;提取待搜索图像中的CNN特征和SIFT特征;根据CNN特征计算待搜索图像的哈希值,确定哈希值所属的哈希桶的索引,确定对应的哈希桶;对待搜索图像的CNN特征与对应的哈希桶中各原始图像的CNN特征进行相似度计算,确定相似图像;对待搜索图像的SIFT特征与对应的哈希桶中各原始图像的SIFT特征进行相似度计算,确定相同图像。
本实施例中,通过获取待搜索图像;提取待搜索图像的多尺度特征和尺度不变特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像;将待搜索图像的尺度不变特征与哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像,从而能够向用户显示相同原始图像的缩略图以及相似原始图像的缩略图,使得用户从相同原始图像的缩略图以及相似原始图像的缩略图中选择缩略图,以便获取缩略图对应的原始图像进行显示,从而增加了所显示的缩略图的数量,使得用户能够从各个缩略图中选择所需要的缩略图,从而进一步提高了搜索效率。
图6为本发明实施例提供的另一种图像搜索方法的流程示意图,如图6所示,在图1或图4所示实施例的基础上,步骤104之前,所述的方法还可以包括以下步骤:
S107、针对原始图像,在原始图像中添加第一干扰信息,得到第一图像。
S108、在原始图像中添加第二干扰信息,得到第二图像;第一干扰信息与经过干扰信息去除的待搜索图像中存在的干扰信息一致;第二干扰信息与未经过干扰信息去除的待搜索图像中存在的干扰信息一致。
S109、提取第一图像中的多尺度特征,并进行存储。
另外,后台服务器还可以提取第一图像中的尺度不变特征,并进行存储。
S110、提取第二图像中的多尺度特征,并进行存储。
另外,后台服务器还可以提取第二图像中的尺度不变特征,并进行存储。
其中,步骤107和步骤108的执行顺序可以互换,步骤109和步骤110的执行顺序可以互换,此处不做限定。
对应的,步骤104具体可以包括以下步骤:
S1041、判断待搜索图像是否去除过干扰信息。
S1042、若待搜索图像去除过干扰信息,则将待搜索图像的多尺度特征与各个原始图像对应的第一图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像。
另外,若待搜索图像去除过干扰信息,在进行尺度不变特征比对时,可以将待搜索图像的尺度不变特征与各个原始图像对应的第一图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像。
S1043、若待搜索图像未去除过干扰信息,则将待搜索图像的多尺度特征与各个原始图像对应的第二图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像。
另外,若待搜索图像未去除过干扰信息,在进行尺度不变特征比对时,可以将待搜索图像的尺度不变特征与各个原始图像对应的第二图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像。
具体地,本实施例中,后台服务器主要是通过对待搜索图像进行实画扫描来去除待搜索图像中的干扰信息。因此,若实画扫描功能成功,则待搜索图像去除过干扰信息;若实画扫描功能失败,则待搜索图像未去除过干扰信息。其中,若实画扫描功能成功,则待搜索图像与原始图像相比,存在较少的背景、较小的梯形畸变、较小的宽高比变化,因此需要为图像库内的原始图像增加少量的背景、加入较小的梯形畸变、加入较小的宽高比变化、加入一定量的随机的颜色、亮度、饱和度的变化,使得待搜索图像中的干扰与原始图像中的干扰一致,从而进一步减少干扰信息对相似度准确度的影响,提高图像搜索效果。
若实画扫描功能失败,则待搜索图像与原始图像相比,存在较多的背景、一定程度的梯形畸变、一定程度的宽高比变化,因此需要为图像库内的原始图像加入较多的背景、一定量的梯形畸变、宽高比变化、颜色、亮度、饱和度的变化,使得待搜索图像中的干扰与原始图像中的干扰一致,从而进一步减少干扰信息对相似度准确度的影响,提高图像搜索效果。
本实施例中,待搜索图像中存在一定的干扰。即使是经过干扰信息去除的待搜索图像,其中还会存在少量的干扰。由于原始图像为可以进行画屏展示,且经过干扰信息去除,其中的干扰信息很少的图像,因此,可以在原始图像中添加一定的干扰,使得待搜索图像与原始图像中的干扰一致,从而确保待搜索图像与原始图像中干扰数量的一致性,进一步降低干扰信息对相似度计算的影响,进一步提高搜索效率。
图7为本发明实施例提供的一种图像搜索装置的结构示意图。如图7所示,包括:获取模块71、提取模块72、确定模块73和比对模块74。
其中,获取模块71,用于获取待搜索图像;
提取模块72,用于提取所述待搜索图像的多尺度特征;
确定模块73,用于根据所述多尺度特征,确定所述待搜索图像的哈希值;
比对模块74,用于将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
本发明提供的图像搜索装置具体可以为移动终端、服务器等硬件设备,或者硬件设备上安装的软件。本实施例中,以图像搜索装置为画屏APP对应的后台服务器为例进行说明。
本实施例中,后台服务器获取待搜索图像的方式可以为,后台服务器从画屏APP获取待搜索图像。其中,画屏APP可以调用移动终端上的摄像头对实画进行扫描、拍摄等,从而获取到待搜索图像,并将待搜索图像发送给后台服务器;另外,画屏APP也可以接收其他APP发送的待搜索图像,或者获取预存的图像作为待搜索图像。
本实施例中,多尺度特征例如可以为卷积神经网络(Convolutional NeuralNetwork,CNN)特征等。其中,后台服务器提取待搜索图像的多尺度特征的方式可以为,将待搜索图像输入深度哈希模型,获取待搜索图像的多尺度特征和哈希值。其中,深度哈希模型可以包括:至少三层卷积神经网络;中间层卷积神经网络的输出包括:多尺度特征和哈希值;最后一层卷积神经网络的输出为图像中的标签、标识两个图像是否相同的数值。例如,当数值为0时,标识两个图像相同;当数值为1时,标识两个图像不同。
本实施例中,图像中的标签可以包括以下参数中的任意一种或者多种:类型信息、图像中的内容。其中,类型信息例如,动物、植物、风景画、人物画等。图像中的内容例如,具体的动物、人物、植物、其他物体等。
本实施例中,针对两个相同图像或者相似图像,对应的多尺度特征的相似度也高,因此,根据多尺度特征来确定哈希值,能够使得相同图像或者相似图像的哈希值位于同一个哈希桶中,从而可以通过对同一个哈希桶中的各图像的多尺度特征进行比对,来确定相同图像或者相似图像,而不需要对图像库中的每个图像进行多尺度特征比对,从而减少需要比对的图像的数量,缩短搜索时间,提高搜索效率。
可选的,在上述实施例的基础上,比对模块74具体可以用于,根据待搜索图像的哈希值,获取哈希值所属的哈希桶中各个哈希值对应的原始图像;获取各个原始图像的多尺度特征;针对每个原始图像,将原始图像的多尺度特征与待搜索图像的多尺度特征进行比对,确定原始图像与待搜索图像的第一相似度;当第一相似度满足对应的第一阈值时,将原始图像确定为待搜索图像对应的相似原始图像。其中,原始图像为可以进行画屏展示,且经过干扰信息去除,其中的干扰信息很少的图像。
本实施例中,原始图像的多尺度特征可以为原始图像中各个特征点的多尺度特征。后台服务器确定原始图像与待搜索图像的第一相似度的过程具体可以为,将原始图像中各个特征点的多尺度特征与待搜索图像中各个特征点的多尺度特征进行比对,获取原始图像与待搜索图像中多尺度特征相同的特征点的数量以及特征点的总数量,将多尺度特征相同的特征点的数量与总数量的比值,确定为原始图像与待搜索图像的第一相似度。
可选的,在上述实施例的基础上,后台服务器还可以用于,去除待搜索图像中的干扰信息。其中,干扰信息可以包括以下干扰中的任意一种或者多种:背景信息、畸变信息、旋转信息等。本实施例中,干扰信息的去除,能够降低待搜索图像中的干扰信息,降低干扰信息对相似度的影响,从而提高搜索效率。
可选的,结合参考图8,在图7所示实施例的基础上,所述的装置还可以包括:生成模块75;
其中,所述获取模块71,还用于获取原始图像;
所述提取模块72,还用于提取原始图像的多尺度特征;
所述确定模块73,还用于根据原始图像的多尺度特征,确定原始图像的哈希值;
所述生成模块75,用于根据原始图像以及对应的哈希值生成索引库;索引库中包括:至少一个哈希桶;哈希桶中包括:至少一个哈希值与原始图像的对应关系;
所述生成模块75,还用于根据原始图像以及对应的多尺度特征生成多尺度特征库;多尺度特征库中包括:至少一个原始图像与多尺度特征的对应关系。
可选的,结合参考图9,在图7所示实施例的基础上,所述的装置还可以包括:显示模块76;
对应的,所述显示模块76,用于显示各个相似原始图像对应的缩略图;
所述获取模块71,还用于获取用户的选择请求,选择请求中包括:用户所选择的缩略图;
所述获取模块71,还用于根据用户所选择的缩略图,获取对应的原始图像,将对应的原始图像推送给画屏进行显示。
本实施例中,后台服务器可以将各个相同原始图像对应的缩略图发送至画屏APP,由画屏APP在移动终端的界面上显示各个相同原始图像对应的缩略图,以便用户从各个缩略图中选择其中一个缩略图进行画屏显示。画屏APP在接收到用户所选择的缩略图后,向后台服务器发送携带所述缩略图的选择请求,以便后台服务器将所述缩略图对应的原始图像推送给画屏进行显示。
本发明实施例的图像搜索装置,通过获取待搜索图像;提取待搜索图像的多尺度特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像,从而能够需要比对的原始图像数量,缩短图像搜索时间,提高搜索效率。
可选的,在上述实施例的基础上,所述提取模块72,还用于提取待搜索图像的尺度不变特征;
所述比对模块74,还用于将待搜索图像的尺度不变特征与哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像。
本实施例中,尺度不变特征例如可以为尺度不变特征变换(Scale-invariantfeature transform,SIFT)特征等,或者为根据SIFT特征生成的聚类特征等。当尺度不变特征为根据SIFT特征生成的聚类特征时,后台服务器提取待搜索图像的尺度不变特征的方式可以为,提取待搜索图像的SIFT特征点;将SIFT特征点输入预设的词袋模型,词袋模型可以将SIFT特征点聚类为K类,从而得到待搜索图像对应的K维词袋模型特征向量。
本实施例中,比对模块74具体可以用于,本实施例中,尺度不变特征例如可以为尺度不变特征变换(Scale-invariant feature transform,SIFT)特征等,或者为根据SIFT特征生成的聚类特征等。当尺度不变特征为根据SIFT特征生成的聚类特征时,后台服务器提取待搜索图像的尺度不变特征的方式可以为,提取待搜索图像的SIFT特征点;将SIFT特征点输入预设的词袋模型,词袋模型可以将SIFT特征点聚类为K类,从而得到待搜索图像对应的K维词袋模型特征向量。
可选的,所述提取模块72,还用于提取原始图像的尺度不变特征;
所述生成模块75,还用于根据原始图像以及对应的尺度不变特征生成尺度不变特征库;尺度不变特征库中包括:至少一个原始图像与尺度不变特征的对应关系。
本实施例中,通过获取待搜索图像;提取待搜索图像的多尺度特征和尺度不变特征;根据多尺度特征,确定待搜索图像的哈希值;将待搜索图像的多尺度特征与哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像;将待搜索图像的尺度不变特征与哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像,从而能够向用户显示相同原始图像的缩略图以及相似原始图像的缩略图,使得用户从相同原始图像的缩略图以及相似原始图像的缩略图中选择缩略图,以便获取缩略图对应的原始图像进行显示,从而增加了所显示的缩略图的数量,使得用户能够从各个缩略图中选择所需要的缩略图,从而进一步提高了搜索效率。
可选的,结合参考图10,在图7所示实施例的基础上,所述的装置还可以包括:添加模块77;
所述添加模块77,用于针对原始图像,在原始图像中添加第一干扰信息,得到第一图像;
所述添加模块77,还用于在原始图像中添加第二干扰信息,得到第二图像;第一干扰信息与经过干扰信息去除的待搜索图像中存在的干扰信息一致;第二干扰信息与未经过干扰信息去除的待搜索图像中存在的干扰信息一致;
所述提取模块72,还用于提取第一图像中的多尺度特征,并进行存储;
所述提取模块72,还用于提取第二图像中的多尺度特征,并进行存储。
对应的,所述比对模块74具体可以用于,判断待搜索图像是否去除过干扰信息;若待搜索图像去除过干扰信息,则将待搜索图像的多尺度特征与各个原始图像对应的第一图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像;若待搜索图像未去除过干扰信息,则将待搜索图像的多尺度特征与各个原始图像对应的第二图像的多尺度特征进行比对,得到与待搜索图像对应的相似原始图像。
另外,所述比对模块74具体还可以用于,若待搜索图像去除过干扰信息,在进行尺度不变特征比对时,可以将待搜索图像的尺度不变特征与各个原始图像对应的第一图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像;若待搜索图像未去除过干扰信息,在进行尺度不变特征比对时,可以将待搜索图像的尺度不变特征与各个原始图像对应的第二图像的尺度不变特征进行比对,得到与待搜索图像对应的相同原始图像。
本实施例中,待搜索图像中存在一定的干扰。即使是经过干扰信息去除的待搜索图像,其中还会存在少量的干扰。由于原始图像为可以进行画屏展示,且经过干扰信息去除,其中的干扰信息很少的图像,因此,可以在原始图像中添加一定的干扰,使得待搜索图像与原始图像中的干扰一致,从而确保待搜索图像与原始图像中干扰数量的一致性,进一步降低干扰信息对相似度计算的影响,进一步提高搜索效率。
本发明还提供一种图像搜索系统,包括:画屏、所述移动终端以及与服务器;
所述移动终端,用于获取待搜索图像,将所述待搜索图像上传到所述服务器,获取所述服务器返回的搜索结果,并将所述搜索结果中用户所选择的图像通过所述服务器推送到画屏进行显示;
所述服务器,存储有包括至少一个哈希桶的索引库、多尺度特征库和尺度不变特征库,用于接收所述移动终端上传的所述待搜索图像,调用图像搜索方法搜索与所述待搜索图像对应的相同原始图像和/或相似原始图像,将所述相同原始图像和/或所述相似原始图像作为搜索结果推送给所述移动终端,并将所述搜索结果中用户所选择的图像推送到画屏进行显示;
所述图像搜索方法为如图1、图4、图6所述的图像搜索方法。
其中,图像搜索系统的搜索示意图可以如图11所示,在图11中,服务器为云服务,移动终端例如利用画屏APP调用摄像头对实体画进行拍摄,获取待搜索图像,并上传到云服务,云服务调用算法,例如图像搜索方法对数据库进行操作,搜索与待搜索图像对应的相同原始图像和相似原始图像;将搜索结果提供给画屏APP,画屏APP对用户选择的图像进行显示,或者推送给画屏进行显示。其中,数据库中包括:图像库、索引库、特征库;特征库中包括:多尺度特征库和尺度不变特征库。
本发明还提供一种图像搜索装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的图像搜索方法。
图12示出了适于用来实现本申请实施方式的示例性计算机设备的框图。图12显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器52。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统54可以用于读写不可移动的、非易失性磁介质(图12未显示,通常称为“硬盘驱动器”)。尽管图12中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块62的程序/实用工具50,可以存储在例如存储器28中,这样的程序模块62包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local AreaNetwork;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
本发明还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的图像搜索方法。
本发明还提供一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如上所述的图像搜索方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (15)

1.一种图像搜索方法,其特征在于,包括:
获取待搜索图像;
提取所述待搜索图像的多尺度特征;
根据所述多尺度特征,确定所述待搜索图像的哈希值;
将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
2.根据权利要求1所述的方法,其特征在于,还包括:
提取所述待搜索图像的尺度不变特征;
将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像。
3.根据权利要求1所述的方法,其特征在于,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
获取原始图像;
提取所述原始图像的多尺度特征,根据所述原始图像的多尺度特征,确定所述原始图像的哈希值;
根据所述原始图像以及对应的哈希值生成索引库;所述索引库中包括:至少一个哈希桶;所述哈希桶中包括:至少一个哈希值与原始图像的对应关系;
根据所述原始图像以及对应的多尺度特征生成多尺度特征库;所述多尺度特征库中包括:至少一个原始图像与多尺度特征的对应关系。
4.根据权利要求3所述的方法,其特征在于,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
提取所述原始图像的尺度不变特征;
根据所述原始图像以及对应的尺度不变特征生成尺度不变特征库;所述尺度不变特征库中包括:至少一个原始图像与尺度不变特征的对应关系。
5.根据权利要求1所述的方法,其特征在于,所述提取所述待搜索图像的多尺度特征之前,还包括:
去除所述待搜索图像中的干扰信息。
6.根据权利要求1所述的方法,其特征在于,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像,包括:
根据所述待搜索图像的哈希值,获取所述哈希值所属的哈希桶中各个哈希值对应的原始图像;
获取各个原始图像的多尺度特征;
针对每个原始图像,将所述原始图像的多尺度特征与所述待搜索图像的多尺度特征进行比对,确定所述原始图像与所述待搜索图像的第一相似度;
当所述第一相似度满足对应的第一阈值时,将所述原始图像确定为所述待搜索图像对应的相似原始图像。
7.根据权利要求2所述的方法,其特征在于,所述将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像,包括:
根据所述待搜索图像的哈希值,获取所述哈希值所属的哈希桶中各个哈希值对应的原始图像;
获取各个原始图像的尺度不变特征;
针对每个原始图像,将所述原始图像的尺度不变特征与所述待搜索图像的尺度不变特征进行比对,确定所述原始图像与所述待搜索图像的第二相似度;
当所述第二相似度满足对应的第二阈值时,将所述原始图像确定为所述待搜索图像对应的相同原始图像。
8.根据权利要求3所述的方法,其特征在于,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之前,还包括:
针对所述原始图像,在所述原始图像中添加第一干扰信息,得到第一图像;
在所述原始图像中添加第二干扰信息,得到第二图像;所述第一干扰信息与经过干扰信息去除的待搜索图像中存在的干扰信息一致;所述第二干扰信息与未经过干扰信息去除的待搜索图像中存在的干扰信息一致;
提取所述第一图像中的多尺度特征,并进行存储;
提取所述第二图像中的多尺度特征,并进行存储;
将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像,包括:
判断所述待搜索图像是否去除过干扰信息;
若所述待搜索图像去除过干扰信息,则将所述待搜索图像的多尺度特征与所述各个原始图像对应的第一图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像;
若所述待搜索图像未去除过干扰信息,则将所述待搜索图像的多尺度特征与所述各个原始图像对应的第二图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
9.根据权利要求1所述的方法,其特征在于,所述将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像之后,还包括:
显示各个相似原始图像对应的缩略图;
获取用户的选择请求,所述选择请求中包括:用户所选择的缩略图;
根据用户所选择的缩略图,获取对应的原始图像,将对应的原始图像推送给画屏进行显示。
10.根据权利要求1所述的方法,其特征在于,提取所述待搜索图像的多尺度特征以及哈希值的方式为,将所述待搜索图像输入深度哈希模型,获取所述待搜索图像的多尺度特征和哈希值;
所述深度哈希模型包括:至少三层卷积神经网络;中间层卷积神经网络的输出包括:多尺度特征和哈希值;最后一层卷积神经网络的输出为图像中的标签、标识两个图像是否相同的数值;
所述深度哈希模型的训练方式为,
获取训练数据;所述训练数据中包括:多条训练样本;每条训练样本中包括:两个图像、两个图像中的标签、以及标识两个图像是否相同的数值;
根据所述训练数据对所述深度哈希模型进行训练。
11.一种图像搜索装置,其特征在于,包括:
获取模块,用于获取待搜索图像;
提取模块,用于提取所述待搜索图像的多尺度特征;
确定模块,用于根据所述多尺度特征,确定所述待搜索图像的哈希值;
比对模块,用于将所述待搜索图像的多尺度特征与所述哈希值所属的哈希桶中的各个原始图像的多尺度特征进行比对,得到与所述待搜索图像对应的相似原始图像。
12.根据权利要求11所述的装置,其特征在于,
所述提取模块,还用于提取所述待搜索图像的尺度不变特征;
所述比对模块,还用于将所述待搜索图像的尺度不变特征与所述哈希值所属的哈希桶中的各个原始图像的尺度不变特征进行比对,得到与所述待搜索图像对应的相同原始图像。
13.一种图像搜索系统,其特征在于,包括:画屏、移动终端以及服务器;
所述移动终端,用于获取待搜索图像,将所述待搜索图像上传到所述服务器,获取所述服务器返回的搜索结果,并将所述搜索结果中用户所选择的图像通过所述服务器推送到画屏进行显示;
所述服务器,存储有包括至少一个哈希桶的索引库、多尺度特征库和尺度不变特征库,用于接收所述移动终端上传的所述待搜索图像,调用图像搜索方法搜索与所述待搜索图像对应的相同原始图像和/或相似原始图像,将所述相同原始图像和/或所述相似原始图像作为搜索结果推送给所述移动终端,并将所述搜索结果中用户所选择的图像推送到画屏进行显示;
其中,所述图像搜索方法为如权利要求1-10任一所述的图像搜索方法。
14.一种图像搜索装置,其特征在于,包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-10中任一所述的图像搜索方法。
15.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一所述的图像搜索方法。
CN201811145570.4A 2018-09-29 2018-09-29 图像搜索方法及装置 Active CN109376256B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811145570.4A CN109376256B (zh) 2018-09-29 2018-09-29 图像搜索方法及装置
US16/376,207 US11080553B2 (en) 2018-09-29 2019-04-05 Image search method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811145570.4A CN109376256B (zh) 2018-09-29 2018-09-29 图像搜索方法及装置

Publications (2)

Publication Number Publication Date
CN109376256A true CN109376256A (zh) 2019-02-22
CN109376256B CN109376256B (zh) 2021-03-26

Family

ID=65402453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811145570.4A Active CN109376256B (zh) 2018-09-29 2018-09-29 图像搜索方法及装置

Country Status (2)

Country Link
US (1) US11080553B2 (zh)
CN (1) CN109376256B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109902198A (zh) * 2019-03-11 2019-06-18 京东方科技集团股份有限公司 一种以图搜图的方法、装置及应用系统
CN110189279A (zh) * 2019-06-10 2019-08-30 北京字节跳动网络技术有限公司 模型训练方法、装置、电子设备及存储介质
CN112348016A (zh) * 2020-11-09 2021-02-09 青岛大东电子有限公司 一种智慧图片logo识别方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106909603A (zh) * 2016-08-31 2017-06-30 阿里巴巴集团控股有限公司 搜索信息处理方法及装置
US11334617B2 (en) * 2019-09-25 2022-05-17 Mercari, Inc. Paint-based image search
KR20210042752A (ko) * 2019-10-10 2021-04-20 삼성전자주식회사 이미지 백업을 수행하는 컴퓨팅 시스템 및 이미지 백업 방법
CN112765382A (zh) * 2021-01-20 2021-05-07 上海依图网络科技有限公司 图像搜索方法及其装置、介质和电子设备
CN115686868B (zh) * 2022-12-28 2023-04-07 中南大学 一种基于联邦哈希学习的面向跨节点多模态检索方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104112005A (zh) * 2014-07-15 2014-10-22 电子科技大学 分布式海量指纹识别方法
CN105787876A (zh) * 2015-12-31 2016-07-20 上海颐本信息科技有限公司 一种基于surf特征跟踪匹配的全景视频自动拼接方法
US20170053182A1 (en) * 2014-04-29 2017-02-23 Institute of Automation Chinese Academy of Science Image matching method based on cascaded binary encoding
CN107316053A (zh) * 2017-05-25 2017-11-03 华东理工大学 一种布料图像快速匹配检索方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8285118B2 (en) * 2007-07-16 2012-10-09 Michael Bronstein Methods and systems for media content control
US8719288B2 (en) * 2008-04-15 2014-05-06 Alexander Bronstein Universal lookup of video-related data
US8195689B2 (en) * 2009-06-10 2012-06-05 Zeitera, Llc Media fingerprinting and identification system
CN102687171B (zh) * 2009-10-16 2015-07-08 日本电气株式会社 人物检索装置及人物检索方法
US20110317010A1 (en) * 2010-06-24 2011-12-29 Infosys Technologies Limited System and method for tracking a person in a pre-defined area
JP5692725B2 (ja) * 2011-05-27 2015-04-01 公立大学法人大阪府立大学 近似最近傍探索に係るデータベースの登録方法および登録装置
WO2014109127A1 (ja) * 2013-01-11 2014-07-17 日本電気株式会社 インデックス生成装置及び方法並びに検索装置及び検索方法
US20150016668A1 (en) * 2013-07-12 2015-01-15 Ut-Battelle, Llc Settlement mapping systems
US20150220808A1 (en) * 2014-02-03 2015-08-06 Steven White Method for visual image detection
SG11201606424XA (en) * 2014-02-10 2016-09-29 Geenee Ug Systems and methods for image-feature-based recognition
US10599953B2 (en) * 2014-08-27 2020-03-24 Verint Americas Inc. Method and system for generating and correcting classification models
US10839006B2 (en) * 2015-05-18 2020-11-17 Oath Inc. Mobile visual search using deep variant coding
US10521693B1 (en) * 2016-12-01 2019-12-31 Massachusetts Mutual Life Insurance Company System for displaying digital media
CN109426787A (zh) * 2017-08-31 2019-03-05 杭州海康威视数字技术股份有限公司 一种人体目标轨迹确定方法及装置
US11074434B2 (en) * 2018-04-27 2021-07-27 Microsoft Technology Licensing, Llc Detection of near-duplicate images in profiles for detection of fake-profile accounts
US10775976B1 (en) * 2018-10-01 2020-09-15 Splunk Inc. Visual previews for programming an iterative publish-subscribe message processing system
US10754638B1 (en) * 2019-04-29 2020-08-25 Splunk Inc. Enabling agile functionality updates using multi-component application

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170053182A1 (en) * 2014-04-29 2017-02-23 Institute of Automation Chinese Academy of Science Image matching method based on cascaded binary encoding
CN104112005A (zh) * 2014-07-15 2014-10-22 电子科技大学 分布式海量指纹识别方法
CN105787876A (zh) * 2015-12-31 2016-07-20 上海颐本信息科技有限公司 一种基于surf特征跟踪匹配的全景视频自动拼接方法
CN107316053A (zh) * 2017-05-25 2017-11-03 华东理工大学 一种布料图像快速匹配检索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周书仁等: "融合多尺度特征的深度哈希图像检索方法", 《计算机科学与探索》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109902198A (zh) * 2019-03-11 2019-06-18 京东方科技集团股份有限公司 一种以图搜图的方法、装置及应用系统
US11481432B2 (en) 2019-03-11 2022-10-25 Beijing Boe Technology Development Co., Ltd. Reverse image search method, apparatus and application system
CN110189279A (zh) * 2019-06-10 2019-08-30 北京字节跳动网络技术有限公司 模型训练方法、装置、电子设备及存储介质
CN112348016A (zh) * 2020-11-09 2021-02-09 青岛大东电子有限公司 一种智慧图片logo识别方法

Also Published As

Publication number Publication date
US20200104632A1 (en) 2020-04-02
CN109376256B (zh) 2021-03-26
US11080553B2 (en) 2021-08-03

Similar Documents

Publication Publication Date Title
CN109376256A (zh) 图像搜索方法及装置
WO2020098250A1 (zh) 字符识别方法、服务器及计算机可读存储介质
US10936911B2 (en) Logo detection
CN105493078B (zh) 彩色草图图像搜索
CN106067024B (zh) 特征点提取装置及方法和利用其的图像匹配系统
CN107534796A (zh) 检测视频节目的片段
US20110164815A1 (en) Method, device and system for content based image categorization field
CN111553362B (zh) 一种视频处理方法、电子设备和计算机可读存储介质
CN113052868B (zh) 一种抠图模型训练、图像抠图的方法及装置
CN111489401B (zh) 一种图像颜色恒常性处理方法、系统、设备和存储介质
CN110598019B (zh) 重复图像识别方法及装置
JP2006338313A (ja) 類似画像検索方法,類似画像検索システム,類似画像検索プログラム及び記録媒体
CN110136198A (zh) 图像处理方法及其装置、设备和存储介质
CN110502664A (zh) 视频标签索引库创建方法、视频标签生成方法及装置
CN111429341B (zh) 一种视频处理方法、设备及计算机可读存储介质
CN105447190A (zh) 基于卷积神经网络的图片检索方法、装置和服务器
CN108632641A (zh) 视频处理方法及装置
CN111126262A (zh) 基于图神经网络的视频精彩片段检测方法及装置
CN111144215A (zh) 图像处理方法、装置、电子设备及存储介质
CN111080746A (zh) 图像处理方法、装置、电子设备和存储介质
CN111405360A (zh) 视频处理方法、装置、电子设备和存储介质
CN114374760A (zh) 图像测试方法、装置、计算机设备及计算机可读存储介质
CN110990617B (zh) 一种图片标记方法、装置、设备及存储介质
CN112200844A (zh) 生成图像的方法、装置、电子设备及介质
CN114565768A (zh) 图像分割方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant