CN113343020A - 基于人工智能的图像处理方法、装置及电子设备 - Google Patents
基于人工智能的图像处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113343020A CN113343020A CN202110900782.4A CN202110900782A CN113343020A CN 113343020 A CN113343020 A CN 113343020A CN 202110900782 A CN202110900782 A CN 202110900782A CN 113343020 A CN113343020 A CN 113343020A
- Authority
- CN
- China
- Prior art keywords
- image
- training
- coding
- quantization
- processing
- 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
Links
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 39
- 238000003672 processing method Methods 0.000 title claims abstract description 24
- 238000013139 quantization Methods 0.000 claims abstract description 274
- 238000012545 processing Methods 0.000 claims abstract description 251
- 238000000605 extraction Methods 0.000 claims abstract description 111
- 238000000034 method Methods 0.000 claims abstract description 89
- 238000012549 training Methods 0.000 claims description 316
- 230000008569 process Effects 0.000 claims description 56
- 238000012216 screening Methods 0.000 claims description 24
- 230000015654 memory Effects 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000007499 fusion processing Methods 0.000 claims description 11
- 230000003213 activating effect Effects 0.000 claims description 4
- 230000004927 fusion Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 31
- 238000001994 activation Methods 0.000 description 29
- 230000004913 activation Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 12
- 238000010606 normalization Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000011176 pooling Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000005070 sampling Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- JLYXXMFPNIAWKQ-UHFFFAOYSA-N γ Benzene hexachloride Chemical compound ClC1C(Cl)C(Cl)C(Cl)C(Cl)C1Cl JLYXXMFPNIAWKQ-UHFFFAOYSA-N 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229960001948 caffeine Drugs 0.000 description 1
- 125000004432 carbon atom Chemical group C* 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- RYYVLZVUVIJVGH-UHFFFAOYSA-N trimethylxanthine Natural products CN1C(=O)N(C)C(=O)C2=C1N=CN2C RYYVLZVUVIJVGH-UHFFFAOYSA-N 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Library & Information Science (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种基于人工智能的图像处理方法、装置、电子设备及计算机可读存储介质;方法包括:对待查询图像进行特征提取处理,得到图像特征;对待查询图像的图像特征进行量化编码处理,得到图像量化编码;对待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;根据待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;根据待查询图像的图像特征对多个相似候选图像进行相似查询处理,得到待查询图像的相似图像。通过本申请,能够在保证相似查询精度的基础上,提升相似查询效率。
Description
技术领域
本申请涉及计算机视觉技术,尤其涉及一种基于人工智能的图像处理方法、装置、电子设备及计算机可读存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。计算机视觉技术(Computer Vision,CV)是人工智能的重要分支,主要研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。
相似图像查询是计算机视觉技术的一个重要应用,在相关技术提供的方案中,通常是将待查询图像的图像特征分别与多个候选图像的图像特征进行对比,并根据对比结果从多个候选图像中筛选出待查询图像的相似图像。然而,不同候选图像的图像特征之间的差异较大,导致该对比过程的耗时过长,相似查询的效率低。
发明内容
本申请实施例提供一种基于人工智能的图像处理方法、装置、电子设备及计算机可读存储介质,能够在保证相似查询的精度的基础上,提升相似查询的效率。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种基于人工智能的图像处理方法,包括:
对待查询图像进行特征提取处理,得到图像特征;
对所述待查询图像的图像特征进行量化编码处理,得到图像量化编码;
对所述待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;
根据所述待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;
根据所述待查询图像的图像特征对所述多个相似候选图像进行相似查询处理,得到所述待查询图像的相似图像。
本申请实施例提供一种基于人工智能的图像处理装置,包括:
特征提取模块,用于对待查询图像进行特征提取处理,得到图像特征;
量化编码模块,用于对所述待查询图像的图像特征进行量化编码处理,得到图像量化编码;
应用二值编码模块,用于对所述待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;
相似查询模块,用于根据所述待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;
所述相似查询模块,还用于根据所述待查询图像的图像特征对所述多个相似候选图像进行相似查询处理,得到所述待查询图像的相似图像。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的基于人工智能的图像处理方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的基于人工智能的图像处理方法。
本申请实施例具有以下有益效果:
在对待查询图像进行特征提取处理得到图像特征后,对图像特征进行量化编码处理及应用二值编码处理,以将图像特征准确地压缩为应用二值编码,如此,能够提升根据应用二值编码进行相似查询的效率;在根据应用二值编码从多个候选图像筛选出多个相似候选图像后,根据待查询图像的图像特征对多个相似候选图像进行进一步筛选,如此,能够基于图像特征保证相似查询的准确性。
附图说明
图1是本申请实施例提供的基于人工智能的图像处理系统的架构示意图;
图2是本申请实施例提供的终端设备的架构示意图;
图3A是本申请实施例提供的基于人工智能的图像处理方法的流程示意图;
图3B是本申请实施例提供的训练图像处理模型的流程示意图;
图3C是本申请实施例提供的训练图像处理模型的流程示意图;
图3D是本申请实施例提供的基于人工智能的图像处理方法的流程示意图;
图4是本申请实施例提供的分桶查询的示意图;
图5是本申请实施例提供的图像处理模型的架构示意图;
图6是本申请实施例提供的Tanh激活函数的示意图;
图7是本申请实施例提供的Tanh激活函数与Sigmoid激活函数的对比示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。在以下的描述中,所涉及的术语“多个”是指至少两个。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)图像:本申请实施例主要涉及三种类型的图像,分别为训练图像、候选图像及待查询图像。其中,训练图像用于训练图像处理模型;候选图像表示相似查询过程中作为筛选对象的图像,例如可以将已存储的图像作为候选图像,也可以将已存储的视频中的图像作为候选图像,其中,候选图像可以与训练图像相同或不同;待查询图像用于触发相似查询,即相似查询的目的是在多个候选图像中找到待查询图像的相似图像。
2)度量学习(Metric Learning):指给定一些相似的图像以及一些不相似的图像,通过学习相似度(距离)度量,使得原本相似的图像之间的相似度增大(或距离减小),同时原本不相似的图像之间的相似度减小(或距离增大)。在本申请实施例中,可以通过度量学习的方式训练图像处理模型。
3)量化编码处理:是指将图像特征压缩为一个指定维度的向量(即图像量化编码),该向量中的每个数值都落入特定的取值范围内,例如由第一极值-1和第二极值1所约束的取值范围[-1,1]内。其中,对图像量化编码的维度与图像特征的维度之间的关系不做限定,例如图像量化编码的维度可以大于图像特征的维度。
4)二值编码处理:是指将图像量化编码中的每个数值都量化为设定的两个数值的其中之一,从而实现进一步压缩,例如,设定的两个数值可以分别为0和1。经过二值编码处理得到的二值编码也称为二进制码。为了便于区分,在本申请实施例中,将模型训练过程中所用到的二值编码处理命名为训练二值编码处理,在相似查询过程中所用到的二值编码处理命名为应用二值编码处理,训练二值编码处理与应用二值编码处理的处理方式可以一致,也可以不同。
5)图像处理模型:基于人工智能原理构建出的模型,这里对图像处理模型的类型不做限定,例如可以是人工神经网络模型。在本申请实施例中,图像处理模型可以包括特征提取网络及量化编码网络,分别用于进行特征提取处理及量化编码处理。值得说明的是,图像处理模型中的网络是指人工神经网络,而并非是指通信网络。
6)损失值:用于表示模型的输出结果与实际结果(或称标注结果)之间的差异。模型的训练主要涉及前向传播(Forward Propagation)及反向传播(Back Propagation)两个过程,以包括输入层、隐藏层及输出层的神经网络模型为例,前向传播处理是指依次通过输入层、隐藏层及输出层进行处理,最终得到输出结果;反向传播处理是指根据计算出的损失值依次传播至输出层、隐藏层及输入层,从而对各个层中的权重参数进行更新。
本申请实施例提供一种基于人工智能的图像处理方法、装置、电子设备及计算机可读存储介质,能够在保证相似查询的精度的基础上,提升相似查询的效率。下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为各种类型的终端设备,也可以实施为服务器。
参见图1,图1是本申请实施例提供的基于人工智能的图像处理系统100的一个架构示意图,终端设备400通过网络300连接服务器200,服务器200连接数据库500,其中,网络300可以是广域网或者局域网,又或者是二者的组合。
在一些实施例中,以电子设备是终端设备为例,本申请实施例提供的基于人工智能的图像处理方法可以由终端设备实现。例如,终端设备400在接收到相似查询的请求时,对相应的待查询图像进行特征提取处理,得到图像特征;对待查询图像的图像特征进行量化编码处理,得到图像量化编码;对待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;根据待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;根据待查询图像的图像特征对多个相似候选图像进行相似查询处理,得到待查询图像的相似图像。作为示例,在图1中示出了“相似查询”的选项,当接收到针对该选项的触发操作时,确定接收到相似查询的请求;此外,在图1中示例性地示出了待查询图像及相似图像,两个图像中均包括飞机。
值得说明的是,终端设备400可以预先根据训练图像对图像处理模型进行训练,并将训练后的图像处理模型存储于终端设备400本地,以在需要时调用。另外,对于训练图像、候选图像及待查询图像中的每一种图像,可以是终端设备400预先存储在本地的,可以是终端设备400实时拍摄的,也可以是终端设备400从外界(如服务器200、数据库500或区块链等处)获取的。
在一些实施例中,以电子设备是服务器为例,本申请实施例提供的基于人工智能的图像处理方法可以由服务器实现。例如,服务器200在接收到相似查询的请求时,对待查询图像进行一系列处理,以在多个候选图像中筛选出待查询图像的相似图像。在此之前,服务器200可以根据获取到的多个训练图像对图像处理模型进行训练,并将训练后的图像处理模型存储至本地,如存储至服务器200的分布式文件系统中,以在需要时调用。值得说明的是,对于训练图像、候选图像及待查询图像中的每一种图像,可以是服务器200预先存储在本地的,也可以是服务器200从外界获取的。
在一些实施例中,本申请实施例提供的基于人工智能的图像处理方法也可以由终端设备及服务器协同实现。例如,服务器200可以对图像处理模型进行训练,并将训练后的图像处理模型发送至终端设备400,以使终端设备400具有基于训练后的图像处理模型进行图像处理的能力。
又例如,服务器200可以对图像处理模型进行训练,并将训练后的图像处理模型存储至本地。终端设备400在接收到相似查询的请求时,将该请求对应的待查询图像发送至服务器200。服务器200通过训练后的图像处理模型对接收到的待查询图像进行一系列处理,得到待查询图像的相似图像,最后将相似图像发送至终端设备400,以使终端设备400根据接收到的相似图像响应相似查询的请求。
在一些实施例中,可以将图像处理过程中涉及到的各种结果(如训练图像、候选图像、待查询图像、图像特征、应用二值编码等)存储至区块链中,由于区块链具有不可篡改的特性,因此能够保证区块链中的数据的准确性。电子设备可以向区块链发送查询请求,以查询区块链中存储的数据。
在一些实施例中,终端设备400或服务器200可以通过运行计算机程序来实现本申请实施例提供的基于人工智能的图像处理方法。例如,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(Native)应用程序(APP,Application),即需要在操作系统中安装才能运行的程序,如图1示出的客户端410;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意APP中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,其中,云服务可以是基于人工智能的图像处理服务,供终端设备400进行调用。终端设备400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能电视、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
在一些实施例中,数据库500和服务器200可以独立设置。在一些实施例中,数据库500和服务器200也可以集成在一起,即数据库500可以视为存在于服务器200内部,与服务器200一体化,服务器200可以提供数据库500的数据管理功能。
以本申请实施例提供的电子设备是终端设备为例说明,可以理解的,对于电子设备是服务器的情况,图2中示出的结构中的部分(例如用户接口、呈现模块和输入处理模块)可以缺省。参见图2,图2是本申请实施例提供的终端设备400的结构示意图,图2所示的终端设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端设备400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他电子设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的基于人工智能的图像处理装置可以采用软件方式实现,图2示出了存储在存储器450中的基于人工智能的图像处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:特征提取模块4551、量化编码模块4552、应用二值编码模块4553及相似查询模块4554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
将结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的基于人工智能的图像处理方法。
参见图3A,图3A是本申请实施例提供的基于人工智能的图像处理方法的一个流程示意图,该方法可以由电子设备执行,将结合图3A示出的步骤进行说明。
在步骤101中,对待查询图像进行特征提取处理,得到图像特征。
例如,在接收到相似查询的请求时,对该请求对应的待查询图像进行特征提取处理,得到图像特征。其中,待查询图像可以是预先存储的,也可以是实时拍摄的;可以是独立存在的,也可以是从待查询视频中进行采样处理得到的。
在步骤102中,对待查询图像的图像特征进行量化编码处理,得到图像量化编码。
这里,对待查询图像的图像特征进行量化编码处理,以将图像特征压缩为图像量化编码,其中,图像特征及图像量化编码均可以是向量。值得说明的是,这里的压缩是指针对特征空间的压缩,即是将复杂度较高的图像特征压缩为复杂度较低的图像量化编码。
本申请实施例对图像特征的维度与图像量化编码的维度之间的关系不做限定,例如可以约束图像特征的维度小于图像量化编码的维度,从而避免图像特征占用过多的存储空间。
在一些实施例中,在任意步骤之间,还包括:获取待查询图像的历史图像特征;其中,历史图像特征用于进行量化编码处理,得到待查询图像的图像量化编码。
这里,当已经存在待查询图像对应的历史图像特征时,可以直接对历史图像特征进行量化编码处理,得到待查询图像的图像量化编码,从而避免对待查询图像再次进行特征提取处理所导致的计算资源的浪费。其中,对历史图像特征的确定方式不做限定。
值得说明的是,该方式同样适用于候选图像,即可以对候选图像的历史图像特征进行量化编码处理,得到候选图像的图像量化编码。
在步骤103中,对待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码。
这里,对待查询图像的图像量化编码进行应用二值编码处理,以将图像量化编码进一步压缩为应用二值编码,其中,应用二值编码处理是指对图像量化编码中的每个数值进行二值化,即得到的应用二值编码可以理解为有限比特位的二进制码。本申请实施例对应用二值编码处理的量化目标不做限定,例如可以是将图像量化编码中的每个数值量化为0或1。
值得说明的是,对于作为筛选对象的多个候选图像,可以通过步骤101至步骤103的类似方式,确定每个候选图像的图像特征及应用二值编码。
在一些实施例中,应用二值编码处理用于对第一极值及第二极值所约束的数值范围内的数值进行二值化;步骤103之前,还包括:对待查询图像的图像量化编码进行激活处理,以使激活后的图像量化编码中的数值位于数值范围内。
这里,应用二值编码处理可以用于对特定的数值范围内的数值进行二值化,该数值范围被第一极值及第二极值所约束,例如,第一极值可以是-1,第二极值可以是1,则该数值范围为-1~1。在该情况下,可以对待查询图像的图像量化编码进行激活处理,以使激活后的图像量化编码中的每个数值位于该数值范围内。然后,再对激活后的图像量化编码进行应用二值编码处理,得到应用二值编码。
其中,激活处理的方式可以与数值范围相对应,例如当数值范围为-1~1时,可以通过Tanh激活函数进行激活处理;当数值范围为0~1时,可以通过Sigmoid激活函数进行激活处理。如此,能够提升激活处理的准确性和有效性。
在步骤104中,根据待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像。
例如,根据待查询图像的应用二值编码以及多个候选图像分别对应的应用二值编码,从多个候选图像筛选出一部分以作为相似候选图像,即实现基于应用二值编码的相似查询处理。由于应用二值编码是对图像特征进行压缩的结果,复杂度相较于图像特征来说更低,因此,能够节省相似查询过程中的计算量,提升效率,减少耗时。
举例来说,存在100个候选图像,这100个候选图像对应的图像特征各不相同,同时,部分候选图像对应相同的应用二值编码,最终汇总出的应用二值编码共有10种。若按照相关技术提供的方案,则需要将待查询图像的图像特征与100个图像特征进行分别比对,计算量较大。而在本申请实施例中,仅需将待查询图像的应用二值编码与10种应用二值编码进行分别比对,相较于相关技术提供的方案,能够节省较多计算量。
在步骤105中,根据待查询图像的图像特征对多个相似候选图像进行相似查询处理,得到待查询图像的相似图像。
步骤104可以视为是基于应用二值编码的粗筛,在本申请实施例中,为了保证相似查询的精度,可以根据待查询图像的图像特征以及多个相似候选图像分别对应的图像特征,在多个相似候选图像中筛选出待查询图像的相似图像,即实现基于图像特征的相似查询处理(或称精筛)。
在一些实施例中,待查询图像是对待查询视频进行采样处理得到的,候选图像是对候选视频进行采样处理得到的;在步骤105之后,还包括:将相似图像所在的候选视频作为待查询视频的相似视频。
在本申请实施例中,相似查询还可以扩展至视频场景。例如,在对待查询视频进行采样处理得到待查询图像,对候选视频进行采样处理得到候选图像的情况下,可以将相似图像所在的候选视频作为待查询视频的相似视频,从而实现针对视频的相似查询。
如图3A所示,本申请实施例基于应用二值编码实现初步筛选,再基于图像特征进行进一步筛选,从而在保证相似查询精度的基础上,大大提升了相似查询的效率,减少了相关计算量。
在一些实施例中,参见图3B,图3B是本申请实施例提供的训练图像处理模型的一个流程示意图,可以由电子设备执行,将结合图3B示出的步骤进行说明。
在步骤201中,通过图像处理模型中的特征提取网络对训练图像组中的训练图像进行特征提取处理,得到待对比的图像特征。
在本申请实施例中,可以通过图像处理模型来实现特征提取处理及量化编码处理,为了保证处理的准确性,可以对图像处理模型进行预先训练。
在训练过程中,针对训练图像组中的每个训练图像,通过图像处理模型进行前向传播处理,即通过特征提取网络对训练图像进行特征提取处理,得到图像特征。为了便于区分,将这里得到的图像特征命名为待对比的图像特征。其中,训练图像组可以完全通过人为标注的方式生成,也可以自动生成。
在一些实施例中,步骤201之前,还包括:获取多个标注图像组;其中,标注图像组包括彼此相似的多个标注图像;针对任意一个标注图像组执行以下处理:根据候选标注图像对应的标注图像特征与任意一个标注图像组中的目标标注图像对应的标注图像特征之间的特征距离,对多个候选标注图像进行筛选处理;其中,候选标注图像所在的标注图像组区别于任意一个标注图像组;将筛选出的候选标注图像添加至任意一个标注图像组中,得到训练图像组;其中,标注图像特征包括以下任意一种:通过特征提取网络进行特征提取处理得到的图像特征;方向梯度直方图HOG特征;尺度不变特征变换SIFT特征。
这里,提供了训练图像组的一种示例生成方式。首先,获取多个标注图像组,每个标注图像组包括彼此相似的多个标注图像,例如,可以人为选择彼此相似的多个图像以组成标注图像组;又例如,可以对训练视频进行分镜处理得到分镜片段,并对同一分镜片段中的图像进行采样处理,根据采样得到的多个图像组成标注图像组,其中,同一分镜片段包括彼此相似的多个图像,分镜处理可以通过开源的分镜工具(如PySceneDetect)实现。
对于获取到的每一个标注图像组,以标注图像组A为例,可以根据候选标注图像的标注图像特征与标注图像组A中的目标标注图像的标注图像特征之间的特征距离,对所有候选标注图像进行筛选处理,其中,候选标注图像所在的标注图像组区别于标注图像组A,目标标注图像是指标注图像组A中的任意一个标注图像。这里的筛选处理用于筛选出特征距离更小的候选标注图像,例如可以是筛选出特征距离最小的N个候选标注图像,这里的N是大于0的整数,如此,可以提升训练难度,加强对图像处理模型的训练效果。
完成筛选处理后,将筛选出的候选标注图像添加至标注图像组A中,得到训练图像组。以筛选出N个候选标注图像举例,则可以将N个候选标注图像分别添加至标注图像组A中,得到N个训练图像组。以训练图像组为三元图像组(a,p,n)的情况举例,则训练图像a和训练图像p可以是在标注图像组(a,p)中原本存在的标注图像,训练图像n可以是筛选出的候选标注图像。
值得说明的是,本申请实施例涉及的特征距离是指图像特征之间的距离,例如包括但不限于L2距离、欧式距离。
值得说明的是,标注图像特征包括以下任意一种:通过图像处理模型的特征提取网络进行特征提取处理得到的图像特征;方向梯度直方图(Histogram of OrientedGradient,HOG)特征,其中,HOG特征是计算机视觉技术中用于进行物体检测的特征描述子,能够较好地描述图像;尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)特征,其中,SIFT特征是一种局部特征描述子,具有尺度不变性,同样也能够较好地描述图像。
在步骤202中,通过图像处理模型中的量化编码网络对待对比的图像特征进行量化编码处理,得到待对比的图像量化编码。
这里,继续通过图像处理模型进行前向传播处理,即通过量化编码网络对训练图像的待对比的图像特征进行量化编码处理,得到训练图像的待对比的图像量化编码。
在步骤203中,对待对比的图像量化编码进行训练二值编码处理,得到训练二值编码。
这里,训练二值编码处理与上文的应用二值编码处理的处理方式可以相同,也可以不同。对训练图像的待对比的图像量化编码进行训练二值编码处理,得到训练图像的训练二值编码。
在一些实施例中,可以通过这样的方式来实现上述的对待对比的图像量化编码进行训练二值编码处理,得到训练二值编码:针对待对比的图像量化编码中任意一个待对比数值,执行以下处理:当任意一个待对比数值小于中间值时,将第一极值作为训练二值编码中与任意一个待对比数值对应相同编码位置的数值;当任意一个待对比数值大于或等于中间值时,将第二极值作为训练二值编码中与任意一个待对比数值对应相同编码位置的数值;其中,第一极值小于中间值,且中间值小于第二极值。
这里,训练二值编码处理可以是指对待对比的图像量化编码中的每个数值(为了便于区分,命名为待对比数值)进行二值化。例如,训练二值编码处理可以对应第一极值、中间值及第二极值,量化目标是将待对比数值量化为第一极值或第二极值,其中,第一极值<中间值<第二极值,例如第一极值、中间值及第二极值可以分别为-1、0及1。
当待对比数值小于中间值时,将第一极值作为训练二值编码中与该待对比数值对应相同编码位置的数值;当待对比数值大于或等于中间值时,将第二极值作为训练二值编码中与该待对比数值对应相同编码位置的数值。其中,编码位置是指向量中的元素(数值)在向量中的位置。通过上述方式,可以在后续的训练过程中约束图像量化编码尽量靠近第一极值或第二极值,从而有效避免图像量化编码靠近中间值所导致的相似的图像特征被量化为不同的二值编码。
在一些实施例中,可以通过这样的方式来实现上述的对待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码:针对待查询图像的图像量化编码中的任意一个数值,执行以下处理:当任意一个数值小于中间值时,将中间值作为应用二值编码中与任意一个数值对应相同编码位置的数值;当任意一个数值大于或等于中间值时,将第二极值作为应用二值编码中与任意一个数值对应相同编码位置的数值。
这里,应用二值编码处理的量化目标可以是将图像量化编码中的数值量化为中间值或第二极值。例如,对于待查询图像的图像量化编码中的每个数值,以数值A为例,当数值A小于中间值时,将中间值作为应用二值编码中与数值A对应相同编码位置的数值;当数值A大于或等于中间值时,将第二极值作为应用二值编码中与数值A对应相同编码位置的数值。通过上述方式,可以保证图像特征与应用二值编码的一致性,即如果两个图像特征较为相似,则量化后得到的两个应用二值编码也是相似或相同的。
在一些实施例中,训练二值编码处理用于对第一极值及第二极值所约束的数值范围内的数值进行二值化;步骤203之前,还包括:对待对比的图像量化编码进行激活处理,以使激活后的待对比的图像量化编码中的数值位于数值范围内。
同理,可以对待对比的图像量化编码进行激活处理,以使激活后的待对比的图像量化编码中的每个数值位于特定的数值范围内,该数值范围是指第一极值及第二极值所约束的数值范围。这里,激活处理的方式包括但不限于Tanh激活及Sigmoid激活。
在步骤204中,根据训练图像组中的多个训练图像分别对应的待对比的图像特征、以及多个训练图像之间的相似关系进行损失计算处理,得到特征提取损失值。
例如,可以根据训练图像组中的多个训练图像之间的相似关系确定相应的损失函数,并根据损失函数对该训练图像组中的多个训练图像分别对应的待对比的图像特征进行损失计算处理,得到该训练图像组的特征提取损失值。
值得说明的是,本申请实施例对训练图像组所包括的训练图像的数量不做限定,例如训练图像组包括但不限于以下几种类型。
1)二元图像组。二元图像组包括两种类型,第一种类型的二元图像组包括的两个训练图像相似;第二种类型的二元图像组包括的两个训练图像不相似。二元图像组对应的用于进行度量学习的损失函数可以是对比损失(Contrastive Loss)。
2)三元图像组。三元图像组包括第一训练图像、与第一训练图像相似的第二训练图像、以及与第一训练图像不相似的第三训练图像。三元图像组对应的用于进行度量学习的损失函数可以是三元图像组损失(Triplet Loss)。
3)四元图像组。四元图像组包括第一训练图像、与第一训练图像相似的第二训练图像、与第一训练图像不相似的第三训练图像、以及与第一训练图像不相似的第四训练图像。四元图像组对应的用于进行度量学习的损失函数可以是四元图像组损失(QuadrupletLoss)。
在一些实施例中,步骤204之前,还包括:对待对比的图像特征进行归一化处理。这里,可以通过归一化的方式对待对比的图像特征的特征空间进行压缩,如压缩至0~1的数值范围,从而避免特征空间过大所导致的不利于优化学习。本申请实施例对归一化的方式不做限定,例如可以是L2归一化。
在步骤205中,根据多个训练图像分别对应的待对比的图像量化编码、多个训练图像分别对应的训练二值编码、以及多个训练图像之间的相似关系进行损失计算处理,得到量化编码损失值。
例如,可以根据训练图像组中的多个训练图像之间的相似关系确定相应的损失函数,并根据损失函数对该训练图像组中的多个训练图像分别对应的待对比的图像量化编码进行损失计算处理,得到该训练图像组的第一量化编码损失值。
同时,对于训练图像组中的每个训练图像,计算训练图像的图像量化编码与训练二值编码之间的差异,以作为该训练图像的子损失值。然后,对训练图像组中的多个训练图像分别对应的子损失值进行融合处理,得到训练图像组的第二量化编码损失值。
最后,对训练图像组的第一量化编码损失值及第二量化编码损失值进行融合处理,即可得到用于后续训练的量化编码损失值。
值得说明的是,本申请实施例涉及的融合处理包括但不限于求和处理、加权求和。
在步骤206中,根据特征提取损失值及量化编码损失值训练图像处理模型;其中,训练后的特征提取网络用于对待查询图像进行特征提取处理;训练后的量化编码网络用于对待查询图像的图像特征进行量化编码处理。
在得到训练图像组的特征提取损失值及量化编码损失值后,便可结合反向传播的机制训练图像处理模型,即更新图像处理模型的权重参数。训练后的特征提取网络可以用于对待查询图像/候选图像进行特征提取处理,训练后的量化编码网络可以用于对待查询图像的图像特征/候选图像的图像特征进行量化编码处理,如此,能够提升处理精度。
在一些实施例中,可以通过这样的方式来实现上述的根据特征提取损失值及量化编码损失值训练图像处理模型:执行以下任意一种处理:根据特征提取损失值训练特征提取网络,根据量化编码损失值训练量化编码网络;对特征提取损失值及量化编码损失值进行融合处理,并根据得到的融合损失值训练特征提取网络及量化编码网络。
本申请实施例提供了两种示例的训练方式,将进行分别说明。
1)根据特征提取损失值训练特征提取网络,根据量化编码损失值训练量化编码网络。如此,能够保证收敛方式不同的两个任务(特征提取网络及量化编码网络分别对应的任务)最终都能得到有效收敛,即能够提升训练效果。
2)对特征提取损失值及量化编码损失值进行融合处理,并根据得到的融合损失值训练特征提取网络及量化编码网络。该方式将收敛方式不同的两个任务融合为一个任务,在牺牲部分训练效果的前提下,能够提升训练的简便性。
如图3B所示,本申请实施例根据训练图像组对图像处理模型进行训练,并根据训练后的图像处理模型进行图像处理,能够提升图像处理的精度。
在一些实施例中,参见图3C,图3C是本申请实施例提供的训练图像处理模型的一个流程示意图,可以由电子设备执行,其中,图3C示出的步骤201-203、步骤205-206可以参见上述关于图3B的相关描述,此处不再详述。
在图3C中,图3B示出的步骤204可以更新为步骤301,在步骤301中,根据第一训练图像对应的待对比的图像特征与第二训练图像对应的待对比的图像特征之间的特征距离、以及第一训练图像对应的待对比的图像特征与第三训练图像对应的待对比的图像特征之间的特征距离,确定用于训练图像处理模型的特征提取损失值。
在本申请实施例中,训练图像组可以是三元图像组,即包括第一训练图像、与第一训练图像相似的第二训练图像、以及与第一训练图像不相似的第三训练图像。在该情况下,可以确定第一训练图像的待对比的图像特征与第二训练图像的待对比的图像特征之间的特征距离(为了便于区分,后文命名为第一特征距离),同时确定第一训练图像的待对比的图像特征与第三训练图像的待对比的图像特征之间的特征距离(为了便于区分,后文命名为第二特征距离),并根据第一特征距离和第二特征距离确定训练图像组的特征提取损失值。该特征提取损失值用于缩小第一特征距离,同时扩大第二特征距离。
在图3C中,图3B示出的步骤205可以通过步骤302至步骤304实现,将结合各步骤进行说明。
在步骤302中,根据第一训练图像对应的待对比的图像量化编码与第二训练图像对应的待对比的图像量化编码之间的编码距离、以及第一训练图像对应的待对比的图像量化编码与第三训练图像对应的待对比的图像量化编码之间的编码距离,确定训练图像组的第一量化编码损失值。
例如,可以确定第一训练图像的待对比的图像量化编码与第二训练图像的待对比的图像量化编码之间的编码距离(为了便于区分,后文命名为第一编码距离),同时确定第一训练图像的待对比的图像量化编码与第三训练图像的待对比的图像量化编码之间的编码距离(为了便于区分,后文命名为第二编码距离),并根据第一编码距离和第二编码距离确定训练图像组的第一量化编码损失值。该第一量化编码损失值用于缩小第一编码距离,同时扩大第二编码距离。
值得说明的是,本申请实施例涉及的编码距离包括但不限于汉明距离。
在步骤303中,根据训练图像组中的任意一个训练图像的待对比的图像量化编码及训练二值编码,确定任意一个训练图像的子损失值,并对第一训练图像、第二训练图像及第三训练图像分别对应的子损失值进行融合处理,得到训练图像组的第二量化编码损失值。
例如,对于训练图像组中的每个训练图像,可以根据训练图像的待对比的图像量化编码及训练二值编码确定该训练图像的子损失值,其中,子损失值如回归损失值,但并不限于此。然后,对训练图像组中的第一训练图像、第二训练图像及第三训练图像分别对应的子损失值进行融合处理,得到训练图像组的第二量化编码损失值。该第二量化编码损失值用于约束图像量化编码中的数值靠近所在数值范围的任意一端的极值。
在步骤304中,对第一量化编码损失值及第二量化编码损失值进行融合处理,得到用于训练图像处理模型的量化编码损失值。
这里,对训练图像组的第一量化编码损失值及第二量化编码损失值进行融合处理,得到用于训练图像处理模型的量化编码损失值。
在一些实施例中,可以通过这样的方式来实现上述的对第一量化编码损失值及第二量化编码损失值进行融合处理,得到用于训练图像处理模型的量化编码损失值:根据第一量化编码损失值对应的第一权重、以及第二量化编码损失值对应的第二权重,对第一量化编码损失值及第二量化编码损失值进行加权处理,得到用于训练图像处理模型的量化编码损失值;其中,第一权重大于第二权重。
这里,融合处理可以是加权求和,例如,根据第一量化编码损失值对应的第一权重、以及第二量化编码损失值对应的第二权重,对第一量化编码损失值及第二量化编码损失值进行加权求和,得到用于训练图像处理模型的量化编码损失值。其中,由于第二量化编码损失值(回归损失值)对应的收敛速度较之第一量化编码损失值(Triplet损失值)更快,因此,为了保证第一量化编码损失值在训练过程中处于主导地位,同时为了保证图像特征始终具有相似度度量的能力,可以设置第一权重大于第二权重,例如第一权重为1,第二权重为0.5。
如图3C所示,本申请实施例根据三元图像组的特点来确定特征提取损失值及量化编码损失值,能够进一步提升训练的准确性和有效性。
在一些实施例中,参见图3D,图3D是本申请实施例提供的基于人工智能的图像处理方法的一个流程示意图,可以由电子设备执行,其中,图3D示出的步骤101-105可以参见上述关于图3A的相关描述,此处不再详述。
在图3D中,图3A示出的步骤104可以通过步骤401至步骤402实现,将结合各步骤进行说明。
在步骤401中,确定待查询图像的应用二值编码与多个候选图像分别对应的应用二值编码之间的编码距离。
例如,可以确定待查询图像的应用二值编码与每个候选图像对应的应用二值编码之间的编码距离,编码距离越小则表示越相似。
在一些实施例中,步骤401之前,还包括:针对任意一个候选图像执行以下处理:对任意一个候选图像进行特征提取处理,得到任意一个候选图像的图像特征;对任意一个候选图像的图像特征进行量化编码处理,得到任意一个候选图像的图像量化编码;对任意一个候选图像的图像量化编码进行应用二值编码处理,得到任意一个候选图像的应用二值编码。
与待查询图像类似地,可以对候选图像进行特征提取处理,得到该候选图像的图像特征;对该候选图像的图像特征进行量化编码处理,得到该候选图像的图像量化编码;对该候选图像的图像量化编码进行应用二值编码处理,得到该候选图像的应用二值编码。其中,特征提取处理及量化编码处理可以通过训练后的图像处理模型实现。
在步骤402中,根据编码距离对多个候选图像进行筛选处理,得到多个相似候选图像。
通过步骤401可以得到与每个候选图像对应的编码距离,这里,可以根据多个候选图像分别对应的编码距离,对多个候选图像进行筛选处理,得到多个相似候选图像。
例如,可以将小于编码距离阈值的编码距离对应的候选图像作为相似候选图像;又例如,可以根据编码距离从小到大的顺序选择候选图像以作为相似候选图像,直至相似候选图像的数量达到第一数量阈值。
在图3D中,图3A示出的步骤105可以通过步骤403至步骤404实现,将结合各步骤进行说明。
在步骤403中,确定待查询图像的图像特征与多个相似候选图像分别对应的图像特征之间的特征距离。
例如,确定待查询图像的图像特征与每个相似候选图像对应的图像特征之间的特征距离,特征距离越小则表示越为相似。
在步骤404中,根据特征距离对多个相似候选图像进行筛选处理,得到待查询图像的相似图像。
例如,可以将小于特征距离阈值的特征距离对应的相似候选图像作为相似图像;又例如,可以根据特征距离从小到大的顺序选择相似候选图像以作为相似图像,直至相似图像的数量达到第二数量阈值,其中,第二数量阈值小于第一数量阈值。
当待查询图像的相似图像的数量为多个时,可以根据特征距离从小到大(即相似度从大到小)的顺序依次显示多个相似图像,以更加准确地响应相似查询的请求。
如图3D所示,本申请实施例提供了粗筛及精筛的示例方式,能够进一步提升相似查询的准确性。
下面,将说明本申请实施例在实际的应用场景中的示例性应用。本申请实施例可以应用于相似查询的场景,作为示例,提供了如图4所示的分桶查询(分桶检索)的示意图,其中,一个桶即对应一个应用二值编码。
对于图像来说,可以将图像输入至图像处理模型,借助图像处理模型准确、高效地得到图像特征及应用二值编码。例如,可以通过图像处理模型中的特征提取网络(如图4示出的初始特征提取网络及嵌入表示网络,嵌入表示网络又称Embedding网络)对图像进行特征提取处理,得到图像特征;然后,通过图像处理模型中的量化编码网络(又称Quantization网络)对图像特征进行量化编码处理,得到图像量化编码;最后,对图像量化编码进行应用二值编码处理,得到应用二值编码。此外,对于已有历史图像特征的图像,可以直接通过量化编码网络对历史图像特征进行量化编码处理,得到该图像的图像量化编码,如此,可以避免重新进行一次特征提取处理所带来的资源消耗。
在本申请实施例中,可以将候选图像的应用二值编码作为索引,如图4所示,索引库中存储了三种索引,分别为(1,0,0)、(0,1,0)及(0,0,1),其中,每种索引对应至少一个候选图像。在分桶查询的过程中,根据待查询图像的应用二值编码与索引之间的编码距离,对多个索引进行筛选处理,并将筛选出的索引对应的候选图像作为相似候选图像,图4中以待查询图像的应用二值编码及筛选出的索引均为(1,0,0)举例,如此,基于应用二值编码实现高效的粗筛。然后,根据待查询图像的图像特征与相似候选图像的图像特征之间的特征距离,对多个相似候选图像进行筛选处理,得到待查询图像的相似图像,如此,基于图像特征实现准确的精筛。在最终筛选出的相似图像的数量为多个的情况下,还可以根据特征距离对多个相似图像进行排序,例如按照特征距离从小到大的顺序进行排序。
接下来,说明图像处理模型的训练过程。为了便于理解,本申请实施例提供了如图5所示的图像处理模型的架构示意图,在图5中,首先根据三元图像组(即上文的训练图像组)对应的特征提取损失值对图像处理模型中的特征提取网络进行训练,其中,特征提取网络包括初始特征提取网络及嵌入表示网络,初始特征提取网络可以是卷积神经网络(Convolutional Neural Networks,CNN),当然,根据模型架构的不同,特征提取网络还可以包括其他网络。然后,在图像处理模型中添加量化编码网络,并根据三元图像组对应的量化编码损失值对图像处理模型中的量化编码网络进行训练。值得说明的是,在特征提取网络的训练过程及量化编码网络的训练过程中,可以使用相同的三元图像组,即训练数据可以相同。
本申请实施例对三元图像组的挖掘方式不做限定,例如,获取多个相似图像对(对应上文的标注图像组),并根据Batch Size对这些相似图像对进行划分,得到多个批次(Batch),其中,每个相似图像对包括相似的两个图像。对于每个Batch中的任意一个相似图像对x,将相似图像对x中的任意一个图像a(对应上文的目标标注图像)与剩余的BatchSize-1个相似图像对中的每个图像计算特征距离。然后,根据特征距离从小到大的顺序对剩余的Batch Size-1个相似图像对中的图像进行排序处理,并取前N个图像作为负样本,分别与相似图像对x组成三元图像组。如此,对于每个Batch,可以得到Batch Size×N个三元图像组,其中,N为大于0的整数,如为10。
根据挖掘出的三元图像组训练图像处理模型。在本申请实施例中,图像处理模型可以包括特征提取网络及量化编码网络,其中,特征提取网络可以包括初始特征提取网络及嵌入表示网络,还可以包括最大池化网络。例如,初始特征提取网络可以是ResNet101网络,络架构如表1所示。
表1 ResNet101网络的网络架构
其中,“7×7, 64, stride 2”中的“7×7”表示卷积核尺寸,“64”表示输出通道数,“stride 2”表示步长为2;此外,“max pool”表示最大池化层,“×3 blocks”表示存在3个相同的结构,其余参数以此类推。
最大池化网络的网络架构如表2所示。
表2 最大池化网络的网络架构
其中,最大池化网络的作用是对初始特征提取网络输出的特征进行特征交叉,从而产生更丰富的二阶特征信息,以供后续利用。
嵌入表示网络的网络架构如表3所示。
表3 嵌入表示网络的网络架构
其中,嵌入表示网络输出的特征(即图像特征)的维度是64维。
量化编码网络的网络架构如表4所示。
表4 量化编码网络的网络架构
其中,量化编码网络输出的特征(即图像量化编码)的维度是256维。
当然,上述架构并不构成对本申请实施例的限定,例如初始特征提取网络可以是ResNet18网络,嵌入表示网络可以包括多个全连接层。值得说明的是,为了平衡图像特征与图像量化编码两者的空间占用,可以将图像特征的维度设置得比图像量化编码的维度更小,否则图像特征的维度过大会导致占用过多存储空间。
在训练图像处理模型的过程中,主要涉及到以下步骤。
1)参数初始化。对于初始特征提取网络来说,可以通过开源的图像集(如ImageNet图像集、Open Image图像集等)进行训练,从而完成权重参数的初始化。对于其他的网络,如最大池化网络、嵌入表示网络及量化编码网络来说,可以对权重参数进行随机初始化,例如可以采用方差为0.01、且均值为0的高斯分布来进行初始化。
2)确定需要学习(即需要更新)的权重参数。这里可以分为两个训练阶段,在第一个训练阶段,对初始特征提取网络、最大池化网络、嵌入表示网络这些网络的权重参数进行更新;在第二个训练阶段,对量化编码网络的权重参数进行更新。
3)确定学习率(Learning Rate)。在本申请实施例中,图像处理模型中的各个网络均可以采用相同的学习率,例如学习率为0.005。每经过10轮迭代后学习率可以更新为原来的0.1倍。
4)学习过程(训练过程)。这里,可以对图像处理模型进行epoch轮迭代,epoch是大于1的整数,可以根据实际应用场景进行设定。在每轮迭代中,处理一次全量样本,例如可以根据Batch Size(可以根据实际应用场景进行设定)对全量的相似图像对进行划分,得到Nb个批次,对于每个批次(Batch)执行以下处理:
①前向传播处理。这里,通过图像处理模型对Batch内的每个训练图像进行前向传播处理,得到图像特征及图像量化编码。
②损失值计算。这里,特征提取网络及量化编码网络对应不同的损失值。
③权重参数更新。例如,可以采用随机梯度下降算法或其他梯度下降算法,将损失值进行反向传播处理,并在反向传播的过程中,沿梯度下降方向更新需要训练的网络的权重参数。
接下来,说明计算损失值的过程,损失值可以包括特征提取损失值和量化编码损失值,将进行分别说明。
1)特征提取损失值。在Batch内挖掘出三元图像组(a,p,n)后,对三元图像组中各训练图像的图像特征先进行归一化处理(如L2归一化处理),其中,三元图像组中的a、p及n分别对应上文的第一训练图像、第二训练图像及第三训练图像;归一化处理的目的是使图像特征中的每个数值位于特定的数值范围(如0~1)内,避免特征空间过大导致不利于优化学习。然后,根据三元图像组内各训练图像的归一化后的图像特征,计算该三元图像组的特征提取损失值,公式如下所示:
其中,表示训练图像a的归一化后的图像特征,和以此类推。表示训练图像a的归一化后的图像特征与训练图像p的归一化后的图像特征之间的特征距离(如L2距离),以此类推。为margin参数,可以设定为4。这里计算的目的在于,约束训练图像a与训练图像n之间的特征距离(即归一化后的图像特征之间的距离)减去训练图像a与训练图像p之间的特征距离所得到的值大于。
2)量化编码损失值。量化编码损失值由triplet损失(对应上文的第一量化编码损失值)及符号量化损失(对应上文的第二量化编码损失值)组成。例如,对于量化编码网络的输出(即图像量化编码),先进行Tanh激活,然后计算量化编码损失值:
其中,与上文的计算方式类似,差异在于,需要将的计算公式中的归一化后的图像特征替换为激活后的图像量化编码。此外,由于图像量化编码的维度为256,其中每个数值需要学习到-1或1的值,因此,训练图像a与训练图像n之间的编码距离需要足够大才能保证三元图像组在量化空间可区分,故在的计算公式中,可设置为160。
对于来说,激活后的图像量化编码中每个数值所在的数值范围是(-1,1),由此可进行符号量化(对应上文的应用二值编码处理),即是将小于零的数值映射为0,将不小于零的数值映射为1,则这里计算的目的是使得激活后的图像量化编码中的每个数值靠近-1或1(若数值处于临界值0附近,则容易导致相似的图像特征被量化到不同的二值编码中)。因此,可以采用以下的sgn符号函数对激活后的图像量化编码进行符号量化(对应上文的训练二值编码处理),并计算:
其中,表示激活后的图像量化编码中的第i个数值,bi表示通过sgn符号函数对激活后的图像量化编码中的第i个数值进行符号量化后得到的结果(即训练二值编码中的第i个数值)。上述计算出的回归损失值的目的是约束激活后的图像量化编码与训练二值编码之间的编码距离变小。
值得说明的是,使用Tanh激活函数进行激活处理的目的是将数值映射到-1和1之间,Tanh激活函数的公式如,示意图如图6所示,图6示出的横轴为,纵轴为。Tanh激活函数与Sigmoid激活函数的功能类似,不同的是Sigmoid激活函数在0位置是不可导的(+0和-0),即没法进行梯度计算,导致不能用于基于梯度回传的深度学习中,而Tanh激活函数在0位置可导,并且可以将数值映射到-1到1之间。当然,这里也可以采用Sigmoid激活函数将数值映射到0到1之间,然后将0和1作为量化目标(而非-1和1)。为了便于理解,示出了Tanh激活函数与Sigmoid激活函数之间的对比示意图,如图7所示,Tanh激活函数的曲线更陡,能够更快接近-1和1,而Sigmoid激活函数的曲线更缓,不容易接近两端极值(即0和1),因此,利用Tanh激活函数进行模型训练的效果更逼近二值量化的真实效果。
完成对图像处理模型的训练后,对于已有历史图像特征的图像,直接将历史图像特征输入到训练后的图像处理模型中的量化编码网络,并对量化编码网络的输出进行Tanh激活处理及应用二值编码处理,得到该图像的应用二值编码。该方式适用于存量业务应用,能够支持对历史图像特征进行索引升级。
对于未提取图像特征的图像,可以将该图像输入至训练后的图像处理模型,并将特征提取网络的输出作为该图像的图像特征,对量化编码网络的输出进行Tanh激活处理及应用二值编码处理,得到该图像的应用二值编码。该方式适用于还未处理过的新图像。
接下来,说明相似查询的一种示例方式。为了便于理解,将通过步骤形式进行说明。
1)对于候选图像库中的每个候选图像,确定候选图像的图像特征e及应用二值编码q,并建立图像与e之间的映射表T[i:e],其中i表示图像的序号,e表示该图像的图像特征。
2)建立基于q的索引系统,即是将对应qj的图像序号记录到倒排表中,如[q1:[1,2,5],q2:[3],q3:[4]],其中,图像1、图像2及图像5均对应q1,以此类推。同时,保存所有索引(即所有的q)的向量列表Lindex:[q1,q2,q3]。
对于新加入的候选图像x,可以计算其ex、qx,当qx存在于Lindex列表中时,在倒排表中建立图像序号x与qx之间的对应关系,同时,将图像序号x和ex加入到映射表T中,即在映射表T中新增记录[x:ex]。
3)获取待查询图像,通过训练后的图像处理模型确定该待查询图像的图像特征equery和应用二值编码qquery。
4)量化检索。分别计算qquery与Lindex列表中的各个q之间的汉明距离(对应上文的编码距离),并召回汉明距离小于Dq_thr(对应上文的编码距离阈值,例如可以取64)的索引。
5)根据召回的索引确定对应的图像特征。这里,从倒排表中确定召回的索引对应的图像序号,以召回的索引为q2及q3为例,则召回的图像为图像3及图像4,其中,召回的图像即对应上文的相似候选图像。然后,从映射表T中确定召回的图像的图像特征e,对于图像3及4,可以分别得到图像特征e3及e4。
6)排序。分别计算equery与召回的e3及e4之间的特征距离(如L2距离、欧式距离),并根据特征距离从小到大的顺序对召回的图像进行排序。
7)返回。从排序后的多个图像中选择top K的图像返回,即作为待查询图像的相似图像,其中,K为大于0的整数,对应上文的第二数量阈值,具体可以根据实际应用场景进行设定。
本申请实施例至少具有以下技术效果:1)实现了图像特征及应用二值编码的有效联合学习,通过对特征提取网络及量化编码网络进行分别训练,保证两个收敛方式不同的任务最终都可以得到有效收敛;2)通过级联量化,支持对图像特征的直接端到端量化,使得图像特征相似的图像在应用二值编码上也相似,从而能够提升相似查询的准确性;3)能够避免相似图像的量化空间割裂,通过度量学习使得相似图像之间的量化距离(图像量化编码之间的编码距离)变小,并可通过调整距离阈值得到满意的召回率;4)能够适用于不同的业务应用,例如可以适用于已有历史图像特征的图像,能够避免再次进行特征提取所带来的资源消耗,又例如可以适用于未进行过特征提取处理的图像,能够同时输出图像特征及应用二值编码;5)先基于应用二值编码进行粗筛,再基于图像特征进行精筛,能够在保证相似查询精度的基础上,大大提升相似查询效率。
下面继续说明本申请实施例提供的基于人工智能的图像处理装置455实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的基于人工智能的图像处理装置455中的软件模块可以包括:特征提取模块4551,用于对待查询图像进行特征提取处理,得到图像特征;量化编码模块4552,用于对待查询图像的图像特征进行量化编码处理,得到图像量化编码;应用二值编码模块4553,用于对待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;相似查询模块4554,用于根据待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;相似查询模块4554,还用于根据待查询图像的图像特征对多个相似候选图像进行相似查询处理,得到待查询图像的相似图像。
在一些实施例中,基于人工智能的图像处理装置455还包括训练模块,用于:通过图像处理模型中的特征提取网络对训练图像组中的训练图像进行特征提取处理,得到待对比的图像特征;通过图像处理模型中的量化编码网络对待对比的图像特征进行量化编码处理,得到待对比的图像量化编码;对待对比的图像量化编码进行训练二值编码处理,得到训练二值编码;根据训练图像组中的多个训练图像分别对应的待对比的图像特征、以及多个训练图像之间的相似关系进行损失计算处理,得到特征提取损失值;根据多个训练图像分别对应的待对比的图像量化编码、多个训练图像分别对应的训练二值编码、以及多个训练图像之间的相似关系进行损失计算处理,得到量化编码损失值;根据特征提取损失值及量化编码损失值训练图像处理模型;其中,训练后的特征提取网络用于对待查询图像进行特征提取处理;训练后的量化编码网络用于对待查询图像的图像特征进行量化编码处理。
在一些实施例中,训练图像组包括第一训练图像、与第一训练图像相似的第二训练图像、以及与第一训练图像不相似的第三训练图像;训练模块还用于:根据第一训练图像对应的待对比的图像量化编码与第二训练图像对应的待对比的图像量化编码之间的编码距离、以及第一训练图像对应的待对比的图像量化编码与第三训练图像对应的待对比的图像量化编码之间的编码距离,确定训练图像组的第一量化编码损失值;根据训练图像组中的任意一个训练图像的待对比的图像量化编码及训练二值编码,确定任意一个训练图像的子损失值,并对第一训练图像、第二训练图像及第三训练图像分别对应的子损失值进行融合处理,得到训练图像组的第二量化编码损失值;对第一量化编码损失值及第二量化编码损失值进行融合处理,得到用于训练图像处理模型的量化编码损失值。
在一些实施例中,训练模块还用于:根据第一量化编码损失值对应的第一权重、以及第二量化编码损失值对应的第二权重,对第一量化编码损失值及第二量化编码损失值进行加权处理,得到用于训练图像处理模型的量化编码损失值;其中,第一权重大于第二权重。
在一些实施例中,训练图像组包括第一训练图像、与第一训练图像相似的第二训练图像、以及与第一训练图像不相似的第三训练图像;训练模块还用于:根据第一训练图像对应的待对比的图像特征与第二训练图像对应的待对比的图像特征之间的特征距离、以及第一训练图像对应的待对比的图像特征与第三训练图像对应的待对比的图像特征之间的特征距离,确定用于训练图像处理模型的特征提取损失值。
在一些实施例中,训练模块还用于执行以下任意一种处理:根据特征提取损失值训练特征提取网络,根据量化编码损失值训练量化编码网络;对特征提取损失值及量化编码损失值进行融合处理,并根据得到的融合损失值训练特征提取网络及量化编码网络。
在一些实施例中,训练模块还用于:针对待对比的图像量化编码中任意一个待对比数值,执行以下处理:当任意一个待对比数值小于中间值时,将第一极值作为训练二值编码中与任意一个待对比数值对应相同编码位置的数值;当任意一个待对比数值大于或等于中间值时,将第二极值作为训练二值编码中与任意一个待对比数值对应相同编码位置的数值;其中,第一极值小于中间值,且中间值小于第二极值。
在一些实施例中,应用二值编码模块4553还用于:针对待查询图像的图像量化编码中的任意一个数值,执行以下处理:当任意一个数值小于中间值时,将中间值作为应用二值编码中与任意一个数值对应相同编码位置的数值;当任意一个数值大于或等于中间值时,将第二极值作为应用二值编码中与任意一个数值对应相同编码位置的数值。
在一些实施例中,训练模块还用于:获取多个标注图像组;其中,标注图像组包括彼此相似的多个标注图像;针对任意一个标注图像组执行以下处理:根据候选标注图像对应的标注图像特征与任意一个标注图像组中的目标标注图像对应的标注图像特征之间的特征距离,对多个候选标注图像进行筛选处理;其中,候选标注图像所在的标注图像组区别于任意一个标注图像组;将筛选出的候选标注图像添加至任意一个标注图像组中,得到训练图像组;其中,标注图像特征包括以下任意一种:通过特征提取网络进行特征提取处理得到的图像特征;方向梯度直方图HOG特征;尺度不变特征变换SIFT特征。
在一些实施例中,相似查询模块4554还用于:确定待查询图像的应用二值编码与多个候选图像分别对应的应用二值编码之间的编码距离;根据编码距离对多个候选图像进行筛选处理,得到多个相似候选图像;确定待查询图像的图像特征与多个相似候选图像分别对应的图像特征之间的特征距离;根据特征距离对多个相似候选图像进行筛选处理,得到待查询图像的相似图像。
在一些实施例中,特征提取模块4551还用于对任意一个候选图像进行特征提取处理,得到任意一个候选图像的图像特征;量化编码模块4552,还用于对任意一个候选图像的图像特征进行量化编码处理,得到任意一个候选图像的图像量化编码;应用二值编码模块4553,还用于对任意一个候选图像的图像量化编码进行应用二值编码处理,得到任意一个候选图像的应用二值编码。
在一些实施例中,应用二值编码处理用于对第一极值及第二极值所约束的数值范围内的数值进行二值化;应用二值编码模块4553,还用于:对待查询图像的图像量化编码进行激活处理,以使激活后的图像量化编码中的数值位于数值范围内。
在一些实施例中,基于人工智能的图像处理装置455还包括存量升级模块,用于:获取待查询图像的历史图像特征;其中,历史图像特征用于进行量化编码处理,得到待查询图像的图像量化编码。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令(即可执行指令),该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本申请实施例上述的基于人工智能的图像处理方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的基于人工智能的图像处理方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
以上,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (15)
1.一种基于人工智能的图像处理方法,其特征在于,所述方法包括:
对待查询图像进行特征提取处理,得到图像特征;
对所述待查询图像的图像特征进行量化编码处理,得到图像量化编码;
对所述待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;
根据所述待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;
根据所述待查询图像的图像特征对所述多个相似候选图像进行相似查询处理,得到所述待查询图像的相似图像。
2.根据权利要求1所述的方法,其特征在于,所述对待查询图像进行特征提取处理之前,所述方法还包括:
通过图像处理模型中的特征提取网络对训练图像组中的训练图像进行特征提取处理,得到待对比的图像特征;
通过所述图像处理模型中的量化编码网络对所述待对比的图像特征进行量化编码处理,得到待对比的图像量化编码;
对所述待对比的图像量化编码进行训练二值编码处理,得到训练二值编码;
根据所述训练图像组中的多个训练图像分别对应的待对比的图像特征、以及所述多个训练图像之间的相似关系进行损失计算处理,得到特征提取损失值;
根据所述多个训练图像分别对应的待对比的图像量化编码、所述多个训练图像分别对应的训练二值编码、以及所述多个训练图像之间的相似关系进行损失计算处理,得到量化编码损失值;
根据所述特征提取损失值及所述量化编码损失值训练所述图像处理模型;
其中,训练后的所述特征提取网络用于对所述待查询图像进行特征提取处理;训练后的所述量化编码网络用于对所述待查询图像的图像特征进行量化编码处理。
3.根据权利要求2所述的方法,其特征在于,所述训练图像组包括第一训练图像、与所述第一训练图像相似的第二训练图像、以及与所述第一训练图像不相似的第三训练图像;
所述根据所述多个训练图像分别对应的待对比的图像量化编码、所述多个训练图像分别对应的训练二值编码、以及所述多个训练图像之间的相似关系进行损失计算处理,得到量化编码损失值,包括:
根据所述第一训练图像对应的待对比的图像量化编码与所述第二训练图像对应的待对比的图像量化编码之间的编码距离、以及所述第一训练图像对应的待对比的图像量化编码与所述第三训练图像对应的待对比的图像量化编码之间的编码距离,确定所述训练图像组的第一量化编码损失值;
根据所述训练图像组中的任意一个训练图像的待对比的图像量化编码及训练二值编码,确定所述任意一个训练图像的子损失值,并对所述第一训练图像、所述第二训练图像及所述第三训练图像分别对应的子损失值进行融合处理,得到所述训练图像组的第二量化编码损失值;
对所述第一量化编码损失值及所述第二量化编码损失值进行融合处理,得到用于训练所述图像处理模型的量化编码损失值。
4.根据权利要求3所述的方法,其特征在于,所述对所述第一量化编码损失值及所述第二量化编码损失值进行融合处理,得到用于训练所述图像处理模型的量化编码损失值,包括:
根据所述第一量化编码损失值对应的第一权重、以及所述第二量化编码损失值对应的第二权重,对所述第一量化编码损失值及所述第二量化编码损失值进行加权处理,得到用于训练所述图像处理模型的量化编码损失值;
其中,所述第一权重大于所述第二权重。
5.根据权利要求2所述的方法,其特征在于,所述训练图像组包括第一训练图像、与所述第一训练图像相似的第二训练图像、以及与所述第一训练图像不相似的第三训练图像;
所述根据所述训练图像组中的多个训练图像分别对应的待对比的图像特征、以及所述多个训练图像之间的相似关系进行损失计算处理,得到特征提取损失值,包括:
根据所述第一训练图像对应的待对比的图像特征与所述第二训练图像对应的待对比的图像特征之间的特征距离、以及所述第一训练图像对应的待对比的图像特征与所述第三训练图像对应的待对比的图像特征之间的特征距离,确定用于训练所述图像处理模型的特征提取损失值。
6.根据权利要求2所述的方法,其特征在于,所述根据所述特征提取损失值及所述量化编码损失值训练所述图像处理模型,包括:
执行以下任意一种处理:
根据所述特征提取损失值训练所述特征提取网络,根据所述量化编码损失值训练所述量化编码网络;
对所述特征提取损失值及所述量化编码损失值进行融合处理,并根据得到的融合损失值训练所述特征提取网络及所述量化编码网络。
7.根据权利要求2所述的方法,其特征在于,所述对所述待对比的图像量化编码进行训练二值编码处理,得到训练二值编码,包括:
针对所述待对比的图像量化编码中任意一个待对比数值,执行以下处理:
当所述任意一个待对比数值小于中间值时,将第一极值作为所述训练二值编码中与所述任意一个待对比数值对应相同编码位置的数值;
当所述任意一个待对比数值大于或等于所述中间值时,将第二极值作为所述训练二值编码中与所述任意一个待对比数值对应相同编码位置的数值;其中,所述第一极值小于所述中间值,且所述中间值小于所述第二极值;
所述对所述待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码,包括:
针对所述待查询图像的图像量化编码中的任意一个数值,执行以下处理:
当所述任意一个数值小于所述中间值时,将所述中间值作为所述应用二值编码中与所述任意一个数值对应相同编码位置的数值;
当所述任意一个数值大于或等于所述中间值时,将所述第二极值作为所述应用二值编码中与所述任意一个数值对应相同编码位置的数值。
8.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取多个标注图像组;其中,所述标注图像组包括彼此相似的多个标注图像;
针对任意一个标注图像组执行以下处理:
根据候选标注图像对应的标注图像特征与所述任意一个标注图像组中的目标标注图像对应的标注图像特征之间的特征距离,对多个所述候选标注图像进行筛选处理;其中,所述候选标注图像所在的标注图像组区别于所述任意一个标注图像组;
将筛选出的候选标注图像添加至所述任意一个标注图像组中,得到训练图像组;
其中,所述标注图像特征包括以下任意一种:通过所述特征提取网络进行特征提取处理得到的图像特征;方向梯度直方图HOG特征;尺度不变特征变换SIFT特征。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像,包括:
确定所述待查询图像的应用二值编码与所述多个候选图像分别对应的应用二值编码之间的编码距离;
根据所述编码距离对所述多个候选图像进行筛选处理,得到多个相似候选图像;
所述根据所述待查询图像的图像特征对所述多个相似候选图像进行相似查询处理,得到所述待查询图像的相似图像,包括:
确定所述待查询图像的图像特征与所述多个相似候选图像分别对应的图像特征之间的特征距离;
根据所述特征距离对所述多个相似候选图像进行筛选处理,得到所述待查询图像的相似图像。
10.根据权利要求9所述的方法,其特征在于,所述确定所述待查询图像的应用二值编码与所述多个候选图像分别对应的应用二值编码之间的编码距离之前,所述方法还包括:
针对任意一个候选图像执行以下处理:
对所述任意一个候选图像进行特征提取处理,得到所述任意一个候选图像的图像特征;
对所述任意一个候选图像的图像特征进行量化编码处理,得到所述任意一个候选图像的图像量化编码;
对所述任意一个候选图像的图像量化编码进行应用二值编码处理,得到所述任意一个候选图像的应用二值编码。
11.根据权利要求1至8任一项所述的方法,其特征在于,所述应用二值编码处理用于对第一极值及第二极值所约束的数值范围内的数值进行二值化;
所述对所述待查询图像的图像量化编码进行应用二值编码处理之前,所述方法还包括:
对所述待查询图像的图像量化编码进行激活处理,以使激活后的所述图像量化编码中的数值位于所述数值范围内。
12.根据权利要求1至8任一项所述的方法,其特征在于,所述方法还包括:
获取所述待查询图像的历史图像特征;
其中,所述历史图像特征用于进行量化编码处理,得到所述待查询图像的图像量化编码。
13.一种基于人工智能的图像处理装置,其特征在于,所述装置包括:
特征提取模块,用于对待查询图像进行特征提取处理,得到图像特征;
量化编码模块,用于对所述待查询图像的图像特征进行量化编码处理,得到图像量化编码;
应用二值编码模块,用于对所述待查询图像的图像量化编码进行应用二值编码处理,得到应用二值编码;
相似查询模块,用于根据所述待查询图像的应用二值编码对多个候选图像进行相似查询处理,得到多个相似候选图像;
所述相似查询模块,还用于根据所述待查询图像的图像特征对所述多个相似候选图像进行相似查询处理,得到所述待查询图像的相似图像。
14.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至12任一项所述的基于人工智能的图像处理方法。
15.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至12任一项所述的基于人工智能的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110900782.4A CN113343020B (zh) | 2021-08-06 | 2021-08-06 | 基于人工智能的图像处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110900782.4A CN113343020B (zh) | 2021-08-06 | 2021-08-06 | 基于人工智能的图像处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113343020A true CN113343020A (zh) | 2021-09-03 |
CN113343020B CN113343020B (zh) | 2021-11-26 |
Family
ID=77481087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110900782.4A Active CN113343020B (zh) | 2021-08-06 | 2021-08-06 | 基于人工智能的图像处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113343020B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863138A (zh) * | 2022-07-08 | 2022-08-05 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、存储介质及设备 |
CN115062180A (zh) * | 2022-08-15 | 2022-09-16 | 阿里巴巴(中国)有限公司 | 对象查询的方法、电子设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679863A (zh) * | 2015-02-28 | 2015-06-03 | 武汉烽火众智数字技术有限责任公司 | 一种基于深度学习的以图搜图方法和系统 |
CN105469096A (zh) * | 2015-11-18 | 2016-04-06 | 南京大学 | 一种基于哈希二值编码的特征袋图像检索方法 |
CN106886599A (zh) * | 2017-02-28 | 2017-06-23 | 北京京东尚科信息技术有限公司 | 图像检索方法以及装置 |
CN107918636A (zh) * | 2017-09-07 | 2018-04-17 | 北京飞搜科技有限公司 | 一种人脸快速检索方法、系统 |
US20180189325A1 (en) * | 2016-12-29 | 2018-07-05 | Shutterstock, Inc. | Clustering search results based on image composition |
CN108920727A (zh) * | 2018-08-03 | 2018-11-30 | 厦门大学 | 视觉检索中的紧凑视觉描述子深度神经网络生成模型 |
US10311288B1 (en) * | 2017-03-24 | 2019-06-04 | Stripe, Inc. | Determining identity of a person in a digital image |
CN110019990A (zh) * | 2017-07-14 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 样本筛选的方法和装置、业务对象数据搜索的方法和装置 |
CN110110125A (zh) * | 2019-04-28 | 2019-08-09 | 重庆学析优科技有限公司 | 一种快速精确的图片搜索匹配方法及系统 |
CN110457503A (zh) * | 2019-07-31 | 2019-11-15 | 北京大学 | 一种快速优化深度哈希图像编码方法及目标图像检索方法 |
US20200342328A1 (en) * | 2019-04-26 | 2020-10-29 | Naver Corporation | Training a convolutional neural network for image retrieval with a listwise ranking loss function |
CN112632314A (zh) * | 2020-12-25 | 2021-04-09 | 苏州浪潮智能科技有限公司 | 一种图像检索方法、系统、设备以及介质 |
-
2021
- 2021-08-06 CN CN202110900782.4A patent/CN113343020B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679863A (zh) * | 2015-02-28 | 2015-06-03 | 武汉烽火众智数字技术有限责任公司 | 一种基于深度学习的以图搜图方法和系统 |
CN105469096A (zh) * | 2015-11-18 | 2016-04-06 | 南京大学 | 一种基于哈希二值编码的特征袋图像检索方法 |
US20180189325A1 (en) * | 2016-12-29 | 2018-07-05 | Shutterstock, Inc. | Clustering search results based on image composition |
CN106886599A (zh) * | 2017-02-28 | 2017-06-23 | 北京京东尚科信息技术有限公司 | 图像检索方法以及装置 |
US10311288B1 (en) * | 2017-03-24 | 2019-06-04 | Stripe, Inc. | Determining identity of a person in a digital image |
CN110019990A (zh) * | 2017-07-14 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 样本筛选的方法和装置、业务对象数据搜索的方法和装置 |
CN107918636A (zh) * | 2017-09-07 | 2018-04-17 | 北京飞搜科技有限公司 | 一种人脸快速检索方法、系统 |
CN108920727A (zh) * | 2018-08-03 | 2018-11-30 | 厦门大学 | 视觉检索中的紧凑视觉描述子深度神经网络生成模型 |
US20200342328A1 (en) * | 2019-04-26 | 2020-10-29 | Naver Corporation | Training a convolutional neural network for image retrieval with a listwise ranking loss function |
CN110110125A (zh) * | 2019-04-28 | 2019-08-09 | 重庆学析优科技有限公司 | 一种快速精确的图片搜索匹配方法及系统 |
CN110457503A (zh) * | 2019-07-31 | 2019-11-15 | 北京大学 | 一种快速优化深度哈希图像编码方法及目标图像检索方法 |
CN112632314A (zh) * | 2020-12-25 | 2021-04-09 | 苏州浪潮智能科技有限公司 | 一种图像检索方法、系统、设备以及介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863138A (zh) * | 2022-07-08 | 2022-08-05 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、存储介质及设备 |
CN114863138B (zh) * | 2022-07-08 | 2022-09-06 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、存储介质及设备 |
CN115062180A (zh) * | 2022-08-15 | 2022-09-16 | 阿里巴巴(中国)有限公司 | 对象查询的方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113343020B (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN113688304A (zh) | 搜索推荐模型的训练方法、搜索结果排序的方法及装置 | |
CN112307762B (zh) | 搜索结果的排序方法及装置、存储介质、电子装置 | |
CN111667056B (zh) | 用于搜索模型结构的方法和装置 | |
CN113343020B (zh) | 基于人工智能的图像处理方法、装置及电子设备 | |
CN111352965A (zh) | 序列挖掘模型的训练方法、序列数据的处理方法及设备 | |
CN113821657A (zh) | 基于人工智能的图像处理模型训练方法及图像处理方法 | |
CA3148760C (en) | Automated image retrieval with graph neural network | |
CN114358188A (zh) | 特征提取模型处理、样本检索方法、装置和计算机设备 | |
CN113821670B (zh) | 图像检索方法、装置、设备及计算机可读存储介质 | |
CN113821667B (zh) | 基于人工智能的图像处理方法、装置及电子设备 | |
CN113254687B (zh) | 图像检索、图像量化模型训练方法、装置和存储介质 | |
CN111898675A (zh) | 信贷风控模型生成方法、装置、评分卡生成方法、机器可读介质及设备 | |
CN115827257B (zh) | 用于处理器体系的cpu容量预测方法及其系统 | |
CN114329029B (zh) | 对象检索方法、装置、设备及计算机存储介质 | |
CN111143178A (zh) | 用户行为分析方法、装置及设备 | |
CN112561031A (zh) | 基于人工智能的模型搜索方法、装置及电子设备 | |
CN112307883A (zh) | 训练方法、装置、电子设备以及计算机可读存储介质 | |
CN114676279B (zh) | 图像检索方法、装置、设备及计算机可读存储介质 | |
CN114329028A (zh) | 一种数据处理方法、设备以及计算机可读存储介质 | |
CN115879508A (zh) | 一种数据处理方法及相关装置 | |
WO2024139703A1 (zh) | 对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品 | |
CN117591685A (zh) | 一种内容检索方法、装置、电子设备和存储介质 | |
CN117095460A (zh) | 基于长短时关系预测编码的自监督群体行为识别方法及其识别系统 | |
CN117251761A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40051400 Country of ref document: HK |