CN117009560A - 图像处理方法、装置、设备及计算机存储介质 - Google Patents
图像处理方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN117009560A CN117009560A CN202211430258.6A CN202211430258A CN117009560A CN 117009560 A CN117009560 A CN 117009560A CN 202211430258 A CN202211430258 A CN 202211430258A CN 117009560 A CN117009560 A CN 117009560A
- Authority
- CN
- China
- Prior art keywords
- image
- feature
- segmentation result
- features
- iteration
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 230000011218 segmentation Effects 0.000 claims abstract description 268
- 238000000034 method Methods 0.000 claims abstract description 113
- 230000008569 process Effects 0.000 claims description 65
- 238000012545 processing Methods 0.000 claims description 54
- 238000010586 diagram Methods 0.000 claims description 50
- 230000015654 memory Effects 0.000 claims description 41
- 238000004590 computer program Methods 0.000 claims description 26
- 230000004927 fusion Effects 0.000 claims description 18
- 238000007499 fusion processing Methods 0.000 claims description 10
- 238000011156 evaluation Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 5
- 238000012549 training Methods 0.000 abstract description 59
- 230000006870 function Effects 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 20
- 238000002372 labelling Methods 0.000 description 18
- 230000008093 supporting effect Effects 0.000 description 17
- 238000010801 machine learning Methods 0.000 description 16
- 238000013473 artificial intelligence Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 210000003128 head Anatomy 0.000 description 9
- 238000005457 optimization Methods 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000003709 image segmentation Methods 0.000 description 8
- 238000003058 natural language processing Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 6
- 238000011160 research Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000001976 improved effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 241000282326 Felis catus Species 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000013526 transfer learning Methods 0.000 description 3
- 101100465000 Mus musculus Prag1 gene Proteins 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/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
- 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/5866—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- 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
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Library & Information Science (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种图像处理方法、装置、设备及计算机存储介质,涉及图像语义分割技术领域,该方法利用数量极少的训练样本以及图像级的文本标签,使模型具备对该类别物体的像素级分割能力的解决方案,其在第一阶段,依靠视觉‑语言预训练模型,可以由类别标签文本生成支撑图像的较为粗糙的初始掩膜,在第二阶段,依靠相互迭代优化的机制,可以将支撑图像和查询图像的粗糙掩膜不断优化,从而可以降低小样本分割任务中,对支撑样本像素级标注的依赖,依靠类别文本即可对支撑图像进行分割,进一步减少了对新类别训练标签的依赖,有助于减少标注工作量。
Description
技术领域
本申请涉及人工智能(Artificial Intelligence,AI)技术领域,尤其涉及图像语义分割技术领域,提供一种图像处理方法、装置、设备及计算机存储介质。
背景技术
图像语义分割,是指对图像进行像素级的分类,以输出图像中特定类别物体的掩膜。图像语义分割的过程通常可以采用机器学习(Machine Learning,ML)得到的图像语义分割模型来进行,为了让模型具备分割特定类别物体的能力,需要预先对该类物体进行大量的像素级标注,以此作为训练监督数据来进行模型训练。
但是,为了保障机器学习的效果,所需要的训练样本的数量是很庞大的,由此针对每个训练样本进行像素级的标注是极其耗费时间的,使得图像语义分割模型的训练与应用场景都受到限制。为了解决这一问题,小样本语义分割(Few-shot semanticsegmentation,FSS)技术应运而生,小样本语义分割旨在通过数量极少的训练样本及其像素级的标注,使模型具备对特定类别物体的分割能力。虽然这类方法已经减少了对训练样本数量的要求,但是依然需要对每个类别的训练样本进行高质量的像素级标注,实施的复杂程度仍然较高,仍然是极其耗费时间的。
发明内容
本申请实施例提供一种图像处理方法、装置、设备及计算机存储介质,用于降低了图像语义分割方案实施的复杂程度,减少了标注所带来的时间成本。
一方面,提供一种图像处理方法,该方法包括:
获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,所述支撑图像包括所述目标对象;
基于所述类别标签文本与所述支撑图像之间的特征相似度,获得所述目标对象在所述支撑图像中的第一分割结果,以及,基于所述类别标签文本与所述查询图像之间的特征相似度,获得所述目标对象在所述查询图像中的第二分割结果;
以所述第一分割结果和所述第二分割结果初始化分割结果对,基于所述目标对象在所述支撑图像和所述查询图像中的特征关联性,对所述分割结果对进行迭代更新;
在迭代结束时,基于最后一次获得的分割结果对,获得所述目标对象在所述查询图像中的目标分割结果。
一方面,提供一种图像处理装置,该装置包括:
输入单元,用于获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,所述支撑图像包括所述目标对象;
粗分割单元,用于基于所述类别标签文本与所述支撑图像之间的特征相似度,获得所述目标对象在所述支撑图像中的第一分割结果,以及,基于所述类别标签文本与所述查询图像之间的特征相似度,获得所述目标对象在所述查询图像中的第二分割结果;
迭代更新单元,用于以所述第一分割结果和所述第二分割结果初始化分割结果对,基于所述目标对象在所述支撑图像和所述查询图像中的特征关联性,对所述分割结果对进行迭代更新;
输出单元,在迭代结束时,基于最后一次获得的分割结果对,获得所述目标对象在所述查询图像中的目标分割结果。
在一种可能的实施方式中,所述粗分割单元,具体用于:
基于所述类别编码特征与所述图像编码特征之间的特征相似度,确定所述图像编码特征属于所述目标对象对应类别的概率;
基于所述概率进行反向传播,确定所述图像编码特征在其各个特征通道上关于所述评估值的梯度;
基于获得的各个梯度,确定所述各个特征通道各自对应的权重值;
对获得的各个权重值和所述图像编码特征进行加权处理,获得所述梯度热力图。
在一种可能的实施方式中,所述迭代更新单元,具体用于:
初始化所述支撑图像对应的第一隐状态量,以及所述查询图像对应的第二隐状态量,其中,每个隐状态量用于表征相应图像当前的分割结果的置信度;
分别对所述支撑图像和所述查询图像进行图像特征提取,获得相应的支撑图像特征和查询图像特征;
基于所述支撑图像特征和所述查询图像特征之间的特征相似度,以及所述第一隐状态量和所述第二隐状态量,对所述分割结果对进行迭代更新。
在一种可能的实施方式中,所述支撑图像特征和所述查询图像特征均包括L个图像尺度的特征;则所述迭代更新单元,具体用于:
针对所述L个图像尺度,分别执行如下步骤:
针对一个图像尺度,对所述图像尺度的支撑图像特征与所述第t-1次迭代获得的第一分割结果进行特征融合处理,获得融合特征图;
基于所述融合特征图与所述图像尺度的查询图像特征之间的特征相似度,获得所述图像尺度的子相似特征信息;
对获得的L个子相似特征信息进行叠加处理,获得所述相似特征信息。
在一种可能的实施方式中,所述迭代更新单元,具体用于:
分别确定所述融合特征图与所述图像尺度的查询图像特征在各个特征通道上的通道特征相似度;
基于获得的各个通道特征相似度沿特征通道进行连接处理,获得中间特征图;
对所述中间特征图进行卷积处理,获得所述图像尺度对应的子相似特征信息。
在一种可能的实施方式中,所述迭代更新单元,具体用于:
从所述L个图像尺度中最小图像尺度开始进行迭代叠加,直至最大图像尺度为止,其中,每一次迭代叠加处理包括如下步骤:
对上一次迭代获得的子相似特征信息进行上采样处理,获得与下一级图像尺度的尺度相同的子相似特征信息;其中,第一次迭代的子相似特征信息为所述最小图像尺度对应的子相似特征信息;
将得到的子相似特征信息与所述下一级图像尺度对应的子相似特征信息进行叠加处理。
在一种可能的实施方式中,所述迭代更新单元,具体用于:
对所述更新的第二隐状态量以及所述相似特征信息进行至少一次卷积处理,获得本次迭代的第二分割结果;
将所述本次迭代的第二分割结果和所述第t-1次迭代获得的第二分割结果在特征通道上进行连接处理后,获得合并分割结果;
对所述合并分割结果进行至少一次卷积处理,获得所述更新的第二分割结果。
一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种方法的步骤。
一方面,提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一种方法的步骤。
一方面,提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述任一种方法的步骤。
本申请实施例中,根据类别标签文本来生成支撑图像和查询图像的初始分割结果,并利用目标对象在支撑图像和查询图像中的特征关联性,来相互优化支撑图像和查询图像的初始分割结果,最终得到对查询图像的高质量分割结果,因此,本申请在模型训练完成之后的使用阶段,能够通过类别标签文本来对图像分割的过程进行引导,使得依靠图像级的文本标签即可取得与使用像素级标签相当的效果,降低了对新类别支撑图像掩膜的依赖,以及通过支撑图像和查询图像之间的相互优化,使得针对新类别不需要对支撑图像进行像素级标注,只需要新类别的类别标签文本即可,从而降低了图像语义分割方案实施的复杂程度,减少了标注所带来的时间成本,提升了图像语义分割的可实施性,具备实际的应用价值。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的应用场景示意图;
图2为本申请实施例提供的图像语义分割模型的结构示意图;
图3为本申请实施例提供的图像语义分割模型的训练流程示意图;
图4为本申请实施例提供的图像处理方法的流程示意图;
图5为本申请实施例提供的初始分割过程的流程示意图;
图6为本申请实施例提供的CLIP-CAM模块的处理流程示意图;
图7为本申请实施例提供的一次迭代更新过程的流程示意图;
图8为本申请实施例提供的Neck模块的处理流程示意图;
图9为本申请实施例提供的Head模块的处理流程示意图;
图10为本申请实施例提供的技术方案与其他方案所得到的分割结果进行对比的示意图;
图11为本申请实施例提供的图像处理装置的一种结构示意图;
图12为本申请实施例提供的计算机设备的组成结构示意图;
图13为应用本申请实施例的另一种计算机设备的组成结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
(1)支撑图像:是指小样本语义分割技术中的“小样本”,也可以称为参考图像,对于一个未进行预训练的新类别而言,支撑图像为属于该新类别的图像,即包含了属于该新类别的物体的图像,相当于该新类别的“训练数据”,用以支撑对新类别的分割能力。通常情况下,相较于常见的机器学习中训练数据的数量级而言,支撑图像的数量是极少的。
(2)查询图像:是指待进行图像语义分割的输入图像,在模型测试阶段,查询图像即为包含新类别物体的图像,相当于机器学习中实际的测试集。
(3)图像掩膜(mask):用选定的图像、图形或物体,对待处理的图像的全部或局部进行遮挡,来控制图像处理的区域或处理过程,用于覆盖的特定图像或物体称为掩模,在光学图像处理中,掩模可以是胶片、滤光片等,数字图像处理中,掩模为二维矩阵数组,有时也用多值图像。数字图像处理中,图像掩模主要用于:提取感兴趣区,用预先制作的感兴趣区掩模与待处理图像相乘,得到感兴趣区图像,感兴趣区内图像值保持不变,而区外图像值都为0;屏蔽作用,用掩模对图像上某些区域作屏蔽,使其不参加处理或不参加处理参数的计算,或仅对屏蔽区作处理或统计;结构特征提取,用相似性变量或图像匹配方法检测和提取图像中与掩模相似的结构特征;特殊形状图像的制作。
(4)反向传播(Backpropagation,BP):BP算法是适合于多层神经元网络的一种学***方和作为目标函数,转入反向传播,逐层求出目标函数对各神经元权值的偏导数,构成目标函数对权值向量的梯度,作为修改权值的依据,网络的学习在权值修改过程中完成。
(5)图像分割结果,在图像语义分割场景中,通常是从图像中分割出相应的像素级掩膜,因此,通常而言的图像分割结果即是指图像的分割掩膜,当然,在一些场景中,也可以通过其他形式来进行表示,本申请实施例对此不做限制。
本申请实施例涉及AI技术领域,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。本申请实施例涉及人工智能中的机器学习(Machine Learning,ML)技术以及计算机视觉技术(Computer Vision,CV)。
计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,并发挥越来越重要的价值。
本申请实施例中涉及基于AI技术进行图像语义分割,来得到输入图像中特定对象的分割掩膜,以用于下游应用。在进行图像语义分割时,则需要采用基于深度学习的人工神经网络模型,即本申请实施例采用机器学习的方法获得的图像语义分割模型,图像语义分割基于机器学习实现处理和理解需要分割出的目标对象的类别标签文本的能力以及通过支撑图像和查询图像来对二者的初始分割掩膜进行相互优化的能力,例如可以基于类别标签文本来指导支撑图像和查询图像的初始掩膜的分割,使得通过类别标签文本即可取得与像素级标签相当甚至更好的图像分割效果,从而可以降低对新类别支撑图像的像素级图像标注的依赖,有利于在实时性较高的场景下学习分割新类别。
具体而言,在本申请实施例中的图像语义分割模型可分为两部分,包括训练部分和应用部分。其中,训练部分就涉及到机器学习这一技术领域,在训练部分中,通过机器学习这一技术训练人工神经网络模型(即后续提及的图像语义分割模型),使得基于本申请实施例中给出的支撑图像、查询图像、类别标签文本等训练数据训练人工神经网络模型,并通过优化算法不断调整模型参数,直至模型收敛;应用部分用于使用在训练部分训练得到的人工神经网络模型来根据实际使用过程中涉及到已训练的旧类别或者未训练的新类别的查询图像、支撑图像以及类别标签文本来进行图像语义分割。另外,还需要说明的是,本申请实施例中人工神经网络模型可以是在线训练也可以是离线训练,在此不做具体限定。本申请实施例中主要是以离线训练为例进行举例说明的。
下面对本申请实施例的设计思想进行简要介绍。
目前,图像语义分割所采用的机器学习方案主要包括如下几种:
(1)元学习方案以及迁移学习方案,元学习方案通过提取支撑图像与查询图像的特征,并对支撑图像特征与查询图像特征进行融合后,基于融合特征预测查询图像的像素级掩膜。迁移学习方案将支撑图像-支撑图像掩膜作为训练数据,对预训练模型进行微调,微调后的模型具有对支撑图像掩膜区域所属类别的分割能力,并可直接用于查询图像的分割。但是,元学习方案与迁移学习方案均需要支撑图像的像素级掩膜,用于指导支撑图像特征与查询图像特征的融合,然而,进行像素级标注是个极其耗时的过程,对于实时性要求较高的***,通过像素级标注去学习分割新类别是无法满足需求的。
(2)隐式迭代方案,这类方法将类别文本的词向量直接连接到支撑图像特征和查询图像特征的每个位置,使得处理后的支撑图像特征与查询图像特征包含类别文本信息,再对支撑图像特征与查询图像特征进行融合,并根据融合结果对支撑图像特征与查询图像特征进行增强,最终根据增强特征来进行分割掩膜的预测。但是,词向量间的相关性与图像特征间的相关性并没有关系,因此根据词向量间的联系来指导图像特征的融合的可解释性较差,迭代过程中的也很难根据中间输出结果进行针对性优化,因此该方案的性能较差。
鉴于此,本申请实施例提供了一种图像处理方法、装置、设备及计算机存储介质,在该方法中,能够根据类别标签文本来生成支撑图像和查询图像的初始分割结果,并利用目标对象在支撑图像和查询图像中的特征关联性,来相互优化支撑图像和查询图像的初始分割结果,最终得到对查询图像的高质量分割结果,因此,本申请在模型训练完成之后的使用阶段,能够通过类别标签文本来对图像分割的过程进行引导,使得依靠图像级的文本标签即可取得与使用像素级标签相当的效果,降低了对新类别支撑图像掩膜的依赖,以及通过支撑图像和查询图像之间的相互优化,使得针对新类别不需要对支撑图像进行像素级标注,只需要新类别的类别标签文本即可,从而降低了图像语义分割方案实施的复杂程度,减少了标注所带来的时间成本,提升了图像语义分割的可实施性,有利于在实时性较高的场景下学习分割新类别,具备实际的应用价值。
此外,本申请实施例通过视觉-语言预训练模型,将文本特征与图像特征映射到相同特征空间,从而可以合理地根据文本特征指导图像特征融合;并且,本申请实施例在每次迭代中都生成了预测掩膜,因此可以通过添加辅助损失函数的方法优化每一次迭代。
下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
本申请实施例提供的方案可以适用于大多数涉及图像语义分割的场景中,比如适用于图像检索或者以图搜图等场景中。如图1所示,为本申请实施例提供的一种应用场景示意图,在该场景中,可以包括终端设备101和服务器102。
终端设备101例如可以为手机、平板电脑(PAD)、笔记本电脑、台式电脑、智能电视、智能车载设备以及智能可穿戴设备等任意具备一定计算能力的设备。终端设备101可以安装有目标应用,目标应用用于提供输入查询图像以及类别标签文本的功能。本申请实施例涉及的应用可以是软件客户端,也可以是网页、小程序等客户端,不限制客户端的具体类型。
服务器102提供后台服务,例如可以用于提供包括图像语义分割功能在内的后台服务。服务器102例如可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、即内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云端服务器,但并不局限于此。
需要说明的是,本申请实施例中的图像处理方法可以由终端设备101或者服务器102单独执行,也可以由服务器102和终端设备101共同执行。例如,由终端设备101在获取到查询图像、支撑图像以及相应的类别标签文本后,能够根据类别标签文本来生成支撑图像和查询图像的初始分割结果,并利用目标对象在支撑图像和查询图像中的特征关联性,来相互优化支撑图像和查询图像的初始分割结果,最终得到对查询图像的高质量分割结果,也就是说,在终端设备101的设备处理能力允许时,则图像语义分割的整个过程都可以是在终端设备101中进行的,或者,由服务器102完整执行上述过程。再或者,由终端设备101获取到查询图像、支撑图像以及相应的类别标签文本后,能够根据类别标签文本来生成支撑图像和查询图像的初始分割结果,再由服务器102利用目标对象在支撑图像和查询图像中的特征关联性,来相互优化支撑图像和查询图像的初始分割结果,最终得到对查询图像的高质量分割结果,或者,由服务器102实现模型训练的过程,训练得到的图像语义分割模型部署于终端设备101中执行图像语义分割的过程。
服务器102或者终端设备101都可以包括一个或多个处理器、存储器以及与交互I/O接口等。其中,服务器102或者终端设备101的存储器中还可以存储本申请实施例提供的图像处理方法中各自所需执行的程序指令,这些程序指令被处理器执行时能够用以实现本申请实施例提供的图像语义分割的过程。
在一种可能的实施方式中,本申请实施例的方法可以应用于以图搜图场景。具体的,当输入一个查询图像时,同时还可以输入需要分割出的目标对象的类别标签文本,则可以根据该类别标签文本,从图像库中找到可能包含该目标对象的支撑图像,缩小查询范围,进而将查询图像、类别标签文本以及支撑图像输入至图像语义分割模型中,以从查询图像和支撑图像中分割出目标对象的分割掩膜,则可以实现查询与该查询图像包含同种内容且在搜索结果中标识出其所在位置的效果。
该方法在其他搜索场景中的实现过程可参见上述以图搜图场景的介绍,因而在此不再过多赘述。
本申请实施例中,终端设备101和服务器102之间可以通过一个或者多个网络103进行直接或间接的通信连接。该网络103可以是有线网络,也可以是无线网络,例如无线网络可以是移动蜂窝网络,或者可以是无线保真(Wireless-Fidelity,WIFI)网络,当然还可以是其他可能的网络,本申请实施例对此不做限制。
需要说明的是,图1所示只是举例说明,实际上终端设备和服务器的数量不受限制,在本申请实施例中不做具体限定。
下面结合上述描述的应用场景,参考附图来描述本申请示例性实施方式提供的图像处理方法,需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。
本申请实施例提供图像语义分割方案的总体流程可以包括两个部分,即训练阶段和应用阶段,在训练阶段通过训练数据对图像语义分割模型进行多次迭代训练,直至该模型达到收敛,并对其进行测试能够满足性能要求时,则可进入应用阶段,用于实际场景中的图像语义分割过程。因此,下面首先对训练过程进行介绍。
参见图2所示,为本申请实施例提供的图像语义分割模型的结构示意图,该模型包含五个模块,即文本-视觉初始化(Contrastive Language-Image Pre-Training-ClassActivation Mapping,CLIP-CAM)模块、迭代记忆优化(Iterative Model Reconstuction,IMR)模块、骨干网络(Backbone)、特征聚合(Neck)模块和分割预测(Head)模块。各个模块的具体作用将在后续的方法流程中逐步进行介绍,因而在此先不过多进行赘述。
参见图3所示,为本申请实施例提供的图像语义分割模型的训练流程示意图,其包括如下步骤:
步骤301:获取图像训练样本,每个图像训练样本包括支撑图像及其标注分割结果、查询图像及其标注分割结果和类别标签文本。
为了尽可能的减少样本标注的工作量,本申请实施例仍然基于小样本语义分割技术的思想,采用少量的训练样本实现图像语义分割的效果。因此,本申请实施例通过采集包含同一对象的多个图像对来作为图像训练样本,并为其标注相应的类别标签文本,也就是说,每个图像训练样本包含如下内容:
(1)支撑图像和查询图像,在训练阶段,支撑图像和查询图像的作用实质上是对等的,都是包含同一对象的图像样本。
(2)类别标签文本,用于表征前述的支撑图像和查询图像中所包含的同一对象的名称或者类别等,可以采用“a photo of the[]”作为输入,其中“[]”内是类别文本L。例如,当支撑图像和查询图像中所包含的同一对象为手机,则将“a photo of the[cellphone]”作为输入,或者,当支撑图像和查询图像中所包含的同一对象为摩托车,则将“aphoto of the[motorcycle]”作为输入,其他对象则以此类推,不再赘述。
(3)支撑图像的标注分割结果和查询图像的标注分割结果,这里的标注分割结果可以是指标注的像素级掩膜。这里是考虑到本申请实施例提供的图像语义分割模型的特性,其在每次迭代中都生成了预测的分割结果,因此可以通过添加辅助损失函数的方法优化每一次迭代,从而能够加快模型训练的进程,提升训练效率。
但需要说明的是,上述的涉及到的图像训练样本仅仅涉及到少部分类别,而在实际应用时并不限制仅对上述训练时采用的类别进行分割,也就是说,本申请实施例能够在训练阶段利用少部分类别来训练模型参数,学习类别标签文本对于图像分割过程的指导能力,在应用阶段则可以利用学习到的指导能力来应对新类别的图像分割,从而对于这些新类别而言,是完全不需要进行像素级掩膜的标注的,而仅需该新类别的类别标签文本即可。
步骤302:通过本轮迭代的图像语义分割模型,对本轮迭代的图像训练样本进行图像语义分割,获得各个图像训练样本的预测分割结果。
本申请实施例中,在每一轮迭代训练时,可以将全部的图像训练样本作为本轮的输入,也可以抽取部分的图像训练样本作为本轮的输入。其中,图像语义分割的过程将在后续进行具体的介绍,因而在此不进行过多的赘述。
步骤303:基于每个图像训练样本的预测分割结果以及相应的标注分割结果,确定本轮迭代的图像语义分割模型的模型损失值。
在一种可能的实施方式中,模型损失值可以采用任意可能的损失函数来计算,例如交叉熵损失函数(Cross Entropy Loss Function)、均方差(Mean Squared Error、MSE)损失函数、平方绝对误差损失函数、最大似然损失(Likelihood Loss,LHL)函数等,当然,也可以为其他可能的损失函数,本申请实施例对此不做限制。
步骤304:判断本轮迭代的图像语义分割模型是否达到收敛条件。
本申请实施例中,收敛条件可以包括如下条件的一个或者多个:
(1)迭代次数达到设定的次数阈值。
(2)模型损失值小于设定的损失阈值。
步骤305:若步骤304的确定过程为否,则基于模型损失值进行模型参数调整。
本申请实施例中,当迭代次数未超过预先设定的次数阈值,且模型损失值不小于设定的损失阈值时,则步骤304的确定过程为否,即认为当前图像语义分割模型未满足收敛条件,那么需要调整模型参数继续进行训练。进行参数调整之后,则进入下一次迭代训练过程,即跳转至步骤302。
在一种可能的实施方式中,在模型仍不满足收敛条件时,可以通过梯度下降法更新得到模型权重参数,并以更新后的模型权重参数继续进行训练。
而当迭代次数已经超过预先设定的次数阈值,或者模型损失值小于设定的损失阈值时,则步骤304的确定过程为是,即认为当前图像语义分割模型已满足收敛条件,模型训练结束,获得已训练的图像语义分割模型。为了验证训练好的图像语义分割模型的效果,本申请实施例对训练好的图像语义分割模型使用图像测试样本进行测试,如果测评指标达到预设测评效果,则可以将该图像语义分割模型用于实际的图像语义分割过程。如果没有通过模型评估,则需要继续进行训练和测试,直至图像语义分割模型达到预设测评效果为止。
需要说明的是,模型训练也可以是分阶段的,即可以先针对图像语义分割模型的部分进行训练,再针对其余部分进行训练。例如,可以先针对图2所示的CLIP-CAM模块进行预训练,再利用预训练完成的CLIP-CAM模块进行后续的训练过程,在后续训练时,CLIP-CAM模块的参数可以固定也可以再次进行更新,当然,本申请实施例并不限定每个阶段所需要训练的模块。
在模型训练完成后,则可以使用该图像语义分割模型参与实际的图像语义分割过程。下面结合图2所示的模型结构,来对图像语义分割的过程进行介绍。参见图4所示,为本申请实施例提供的图像处理方法的流程示意图,该方法的具体实施流程如下:
步骤401:获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,支撑图像包括目标对象。
本申请实施例中,支撑图像是包含所要分割的目标对象的图像,用以支撑整个图像语义分割过程,既可以认为是一种目标对象的参考图像,对于查询图像而言,其可以包含目标对象,也可以为对于是否包含目标对象为未知的图像。
步骤402:基于类别标签文本与支撑图像之间的特征相似度,获得目标对象在支撑图像中的第一分割结果,以及,基于类别标签文本与查询图像之间的特征相似度,获得目标对象在查询图像中的第二分割结果。
本申请实施例的图像语义分割过程,可以分为两个阶段,第一个阶段即为步骤402的过程,即得到支撑图像和查询图像的初始分割结果,该过程可以是由图2中的文本-视觉初始化模块来实现的,该模块以类别标签文本与支撑图像,输出相应的第一分割结果;或者,以类别标签文本与查询图像作为输入,输出相应的第二分割结果。
具体的,文本-视觉初始化模块通过文本-视觉模型来实现,能够将文本特征与图像特征投影到相同特征空间,从而可以合理地根据文本特征指导图像特征融合,换句话说,根据类别标签文本,能够确定对于将支撑图像或者查询图像划分至该类别标签文本所指示的类别而言,其中做出贡献较大的像素区域,即认为是该类别标签文本对应类别的物体,也就是目标对象,以此来得到相应的分割结果。
步骤403:以第一分割结果和第二分割结果初始化分割结果对,基于目标对象在支撑图像和查询图像中的特征关联性,对分割结果对进行迭代更新。
上述两个阶段的第二个阶段即为步骤403的过程,即以第一分割结果和第二分割结果作为初始分割结果,利用支撑图像和查询图像之间的特征关联性相互进行优化,以得到高质量的图像分割结果。该过程可以由图2所示的IMR模块、Backbone、Neck模块和Head模块共同来实现。
具体的,由于若是支撑图像和查询图像中均存在相同的对象时,则其在图像特征上是会存在一定的共性的,因而可以基于支撑图像和查询图像之间的特征关联性,来对文本-视觉模型得到的第一分割结果和第二分割结果进行多次迭代更新,使得二者的分割结果逐渐优化为高质量的分割结果。在每一次迭代更新时,会根据上一次得到的分割结果来预测本次迭代的分割结果。
本申请实施例中,考虑到在首次迭代时,支撑图像与查询图像的初始分割结果的质量较低,因此迭代之初Neck模块不应过于依赖此时的分割结果,而随着迭代进程的进行,预测的分割结果的质量不断提高,Neck模块则应逐渐增加对掩膜的依赖。因此,Neck模块在不同时期需要对分割结果赋予不同的置信度,因此Neck模块需要对分割结果当前的质量与当前所属迭代时期有所感知,因而本申请实施例为支撑图像与查询图像的分割结果分别引入了隐状态量,来表征分割结果“可以信赖的程度”,同时设计了IMR模块来储存、更新隐状态量。那么,在对分割结果进行迭代更新时,则需要结合隐状态量来进行,以使得迭代更新的过程更加符合实际,提升分割结果的准确性。
步骤404:在迭代结束时,基于最后一次获得的分割结果对,获得目标对象在查询图像中的目标分割结果。
本申请实施例中,在迭代结束时,则可以分别得到支撑图像对应的第一分割结果以及查询图像的第二分割结果组成的分割结果对,而实际场景中可能仅需要查询图像的分割结果,那么将该分割结果对中查询图像的第二分割结果作为查询图像最终的目标分割结果即可。
本申请实施例中,能够通过类别标签文本来对图像分割的过程进行引导,使得依靠图像级的文本标签即可取得与使用像素级标签相当的效果,降低了对新类别支撑图像掩膜的依赖,以及通过支撑图像和查询图像之间的相互优化,使得针对新类别不需要对支撑图像进行像素级标注,只需要新类别的类别标签文本即可,从而降低了图像语义分割方案实施的复杂程度,减少了标注所带来的时间成本,提升了图像语义分割的可实施性,有利于在实时性较高的场景下学习分割新类别,具备实际的应用价值。
下面,将对上述涉及到的两个阶段分别进行介绍。
(1)第一阶段
参见图2所示,第一阶段为生成初始分割结果,即初始分割掩膜的过程,主要通过CLIP-CAM模块来实现,CLIP-CAM模块主要用于生成支撑图像和查询图像的初始分割结果,其可以通过预训练的文本-视觉模型来实现,例如上下文优化(Context Optimization,CoOp)模型、CAM模型以及梯度(Grad)CAM模型等来实现。
参见图5和图6所示,图5为本申请实施例提供的一种初始分割过程的流程示意图,图6为本申请实施例提供的一种CLIP-CAM模块的处理流程示意图,参见图6所示,CLIP-CAM模块包括CLIP文本编码器、CLIP图像编码器和分类器。
步骤4021:对类别标签文本进行文本特征编码,获得目标对象的类别编码特征。
参见图6所示,CLIP-CAM模块包括两个分支,其中一个分支输入类别标签文本后,则可以通过CLIP文本编码器对输入的类别标签文本进行文本特征编码,来获得表征目标对象类别的类别编码特征。其中,CLIP文本编码器可以采用任意可能的自然语言处理(Natural Language Processing,NLP)网络,如采用基于编码器(encoder)-解码器(decoder)架构或者或seq2seq架构的模型,例如transformer,当然,也可以采用其他可能的模型,本申请实施例对此不做限制。
步骤4022:对支撑图像/查询图像进行图像特征编码,获得支撑图像的图像编码特征。
另一个分支输入支撑图像(Is)/查询图像(Iq)后,以,则可以通过CLIP图像编码器对输入的支撑图像/查询图像进行图像特征编码,来获得相应的图像编码特征,即输入支撑图像获得支撑图像对应的图像编码特征,输入查询图像则获得查询图像对应的图像编码特征。其中,CLIP图像编码器可以采用任意可能的图像特征提取网络,例如卷积神经网络(Convolutional Neural Networks,CNN)或者ResNet等,当然,也可以采用其他可能的模型,本申请实施例对此不做限制。
在一种可能的实施方式中,为了方便后续的处理,可以将CLIP文本编码器、CLIP图像编码器的输出维度配置相同,即得到的类别编码特征和图像编码特征的维度相同,例如均为1024维,当然,也可以是其他可能的维度,本申请实施例对此不做限制。
步骤4023:基于类别编码特征和图像编码特征之间的特征相似度,确定图像编码特征对应的梯度热力图,梯度热力图中的每个值表征了在图像编码特征中相应元素对特征相似度的影响程度。
通常而言,对于图像分类而言,在得到图像编码特征之后,则可以通过分类器根据图像编码特征,确定该图像属于各个类别的预测概率,进而,可以在该预测概率上进行反向传播,得到最后一个特征层在相应类别上的梯度,并将然后将计算该梯度每个特征通道上的均值,作为对应特征通道的权重值,然后对特征图进行加权和,即得到相应的梯度热力图。因此,本申请实施例中,获得类别编码特征和图像编码特征之后,则参见图6所示,可以基于类别编码特征与图像编码特征之间的特征相似度,确定图像编码特征属于目标对象对应类别的概率,即将类别编码特征视为分类器权重,将图像编码特征视为待分类特征,将类别编码特征与图像编码特征之间的特征相似度视作分类器的得分(即概率),进而,基于概率进行反向传播(back ground),计算该分类器在最后一层特征图上的梯度热力图,梯度热力图包含了图像编码特征在其各个特征通道上关于评估值的梯度,基于所述各个特征通道的梯度,确定所述各个特征通道各自对应的权重值,并基于获得的各个权重值和所述图像编码特征进行加权处理,获得梯度热力图。其中,梯度热力图中每个元素其大小反映了每个位置的特征对最终分类得分的贡献,梯度热力图中数值较大的区域表示这些位置对“与类别编码特征相似”的贡献较大,更有可能属于类别编码特征对应类别的物体。
示例性的,当给定一张图像以及一个类别标签文本,这里以猫为例,将图像进行前向传播,获得图像编码器最后一层的输出特征图,假设维度为[C,H,W],并获得分类器输出的属于猫的类别分数。然后利用猫的类别分数进行反向传播,获得最后一层输出特征图关于这个类别分数的梯度,其维度为[C,H,W],沿用上述例子,则对特征图梯度的空间维度计算平均值,维度变为[C,H],则可得到与该类别信息有关且与特征图通道数一致的权重值,基于该权重对图像编码特征中相应通道的特征图进行加权求和,获得梯度热力图。
步骤4024:基于梯度热力图,从支撑图像/查询图像中确定第一分割结果/第二分割结果。
具体的,可以将梯度热力图作为支撑图像/查询图像的第一分割结果/第二分割结果;或者,梯度热力图的图像尺度与原始图像可能是不同的,但是二者之间存在一定的对应关系,那么还可以根据梯度热力图与原始图像中像素之间的对应关系,来确定支撑图像的第一分割结果,表示为或者查询图像的第二分割结果,表示为/>
参见图6所示,其中实线箭头表示前向传播过程,虚线表示梯度反向传播过程。即以类别编码特征作为权重,图像编码特征作为待分类特征,计算二者之间的余弦相似度作为分类器的类得分,即图像属于类别标签文本所指示的类别的概率,再以该类得分进行反向传播,获得计算该“分类器”在最后一层特征图上的Grad CAM热力图,特征图上的GradCAM热力图根据每个特征通道的特征图上的神经元的梯度均值,对不同通道的特征图进行加权,其大小反映了每个位置的特征对最终分类得分的贡献,数值较大的区域表示这些位置更有可能属于文本特征对应类别的物体,从而依据此作为图像的分割结果,用于后续的迭代更新过程。
(2)第二阶段
参见图2所示,第二阶段为分割结果的迭代更新过程,可通过IMR模块、backbone、Neck模块以及Head模块来实现。
本申请实施例中,在进行迭代更新时,需要对IMR模块的隐状态量进行初始化,支撑图像的第一隐状态量表示为查询图像的第二隐状态量表示为/>其中,可以采用随机初始化的方式来进行,表示为:
当然,也可以采用其他可能的方式来进行初始化,本申请实施例对此不做限制。
进而,自t=1开始,对初始分割结果进行t次迭代优化,每一次迭代都会根据前一次的分割结果与前一时刻的状态/>预测得到本次的/>由于每一次迭代更新的过程均是类似的,因此这里以一次迭代更新过程为例进行介绍。参见图7所示,为一次迭代更新过程的流程示意图,其包括如下过程:
步骤4031:分别对所述支撑图像和所述查询图像进行图像特征提取,获得相应的支撑图像特征和查询图像特征。
参见图2所示,图像特征提取的过程可以通过骨干网络backbone来实现,将支撑图像Is和查询图像Iq输入backbone后,则获得其输出的支撑图像特征Fs和查询图像特征Fq。
本申请实施例中,backbone可以采用小样本语义分割任务中常用的神经网络,例如Resnet50,当然,其它骨干网络也可用于本申请实施例中。在具体实施时,backbone通常是由浅及深,可以输出多个图像尺度的图像特征,可以从其输出的多个图像尺度中选取L个图像尺度作为后续迭代更新的基础,例如选取最后5个或者最后3个特征层所对应图像尺度的图像特征。
在一种可能的实施方式中,步骤4031的过程得到的支撑图像特征和查询图像特征可以在后续的过程中都有效,即支撑图像特征和查询图像特征只需要初始提取一次,可以在后续的迭代更新过程中都可以使用,以降低模型的计算压力。那么,在对第一隐状态量和所述第二隐状态量进行初始化,以及提取得到支撑图像特征和查询图像特征后,就可以基于支撑图像特征和查询图像特征之间的特征相似度,以及第一隐状态量和第二隐状态量,对分割结果对进行迭代更新。
步骤4032:对支撑图像特征、查询图像特征以及第t-1次迭代获得的第二分割结果进行特征融合处理,获得支撑图像特征关于查询图像特征的相似特征信息。
本申请实施例中,步骤4032的过程通过图2所示的Neck模块来实现,在对查询图像对应的第二分割结果进行更新时,Neck模块以支撑图像特征Fs和查询图像特征Fq以及第t -1次迭代获得的第二分割结果作为输入,输出支撑图像特征关于查询图像特征的相似特征信息/> 为查询图像特征对支撑图像特征的指导结果,即在查询图像的指导下,来对支撑图像的分割进行指导;同理,在对支撑图像对应的第一分割结果进行更新时,Neck模块以支撑图像特征Fs和查询图像特征Fq以及第t-1次迭代获得的第一分割结果/>作为输入,输出查询图像特征关于支撑图像特征的相似特征信息/> 为支撑图像特征对查询图像特征的指导结果,即在支撑图像的指导下,来对查询图像的分割进行指导。
需要说明的是,在实际使用时,Neck模块获得和/>的过程是对称的,因此这里以的获取过程为例进行介绍,/>只需要将其中涉及到查询图像和支撑图像之处进行对调即可。/>
本申请实施例中,Neck模块可以采用4D卷积模块来实现,当然也可以采用其他可能的结构,本申请实施例对此不做限制。
具体地,若backbone输出的支撑图像特征Fs和查询图像特征Fq均包含L个多尺度特征,则支撑图像特征Fs可以表示为i表示第i个图像尺度的图像,其取值为1~L,假设backbone有5个特征层,采用最后3个特征层输出的特征来进行特征融合,即采用/> 和/>同理,查询图像特征Fq可以表示为/>i的取值为1~L,采用/>和/>来进行特征融合。
针对每个图像尺度而言,其处理过程较为类似,因此在此以其中一个尺度为例进行说明。
表1
具体的,针对一个图像尺度而言,对该图像尺度的支撑图像特征与第t -1次迭代获得的第一分割结果进行特征融合处理,获得融合特征图,表示为/>进而基于融合特征图与该图像尺度的查询图像特征/>之间的特征相似度,获得该图像尺度的子相似特征信息。
在一种可能的实施方式中,结合表1和图8所示,表1为Neck模块的网络示例,图8为Neck模块的处理流程示意图。这里的Neck模块以包括3个分支为例,即下表1中的Branch1~3,这3个分支的输入分别为backbone的最后3个特征层输出的特征。
其中,4D Conv表示4D卷积层,GN为归一化层,ReLu为激活层。从而可以通过如下方式确定每个图像尺度的子相似特征信息:
分别确定融合特征图与该图像尺度的查询图像特征在各个特征通道上的通道特征相似度,进而可以基于获得的各个通道特征相似度沿特征通道进行连接处理,获得中间特征图Ci,得到的中间特征图并对中间特征图Ci进行卷积处理,获得图像尺度对应的子相似特征信息/>其中,特征相似度可以采用余弦相似度或者其他能够等同的相似度度量方式来计算,卷积处理可以采用如图8所示的结构来实现,即针对每个图像尺度,采用3个4D卷积模块依次进行卷积处理,当然这里的3个仅为示例,并不用于限制其数量,一个4D卷积模块可以包括表1中的4D卷积层、归一化层和激活层。图8中具体以L为3进行示例,当然,在实际使用时,并不限于图8中L的数量,也可以采用其他的网络结构,本申请实施例对此不做限制。
以上述最后一个图像尺度,即图像尺度5为例,Neck模块的输入为和通过计算/>和/>之间的余弦相似度,并将结果沿通道相连,得到C(5),其维度为H*W*N。随后,参见图8所示,经过三个4D卷积模块,输出/>同理,还可以得到backbone的第三和四阶段的输出/>和/>
进而,将获得的L个子相似特征信息进行叠加处理,即可获得相似特征信息。在进行叠加时,从L个图像尺度中最小图像尺度开始进行迭代叠加,直至最大图像尺度为止,在每一次迭代叠加处理时,对上一次迭代获得的子相似特征信息/>进行上采样处理,获得与下一级图像尺度的尺度相同的子相似特征信息/>再将得到的子相似特征信息与下一级图像尺度对应的子相似特征信息/>进行叠加(Add)处理,获得/>其中,第一次迭代的子相似特征信息为最小图像尺度对应的子相似特征信息。
参见图8所示,对进行上采样后与/>进行叠加处理,获得的特征图再次进行上采样,并与/>进行叠加处理,即获得最终的/>同理,也可以以得到/>
在一种可能的实施方式中,还可以将L个图像尺度各自对应的子相似特征信息映射至相同的图像尺度后,对映射得到的L个子相似特征信息进行叠加处理,从而获得相似特征信息。
步骤4033:基于相似特征信息、查询图像特征、第t-1次迭代获得的第二分割结果,对第t -1次迭代获得的第二隐状态量进行更新,获得更新的第二隐状态量。
本申请实施例中,步骤4033的过程通过图2所示的IMR模块来实现,对查询图像的第二隐状态量进行更新时,IMR模块以查询图像特征Fq、第t -1次迭代获得的第二分割结果以及第t-1次迭代获得的第二隐状态量/>作为输入,输出更新后的第二隐状态量/>同理,对支撑图像的第一隐状态量进行更新时,IMR模块以支撑图像特征Fs、第t-1次迭代获得的第一分割结果/>以及第t -1次迭代获得的第一隐状态量/>作为输入,输出更新后的第一隐状态量/>
同样的,在实际使用时,IMR模块获得和/>的过程也是对称的,因此这里以/>的获取过程为例进行介绍,/>只需要将其中涉及到查询图像和支撑图像之处进行对调即可。
本申请实施例中,为了使得模型对分割结果与当前的迭代使其有所感知,引入了隐状态量,IMR模块主要用于存储和更新隐状态量,IMR模块旨在结合已经得到的图像信息记录更新当前的分割结果的可信度,因此,可以通过RNN有选择性的从已经得到的图像信息中进行筛选和遗忘,以上一次迭代得到的隐状态量进行更新。其可以通过处理序列数据的任意可能的循环神经网络来实现,例如GRU、conv-GRU、LSTM或者conv-LSTM等。
在一种可能的实施方式中,可以采用如下公式进行隐状态量的更新:
其中,W表征一个卷积模块,其可以为1*1卷积与3*3的组卷积的级联,Wconv1,1、Wconv1,2和Wconv2分别表示不同的卷积模块,[]表示特征图在通道上进行相连(concat)处理,表示哈达玛积。
步骤4034:基于更新的第二隐状态量以及相似特征信息,对第t -1次迭代获得的第二分割结果进行更新,获得更新的第二分割结果。
本申请实施例中,步骤4034的过程通过图2所示的Head模块来实现,参见图2所示,Head模块以第t -1次迭代获得的第二分割结果以及更新后的第二隐状态量/>作为输入,输出更新后的第二分割结果/>同理,Head模块以第t-1次迭代获得的第一分割结果/>以及更新后的第一隐状态量/>作为输入,输出更新后的第一分割结果/>
由于第一分割结果和第二分分割结果的更新过程是类似,仅需其中涉及到查询图像和支撑图像之处进行对调即可,因此,这里以第二分割结果的更新为例进行说明。参见图9所示,为Head模块的处理流程示意图。
其中,Head模块包括两部分,第一部分对更新的第二隐状态量以及相似特征信息/>进行相叠加后,通过第一部分包括的至少一个卷积层进行至少一次卷积处理,获得本次迭代的第二分割结果/>
进而,再由第二部分将本次迭代的第二分割结果和第t-1次迭代获得的第二分割结果/>在特征通道上进行连接处理后,获得合并分割结果/>通过第二部分包括的至少一个卷积层对合并分割结果进行至少一次卷积处理,获得更新的第二分割结果
同理,也可以采用类似的方法得到
在一种可能的实施方式中,第一部分包括4个卷积层,第二部分包括2个卷积层,当然,也可以为其他可能的数量,本申请实施例对此不做限制。
本申请实施例中,获得的和/>可以用于参与损失函数计算,辅助模型快速收敛。并且获得/>和/>后,会将其进行存储,以用于下一次迭代更新过程。
综上所述,针对图像语义分割模型的标注成本较高的问题,本申请实施例提供了一种两阶段的由文本引导的小样本图像语义分割方法,该方法利用数量极少的训练样本(支撑图像)以及图像级标签(类别文本),使模型具备对该类别物体的像素级分割能力的解决方案,其在第一阶段,依靠视觉-语言预训练模型,可以由类别标签文本生成支撑图像的较为粗糙的初始掩膜,在第二阶段,依靠相互迭代优化的机制,可以将支撑图像和查询图像的粗糙掩膜不断优化,从而可以消除小样本分割任务中,对支撑样本像素级标注的依赖,仅依靠类别文本,即可对支撑图像进行分割,进一步减少了对新类别训练标签的依赖,有助于减少标注工作量,该方案可以作为AI模型训练能力的一部分,应用于相关的应用场景中。
参见图10所示,为本申请实施例提供的技术方案与其他方案所得到的分割结果进行对比的示意图,其中,第一行图片为支撑图像,其中虚线圈出之处为类别标签文本指示的目标对象所在之处,第二行图片为查询图像,263圈出之处为预期分割掩膜所在之处。在相关技术中,为了分割查询图像中的某个新类别物体,传统的小样本图像分割方案需要利用支撑图像中的该类别物体的像素级掩膜,即第一行中虚线圈出之处的掩膜,所得到的分割结果如第三行所示,而本申请实施例的方案则不需要像素级掩膜,只需要新类别的类别文本即可,所得到的分割结果如第四行所示。以第一列的图像为例,相关技术得到的分割结果中吹风机真实所在的区域的掩膜并不完整,并且还将手臂识别为了吹风机,而反观本申请实施例得到的分割结果,则吹风机的掩膜区域更为完整,并且识别出的对象是不存在错误的。因此,可以看到,本申请实施例的方案在减小标注量的同时,可以达到与使用复杂的像素级掩膜的方案相当甚至更好的分割效果。
需要说明的是,图10中的虚线标示是为了方便指示目标对象的掩膜区域,并不用于限定图像的分割结果即采用图10的方式进行显示。
请参见图11,基于同一发明构思,本申请实施例还提供了一种图像处理装置110,该装置包括:
输入单元1101,用于获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,支撑图像包括目标对象;
粗分割单元1102,用于基于类别标签文本与支撑图像之间的特征相似度,获得目标对象在支撑图像中的第一分割结果,以及,基于类别标签文本与查询图像之间的特征相似度,获得目标对象在查询图像中的第二分割结果;
迭代更新单元1103,用于以第一分割结果和第二分割结果初始化分割结果对,基于目标对象在支撑图像和查询图像中的特征关联性,对分割结果对进行迭代更新;
输出单元1104,在迭代结束时,基于最后一次获得的分割结果对,获得目标对象在查询图像中的目标分割结果。
在一种可能的实施方式中,粗分割单元1102,具体用于:
对类别标签文本进行文本特征编码,获得目标对象的类别编码特征,以及,对支撑图像进行图像特征编码,获得支撑图像的图像编码特征;
基于类别编码特征和图像编码特征之间的特征相似度,确定图像编码特征对应的梯度热力图,梯度热力图中的每个值表征了在图像编码特征中相应元素对特征相似度的影响程度;
基于梯度热力图,从支撑图像中确定第一分割结果。
在一种可能的实施方式中,粗分割单元1102,具体用于:
基于类别编码特征与图像编码特征之间的特征相似度,确定图像编码特征属于目标对象对应类别的概率;
基于概率进行反向传播,确定图像编码特征在其各个特征通道上关于评估值的梯度;
基于获得的各个梯度,确定各个特征通道各自对应的权重值;
对获得的各个权重值和图像编码特征进行加权处理,获得梯度热力图。
在一种可能的实施方式中,迭代更新单元1103,具体用于:
初始化支撑图像对应的第一隐状态量,以及查询图像对应的第二隐状态量,其中,每个隐状态量用于表征相应图像当前的分割结果的置信度;
分别对支撑图像和查询图像进行图像特征提取,获得相应的支撑图像特征和查询图像特征;
基于支撑图像特征和查询图像特征之间的特征相似度,以及第一隐状态量和第二隐状态量,对分割结果对进行迭代更新。
在一种可能的实施方式中,迭代更新单元1103,具体用于:
对支撑图像特征、查询图像特征以及第t-1次迭代获得的第二分割结果进行特征融合处理,获得支撑图像特征关于查询图像特征的相似特征信息;
基于相似特征信息、查询图像特征、第t-1次迭代获得的第二分割结果,对第t -1次迭代获得的第二隐状态量进行更新,获得更新的第二隐状态量;
基于更新的第二隐状态量以及相似特征信息,对第t -1次迭代获得的第二分割结果进行更新,获得更新的第二分割结果。
在一种可能的实施方式中,支撑图像特征和查询图像特征均包括L个图像尺度的特征;则迭代更新单元1103,具体用于:
针对L个图像尺度,分别执行如下步骤:
针对一个图像尺度,对图像尺度的支撑图像特征与第t-1次迭代获得的第一分割
结果进行特征融合处理,获得融合特征图;
基于融合特征图与图像尺度的查询图像特征之间的特征相似度,获得图像尺度的子相似特征信息;
对获得的L个子相似特征信息进行叠加处理,获得相似特征信息。
在一种可能的实施方式中,迭代更新单元1103,具体用于:
分别确定融合特征图与图像尺度的查询图像特征在各个特征通道上的通道特征相似度;
基于获得的各个通道特征相似度沿特征通道进行连接处理,获得中间特征图;
对中间特征图进行卷积处理,获得图像尺度对应的子相似特征信息。
在一种可能的实施方式中,迭代更新单元1103,具体用于:
从L个图像尺度中最小图像尺度开始进行迭代叠加,直至最大图像尺度为止,其中,每一次迭代叠加处理包括如下步骤:
对上一次迭代获得的子相似特征信息进行上采样处理,获得与下一级图像尺度的尺度相同的子相似特征信息;其中,第一次迭代的子相似特征信息为最小图像尺度对应的子相似特征信息;
将得到的子相似特征信息与下一级图像尺度对应的子相似特征信息进行叠加处理。
在一种可能的实施方式中,迭代更新单元1103,具体用于:
对更新的第二隐状态量以及相似特征信息进行至少一次卷积处理,获得本次迭代的第二分割结果;
将本次迭代的第二分割结果和第t-1次迭代获得的第二分割结果在特征通道上进行连接处理后,获得合并分割结果;
对合并分割结果进行至少一次卷积处理,获得更新的第二分割结果。
通过上述装置,能够通过类别标签文本来对图像分割的过程进行引导,使得依靠图像级的文本标签即可取得与使用像素级标签相当的效果,降低了对新类别支撑图像掩膜的依赖,以及通过支撑图像和查询图像之间的相互优化,使得针对新类别不需要对支撑图像进行像素级标注,只需要新类别的类别标签文本即可,从而降低了图像语义分割方案实施的复杂程度,减少了标注所带来的时间成本,提升了图像语义分割的可实施性,有利于在实时性较高的场景下学习分割新类别,具备实际的应用价值。
该装置可以用于执行本申请各实施例中所示的方法,因此,对于该装置的各功能模块所能够实现的功能等可参考前述实施例的描述,不多赘述。
请参见图12,基于同一技术构思,本申请实施例还提供了一种计算机设备。在一种实施例中,该计算机设备可以为图1所示的服务器,该计算机设备如图12所示,包括存储器1201,通讯模块1203以及一个或多个处理器1202。
存储器1201,用于存储处理器1202执行的计算机程序。存储器1201可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
存储器1201可以是易失性存储器(volatile memory),例如随机存取存储器(ratdom-access memory,RAM);存储器1201也可以是非易失性存储器(t ot-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器1201是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1201可以是上述存储器的组合。
处理器1202,可以包括一个或多个中央处理单元(cet tral processit g ut it,CPU)或者为数字处理单元等等。处理器1202,用于调用存储器1201中存储的计算机程序时实现上述图像处理方法。
通讯模块1203用于与终端设备和其他服务器进行通信。
本申请实施例中不限定上述存储器1201、通讯模块1203和处理器1202之间的具体连接介质。本申请实施例在图12中以存储器1201和处理器1202之间通过总线1204连接,总线1204在图12中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线1204可以分为地址总线、数据总线、控制总线等。为便于描述,图12中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。
存储器1201中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的图像处理方法,处理器1202用于执行上述各实施例的图像处理方法。
在另一种实施例中,计算机设备也可以是终端设备,如图1所示的终端设备。在该实施例中,计算机设备的结构可以如图13所示,包括:通信组件1310、存储器1320、显示单元1330、摄像头1340、传感器1350、音频电路1360、蓝牙模块1370、处理器1380等部件。
通信组件1310用于与服务器进行通信。在一些实施例中,可以包括电路无线保真(Wireless Fidelity,WiFi)模块,WiFi模块属于短距离无线传输技术,计算机设备通过WiFi模块可以帮助用户收发信息。
存储器1320可用于存储软件程序及数据。处理器1380通过运行存储在存储器1320的软件程序或数据,从而执行终端设备的各种功能以及数据处理。存储器1320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器1320存储有使得终端设备能运行的操作***。本申请中存储器1320可以存储操作***及各种应用程序,还可以存储执行本申请实施例图像处理方法的代码。
显示单元1330还可用于显示由用户输入的信息或提供给用户的信息以及终端设备的各种菜单的图形用户界面(graphical user it terface,GUI)。具体地,显示单元1330可以包括设置在终端设备正面的显示屏1332。其中,显示屏1332可以采用液晶显示器、发光二极管等形式来配置。显示单元1330可以用于显示本申请实施例中的图像或者分割结果。
显示单元1330还可用于接收输入的数字或字符信息,产生与终端设备的用户设置以及功能控制有关的信号输入,具体地,显示单元1330可以包括设置在终端设备正面的触摸屏1331,可收集用户在其上或附近的触摸操作,例如点击按钮,拖动滚动框等。
其中,触摸屏1331可以覆盖在显示屏1332之上,也可以将触摸屏1331与显示屏1332集成而实现终端设备的输入和输出功能,集成后可以简称触摸显示屏。本申请中显示单元1330可以显示应用程序以及对应的操作步骤。
摄像头1340可用于捕获静态图像,用户可以将摄像头1340拍摄的图像通过应用发布评论。摄像头1340可以是一个,也可以是多个。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complemet tary metal-oxide-semicot ductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器1380转换成数字图像信号。
终端设备还可以包括至少一种传感器1350,比如加速度传感器1351、距离传感器1352、指纹传感器1353、温度传感器1354。终端设备还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
音频电路1360、扬声器1361、传声器1362可提供用户与终端设备之间的音频接口。音频电路1360可将接收到的音频数据转换后的电信号,传输到扬声器1361,由扬声器1361转换为声音信号输出。终端设备还可配置音量按钮,用于调节声音信号的音量。另一方面,传声器1362将收集的声音信号转换为电信号,由音频电路1360接收后转换为音频数据,再将音频数据输出至通信组件1310以发送给比如另一终端设备,或者将音频数据输出至存储器1320以便进一步处理。
蓝牙模块1370用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,终端设备可以通过蓝牙模块1370与同样具备蓝牙模块的可穿戴计算机设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
处理器1380是终端设备的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器1320内的软件程序,以及调用存储在存储器1320内的数据,执行终端设备的各种功能和处理数据。在一些实施例中,处理器1380可包括一个或多个处理单元;处理器1380还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器1380中。本申请中处理器1380可以运行操作***、应用程序、用户界面显示及触控响应,以及本申请实施例的图像处理方法。另外,处理器1380与显示单元1330耦接。
基于同一发明构思,本申请实施例还提供一种存储介质,该存储介质存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行本说明书上述描述的根据本申请各种示例性实施方式的图像处理方法中的步骤。
在一些可能的实施方式中,本申请提供的图像处理方法的各个方面还可以实现为一种计算机程序产品的形式,其包括计算机程序,当程序产品在计算机设备上运行时,计算机程序用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的图像处理方法中的步骤,例如,计算机设备可以执行各实施例的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括计算机程序,并可以在计算机设备上运行。然而,本申请的程序产品不限于此,在本申请件中,可读存储介质可以是任何包含或存储程序的有形介质,其包括的计算机程序可以被命令执行***、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的计算机程序,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (15)
1.一种图像处理方法,其特征在于,所述方法包括:
获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,所述支撑图像包括所述目标对象;
基于所述类别标签文本与所述支撑图像之间的特征相似度,获得所述目标对象在所述支撑图像中的第一分割结果,以及,基于所述类别标签文本与所述查询图像之间的特征相似度,获得所述目标对象在所述查询图像中的第二分割结果;
以所述第一分割结果和所述第二分割结果初始化分割结果对,基于所述目标对象在所述支撑图像和所述查询图像中的特征关联性,对所述分割结果对进行迭代更新;
在迭代结束时,基于最后一次获得的分割结果对,获得所述目标对象在所述查询图像中的目标分割结果。
2.如权利要求1所述的方法,其特征在于,基于所述类别标签文本与所述支撑图像之间的特征相似度,获得所述目标对象在所述支撑图像中的第一分割结果,包括:
对所述类别标签文本进行文本特征编码,获得所述目标对象的类别编码特征,以及,对所述支撑图像进行图像特征编码,获得所述支撑图像的图像编码特征;
基于所述类别编码特征和所述图像编码特征之间的特征相似度,确定所述图像编码特征对应的梯度热力图,所述梯度热力图中的每个值表征了在所述图像编码特征中相应元素对所述特征相似度的影响程度;
基于所述梯度热力图,从所述支撑图像中确定所述第一分割结果。
3.如权利要求2所述的方法,其特征在于,基于所述类别编码特征和所述图像编码特征之间的特征相似度,确定所述图像编码特征对应的梯度热力图,包括:
基于所述类别编码特征与所述图像编码特征之间的特征相似度,确定所述图像编码特征属于所述目标对象对应类别的概率;
基于所述概率进行反向传播,确定所述图像编码特征在其各个特征通道上关于所述评估值的梯度;
基于获得的各个梯度,确定所述各个特征通道各自对应的权重值;
对获得的各个权重值和所述图像编码特征进行加权处理,获得所述梯度热力图。
4.如权利要求1所述的方法,其特征在于,基于所述目标对象在所述支撑图像和所述查询图像中的特征关联性,对所述分割结果对进行迭代更新,包括:
初始化所述支撑图像对应的第一隐状态量,以及所述查询图像对应的第二隐状态量,其中,每个隐状态量用于表征相应图像当前的分割结果的置信度;
分别对所述支撑图像和所述查询图像进行图像特征提取,获得相应的支撑图像特征和查询图像特征;
基于所述支撑图像特征和所述查询图像特征之间的特征相似度,以及所述第一隐状态量和所述第二隐状态量,对所述分割结果对进行迭代更新。
5.如权利要求4所述的方法,其特征在于,在第t次迭代更新时,对所述分割结果对中查询图像对应的第二分割结果进行迭代更新,包括:
对所述支撑图像特征、所述查询图像特征以及第t-1次迭代获得的第二分割结果进行特征融合处理,获得所述支撑图像特征关于所述查询图像特征的相似特征信息;
基于所述相似特征信息、所述查询图像特征、第t-1次迭代获得的第二分割结果,对第t-1次迭代获得的第二隐状态量进行更新,获得更新的第二隐状态量;
基于所述更新的第二隐状态量以及所述相似特征信息,对所述第t-1次迭代获得的第二分割结果进行更新,获得更新的第二分割结果。
6.如权利要求5所述的方法,其特征在于,所述支撑图像特征和所述查询图像特征均包括L个图像尺度的特征;则对所述支撑图像特征、所述查询图像特征以及第t-1次迭代获得的第二分割结果进行特征融合处理,获得所述支撑图像特征关于所述查询图像特征的相似特征信息,包括:
针对所述L个图像尺度,分别执行如下步骤:
针对一个图像尺度,对所述图像尺度的支撑图像特征与所述第t-1次迭代获得的第一分割结果进行特征融合处理,获得融合特征图;
基于所述融合特征图与所述图像尺度的查询图像特征之间的特征相似度,获得所述图像尺度的子相似特征信息;
对获得的L个子相似特征信息进行叠加处理,获得所述相似特征信息。
7.如权利要求6所述的方法,其特征在于,基于所述融合特征图与所述图像尺度的查询图像特征之间的特征相似度,获得所述图像尺度的子相似特征信息,包括:
分别确定所述融合特征图与所述图像尺度的查询图像特征在各个特征通道上的通道特征相似度;
基于获得的各个通道特征相似度沿特征通道进行连接处理,获得中间特征图;
对所述中间特征图进行卷积处理,获得所述图像尺度对应的子相似特征信息。
8.如权利要求6所述的方法,其特征在于,对获得的L个子相似特征信息进行叠加处理,获得所述相似特征信息,包括:
从所述L个图像尺度中最小图像尺度开始进行迭代叠加,直至最大图像尺度为止,其中,每一次迭代叠加处理包括如下步骤:
对上一次迭代获得的子相似特征信息进行上采样处理,获得与下一级图像尺度的尺度相同的子相似特征信息;其中,第一次迭代的子相似特征信息为所述最小图像尺度对应的子相似特征信息;
将得到的子相似特征信息与所述下一级图像尺度对应的子相似特征信息进行叠加处理。
9.如权利要求5所述的方法,其特征在于,基于所述更新的第二隐状态量以及所述相似特征信息,对所述第t-1次迭代获得的第二分割结果进行更新,获得更新的第二分割结果,包括:
对所述更新的第二隐状态量以及所述相似特征信息进行至少一次卷积处理,获得本次迭代的第二分割结果;
将所述本次迭代的第二分割结果和所述第t-1次迭代获得的第二分割结果在特征通道上进行连接处理后,获得合并分割结果;
对所述合并分割结果进行至少一次卷积处理,获得所述更新的第二分割结果。
10.一种图像处理装置,其特征在于,所述装置包括:
输入单元,用于获得支撑图像和查询图像,以及待分割的目标对象的类别标签文本,其中,所述支撑图像包括所述目标对象;
粗分割单元,用于基于所述类别标签文本与所述支撑图像之间的特征相似度,获得所述目标对象在所述支撑图像中的第一分割结果,以及,基于所述类别标签文本与所述查询图像之间的特征相似度,获得所述目标对象在所述查询图像中的第二分割结果;
迭代更新单元,用于以所述第一分割结果和所述第二分割结果初始化分割结果对,基于所述目标对象在所述支撑图像和所述查询图像中的特征关联性,对所述分割结果对进行迭代更新;
输出单元,在迭代结束时,基于最后一次获得的分割结果对,获得所述目标对象在所述查询图像中的目标分割结果。
11.如权利要求10所述的装置,其特征在于,所述粗分割单元,具体用于:
对所述类别标签文本进行文本特征编码,获得所述目标对象的类别编码特征,以及,对所述支撑图像进行图像特征编码,获得所述支撑图像的图像编码特征;
基于所述类别编码特征和所述图像编码特征之间的特征相似度,确定所述图像编码特征对应的梯度热力图,所述梯度热力图中的每个值表征了在所述图像编码特征中相应元素对所述特征相似度的影响程度;
基于所述梯度热力图,从所述支撑图像中确定所述第一分割结果。
12.如权利要求10所述的装置,其特征在于,所述迭代更新单元,具体用于:
对所述支撑图像特征、所述查询图像特征以及第t-1次迭代获得的第二分割结果进行特征融合处理,获得所述支撑图像特征关于所述查询图像特征的相似特征信息;
基于所述相似特征信息、所述查询图像特征、第t-1次迭代获得的第二分割结果,对第t-1次迭代获得的第二隐状态量进行更新,获得更新的第二隐状态量;
基于所述更新的第二隐状态量以及所述相似特征信息,对所述第t-1次迭代获得的第二分割结果进行更新,获得更新的第二分割结果。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至9任一项所述方法的步骤。
14.一种计算机存储介质,其上存储有计算机程序,其特征在于,
该计算机程序被处理器执行时实现权利要求1至9任一项所述方法的步骤。
15.一种计算机程序产品,包括计算机程序,其特征在于,
该计算机程序被处理器执行时实现权利要求1至9任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211430258.6A CN117009560A (zh) | 2022-11-15 | 2022-11-15 | 图像处理方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211430258.6A CN117009560A (zh) | 2022-11-15 | 2022-11-15 | 图像处理方法、装置、设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117009560A true CN117009560A (zh) | 2023-11-07 |
Family
ID=88573420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211430258.6A Pending CN117009560A (zh) | 2022-11-15 | 2022-11-15 | 图像处理方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117009560A (zh) |
-
2022
- 2022-11-15 CN CN202211430258.6A patent/CN117009560A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109993102B (zh) | 相似人脸检索方法、装置及存储介质 | |
CN111507378A (zh) | 训练图像处理模型的方法和装置 | |
EP4002161A1 (en) | Image retrieval method and apparatus, storage medium, and device | |
WO2021057186A1 (zh) | 训练神经网络的方法、数据处理方法和相关装置 | |
CN113177559B (zh) | 结合广度和密集卷积神经网络的图像识别方法、***、设备及介质 | |
CN114298122B (zh) | 数据分类方法、装置、设备、存储介质及计算机程序产品 | |
CN112487217A (zh) | 跨模态检索方法、装置、设备及计算机可读存储介质 | |
CN112580720A (zh) | 一种模型训练方法及装置 | |
CN117033609B (zh) | 文本视觉问答方法、装置、计算机设备和存储介质 | |
CN113515669A (zh) | 基于人工智能的数据处理方法和相关设备 | |
CN115131281A (zh) | 变化检测模型训练和图像变化检测方法、装置及设备 | |
CN116310318A (zh) | 交互式的图像分割方法、装置、计算机设备和存储介质 | |
CN113705293A (zh) | 图像场景的识别方法、装置、设备及可读存储介质 | |
CN117453949A (zh) | 一种视频定位方法以及装置 | |
CN115222896B (zh) | 三维重建方法、装置、电子设备及计算机可读存储介质 | |
CN116958852A (zh) | 视频与文本的匹配方法、装置、电子设备和存储介质 | |
CN115795025A (zh) | 一种摘要生成方法及其相关设备 | |
CN117011219A (zh) | 物品质量检测方法、装置、设备、存储介质和程序产品 | |
CN113255819B (zh) | 用于识别信息的方法和装置 | |
CN117151987A (zh) | 一种图像增强方法、装置及电子设备 | |
CN117688204A (zh) | 视频推荐模型的训练方法、装置、电子设备和存储介质 | |
CN115131291A (zh) | 对象计数模型的训练方法、装置、设备以及存储介质 | |
CN117009560A (zh) | 图像处理方法、装置、设备及计算机存储介质 | |
CN114298961A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN116958847A (zh) | 图像识别及物品分拣方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |