CN116204671A - 图像搜索方法和装置 - Google Patents
图像搜索方法和装置 Download PDFInfo
- Publication number
- CN116204671A CN116204671A CN202310104229.9A CN202310104229A CN116204671A CN 116204671 A CN116204671 A CN 116204671A CN 202310104229 A CN202310104229 A CN 202310104229A CN 116204671 A CN116204671 A CN 116204671A
- Authority
- CN
- China
- Prior art keywords
- image
- search
- text
- searched
- database
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000001514 detection method Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- 238000013135 deep learning Methods 0.000 abstract description 2
- 239000013598 vector Substances 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 239000003814 drug Substances 0.000 description 6
- 238000012015 optical character recognition Methods 0.000 description 6
- 229940079593 drug Drugs 0.000 description 5
- 230000002441 reversible effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000002775 capsule Substances 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 206010022000 influenza Diseases 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000003612 virological effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 1
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001125 extrusion Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5846—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Library & Information Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种图像搜索方法和装置,涉及人工智能技术领域,具体地,涉及计算机视觉、图像处理、深度学习等技术领域。根据本公开的图像搜索方法包括:对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果;从所述待搜索图像中提取文字信息;基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果;以及基于所述第一搜索结果和所述第二搜索结果,输出针对所述待搜索图像的搜索结果。
Description
技术领域
本公开涉及人工智能技术领域,具体地,涉及计算机视觉、图像处理、深度学习等技术领域,更具体地,涉及可应用于光学字符识别(OCR,Optical CharacterRecognition)、智慧医疗等场景的图像搜索方法和装置。
背景技术
随着人工智能技术的飞速发展,图像搜索技术得到越来越多的关注。当用户看到感兴趣的商品或物品时,可以拍摄该商品或物品的图像,并基于拍摄图像在数据库中执行图像搜索。然而,图像搜索的召回率和准确率在很大程度上依赖于数据库商品的丰富程度。尤其当将图像搜索技术用于辅助用户识药和购药时,由于药品图库中的商品往往混杂缺失,使得图像搜索的召回率和准确率都较低。此时,用户往往需要手动地执行进一步搜索。因此,这样的搜索方式无法满足用户的使用需求,且由于需要附加操作而降低了用户体验。
发明内容
本公开提供了一种图像搜索方法和装置、电子设备、非瞬时计算机可读存储介质和计算机程序产品。
根据本公开的一方面,提供了一种图像搜索方法,包括:对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果;从所述待搜索图像中提取文字信息;基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果;以及基于所述第一搜索结果和所述第二搜索结果,输出针对所述待搜索图像的搜索结果。
根据本公开的另一方面,提供了一种图像搜索装置,包括:图像搜索模块,被配置为对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果;文字提取模块,被配置为从所述待搜索图像中提取文字信息;文本搜索模块,被配置为基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果;以及输出模块,被配置为基于所述第一搜索结果和所述第二搜索结果,输出针对所述待搜索图像的搜索结果。
根据本公开的再一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行根据本公开示例实施例所述的方法。
根据本公开的另一方面,一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据本公开示例实施例所述的方法。
根据本公开的另一方面,一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据本公开示例实施例的方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1示出了根据本公开实施例的图像搜索方法和装置的示例性系统架构;
图2示出了根据本公开示例实施例的图像搜索方法的流程图;
图3示出了根据本公开示例实施例的对待搜索图像执行图像搜索的操作的流程图;
图4A示出了根据本公开示例实施例的从待搜索图像中提取文字信息的操作的流程图;
图4B示出了根据本公开示例实施例的经由场景文本检测而检测到的文本框的示意图;
图5示出了根据本公开示例实施例的基于提取的文字信息在第二数据库中执行文本搜索的操作的一个示例的流程图;
图6示出了根据本公开示例实施例的图像搜索方法的具体示例的示意图;
图7示出了根据本公开示例实施例的图像搜索装置的示例框图;以及
图8示出了用来实现本公开实施例的电子设备的另一示例的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
如前所述,现有的仅依靠图像执行图像搜索的搜索方式具有较低的召回率和准确率,从而无法满足用户的使用需求,且降低了用户体验。因此,需要一种图像搜索方法和装置,使得能够改善搜索的召回率和准确率。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
图1示意性示出了根据本公开实施例的图像搜索方法和装置的示例性系统架构。
需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。例如,在另一实施例中,可以应用图像搜索方法和装置的示例性系统架构可以包括终端设备,但终端设备可以无需与服务器进行交互,即可实现本公开实施例提供的图像搜索方法和装置。
如图1所示,根据该实施例的系统架构10可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型。例如,有线和无线通信链路等中的至少之一。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如,搜索类应用、即时通信工具和电商软件中的至少之
终端设备101、102、103可以是能够访问搜索引擎的各种电子设备。例如,电子设备可以包括智能车辆、智能手机、平板电脑、膝上型便携计算机和台式计算机等中的至少之一。
服务器105可以是提供各种服务的服务器。例如,服务器105可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS,Virtual PrivateServer)服务中存在的管理难度大、业务扩展性弱的缺陷。需要说明的是,本公开实施例所提供的图像搜索方法一般可以由终端设备101、102、或103执行。相应地,本公开实施例所提供的图像搜索方法也可以设置于终端设备101、102、或103中。
备选地,本公开实施例所提供的图像搜索方法一般也可以由服务器105执行。相应地,本公开实施例所提供的图像搜索方法一般可以设置于服务器105中。本公开实施例所提供的图像搜索方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的图像搜索装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
需要说明的是,本公开实施例所提供的图像搜索方法一般可以由服务器105执行。相应地,本公开实施例所提供的图像搜索装置一般可以设置于服务器105中。本公开实施例所提供的图像搜索方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的图像搜索装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
备选地,本公开实施例所提供的图像搜索方法一般也可以由终端设备101、102、或103执行。相应地,本公开实施例所提供的图像搜索装置也可以设置于终端设备101、102、或103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
应注意,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。
图2是根据本公开示例实施例的图像搜索方法200的流程图。
如图2所示,根据本公开示例实施例的图像搜索方法200可以包括步骤S210至步骤S240。在步骤S210,对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果。待搜索图像可以是用户感兴趣的商品或物品的图像。例如,待搜索图像可以是通过使用例如任意型号的手机照相机等拍摄设备对商品或物品进行拍摄而获得的或者通过经由录像设备采集视频并后续对视频进行视频切帧而获得的图像数据。第一数据库可以是用于图像搜索的数据库,且存储有关于多个图像的特征图的数据。
在步骤S220,从待搜索图像中提取文字信息。在一个示例中,可以使用光学字符识别OCR技术来提取待搜索图像中包括的文字信息。文字信息可以是关于商品或物品的使用说明、品牌信息、商品标识码等。
此外,在步骤S230,可以基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果。第二数据库可以是用于文本搜索的数据库,且存储有关于多个文字信息的数据。在一个示例中,可以基于所提取的文字信息直接在第二数据库中执行文本搜索。在另一示例中,可以基于所提取的文字信息生成具有相似语义的相似文本;并基于相似文本在第二数据库中执行文本搜索。通过基于所提取的文字信息生成相似文本,能够进一步丰富搜索词,从而实现召回率的进一步提高。
步骤S240,基于第一搜索结果和第二搜索结果,输出针对待搜索图像的搜索结果。换言之,可以将文本搜索和图像搜索的融合结果作为针对待搜索图像的搜索结果而输出。在一个示例中,可以将文本搜索和图像搜索的结果按照相似度或预测分数倒序排列,并选择若干个具有最高相似度的结果(即,TopK结果)作为输出。在另一示例中,可以通过设置阈值,来获得的文本搜索和图像搜索的融合结果。例如,将第一搜索结果与阈值进行比较,并响应于第一搜索结果的数量小于阈值,输出第二搜索结果作为针对待搜索图像的搜索结果。通过将第一搜索结果和第二搜索结果融合,可以解决由于仅依靠图像搜索而导致搜索的召回率和准确率较低的问题,从而提供了一种召回率和准确率均较高的搜索方式,而无需用户的附加操作。
应注意,上述内容以分别从第一数据库执行图像搜索且从第二数据库执行文本检索为示例描述了根据本公开示例实施例的图像搜索方法,然而,本领域技术人员应清楚,取决于数据库存储的数据格式,第一数据库和第二数据库可以是相同或不同的数据库。
此外,本领域技术人员还应清楚,为了便于描述,以特定步骤编号描述了根据本公开示例实施例的图像搜索方法,然而,根据本公开示例实施例的图像搜索方法不限于以上述步骤编号所示的特定顺序来实施,一个或多个顺序描述的步骤可以是并行的步骤,也可以是以相反的顺序执行的步骤。例如,步骤S220可以是在步骤S210之后执行的、与步骤S210同时执行的、或在步骤S210之前执行的。
以上参考图2描述了一种改善召回率和准确率而无需用户附加操作的图像搜索方法,其通过将图像搜索和文本搜索相融合,解决了仅依靠图像搜索而导致搜索的召回率和准确率较低的问题。
图3示出了根据本公开示例实施例的对待搜索图像执行图像搜索的操作的流程图。
如图3所示,对待搜索图像执行图像搜索的操作可以包括:子步骤S311至子步骤S313。在子步骤S311,提取待搜索图像的特征图。例如,可以使用残差网络结构ResNet101来提取待搜索图像的特征图,其中,该残差网络结构ResNet101可以具有通过使用神经架构搜索(NAS,Neural Architecture Search)技术而确定的网络模型。在根据本公开示例实施例的图像搜索方法中,使用经由NAS技术确定的特征提取网络的模型,使得能够基于先验数据自动地设计出优选的特征提取网络的网络结构,从而节约了大量资源。因此,当用户希望通过药品图像搜索药品时,可以将药品图像输入特征提取模型ResNet101,并获得512维的图像特征。
在子步骤S312,可以将所提取的特征图与第一数据库中存储的图像特征进行比较,以获得具有相似特征的一个或多个条目。如前所述,第一数据库可以存储有关于多个图像特征的信息,例如,第一数据库可以存储有关于数量约2000万且品类约15万的药品的图像特征的数据。通过将经由子步骤S311提取的512维特征与数据库存储的2000万图像特征进行比较,可以获得最相似特征。在一个示例中,可以按照相似度将相似图像特征倒序排列,并选择最相似的K个条目输出。
在子步骤S313,可以将选择的一个或多个条目输出作为第一搜索结果,即,图像搜索结果。第一搜索结果的准确性不仅取决于特征提取网络的特征提取能力,还取决于第一数据库所存储的图像特征的丰富程度。通过多层残差网络结构ResNet101能够极大程度地提取多维度的图像特征,使得所提取的图像特征能够更真实地反应出图像的特点,从而提高了图像搜索的准确性。
然而,在第一数据库所存储的图像特征缺失或不足的情况下,还需要结合文本搜索来改善搜索的准确性和召回率。下面将结合图4A至图5来描述从待搜索图像提取文字信息并基于文字信息执行文本搜索的操作。
图4A示出了根据本公开示例实施例的从待搜索图像中提取文字信息的操作的流程图。
如图4A所示,从待搜索图像中提取文字信息的操作可以包括子步骤S421和子步骤S422。在子步骤S421,对待搜索图像执行场景文本检测,以获得与含有文字信息的文本框相关的文本框信息,从而定位文字信息所在的位置。在一个示例中,可以通过使用高效准确场景文本(EAST,Efficient and Accuracy Scene Text)检测模型对待搜索图像执行场景文本检测,以获得场景文本框信息。例如,可以使用基于18层残差网络结构ResNet18_vd的EAST检测模型对待搜索图像进行场景文本检测。
图4B示出了经由场景文本检测而检测到的文本框的示意图。如图4B所示,当使用基于18层残差网络结构ResNet18_vd的EAST检测模型对待搜索图像进行场景文本检测时,可以获得与待搜索图像中含有文字信息的文本框相关的文本框信息,例如,关于文本框401至407的位置信息。
继续参考图4A,从待搜索图像中提取文字信息的操作还可以包括子步骤S422。在子步骤S422,基于文本框信息对文本框内的区域执行文字识别,以提取文字信息。例如,可以使用联结时序分类(CTC,Connectionist Temporal Classification)识别模型对场景文本检测的结果执行文字识别,以提取文字信息。在一个示例中,可以使用基于挤压激励网络结构(SeNet,squeeze and excitation networks)的CTC文字行识别模型来识别文字信息。例如,使用34层的挤压激励网络结构SeNet34作为骨干部分,来识别图4B所示的每个文本框所包括的文字信息,例如,“清XX胶囊”、“清热解毒”、“用于病毒性感冒”等。
应注意,图4A和图4B所示的示例中,以文本框为粒度示出了对文字信息的定位与识别。然而,本领域技术人员应认识到,本申请不限于此,也可以以关键字为粒度执行对文字信息的定位与识别。
在提取文字信息之后,可以基于提取的文字信息在第二数据库中执行文本搜索。图5示出了根据本公开示例实施例的基于提取的文字信息在第二数据库中执行文本搜索的操作的一个示例的流程图。
在图5所示的示例中,在子步骤S531,基于所提取的文字信息生成具有相似语义的相似文本。例如,可以通过使用SimBERT模型来基于所提取的文字信息生成相似文本。SimBERT模型使用编码器和解码器结构,使得将输入的文本编码成固定大小的向量,并通过基于该向量执行自回归来解码生成对应的文本。在这个过程中,SimBERT模型既可以完成相似文本生成任务,还可以获取文本语义向量,从而完成相似文本检索任务。也就是说,该模型具备相似文本生成功能和相似文本检索功能。通过基于所提取的文字信息生成相似文本,能够进一步丰富搜索词,从而实现召回率的进一步提高。
在子步骤S532,基于相似文本在第二数据库中执行文本搜索。如前所述,由于SimBERT模型具备相似文本生成功能和相似文本检索功能,因此可以由SimBert模型执行相似文本生成和相似文本检索。然而,当数据库信息极度缺失时,可以使用暴力检索来基于生成的相似文本执行搜索,这样,可以容易地遍历所有可能候选项。
以上结合图5描述了基于所提取的文字信息从第二数据库中执行文本搜索的一个示例。然而,本领域技术人员应认识到,在第二数据库中执行文本搜索的方法不限于上述方法。例如,可以基于提取的文字信息直接生成文本语义向量,并基于文本语义向量执行文本检索任务。
如前所述,响应于获取到图像搜索的第一搜索结果和文本搜索的第二搜索结果,可以将第一搜索结果和第二搜索结果融合,以选择最优的搜索结果输出。
图6示出了根据本公开示例实施例的图像搜索方法的具体示例的示意图。
如图6所示,用户可以通过用拍摄设备拍摄来获取感兴趣的待搜索图像60。将待搜索图像60输入例如ResNet101的图像特征提取模型,以生成512维图像特征,如标记611所示。512维图像特征被提供给视觉嵌入层,以便生成用于表示图像特征或图像的低维稠密的向量1,如标记612所示。可以将该向量1提供给第一数据库,以便在第一数据库中进行图像搜索,如标记613所示。通过计算向量1和与存储在第一数据库中的图像特征相对应的向量之间的距离,来确定图像特征之间的相似度,从而确定第一搜索结果。
此外,图6所示的图像搜索方法还包括基于待搜索图像60提取文字信息,如标记620所示。例如,可以通过使用基于ResNet18_vd的EAST检测模型和CTC识别模型,提取诸如“清XX胶囊”、“清热解毒”和“用于病毒性感冒”等的文字信息。
所提取的文字信息可以用于相似文本生成,如标记631所示。相似文本被提供给文本嵌入层,以便生成用于表示相似文本的向量2,如标记632所示。接着,可以将该向量2提供给第二数据库,以便在第二数据库中进行文本搜索,如标记633所示。通过计算向量2和与存储在第二数据库中的文本相对应的向量之间的距离,来确定文本之间的相似度,从而确定第二搜索结果。
第一搜索结果和第二搜索结果被提供用于输出,如标记640所示。例如,可以将第一搜索结果和第二搜索结果按照相似度或预测分数倒序排列,并选择若干个具有最高相似度的结果作为输出。又例如,可以设置针对图像搜索的阈值,并将第一搜索结果与所设的阈值进行比较来确定最终的搜索结果。例如,如果第一搜索结果的数量小于阈值,则输出第二搜索结果作为针对待搜索图像的搜索结果。本领域技术人员应该理解,针对第一搜索结果和第二搜索结果的融合方式不限于此。可以根据实际应用需要,来对通过图像搜索得到的第一搜索结果和通过文本搜索得到的第二搜索结果施加不同权重,以融合得到最终输出结果。
以上结合图6描述了根据本公开示例实施例的图像搜索方法的一个具体示例。通过将第一搜索结果和第二搜索结果融合,根据本公开示例实施例的图像搜索方法能够很好地解决由于仅依靠图像搜索而导致搜索的召回率和准确率较低的问题,而无需用户的附加操作。
图7示出了根据本公开示例实施例的图像搜索装置700的示例框图。
如图7所示,图像搜索装置700可以包括图像搜索模块710、文字提取模块720、文本搜索模块730和输出模块740。
图像搜索模块710可以被配置为对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果。待搜索图像可以是用户感兴趣的商品或物品的图像。第一数据库可以是用于图像搜索的数据库,且存储有多个图像的特征图的信息。在一个示例中,图像搜索模块710还可以被配置为:提取待搜索图像的特征图;以及将所提取的特征图与第一数据库中存储的图像特征进行比较,以获得具有相似特征的一个或多个条目;以及将一个或多个条目输出作为第一搜索结果。
文字提取模块720可以被配置为从待搜索图像中提取文字信息。在一个示例中,可以使用OCR技术来提取待搜索图像中包括的文字信息。文字提取模块720可以进一步被配置为:对待搜索图像执行场景文本检测,以获得与含有文字信息的文本框相关的文本框信息;以及基于文本框信息对文本框内区域执行文字识别,以提取文字信息。
文本搜索模块730可以被配置为基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果。第二数据库可以是用于文本搜索的数据库,且存储有关于多个文字信息的数据。在一个示例中,可以基于所提取的文字信息直接在第二数据库中执行文本搜索。在另一示例中,文本搜索模块730可以被配置为:基于所提取的文字信息生成具有相似语义的相似文本;以及基于相似文本在第二数据库中执行文本搜索。通过基于所提取的文字信息生成相似文本,能够进一步丰富搜索词,从而实现召回率的进一步提高。
输出模块740可以被配置为基于第一搜索结果和第二搜索结果,输出针对待搜索图像的搜索结果。在一个示例中,输出模块740可以将文本搜索和图像搜索的结果按照相似度或预测分数倒序排列,并选择若干个具有最高相似度的结果作为输出。在另一示例中,输出模块740可以通过设置阈值,来获得的文本搜索和图像搜索的融合结果。例如,将第一搜索结果与阈值进行比较,并响应于第一搜索结果的数量小于阈值,输出第二搜索结果作为针对待搜索图像的搜索结果。
本领域技术人员应清楚,取决于数据库存储的数据格式,第一数据库和第二数据库可以是相同或不同的数据库。
以上参考图7描述了一种改善召回率和准确率而无需用户附加操作的图像搜索装置,其通过将图像搜索和文本搜索相融合,解决了仅依靠图像搜索而导致搜索的召回率和准确率较低的问题。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和步骤,例如,如图2至图6所示的方法和步骤。例如,在一些实施例中,图2至图6所示的方法和步骤可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行如上所述的方法和步骤。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与目标对象的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向目标对象显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),目标对象可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与目标对象的交互;例如,提供给目标对象的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自目标对象的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形目标对象界面或者网络浏览器的目标对象计算机,目标对象可以通过该图形目标对象界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (15)
1.一种图像搜索方法,包括:
对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果;
从所述待搜索图像中提取文字信息;
基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果;以及
基于所述第一搜索结果和所述第二搜索结果,输出针对所述待搜索图像的搜索结果。
2.根据权利要求1所述的图像搜索方法,其中,对待搜索图像执行图像搜索包括:
提取所述待搜索图像的特征图;
将所提取的特征图与所述第一数据库中存储的图像特征进行比较,以获得具有相似特征的一个或多个条目;以及
将所述一个或多个条目输出作为所述第一搜索结果。
3.根据权利要求1或2所述的图像搜索方法,其中,从所述待搜索图像中提取文字信息包括:
对所述待搜索图像执行场景文本检测,以获得与含有文字信息的文本框相关的文本框信息;以及
基于所述文本框信息对所述文本框内区域执行文字识别,以提取所述文字信息。
4.根据权利要求1至3中的任一项所述的图像搜索方法,其中,基于所提取的文字信息执行文本搜索包括:
基于所提取的文字信息生成具有相似语义的相似文本;以及
基于所述相似文本在所述第二数据库中执行所述文本搜索。
5.根据权利要求1至4中的任一项所述的图像搜索方法,其中,输出针对所述待搜索图像的搜索结果包括:
将所述第一搜索结果与阈值进行比较;
响应于第一搜索结果的数量小于阈值,输出所述第二搜索结果作为针对所述待搜索图像的搜索结果。
6.根据权利要求1至5中的任一项所述的图像搜索方法,其中,所述第一数据库和所述第二数据库是相同的数据库。
7.一种图像搜索装置,包括:
图像搜索模块,被配置为对待搜索图像执行图像搜索,以从第一数据库中获取第一搜索结果;
文字提取模块,被配置为从所述待搜索图像中提取文字信息;
文本搜索模块,被配置为基于所提取的文字信息执行文本搜索,以从第二数据库中获取第二搜索结果;以及
输出模块,被配置为基于所述第一搜索结果和所述第二搜索结果,输出针对所述待搜索图像的搜索结果。
8.根据权利要求7所述的图像搜索装置,其中,所述图像搜索模块被配置为:
提取所述待搜索图像的特征图;以及
将所提取的特征图与所述第一数据库中存储的图像特征进行比较,以获得具有相似特征的一个或多个条目;以及
将所述一个或多个条目输出作为所述第一搜索结果。
9.根据权利要求7或8所述的图像搜索装置,其中,所述文字提取模块还配置为:
对所述待搜索图像执行场景文本检测,以获得与含有文字信息的文本框相关的文本框信息;以及
基于所述文本框信息对所述文本框内区域执行文字识别,以提取所述文字信息。
10.根据权利要求7至9中的任一项所述的图像搜索装置,其中,所述文本搜索模块被配置为:
基于所提取的文字信息生成具有相似语义的相似文本;以及
基于所述相似文本在所述第二数据库中执行所述文本搜索。
11.根据权利要求7至10中的任一项所述的图像搜索装置,其中,所述输出模块被配置为:
将所述第一搜索结果与阈值进行比较;
响应于第一搜索结果的数量小于阈值,输出所述第二搜索结果作为针对所述待搜索图像的搜索结果。
12.根据权利要求7至11中的任一项所述的图像搜索装置,其中,所述第一数据库和所述第二数据库是相同的数据库。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至6中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至6中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310104229.9A CN116204671A (zh) | 2023-01-31 | 2023-01-31 | 图像搜索方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310104229.9A CN116204671A (zh) | 2023-01-31 | 2023-01-31 | 图像搜索方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116204671A true CN116204671A (zh) | 2023-06-02 |
Family
ID=86516728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310104229.9A Pending CN116204671A (zh) | 2023-01-31 | 2023-01-31 | 图像搜索方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116204671A (zh) |
-
2023
- 2023-01-31 CN CN202310104229.9A patent/CN116204671A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4040401A1 (en) | Image processing method and apparatus, device and storage medium | |
CN114612759A (zh) | 视频处理方法、查询视频的方法和模型训练方法、装置 | |
CN114429633B (zh) | 文本识别方法、模型的训练方法、装置、电子设备及介质 | |
CN115546488B (zh) | 信息分割方法、信息提取方法和信息分割模型的训练方法 | |
CN114357197B (zh) | 事件推理方法和装置 | |
CN113887615A (zh) | 图像处理方法、装置、设备和介质 | |
CN116246287B (zh) | 目标对象识别方法、训练方法、装置以及存储介质 | |
CN115098729A (zh) | 视频处理方法、样本生成方法、模型训练方法及装置 | |
CN116311298A (zh) | 信息生成方法、信息处理方法、装置、电子设备以及介质 | |
CN116204671A (zh) | 图像搜索方法和装置 | |
CN114842482A (zh) | 一种图像分类方法、装置、设备和存储介质 | |
CN114329016A (zh) | 图片标签生成方法和文字配图方法 | |
CN112580620A (zh) | 标志图片处理方法、装置、设备和介质 | |
CN115392389B (zh) | 跨模态信息匹配、处理方法、装置、电子设备及存储介质 | |
CN114299522B (zh) | 图像识别方法装置、设备和存储介质 | |
CN115828915B (zh) | 实体消歧方法、装置、电子设备和存储介质 | |
CN116258769B (zh) | 一种定位校验方法、装置、电子设备和存储介质 | |
CN115497113B (zh) | 信息生成方法、装置、电子设备以及存储介质 | |
CN113128601B (zh) | 分类模型的训练方法和对图像进行分类的方法 | |
CN116824609B (zh) | 文档版式检测方法、装置和电子设备 | |
CN116311271B (zh) | 文本图像的处理方法及装置 | |
CN114677691B (zh) | 文本识别方法、装置、电子设备及存储介质 | |
CN113408530B (zh) | 一种图像识别方法、装置、设备以及存储介质 | |
CN117095211A (zh) | 信息处理、信息分类、信息检索方法和装置 | |
CN115984888A (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 |