CN108573257B - 基于自然语言短语对图像进行自动分割 - Google Patents

基于自然语言短语对图像进行自动分割 Download PDF

Info

Publication number
CN108573257B
CN108573257B CN201810078350.8A CN201810078350A CN108573257B CN 108573257 B CN108573257 B CN 108573257B CN 201810078350 A CN201810078350 A CN 201810078350A CN 108573257 B CN108573257 B CN 108573257B
Authority
CN
China
Prior art keywords
image
gram
segmentation
neural network
segmentation map
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.)
Active
Application number
CN201810078350.8A
Other languages
English (en)
Other versions
CN108573257A (zh
Inventor
林哲
卢昕
沈晓辉
杨济美
刘晨曦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of CN108573257A publication Critical patent/CN108573257A/zh
Application granted granted Critical
Publication of CN108573257B publication Critical patent/CN108573257B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation 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
    • G06V10/267Segmentation 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 by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24143Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/63Scene text, e.g. street names
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/274Syntactic or semantic context, e.g. balancing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20101Interactive definition of point of interest, landmark or seed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

本发明涉及基于自然语言短语来对图像进行分割。接收图像和n元语法,其包括标记序列。生成图像特征的编码和标记向量序列。完全卷积神经网络对图像特征进行标识和编码。单词嵌入模型生成标记向量。递归神经网络(RNN)基于图像特征编码和标记向量的组合来迭代地更新分割图。分割图标识在由n元语法引用的图像区域中包括哪些像素。基于分割图来生成分割图像。RNN可以是卷积多模态RNN。单独的RNN(诸如长短期记忆网络)可以基于标记的顺序来迭代地更新语义特征的编码。第一RNN可以基于语义特征编码来更新分割图。

Description

基于自然语言短语对图像进行自动分割
背景技术
用于图像增强、注释、编辑或其他这样的图像编辑任务的应用现在广泛存在。很多这样的应用包括将图像分割成多个区域的功能。例如,用户可能希望标识图像中与前景中的对象相关联的部分以及图像中与图像的背景相关联的另一部分。一些应用使得用户能够绘制围绕这样的区域的边界框。但是,这样的手动功能通常需要重要的用户交互,并且只提供总体级别的特征分割。
其他先前可用的系统支持用户提供自然语言短语来对图像进行分割。这样的系统标识图像的潜在特征和整个短语的潜在特征。图像和短语的潜在特征被组合来对图像进行分割。更具体地,这些先前可用的系统处理整个短语以检测短语的潜在特征。只有在整个短语被处理之后,图像和短语的潜在特征才被组合以对图像进行分割。在这点上,图像的潜在特征仅与短语的潜在特征在短语处理结束时组合一次。因此,图像的分割仅基于图像和短语的潜在特征在整个短语已经被处理之后的单个交互。然而,基于对整个表达的分析来对图像进行分割可能导致不准确的分割(例如,不正确的空间布置)。仅作为示例,基于表达“the dog on the right”而没有图像视角,现有技术不能够识别关于图像分割要关注的是“the dog”还是“on the right”。
发明内容
本发明的实施例涉及用于基于自然语言短语中的有序文本(例如,标记或单词)序列来对图像进行自动分割的方法和系统。在这点上,本文中描述的实施例基于被包括在自然语言短语中的特定的有序单词序列来迭代地对图像进行分割。自然语言短语的含义取决于单词在短语中顺序。分析与自然语言短语的有序序列相关联的图像使得能够进行更准确的分割,因为图像与短语之间的交互考虑单词在短语中的顺序。
各种实施例使得用户能够提供图像和自然语言短语。短语可以是指在图像中描绘的对象。各种实施例自动在图像中定位对象并且选择图像中表示对象的部分。更具体地,当自然语言短语指示在图像中描绘的对象(或区域)时,与所指示的对象(或区域)相对应的像素被自动标识和/或选择。这样的自动分割使得用户能够使与感兴趣的对象(或区域)相对应的特定像素聚类被隔离,如经由自然语言短语所指示的。
在至少一个非限制性实施例中,一种方法包括以n元语法(n-gram)的形式接收图像和自然短语。图像包括像素。例如,图像可以包括H×W个像素,其中H和W是正整数。n元语法包括引用图像的区域的有序自然语言标记集合。例如,n元语法可以引用在图像内所描绘的对象。在至少一个实施例中,可以基于接收的自然语言短语来生成n元语法。短语可以引用在图像的区域内所描绘的对象。在一些实施例中,可以作为由用户说出的编码自然语言短语的音频数据来接收短语。可以基于接收的音频数据和语音到文本模型来生成文本数据。n元语法可以基于生成的文本数据来生成。
该方法可以包括生成对图像的图像特征进行编码的图像数据结构。例如,这样的图像特征可以是经由卷积模型标识的潜在的和/或隐藏的图像特征。该方法还可以包括基于标记集合来生成有序标记数据结构集合。每个标记数据结构可以编码对应标记的潜在的和/或隐藏的特征。
该方法还包括基于图像数据结构和标记数据结构集合的组合(或连结)来生成并且迭代地更新分割数据结构。分割数据结构对分割掩模(或图)进行编码。分割图可以被表示和/或构造为二维(2D)张量。分割图标识哪些像素被包括在由n元语法引用的图像的区域中。该方法可以基于图像和分割图来生成并且提供分割图像。
生成分割图像可以包括基于分割图来对图像进行分割。提供分割图像可以包括将分割图像传输到用户计算设备和/或在用户计算设备的显示设备上显示分割图像。在至少一个实施例中,提供图像可以包括将分割图像传输到远程和/或本地存储装置和/或将分割图像存储在远程和/或本地存储装置上。
更特别地,图像数据结构可以是图像特征图或图像特征张量。本质上,图像数据结构对图像特征与像素的对应块或部分之间的映射进行编码。图像特征可以基于图像特征标识模型在图像内被标识。在一些实施例中,图像特征标识模型可以经由已训练完全卷积神经网络(FCN)来实施。
有序标记数据结构集合可以基于自然语言模型。每个标记数据结构对有序标记集合中对应标记的语义特征进行编码。因此,标记数据结构集合的顺序是基于并且对应于自然语言标记集合的顺序。在一些实施例中,每个标记数据结构是基于对应标记的标记向量。在一些实施例中,标记数据元素是标记数据结构和/或标记向量。
例如,自然语言模型可以是已训练单词嵌入模型。单词嵌入模型被用来将每个标记映射到多维空间中的标记向量。在一些实施例中,标记向量空间包括1000或更多维度。经由标记向量的生成,标记被嵌入在多维空间中。空间中的标记对之间的距离指示标记对之间的语义相似度。这样的单词嵌入模型可以经由在大的语义语料库内的语义分布的生成来训练。在至少一个实施例中,采用“Word2Vec”语言模型将标记嵌入标记空间内。
在分割数据结构的迭代更新期间,分割数据结构的迭代和/或连续更新是基于:分割数据结构以及图像数据结构和一个标记数据结构的组合。用于各种迭代的与图像数据结构组合的特定标记数据结构基于标记集合的顺序。也就是说,在标记集合的顺序与分割数据结构的迭代更新的顺序之间存在一对一的映射。更新分割数据结构的迭代顺序按照标记集合的顺序被排序。
在一些实施例中,该方法包括生成并且迭代地更新n元语法数据结构,其对标记集合的顺序的语义特征进行编码。n元语法数据结构的迭代更新基于n元语法数据结构和一个标记数据结构。在标记集的顺序与n元语法数据结构的迭代更新的顺序之间可以存在一对一映射。n元语法数据结构的迭代更新的顺序按照标记集合的顺序被排序。分割数据结构的迭代更新还可以基于:图像数据结构和与标记集合的顺序相对应的已更新的n元语法数据结构的组合。
在至少一些实施例中,n元语法数据结构的迭代更新基于已训练递归神经网络(RNN),诸如但不限于已训练长短期记忆(LSTM)神经网络。这样的RNN传播n元语法数据结构的迭代更新。在各种实施例中,分割数据结构的迭代更新基于传播分割数据结构的迭代更新的另一或单独的RNN。在其他实施例中,分割数据结构的迭代更新是基于卷积多模态递归神经网络(mRNN),其传播分割数据结构的迭代更新。
各种实施例可以包括基于训练数据来训练一个或多个RNN。例如,可以应用机器学习训练方法,诸如但不限于反向传播。
附图说明
图1示出了与本文中讨论的各种实施例相一致的支持基于自然语言短语来对图像进行分割的系统的示例性实施例;
图2示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和中间分割模型的递归来对图像进行分割的图像分割应用(ISA)的示例性实施例;
图3示意性地示出了图2的中间分割ISA的递归的连续迭代步骤;
图4A示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和中间分割模型的递归来对图像进行分割的处理流程的一个实施例;
图4B示出了用于采用图2的ISA基于自然语言短语和中间分割模型的递归来迭代地生成分割张量的处理流程的一个实施例;
图5示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和多模态递归神经模型来对图像进行分割的图像分割应用(ISA)的备选实施例;
图6示意性地示出了图5的多模态递归神经ISA的连续迭代步骤;
图7A示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和多模态递归神经模型来对图像进行分割的处理流程的一个实施例;
图7B示出了用于采用图5的ISA基于自然语言短语和多模态递归神经模型来迭代地生成分割张量的处理流程的一个实施例;
图8示出了与本文中呈现的各种实施例相一致的用于迭代地生成递归神经模型和多模态递归神经模型的处理流程的一个实施例;以及
图9是其中可以采用本公开的实施例的示例计算设备的框图。
具体实施方式
如本文中使用的,术语“自然语言短语”或简称“短语”可以用于指示一个或多个自然语言中任意一个中的一个或多个句子或句子片段。因此,自然语言短语可以包括自然语言单词、空格、标点符号等的有序集合或序列。
如本文中使用的,术语“标记(token)”是指自然语言短语的基本单位。也就是说,标记可以是短语内的空格和/或标点符号之间的连续字符串。例如,标记可以是被短语中所包括的自然语言单词。因此,标记可以是词汇项。
如本文中使用的,标记或另一词汇单元的术语“语义特征”可以是指标记的概念组件。经由标记引起的概念(即,标记的含义)可以从标记的语义特征与其他标记的语义特征之间的差异和相似度以及由这些其他标记引起的概念而可辨别。因此,标记的语义特征可以是标记的语义组件和/或语义属性。
如本文中使用的,术语“n元语法”是指编码、表示和/或以其他方式指示自然短语的数据。在各种实施例中,数据可以是结构化数据。在其他实施例中,数据可以是非结构化数据。实质上,n元语法是包括自然语言短语内的每个标记的数据,其中数据结构保存标记在短语中的顺序。因此,n元语法可以是标记的有序集合或序列。例如,句子片段“a halffull cup of coffee”是以特定顺序包括5个标记:“a”、“half”、“full”、“cup”、“of”、“coffee”的自然语言短语。短语可以由n元语法数据结构{“a”,“half”,“full”,“cup”,“of”,“coffee”}来构造、编码、表示或以其他方式指示。这个特定的n元语法是5元语法。
如本文中使用的,术语“潜在特征”和“隐藏特征”可以用来同义地指代不可直接观察的对象的特征。例如,本文中讨论的各种模型被用来确定和编码图像、标记、n元语法等的潜在特征,即:在没有所采用的模型的帮助下可能不能从图像、标记和n元语法中明确观察的特征。
如本文中使用的,术语“编码”可以指代基础信息的表示。例如,信息可以被编码在各种结构或元素中,诸如但不限于向量、张量、数据阵列等。由各种编码表示的这样的信息可以包括但不限于:图像,图像、标记、n元语法等的潜在的和/或隐藏的特征,以及各种映射。例如,在非限制性实施例中,图像特征可以被编码在一个或多个数据结构(诸如但不限于张量)中。
简要地,各种实施例涉及基于自然语言短语中文本(例如,标记或单词)的有序序列来对图像进行分割。各种实施例支持用户提供图像和自然语言短语。短语可以指代在图像中所描绘的对象。各种实施例自动在图像中定位对象,并且选择图像中表示对象的部分。当自然语言短语指示在图像中描绘的对象(或区域)时,自动标识和/或选择与所指示的对象(或区域)相对应的像素。这样的分割使得用户能够对与感兴趣的对象(或区域)相对应的特定像素聚类(如经由自然语言短语所指示的)进行隔离。通过自动隔离和/或选择经由短语指示的像素,用户可以更容易地基于对象和/或区域来编辑图像,而不是执行手动的逐像素编辑。
先前可用的很多图像分割系统使得用户能够绘制或以其他方式手动地提供边界形状(即,边界框),以对图像内的感兴趣区域进行分割。
先前可用的其他图像分割系统使得用户能够提供自然语言短语来对图像进行分割。尽管其他先前可用的系统采用图像和短语的潜在特征来对图像进行分割,但是这些先前可用的系统仅在整个短语被处理之后才对图像进行分割。也就是说,这些先前可用的系统采用短语到图像交互而不是标记到图像交互来对图像进行分割。
因此,先前可用的这些系统生成短语到图像交互,即图像的潜在特征仅在短语处理结束时与短语的潜在特征组合一次。因此,图像的分割仅基于图像和短语的潜在特征在整个短语已经被处理之后的单个交互。这样的短语到图像交互可能忽略单词到图像交互,即,基于被包括在短语中的单词的顺序来迭代地对图像进行分割的单词到图像交互的顺序处理
此外,先前可用的这些基于短语的系统通常经由自然语言短语的格式来被约束,即,短语必须经由预定的短语格式来构造。当感兴趣的对象(或区域)不能以受约束的短语格式来指示时,这样的系统难以标识要分割的图像区域。例如,如果图像描绘两个或更多个相似类型的对象,则先前可用的系统可能不能够基于格式化的短语来区分两个对象。
与这些先前可用的系统相反,各种实施例基于自然语言短语中所包含的自然语言单词(即,标记)的特定有序序列来迭代地对图像进行分割。因此,实施例基于被包括在短语中的标记序列来对图像进行分割。每个标记按照以自然语言指定的顺序来被依次选择。分割最初基于第一标记来生成。分割基于当前分割和自然语言短语中的下一标记来被迭代地更新。迭代分割继续,直到每个标记已经被处理并且分割基于每个标记被更新,并在短语的序列中被处理。相应地,各种实施例迭代地采用多个单词到图像交互,而不是在短语的处理结束时执行的单个短语到图像交互。
根据自然语言单词的有序序列来利用这样的迭代分割使得用户能够说出指示图像内所描绘的对象的短语,并且作为响应被自动地提供经准确分割的图像。有利地,各种实施例能够基于任意结构化的自然语言短语来区分图像内所描绘的两个或更多个相似或等同类型的对象。各种实施例采用已训练自然语言模型(NLM)(诸如但不限于单词嵌入模型)来确定短语而不仅仅是短语中所包括的名词的“含义”。也就是说,实施例能够标识和采用短语中所包括的特征来对图像中所描绘的多个对象进行区分。
例如,位于图像左侧的区域可以描绘成年男性,并且位于图像右侧的另一区域可以描绘女性孩子。基于诸如(但不限于)“左侧的人”、“男性”或“成年人”等自然语言短语,各种实施例将生成仅对与成年男性相关联的那些像素进行隔离的分割图像。类似地,各种实施例将基于诸如(但不限于)“右侧的人”、“女性”或“孩子”等短语来生成仅对与女性孩子相关联的像素进行隔离的分割图像。
此外,利用本文中描述的实施例,与分割的像素边界相关联的形状可以是不规则的,即,分割的像素不需要位于经由一系列线段限定的多边形或某个其他区域内。例如,当对对象内所描绘的感兴趣对象(例如,人)进行分割时,只有对应于感兴趣对象的那些像素被分割。因此,分割区域的边界形状可以是不规则的。也就是说,分割的像素的边界形状符合感兴趣的对象,而不符合边界框或其他几何对象。
另外,因为各种实施例采用在大的自然语言短语语料库上所训练的自然语言模型来处理用户提供的短语,所以用户提供的短语不必符合预定的结构和/或格式。此外,指示图像中所描绘的感兴趣对象的自然语言短语可以是非结构化的或未格式化的。
在操作中并且在高级别上,用户可以查看被显示在用户计算设备的显示设备上的图像。实施例采用一个或多个已训练完全卷积神经网络(FNN)来自动地标识和/或确定图像的各种特征。响应于查看图像,用户可以说出(或手动键入)指示图像中所描绘的感兴趣对象(或区域)的自然语言短语。
语音到文本服务基于口头的短语来自动生成文本n元语法。各种实施例采用一个或多个自然语言模型(NLM)来顺序地处理n元语法的每个标记。图像可以基于已处理标记序列和图像特征来迭代地进行分割。简要地,各种递归神经网络(RNN)被训练,并且被用于基于图像特征和已处理标记序列的组合来迭代地对图像进行分割。本质上,一个或多个RNN传播(或记住)当前分割并且采用当前分割来更新下一迭代操作中的分割。
各种实施例在迭代分割中采用中间分割(RIS)模型的递归。在这样的RIS实施例中,一旦经由NLM所处理,标记可以被顺序地用于基于标记的顺序来确定n元语法的各种特征。例如,在一些实施例中,已训练RNN被迭代地用于确定/标识n元语法的各种特征,并且基于标记的顺序处理来迭代地更新n元语法特征。在一个实施例中,可以采用已训练长短期记忆(LSTM)神经网络来迭代地确定n元语法的特征。
在RIS实施例中,可以组合n元语法和图像的特征以用于由另一RNN处理。另一RNN可以被训练为基于图像特征和n元语法特征的组合来对图像进行分割。这个RNN可以基于对n元语法特征的迭代更新来生成图像的分割,并且迭代地更新图像的分割。对n元语法特征的迭代更新基于标记的顺序处理。对分割(即,中间分割)的迭代更新继续,直到末端标记已经被用来更新分割。
因此,对于分割过程的第一迭代,分割基于n元语法的第一标记。经由第二RNN的内部状态,初始分割被记住(或传播)以用于下一迭代。对于分割过程的第二迭代,(中间)分割至少基于n元语法的第二标记和传播的初始分割来迭代地更新。顺序地选择n元语法的标记、并且基于所选择的标记和传播的分割来更新分割的这些迭代操作继续,直到n元语法的最后(或末端)标记已经被处理。也就是说,迭代分割继续,直到每个标记对分割做出贡献(按n元语法序列)。
在其他实施例中,采用多模态递归神经网络(mRNN)模型来基于自然语言短语,从而迭代地对图像进行分割。与RIS实施例相比,mRNN实施例不是采用两个单独的递归(即,迭代地更新和传播的)数据结构:迭代更新的n元语法特征和迭代更新的分割,mRNN实施例将信息组合成单个mRNN。因此,这样的实施例将与n元语法特征和分割相关联的信息统一为单个多维和多模态RNN(mRNN)。在一些实施例中,多维和多模态RNN是多模态LSTM(mLSTM)。多模态信息(标记信息、图像信息、空间信息)等在迭代分割期间交互。
在mRNN实施例中,已处理标记与图像的特征顺序地组合。mRNN组合每个图像特征的模态和已处理标记以迭代地更新分割。这样的实施例能够支持丰富的多模态信息的交互。
示例性图像分割系统
图1示出了与本文中讨论的各种实施例相一致的能够基于自然语言短语来对图像进行分割的系统100的示例性实施例。系统100包括各种用户计算设备,诸如但不限于笔记本电脑102、智能电话104、台式电脑106、平板电脑108、虚拟助理(VA)设备110等。任何用户计算设备(诸如但不限于用户计算设备102-108)可以能够提供与VA设备110相关联的服务和/或功能的至少一部分。例如,VA服务可以嵌入在在智能电话104上运行的软件内。
在其他实施例中,系统100可以包括更多或更少的用户计算设备。例如,系统100可以包括附加的移动设备、可穿戴设备等。计算设备的示例性但非限制性实施例结合至少图9的计算设备900来讨论。通用或特定通信网络(诸如但不限于通信网络112)可以通信地耦合用户计算设备102-110的至少一部分。
通信网络112可以是任何通信网络,实际上包括任何有线和/或无线通信技术、有线和/或无线通信协议等。应当理解,通信网络112实际上可以是:以使得计算设备的用户能够经由计算设备来交换信息的方式来对多个计算设备和数据库进行通信地耦合的任何通信网络。
系统100可以包括一个或多个存储设备,诸如但不限于存储设备114。存储设备114可以包括数字数据的易失性和非易失性存储装置。存储设备114可以包括非暂态存储介质。通信网络112可以将存储设备114通信地耦合到用户计算设备102-110的至少一部分。在一些实施例中,存储设备114可以是在逻辑上分布在多个物理存储设备上的逻辑存储设备。因此,存储设备114可以是虚拟化存储设备。例如,一个或多个“云存储”服务和/或服务提供商可以提供、实施和/或启用存储设备114。
存储设备114可以存储训练数据116。如本文中讨论的,训练数据116可以包括用于迭代地生成和/或训练本文中讨论的各种模型的各种训练数据。自始至终讨论迭代地生成这样的模型的各种实施例,包括但不限于图1的过程700。存储设备114还可以存储图像数据118。例如,图像120可以被包括在图像数据118中。
一个或多个用户计算设备102-110可以托管、执行或以其他方式支持图像分割应用(ISA)130的功能。图1示出了托管ISA 130的平板电脑108。其他实施例不限于此。例如,ISA 130可以分布在多个计算设备之中。在至少一个实施例中,ISA 130的功能经由网络和/或云服务来提供。
ISA的各种实施例(诸如但不限于ISA)结合至少图2的ISA 200和图5的ISA 500来讨论。因此,ISA 130可以包括ISA 200和/或ISA 500的等同的、相似的和/或备选的模块、引擎、部件、功能等。此外,ISA 130的各种实施例可以执行、进行或以其他方式实施本文中讨论的各种过程的至少部分,包括但不限于图4A的过程400、图4B的过程440、图7A的过程700、图7B的过程740和/或图8中的过程800。ISA 130包括图像特征引擎140、n元语法特征引擎160和图像分割引擎180。ISA的其他实施例可以包括比ISA 130更多、更少和/或备选的部件。
简要地,在一些实施例中,ISA 130基于中间分割(RIS)模型的递归,并且因此是RIS ISA。在其他实施例中,ISA 130基于多模态递归神经网络(mRNN)模型,并且因此是mRNNISA。ISA 130接收输入图像(诸如但不限于图像120)。用户计算设备102-110中的任一个可以提供图像。在一些实施例中,可以从图像数据118中取回图像120,并且将其传输到托管ISA 130的一个或多个计算设备。
ISA 130还接收一个或多个自然语言短语。这样的短语可以由用户说出、由用户手动键入、或者任何其他这样的手段。ISA 130将自然语言短语结构化、编码或以其他方式表示为n元语法,诸如但不限于n元语法128。n元语法编码自然语言短语,诸如但不限于“Theman in the striped shirt”。自然语言短语与输入图像有关。基于n元语法,ISA 130对图像进行分割。ISA 130提供分割图像,诸如但不限于分割图像134。
ISA 130可以包括支持ISA 130的各种功能和操作的各种引擎、模块、部件等。例如,ISA 130包括图像特征引擎140、n元语法特征引擎160和图像分割引擎180。如结合各种实施例所讨论的,图像特征引擎(诸如但不限于图像特征引擎140)基于一个或多个机器学习模型和/或神经网络来确定、检测和/或标识图像120的各种图像特征。这种机器学习模型和/或神经网络包括但不限于:标识模型和/或卷积神经网络的已训练图像特征。
n元语法特征引擎(诸如但不限于n元语法特征引擎160)接收n元语法,并且基于一个或多个机器学习模型和/或神经网络来确定、检测和/或标识n元语法的各种特征。这样的机器学习模型和/或神经网络包括但不限于:经由递归神经网络(RNN)实施的已训练自然语言模型。在至少一个实施例中,RNN是长短期记忆(LSTM)神经网络。
图像分割引擎(诸如但不限于图像分割引擎180)组合图像和n元语法的特征,以生成并且迭代地更新图像的分割图或者掩模。分割图或掩模标识由n元语法(或自然语言短语)引用的图像的区域中包括哪些像素。通过采用分割图,图像可以被分割以生成输出的分割图像132。
更具体地,图像特征引擎140可以采用一个或多个已训练卷积神经模型和/或网络,来确定和/或标识图像120内的抽象特征。图像特征引擎140将图像120的抽象特征编码成结构化数据和/或数据结构。在一些实施例中,图像特征数据结构可以是图像特征图和/或图像特征张量。通常,张量包括可以布置成阵列的结构化数据。一维(1D)张量可以是、或者至少可以被表示和/或编码为向量或1D阵列。二维(2D)张量可以是、或者至少可以被表示和/或编码为矩阵或2D阵列。各种实施例可以采用几乎任何维度的张量。图像特征引擎140将图像特征数据结构提供给图像分割引擎180。在一些实施例中,图像120也被提供给图像分割引擎180。
在至少一个实施例中,用户可以向用户计算设备102-110中的至少一个可听地说出n元语法128。由用户计算设备之一(和/或ISA 130)所提供的语音到文本服务可以将可听语音转换为文本n元语法。如图1所示,n元语法的一个这样的非限制性实施例可以编码自然语言短语“The man in the striped shirt”。在这样的实施例中,n元语法128包括自然语言标记的有序集合或序列:{“the”,“man”,“in”,“the”,“striped”,“shirt”}。
n元语法128可以被提供给n元语法特征引擎160。在各种实施例中,n元语法特征引擎160确定、检测和/或标识n元语法160的各种自然语言特征。n元语法特征引擎160可以将n元语法128的隐藏特征编码为结构化数据和/或数据结构。如本文中使用的,n元语法的隐藏特征可以对应于n元语法的各种隐藏变量和/或潜在变量。也就是说,n元语法特征引擎160可以采用潜在变量模型(诸如但不限于递归神经模型)来标识n元语法的隐藏和/或潜在特征。例如,在一些实施例中,n元语法特征引擎140可以采用单词嵌入语言模型来为n元语法中的每个标记生成标记向量。在至少一个实施例中,n元语法特征引擎160还采用一个或多个已训练递归神经模型和/或网络,来基于标记向量和=n元语法128中所包括的特定标记序列来生成n元语法隐藏特征向量。n元语法隐藏特征向量可以被迭代生成。这样,递归神经模型和/或网络可以传播(或以其他方式记住)n元语法隐藏特征向量的当前状态。n元语法隐藏特征向量的当前状态可以用于:在n元语法隐藏特征向量的生成的后续迭代中对n元语法隐藏特征向量的状态进行更新。因此,在一些实施例中,n元语法特征数据结构可以是n元语法隐藏特征向量和/或标记向量。n元语法特征引擎160将n元语法特征数据结构提供给图像分割引擎180。
图像分割引擎180将图像特征数据结构和n元语法特征数据结构进行组合。组合可以经由图像分割引擎180中所包括的和/或由图像分割引擎180采用的神经模型或网络中的一个或多个卷积和/或去卷积层来处理。在至少一个实施例中,图像分割引擎180可以采用另一递归神经模型或网络(与由n元语法特征引擎160采用的递归神经模型分离的递归神经模型或网络)来迭代地生成分割图。这样,递归神经模型和/或网络可以传播(或以其他方式记住)分割图的当前状态。分割图的当前状态可以用于在分割图的生成的后续迭代中更新分割图的状态。
图像分割引擎180可以采用分割图,以基于n元语法128来对图像120进行分割。也就是说,分割引擎180可以生成并且提供分割图像132。例如,分割图像132可以被显示在任何用户计算设备(诸如但不限于用户计算设备102-110)的显示设备上。分割图像132可以被存储在图像数据118中。
注意,输入图像120包括第一人122、第二人124和第三人126,其中第一人122确实是“the man in the striped shirt”,对应于经由n元语法128提供的描述。在分割图像132中,分割134对“the man in the striped shirt”进行分割。
基于中间分割模型的递归来对图像进行分割
图2示出了与本文所呈现的各种实施例相一致的用于基于自然语言短语和中间分割(RIS)模型的递归来对图像进行分割的图像分割应用(ISA)200的示例性实施例。因此,ISA 200可以是RIS ISA。
ISA 200接收输入图像220和输入n元语法228。如图2所示,n元语法的一个非限制性示例包括自然语言标记的有序集合和/或序列:{“the”,“snack”,“was”,“looking”,“very”,“beautiful”}。n元语法228编码自然语言短语“The snack was looking verybeautiful”。经由n元语法228编码的自然语言短语的含义是引用图像220。n元语法228由ISA 200采用来对图像220进行分割并且生成分割图像232。
类似于图1的ISA 130,ISA 200包括图像特征引擎240、n元语法特征引擎260和图像分割引擎280,其各自可以包括与ISA 130的对应引擎相似的模块、部件和/或功能。在一些实施例中,图像特征引擎240包括图像特征标识模块242和图像数据封装模块244。n元语法特征引擎260可以包括标记选择器模块262、自然语言模型模块264和第一递归神经模型(RNM)模块(即,RNM A模块266)。图像分割引擎280可以包括卷积/去卷积模块282、分割模块286和第二RNM模块(即,RNM B模块284)。ISA的其他实施例可以包括更少或较少的引擎、模块和/或部件。
ISA 200的功能和操作是迭代的,并且将至少结合图3、4A和4B来更详细地讨论。然而,简要地,图像特征标识模块242可以基于所接收的输入图像220和图像特征标识模型(IFIM)来生成图像特征图。例如,图像特征标识模块242可以包括和/或采用已训练完全卷积神经网络(FCN)来标识图像的特征。如至少结合图3所讨论的,这样的特征可以被编码在图像特征图中。然而在此处,简要地,图像特征图对经由IFIM标识的图像特征与图像像素的对应块(block)或图块(tile)之间的映射进行编码。图像特征可以是经由IFIM标识的潜在的和/或隐藏的图像特征。
图像数据封装模块244可以生成图像特征图和图像特征图中图块的空间坐标的组合。组合图像特征图和图像特征图中图块的空间坐标的各种实施例至少结合图3来讨论。图像数据封装模块244还可以基于图像特征图和图块的空间坐标的组合和/或连结来生成图像特征数据结构,诸如但不限于图像特征张量。如图2所示,图像数据封装模块244可以将图像特征结构提供给图像分割引擎280的卷积/去卷积模块282。
转到n元语法特征引擎260,标记选择器模块262可以顺序地选择n元语法228的每个标记,并且将所选择的标记提供给自然语言模型模块264。语言模型模块264可以包括和/或采用已训练单词嵌入语言模型来为每个标记生成标记数据结构(诸如但不限于标记向量)。
简要地,标记向量(以及本文中讨论的其他标记数据结构)对对应的标记的语义特征进行编码。单词嵌入语言模型在多维空间中嵌入标记。空间中的标记对之间的距离指示标记对之间的语义相似度。这样的单词嵌入模型可以经由在大的语义语料库内生成语义分布来训练。一个示例性但非限制性的实施例可以采用“Word2Vec”自然语言模型。其他实施例不限于此,并且可以采用其他的和/或备选的单词嵌入语言模型来为每个标记生成标记向量。
RNM A模块266可以基于标记向量序列来生成并且迭代地更新n元语法隐藏特征数据结构,诸如但不限于n元语法隐藏特征向量。n元语法隐藏特征数据结构可以编码或以其他方式来表示经由RNM A模块266标识的n元语法的各种潜在的和/或隐藏的特征。n元语法隐藏特征数据结构的生成和迭代更新至少结合图3来讨论。然而,简要地,RNM A可以包括和/或采用已训练RNM和/或已训练递归神经网络(RNN)、基于标记向量序列来生成并且迭代地更新n元语法隐藏特征向量。例如,在第一迭代期间,生成的n元语法隐藏特征向量基于与n元语法228的第一标记(即,“the”)相对应的标记向量。如图2所示,RNM A传播(即,“记住”)n元语法隐藏特征向量的一个或多个先前状态(即,向量分量的值),其要在后续迭代中更新n元语法隐藏特征向量的后续状态时被采用。在第二迭代期间,对n元语法隐藏特征向量进行更新是基于:最初生成的n元语法隐藏特征向量和与n元语法228的第二标记(即,“snack”)相对应的标记向量。这样的迭代操作继续,直到n元语法的最后的、最终的和/或末端的标记被处理。
在至少一个非限制性实施例中,RNM A可以包括和/或基于已训练第一长短期记忆(LSTM)模型和/或神经网络。因此,RNM A模块226可以包括第一LSTM模型和/或神经网络(即,LSTM A)。其他实施例不限于此,并且其他类型的RNM和/或RNN可以被包括在RNM A模块266中和/或由其采用。
在RNM A模块266的每个操作迭代之后,经迭代更新的n元语法隐藏特征向量可以被提供给图像分割模块280的卷积/去卷积模块282。图像分割引擎280可以包括一个或多个已训练神经网络。这样的神经网络可以被包括在卷积/去卷积模块282、RNM B模块284和/或分割模块286的任何组合中和/或分布于其中。神经网络可以包括各种卷积(即,编码)层和/或去卷积(即,解码)层。卷积/去卷积模块282包括一个或多个卷积层。在一些实施例中,卷积/去卷积模块282包括一个或多个去卷积层。如下所述,神经网络的至少一部分可以是RNN网络。RNM B模块284可以包括与在RNM A模块266中所包括的RNN分离的另一RNN(即,RNNB)。在一个实施例中,RNN B是LSTM神经网络(即,LSTM B)。
如至少结合图3更详细地讨论的,卷积/去卷积模块282可以将图像特征张量与已迭代地更新的n元语法隐藏特征向量组合和/或连接。此外,卷积/去卷积模块282可以采用其神经模型或神经网络的一个或多个卷积层和/或去卷积层来对结构化数据中的附加特征(即,连结的图像特征张量和n元语法隐藏特征向量)进行编码和/或解码。
如图2所示,卷积/去卷积模块282可以将结构化数据提供给RNM B模块284。RNM B模块284可以采用RNN B、基于图像特征张量和n元语法隐藏特征向量的连结来生成并且迭代地更新分割张量和/或分割图。例如,在第一迭代期间,分割张量和对应的分割图是基于:图像特征张量和n元语法隐藏特征向量的第一状态(即,基于n元语法228的第一标记:“the”的n元语法隐藏特征向量)。RNN B传播要在第二迭代中采用的分割张量/图的状态。也就是说,在第二迭代期间,分割张量/图是基于分割张量/图的先前状态以及图像特征张量和n元语法隐藏特征向量的基于n元语法228的第一和第二标记(即,“the”和“snack”)的连结而被更新。
在处理n元语法228的标记的最终迭代之后,所迭代地生成的分割张量和/或图和图像220被提供给分割模块286。分割模块286基于分割图来对图像220进行分割以成生成分割图像232。例如,分割图可以被用作分割掩模。可以应用分割图和图像220的对应像素之间的逐像素的“AND”操作来生成分割图像232。
图3示意性地示出了图2的RIS ISA 200的连续迭代步骤。更具体地,图3示出了ISA200的操作300中的6个步骤(即,步骤302-312)。步骤302-312经由整数索引t来排序和索引。在步骤302(t=0),接收图像320和n元语法328。n元语法328编码自然语言短语“Dog in thefront”。在迭代步骤304-310(分别为t=1,t=2,t=3和t=4)期间,基于图像320和n元素328来生成并且迭代地更新分割张量。分割张量对分割图进行编码。因此,可以在这些步骤中的每个步骤迭代地更新分割图。在步骤312(t=5),采用经由分割张量编码的分割图来对图像320进行分割,并且提供分割图像332。
更特别地,图像320可以是由结构化数据表示的二维(2D)图像。例如,接收的图像可以被表示和/或编码为维度为H×W×D的三维(3D)张量,其中H是竖直像素的数目,W是水平像素的数目,并且D是像素深度。在一个实施例中,每个像素可以包括3个通道(即,RGB),并且因此图像320被编码为维度为H×W×3的图像张量。
步骤302(t=0)示意性地示出了图像特征引擎340处理图像320的操作。图像特征引擎340可以包括与至少ISA 130的图像特征引擎140和/或ISA 200的图像特征引擎240相似和/或等同的功能、部件、模块等。例如,图像特征引擎340包括一个或多个完全卷积神经网络(FCN 342),其对图像320进行操作以生成图像特征图。FCN 342可以被包括在图像特征引擎340的图像特征标识模块中。实质上,FCN 342被训练为实施图像特征标识模型(IFIM),以标识图像的抽象特征并且生成图像特征图。
FCN 342的一个或多个卷积内核可以使得图像特征图包括H'×W'个图块。如本文中使用的,图像特征图的“图块”是图像特征图的基本“单元”。图像特征图的每个图块覆盖(或铺盖(tile))H/H'×W/W'个像素的矩形区域。在一个非限制性实施例中,H'=H/32并且W'=W/32。特征图图块的维度深度(或者通道数目)可以用正整数DI表示。在一个实施例中,DI=1000。因此,图像特征图可以被编码在结构化数据中,被构造为H'×W'×1000张量。因此,在图3所示的实施例中,FCN 342生成或以其他方式输出被构造为H'×W'×1000张量的图像特征图。
每个图块的空间坐标被表示为空间坐标数据结构346。在一个实施例中,图像特征图的每个图块有8个空间坐标维度。在各种实施例中,归一化的水平位置可以经由3个维度来表征,归一化的竖直位置经由另外的3个维度来表征,并且每个归一化的参数1/W'和1/H'经由单个维度来表征。因此,图像特征图中图块的空间坐标可以被编码为H'×W'×8张量。
图像特征引擎340包括连结(或组合)部件344,其组合(或连结)图像特征图和空间坐标346以生成图像特征张量。连结部件344可以被包括在图像特征引擎340的图像数据封装模块中。如图3所示,图像特征张量的维度可以是H'×W'×1008(即,H'×W'×1000图像特征图和H'×W'×8空间坐标张量的连结)。
更一般地,作为图像特征图和其图块的空间维度的组合的图像特征张量可以被编码为被构造为H'×W'×DI+8张量的数据。图像特征张量在图像的像素上定义。这样,图像特征张量可以被定义在上定义,其中i和j是像素索引。
步骤304、306、308和310(分别为t=1,t=2,t=3和t=4)示意性地示出了n元语法特征引擎360和图像分割引擎380处理图像320的迭代操作中的第一迭代。类似地,n元语法特征引擎360可以包括与至少ISA 130的n元语法特征引擎160和/或ISA 200的n元语法特征引擎260相似和/或等同的功能、部件、模块等。
更特别地,n元语法328由n元语法特征引擎360接收。每个迭代步骤304-310对应于接收的n元语法328(依次取得)的标记。也就是说,如图3所示,步骤304对应于n元语法328的第一标记(即,“dog”),步骤306对应于n元语法328的第二标记(即,“in”),步骤308对应于n元语法328的第三标记(“the”),并且步骤310对应于n元语法328的第四(和终端)标记(即,“front”)。
在步骤304-310中的每个中,采用n元语法特征引擎360的单词嵌入自然语言模型364、基于对应的标记来生成标记向量。例如,可以采用单词嵌入语言模型“Word2Vec”来生成标记向量序列。在其他实施例中,可以使用其他单词嵌入语言模型来生成标记向量。单词嵌入语言模型可以被包括在n元语法特征引擎360的自然语言模型(NLM)模块中。
当迭代在步骤310终止时,经由单词嵌入语言模型364生成4个标记向量的序列(或有序集合)。有序标记向量集合可以被指示为:因此,接收的n元语法328被编码为s={wt},其中t∈{1,2,3,4},w1是基于标记“dog”的标记向量,w2是基于标记“in”的标记向量,w3是基于标记“the”的标记向量,并且w4是基于标记“front”的标记向量。
在步骤304,采用在n元语法特征引擎360中所包括的RNN(即,RNN A 366)、基于对应标记的标记向量(即,w1)来生成n元语法隐藏特征向量。RNN A 366可以被包括在RNN A模块中。RNN A模块可以被包括在n元语法特征引擎中。在各种实施例中,RNN A可以是LSTM神经网络(即,LSTM A)。如自始至终所指出的,n元语法隐藏特征向量可以由RNN A 366传播和/或记忆。在迭代步骤306-310的每个中,基于对应标记的标记向量和n元语法隐藏向量的至少先前状态来更新n元语法隐藏状态向量。在每个步骤中的n元语法隐藏向量可以表示为ht。相应地,ht是在t+1迭代处的RNN A的隐藏状态。ht的维度可以表示为Ds。在一个非限制性实施例中,Ds=1000。
在步骤306,基于w2和h1来更新n元语法隐藏特征向量(h2)。类似地,在步骤308,基于w3和h2来更新n元语法隐藏特征向量(h3)。在其他实施例中,RNN A可以具有更长的存储器,即,在步骤310,基于w4和h3、h2和/或h1来更新n元语法隐藏特征向量(h4)。
在RNN A是LSTM(即,LSTM A神经网络)的实施例中,输入门可以被表示为向量i,遗忘门可以被表示为向量f,输出门被表示为向量o,并且存储器门被表示为向量g。LSTM A的门的维度表示为n。此外,在迭代t处的存储器状态由向量ct表示。在这样的实施例中,迭代操作LSTM A(在迭代t处)可以包括以下操作:
LSTM:(wt,ht-1,ct-1)→(ht,ct)
ct=f⊙ct-4+i⊙g
ht=o⊙tanh(ct)
Sigm表示S形函数。拼贴部件368可以拼贴n元语法隐藏特征向量(即,LSTM A的隐藏状态:ht)以生成维度为H'×W'×DS的数据结构(例如,张量)。是对LSTM A的一个或多个内核进行编码的矩阵/张量算子。如上所述,在一些实施例中,DS=1000。这样,如图3所示,n元语法隐藏特征向量可以经由拼贴部件368被拼贴和编码为H'×W'×1000张量。
图像分割引擎360的连结部件388可以将图像特征张量(被编码在H'×W'×DI+8张量中和/或被构造为H'×W'×DI+8张量)与n元语法隐藏特征向量(被编码在H'×W'×DS张量中和/或被构造为H'×W'×DS张量)进行组合。相应地,连结模块388可以生成H'×W'×DS+DI+8张量。如图3所示,在至少一个实施例中,张量是H'×W'×2008维张量。连结部件388可以被包括在图像分割引擎380的卷积/去卷积模块中。
被包括在这样的卷积/去卷积模块中的一个或多个卷积和/或去卷积神经网络层382可以提供H'×W'×DS+DI+8张量的进一步编码和/或解码。如图3所示,在至少一个实施例中,卷积/去卷积层基于H'×W'×DS+DI+8张量来生成维度为H'×W'×500的编码。H'×W'×500张量作为输入被提供给在图像分割引擎360中所包括的第二RNN(RNN B 384)。RNN B384可以被包括在图像分割引擎360的RNM B模块中。
RNN B 384可以基于输入的H'×W'×500张量来生成并且迭代地更新分割张量。在每个迭代步骤(经由索引t索引的步骤304-310),H'×W'×500张量是基于:图像特征张量(vij)和n元语法隐藏特征张量(ht)中的每个。因此,在每个迭代步骤304-310,分割张量基于图像特征张量和对应于迭代步骤的n元语法隐藏特征张量。
RNN B 384内的一个或多个卷积层和/或去卷积层可以生成附加的编码和/或解码,使得分割张量是维度为H'×W'×1的张量。因此,分割张量的“像素”与输入图像320的像素之间存在一对一对应。在这样的实施例中,分割张量是分割图。每个连续更新的分割张量可以被表示为其中i和j是像素索引,以及t是迭代的索引。在至少一个实施例中,分割张量是二进制张量,即,每个像素处的值是“0”或“1”。在这样的实施例中,分割图可以是分割掩模。
类似于RNN A 366,在RNN B 384的每个迭代操作期间,分割张量的状态可以经由RNN B 384的存储器状态来传播(或记忆)。因此,迭代t处的经更新分割张量(Ri,j,t)可以至少基于在先前的t-1迭代处的分割张量(Ri,j,t-1)的状态以及当前迭代(t)的图像特征张量(vi,j)和n元语法隐藏特征张量(ht)。
在至少一个实施例中,RNN B 384可以经由以下操作来更新分割张量:
Whidden和Winput是已训练RNN B 384的权重。在最后的步骤312(t=5),采用分割图(如分割张量中所编码的)作为分割图像320的逐像素掩模。逐像素“AND”逻辑操作由图像分割引擎380的分割模块执行以生成分割图像332。分割图像332可以被提供给用户。分割图像332可以被类似地编码为输入图像320,即作为H'×W'×3张量。
现在分别讨论图4A和4B的过程400和440。简要地,过程400和440可以由图像分割应用(ISA)(诸如但不限于图1的ISA 130和/或图2的ISA 200)采用以基于自然语言短语来对图像进行自动分割。此外,过程400和440中所包括的操作的各个方面被示意性地示出并且结合图3进行讨论。
图4A示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和中间分割模型的递归来对图像进行分割的处理流程的一个实施例。在开始框之后,过程400在框402开始,在框402迭代地生成第一递归神经模型(RNM)(RNM A)和第二RNM(RNM B)中的至少一个。用于迭代地生成RNM的各种实施例结合至少图8的过程800来讨论。然而在这里,简要地,可以训练RNM以自动标识高维数据结构(诸如张量和向量)内的特征。如下面所讨论的,可以训练RNM以标识n元语法、图像及其组合内的特征(诸如隐藏特征和抽象特征)。
RNM可以在递归神经网络(RNN)上实施和/或由其支持。迭代地生成RNM可以包括训练RNM。因此,在一些实施例中,在框402训练至少一个RNM和/或RNN,如结合过程800所讨论的。例如,图像可以由ISA接收。在框404,接收图像。
在框406,基于接收的图像和图像特征标识模型(IFIM)来生成图像特征图。例如,ISA的图像特征引擎中所包括的一个或多个FCN可以生成图像特征图。图像特征图可以被编码在图像数据结构中。因此,在框406,可以生成图像数据结构,其对所标识的图像特征与图像特征图中像素的对应图块(或块)之间的映射进行编码。在框408,基于图像特征图和图像特征张量的图块的空间坐标的组合和/或连结来生成图像特征张量。图像特征引擎的图像数据封装模块可以封装和/或编码图像特征张量。图3的步骤302示意性地示出了图像特征张量的生成。图像特征张量可以被编码在图像数据结构中。因此,在框408,可以生成和/或更新图像数据结构。
在框410,接收n元语法。ISA的n元语法特征引擎可以接收n元语法。n元语法可以引用图像的区域。例如,被引用的区域可以描绘作为n元语法的主题的对象。在框412,基于n元语法和已训练RNM A来生成并且迭代地更新n元语法隐藏特征向量。用于生成和迭代地更新n元语法隐藏特征向量的各种实施例结合图4B的过程440来讨论。然而在这里,简要地,n元语法特征引擎的RNN模块可以采用已训练RNM A来生成并且迭代地更新n元语法隐藏特征向量。
在框414,基于图像特征张量和n元语法隐藏特征向量的组合以及第二RNM(即,RNMB)来生成并且迭代地更新分割张量。用于生成并且迭代地更新分割张量的各种实施例结合过程440来讨论。然而,简要地,ISA的图像分割引擎可以包括和/或采用RNM B来生成并且迭代地更新分割张量。分割张量可以被编码在分割数据结构中。因此,在框414,生成并且迭代地更新分割数据结构。分割张量对分割图或掩模进行编码。分割图或掩模标识图像上经由n元语法引用的图像区域中所包括的每个像素。
在框416,基于分割张量和一个或多个卷积/去卷积模型来生成分割图或掩模。在框418,基于图像和分割图来生成分割图像。例如,图分割引擎的分割模块可以采用分割图作为掩模,并且对图像执行逐像素“AND”逻辑运算以对图像进行分割并且生成分割图像。在框420,提供分割图像。例如,分割图像可以被提供给一个或多个用户计算设备和/或被存储在存储装置中。过程400终止和/或返回调用过程。
图4B示出了用于采用图2的ISA 200(和/或图1的ISA 130)基于自然语言短语和中间分割模型的递归来迭代地生成分割张量的处理流程的一个实施例。在开始框之后,过程440在框442开始,在框442顺序地选择n元语法中的下一标记。因此,在过程440的第一调用期间,选择n元语法的第一标记。例如,ISA的标记选择器模块可以顺序地选择第一标记到最后(或末端)标记中的每个标记。
在框444,基于所选择的标记和一个或多个自然语言模型来生成标记向量。例如,可以采用单词嵌入语言模型来生成标记向量。图3的步骤304-310示出了生成标记向量序列的单词嵌入语言模型364。在各种实施例中,标记向量被编码在标记数据结构中。因此,在框444的最终调用时,经由对框444的连续调用来生成标记数据结构有序的集合或序列。每个标记数据结构编码和/或指示:与所选择的标记相对应的语义特征。
在框446的第一调用期间,基于标记向量和第一RNM(即,RNM A)来生成和/或更新n元语法隐藏特征向量。对于框446的后续调用,基于以下项目来更新n元语法隐藏特征向量:n元语法隐藏特征向量的当前状态、RNM A和基于下一标记的后续标记向量。在至少一个实施例中,RNM A经由LSTM神经网络来实施。例如,图3的步骤304-310示出了RNN A 366生成并且迭代地更新n元语法特征向量。
在框448,传播(即,存储和/或记忆)所生成的/已更新n元语法隐藏特征向量。如自始至终所讨论的,RNN A的内部(或隐藏)节点(或门)可以传播n元语法隐藏特征向量。如图3所示,n元语法隐藏特征向量被迭代地从步骤304传播到每个后续步骤,直到步骤310。在一些实施例中,n元语法隐藏特征向量的当前状态被传播,以使得n元语法隐藏特征向量的当前状态可以用来在对框446的后续调用中对n元语法隐藏特征向量进行更新。
在框450,可以生成图像特征张量和已更新n元语法隐藏特征向量的组合(或连结)。在一些实施例中,可以基于图像特征张量的维度来拼贴n元语法隐藏特征向量。图3的步骤304-310示出了拼贴部件368基于图像特征张量的维度来拼贴n元语法隐藏特征向量。一旦拼贴的n元语法隐藏特征向量被拼贴,图像特征张量和n元语法隐藏特征向量可以被组合。步骤304-310示意性地示出了连结模块388对图像特征张量和n元语法隐藏特征向量进行组合。在框452,可以经由各种卷积和去卷积神经网络层来对图像特征张量的组合进行卷积和/或去卷积。步骤304-310示意性地示出了连结模块382对图像特征张量和n元语法隐藏特征向量的组合进行卷积/去卷积(编码/解码)。
在框454的第一调用期间,基于以下项目来生成和/或更新分割张量:图像特征张量和已更新n元语法隐藏特征向量的组合以及第二RNM(即,RNM B)。对于框454的后续调用,基于以下项目来更新分割张量:分割张量的当前状态、RNM B以及图像特征张量和基于下一标记的后续的n元语法隐藏特征向量的后续组合。在至少一个实施例中,RNM B经由LSTM神经网络来实施。
在框456,传播生成的/已更新分割张量。如自始至终所讨论的,RNN B的内部(或隐藏)节点(或门)可以传播分割张量。如图3所示,分割张量被迭代地从步骤304传播到每个后续步骤,直到步骤310。在一些实施例中,分割张量的当前状态被传播,使得分割张量的当前状态可以用来在对框454的后续调用中对分割张量进行更新。
在判定框458,确定n元语法中的另一标记是否将被选择。如果当前选择的标记是n元语法中的最后或末端标记,则过程440流向框460。否则,过程440返回框442以选择n元语法中的下一标记。在框460,提供已更新分割张量。过程440可以终止和/或返回调用过程。基于多模态递归神经模型来对图像进行分割
图5示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和多模态递归神经模型(mRNM)来对图像进行分割的图像分割应用(ISA)500的备选实施例。因此,ISA500可以是mRNM ISA。mRNM可以是卷积多模态LSTM(mLSTM)。mLSTM使得图像和n元语法之间的单词视觉交互成为可能。这样的交互在每个迭代步骤生成多模态特征。
ISA 500可以包括与图1的ISA 130和图2的ISA 200类似的特征、模块、部件、操作和功能。例如,ISA 500包括图像特征引擎540、n元语法特征引擎560和图像分割引擎580,其各自可以包括与ISA 130和ISA 200的对应引擎相似的模块、部件和/或功能。在一些实施例中,图像特征引擎540包括图像特征标识模块542和图像数据封装模块544。n元语法特征引擎560可以包括语音到文本模块566、标记选择器模块562和自然语言模型(NLM)模块564。图像分割引擎280可以包括卷积/去卷积模块582、分割模块586和mRNM模块584。ISA的其他实施例可以包括更少或较少的引擎、模块和/或部件。这样的部件、模块、引擎等的一些功能可以与结合图。2-4B讨论的相似。下面讨论模块、部件、功能和操作的至少一部分差异。应当注意,下面讨论的任何这样的差异可以被并入到ISA 130和/或ISA 200中。
ISA 500接收输入图像520和自然语言短语528。图像特征标识模块542基于图像520和被训练为实施图像特征标识模型(IFIM)的一个或多个完全卷积神经网络(FCN)来生成图像特征图。图像数据封装模块544将图像特征图与图像特征图的空间坐标进行组合,以生成图像特征图张量。
在至少一个实施例中,短语528可以是口头的和/或可听的自然语言短语(或句子)。也就是说,用户可以可听地说出自然语言短语528。语音到文本模块566可以将口头的短语528转换成基于文本的n元语法。更具体地,语音到文本模块566可以基于口头的短语528和语音到文本模型来生成文本n元语法(即,包括在文本数据中所编码的标记的n元语法)。在顺序选择每个标记之后,经由标记选择器模块562,NLM模块564为每个所选择的标记生成标记向量。例如,NLM模块564可以采用“Word2Vec”方法或其他单词嵌入模型来生成标记向量。
mRNM模块584可以迭代地对图像特征张量和标记向量进行组合。被包括在mRNM模块584中和/或由mRNM模块584采用的mRNN可以基于图像特征张量和标记向量的组合来生成并且迭代地更新多模态张量。mRNN可以是卷积多模态LSTM。多模态张量可以从一个迭代被传播到下一迭代。
卷积/去卷积模块582可以采用mRNN的一个或多个卷积和/或去卷积层来进一步对多模态张量进行编码/解码。分割图可以基于多模态张量来生成。分割模块586可以基于分割图来生成分割图像。
图6示意性地示出了图5的多模态递归神经ISA的连续迭代步骤。更具体地,图6示出了ISA 500的操作600中的6个步骤(即,步骤602-612)。步骤602-612经由整数索引t被排序和索引。在步骤602(t=0),接收图像620和n元语法628。n元语法628对自然语言短语“Dogin front进行编码”。在迭代步骤604-610(分别为t=1,t=2,t=3和t=4)期间,基于图像620和n元语法628来生成并且迭代地更新多模态张量。在步骤612(t=5),采用多模态张量来对图像620进行分割,并且提供分割图像632。
图6中示意性地示出了各种引擎、部件、模块等的操作/功能。这样的引擎、部件、模块、操作和功能可以与图3中所示的操作类似。例如,图像特征引擎640的操作可以类似于图3的图像特征引擎340的操作。也就是说,FCN 642和连结部件644对输入图像620和空间坐标646的操作可以与已经讨论的操作类似。
n元语法特征引擎660的各种特征可以类似于图3的n元语法特征引擎330。例如,单词嵌入语言模型664可以基于n元语法628中的标记序列来顺序地生成标记向量。因此,接收的n元语法628被编码为S={wt},其中w1是基于标记“dog”的标记向量,w2是基于标记“in”的标记向量,w3是基于标记“the”的标记向量,w4是基于标记“front”的标记向量。在非限制性实施例中,采用“Word2Vec”单词嵌入自然语言模型来生成标记向量。
拼贴部件668可以对标记向量(其可以具有1000的维度)进行拼贴以覆盖图像特征图的维度。连结部件688可以对经拼贴的标记向量和图像特征图进行连结或组合。
mRNN 684处理标记向量和图像特征张量的组合。在各种实施例中,mRNN 684是卷积多模态LSTM(mLSTM)神经网络,其迭代地对标记向量和图像特征张量的组合进行操作以生成分割图。卷积mLSTM的隐藏状态被构造为多模态张量。多模态张量从一个迭代被传播到下一迭代。此外,采用多模态张量的当前状态来更新后续迭代中的多模态张量。
更具体地,卷积mLSTM的迭代操作可以包括以下操作:
张量(在迭代t处)对拼贴的标记向量和图像特征张量的组合进行编码。编码mLSTM的内核的矩阵/张量算子(M)的维度可以是(4n×(DS×DI+8+n))。
在一些实施例中,矩阵/张量算子被配置为忽略图像特征张量并且仅编码标记向量中所编码的语义信息。在其他实施例中,矩阵/张量运算符被配置为忽略标记向量。
可以进一步采用mRNN 684的一个或多个卷积和/或去卷积层来进一步编码/解码多模态张量。分割图基于多模态张量来生成。分割图像632基于分割图来生成。
现在分别讨论图7A和7B的过程700和740。简要地,过程700可以由图像分割应用(ISA)(诸如但不限于图1的ISA 130和/或图5的ISA 500)采用以基于自然语言短语来对图像进行自动分割。此外,过程700和740中所包括的操作的各个方面被示意性地示出并且结合图6进行讨论。
图7A示出了与本文中呈现的各种实施例相一致的用于基于自然语言短语和多模态递归神经模型来对图像进行分割的处理流程的一个实施例。在开始框之后,过程700开始,以迭代地生成多模态递归神经模型(mRNM)。用于迭代地生成mRNM的各种实施例结合至少图8的过程800来讨论。然而,这里,简要地,迭代地生成mRNM可以包括训练一个或多个多模态递归神经网络(mRNN)。
在框704,提供图像。在框706,基于图像和图像特征标识模型(IFIM)来生成图像特征图。图像特征图可以被编码在图像数据结构中。因此,在框706,可以生成图像数据结构,其对所标识的图像特征与图像特征图的像素的对应图块(或块)之间的映射进行编码。在框708,基于图像特征图和图像特征图中图块的空间坐标的组合来生成图像特征张量。图像特征张量可以被编码在图像数据结构中。因此,在框708,可以生成和/或更新图像数据结构。
在框710,用户可以提供口头的自然语言短语。口头的自然语言短语可以引用图像的区域。例如,所引用的区域可以描绘作为口头的n元语法的主题的对象。在框712,基于口头的自然语言短语和语音到文本模型来生成基于文本的(或文本的)n元语法。例如,可以采用语音到文本模块将口头的短语转换成文本标记。在框714,基于单词嵌入模型和文本n元语法来生成标记向量序列。用于生成标记向量序列的各种实施例结合至少图7B的过程740来讨论。例如,可以采用“Word2Vec”单词嵌入语言模型来生成每个标记向量。
在框716,基于已训练mRNM来生成并且迭代地更新多模态张量。用于生成和迭代地更新多模态张量的各种实施例至少结合过程740来讨论。然而,这里,简要地,可以基于图像特征张量和标记向量序列的组合来生成并且迭代地更新多模态张量。多模态张量可以被编码在分割数据结构中。因此,在框716,生成并且迭代地更新分割数据结构。多模态张量对分割图或掩模进行编码。分割图或掩模标识图像上经由n元语法引用的图像区域中所包括的每个像素。
在框718,可以基于多模态张量和一个或多个卷积/去卷积模型来生成分割图。在框720,基于图像和分割图来生成分割图像。在框722,可以在用户计算设备的显示设备上显示分割图像。过程700可以终止和/或返回调用过程。
图7B示出了用于采用图5的ISA 500(和/或图1的ISA 130)基于自然语言短语和多模态递归神经模型来迭代地生成分割张量的处理流程的一个实施例。在框742,顺序地选择文本n元语法中的标记。在框744,基于所选择的标记和单词嵌入语言模型来生成标记向量。在各种实施例中,标记向量被编码在标记数据结构中。因此,在框744的最终(或末端)调用之后,经由框744的连续调用来生成标记数据结构的有序集合或序列。每个标记数据结构编码和/或指示与所选择的标记相对应的语义特征。在框746,生成图像特征张量和标记向量的组合(或连结)。
在框748,基于图像特征张量和标记向量的组合来生成或更新多模态张量。多模态张量还可以基于多模态张量的先前状态和已训练mRNM来更新。在框750,在mRNM内传播已更新的多模态张量。
在判定框752,确定n元语法中的另一标记是否要被选择。如果当前选择的标记是n元语法中的最后或末端标记,则过程740流向框752。否则,过程740返回框742以选择n元语法中的下一标记。在框754,采用mRNN的一个或多个卷积/去卷积层来进一步对多模态张量进行编码/解码。在框756,基于多模态张量来生成分割张量。在框758,可以传输分割张量。过程740可以终止和/或返回调用过程。
训练递归神经模型和多模态递归神经模型
图8示出了与本文中呈现的各种实施例相一致的用于迭代地生成递归神经模型和多模态递归神经模型的处理流程的一个实施例。在开始框之后,过程800在框802开始,在框802接收训练数据。例如,训练数据可以被存储在图1的训练数据118中。训练数据可以包括训练图像、训练n元语法和真实的分割图。
在框804,基于训练图像和训练n元语法来生成训练分割图。自始至终讨论用于生成这样的分割图的各种实施例,包括至少结合图4A的过程400和图7A的过程700。然而,简要地,训练分割图可以基于部分已训练的RNM A、RNM B和/或mRNM。
在框806,基于训练分割图和真实的分割图的比较来确定损失度量。训练分割图可以被表示为Ri,j,并且地面实况分割图可以被表示为在一些实施例中,损失度量(L)可以如下确定:
在其他实施例中,损失度量可以如下确定:
在框808,基于损失度量来更新部分已训练的RNM A、RNM B和/或mRNM中的至少一个。当更新各种RNN中的任一个时,可以采用标准反向传播。
在判定框810,确定一个或多个模型是否已经收敛。如果模型已经收敛,则过程800流向框812。否则,过程800返回框802,以附加地接收训练数据并且继续训练过程。在框812,提供已收敛(或已训练)的RNM A、RNM B和/或mRNM中的至少一个。过程800可以终止和/或返回调用过程。
说明性计算设备
已经描述了本发明的实施例,下面描述其中可以实施本发明的实施例的示例操作环境,以便为本发明的各个方面提供一般上下文。参考图9,示出了用于实施本发明的实施例的说明性操作环境,并且其总体上表示为计算设备900。计算设备900仅是合适的计算环境的一个示例,并且不旨在暗示对本发明的使用或功能的范围的任何限制。计算设备900也不应当被解释为具有与所示部件的任何一个或组合相关的任何依赖性或要求。
本发明的实施例可以在计算机代码或机器可使用指令(包括由诸如智能电话或其他手持设备等计算机或其他机器执行的计算机可执行指令,诸如程序模块)的一般上下文中描述。通常,包括例程、程序、对象、部件、数据结构等在内的程序模块或引擎是指执行特定任务或实现特定抽象数据类型的代码。本发明的实施例可以在各种系统配置中实践,包括手持设备、消费电子设备、通用计算机、更专业的计算设备等。本发明的实施例也可以在分布式计算环境中实施,其中任务由通过通信网络链接的远程处理设备来执行。
参考图9,计算设备900包括直接或间接耦合以下设备的总线910:存储器912、一个或多个处理器914、一个或多个呈现部件916、输入/输出端口918、输入/输出部件920和说明性电源922。总线910表示什么可以是一个或多个总线(诸如地址总线、数据总线或其组合)。尽管图9的各个框为了清楚起见而用清楚地界定的线示出,但是实际上,这样的界定并不是这样清楚并且这线可以交叠。例如,可以将诸如显示设备等呈现部件视为I/O部件等。另外,处理器通常具有高速缓存形式的存储器。可以认识到,这是本领域的本质,并且重申图9的图示仅是可以结合本公开的一个或多个实施例使用的示例计算设备的说明。在诸如“工作站”、“服务器”、“笔记本电脑”、“手持设备”等之间不进行区分,因为所有这些预期在图9的范围内并且参考“计算设备”。
计算设备900通常包括各种计算机可读介质。计算机可读介质可以是可以由计算设备900访问的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。
计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光盘存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备或可以用于存储期望信息并且可以被计算设备900访问的任何其他介质。计算机存储介质不包括信号本身。
通信介质通常实施计算机可读指令、数据结构、程序模块或者调制数据信号(诸如载波或其他传输机制)中的其他数据,并且包括任何信息传递介质。术语“调制数据信号”是指以能够在信号中对信息进行编码的方式设置或改变其特性中的一个或多个的信号。作为示例而非限制,通信介质包括有线介质(诸如有线网络或直接有线连接)和无线介质(诸如声学、RF、红外和其他无线介质)。上述任一项的组合也应当被包括在计算机可读介质的范围内。
存储器912包括易失性和/或非易失性存储器形式的计算机存储介质。存储器912可以是非暂态存储器。如所描绘的,存储器912包括指令924。当由处理器914执行时,指令924被配置为引起计算设备执行本文中参考上面讨论的附图描述的任何操作,或者实施本文中描述的任何程序模块。存储器可以是可移除的、不可移除的或其组合。说明性的硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备900包括从诸如存储器912或I/O部件920等各种实体读取数据的一个或多个处理器。呈现部件916向用户或其他设备呈现数据指示。说明性的呈现部件包括显示设备、扬声器、打印部件、振动部件等。
I/O端口918允许计算设备900在逻辑上耦合到包括I/O部件920(其中一些可以被内置)的其他设备。说明性的部件包括麦克风、操纵杆、游戏手柄、卫星天线、扫描仪、打印机、无线设备等。
已经结合在所有方面都旨在是说明性的、而不是限制性的特定实施例描述了本文中呈现的实施例。在不脱离本发明的范围的情况下,备选实施例对于本公开所属领域的普通技术人员将变得显而易见。
从前述内容可以看出,本公开的内容很好地适用于实现上文提到的所有目标和目的、以及其他显而易见的并且是结构所固有的优点。
应当理解,某些特征和子组合是有用的,并且可以在不参考其他特征或子组合的情况下使用。这是权利要求所考虑的并且在其范围内。
在前面的详细描述中,参考形成其一部分的附图,其中相同的附图标记始终表示相同的部分,并且在附图中通过说明的方式示出了可以实践的实施例。应当理解,在不脱离本公开的范围的情况下,可以利用其他实施例并且可以进行结构或逻辑上的改变。因此,前面的详细描述不应当被认为是限制性的,并且实施例的范围由所附权利要求及其等价物限定。
已经使用本领域技术人员通常使用的术语描述了说明性实施例的各个方面,以将他们的工作的实质传达给本领域的其他技术人员。然而,对于本领域技术人员来说显而易见的是,可以仅利用所描述的方面中的一些来实践备选实施例。为了解释的目的,阐述了具体的数字、材料和配置,以便提供对说明性实施例的透彻理解。然而,对于本领域技术人员显而易见的是,可以在没有具体细节的情况下实践备选实施例。在其他情况下,公知的特征已经被省略或简化以免模糊说明性实施例。
已经将各种操作描述为多个离散操作,而又以最有助于理解说明性实施例的方式进行描述;然而,描述的顺序不应当被解释为暗示这些操作必须依赖于顺序。特别地,这些操作不需要按照呈现顺序来执行。此外,作为独立操作的操作的描述不应当被解释为要求操作必须独立地和/或由单独的实体来执行。作为单独的模块的实体和/或模块的描述同样不应当被解释为要求模块是单独的和/或执行单独的操作。在各种实施例中,可以将所示出的和/或所描述的操作、实体、数据和/或模块合并,分解成另外的子部分,和/或省略。
短语“在一个实施例中”或“在实施例中”被重复地使用。该短语通常不是指代同一实施例;但是,它可以指代同一实施例。术语“包含(comprising)”、“具有(having)”和“包括(including)”是同义的,除非上下文另有规定。短语“A/B”表示“A或B”。短语“A和/或B”表示“(A)、(B)或(A和B)”。短语“A、B和C中的至少一个”表示“(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)”。

Claims (20)

1.一种计算机可读存储介质,所述计算机可读存储介质具有存储于其上的指令,所述指令用于对包括多个像素的图像进行分割,所述指令在由计算设备的处理器执行时引起所述计算设备执行动作,所述动作包括:
接收有序标记集合,所述有序标记集合引用所述图像的第一区域;
生成图像图,所述图像图表示多个图像特征中的每个图像特征与所述多个像素的对应部分之间的对应;
生成标记数据元素集合,其中所述标记数据元素中的每个标记数据元素表示所述有序标记集合中对应标记的语义特征;
迭代地更新分割图,所述分割图表示所述多个像素中的每个像素是否被包括在所述图像的所述第一区域中,其中所述分割图的多个迭代更新中的每个迭代更新是基于:所述分割图的先前版本,以及所述图像图和所述标记数据元素中基于所述有序标记集合的顺序的一个标记数据元素的组合;以及
基于所述图像和所述分割图来生成分割图像。
2.根据权利要求1所述的计算机可读存储介质,其中所述动作还包括:
迭代地更新n元语法数据元素,所述n元语法数据元素对所述有序标记集合的所述顺序的语义特征进行编码,其中所述n元语法数据元素的多个迭代更新中的每个迭代更新是基于:所述n元语法数据元素的先前版本,和所述标记数据元素中基于所述有序标记集合的所述顺序的一个标记数据元素;以及
迭代地更新所述分割图,其中所述分割图的所述多个迭代更新中的每个迭代更新还基于:所述图像图和已更新n元语法数据元素的组合,所述已更新n元语法数据元素与所述有序标记集合的所述顺序相对应。
3.根据权利要求2所述的计算机可读存储介质,其中所述n元语法数据元素的所述多个迭代更新中的每个迭代更新还基于已训练长短期记忆神经网络,所述已训练长短期记忆神经网络传播所述n元语法元素的所述多个迭代更新中的每个迭代更新。
4.根据权利要求1所述的计算机可读存储介质,其中所述分割图的所述多个迭代更新中的每个迭代更新还基于已训练递归神经网络,所述已训练递归神经网络传播所述分割图的所述多个迭代更新中的每个迭代更新。
5.根据权利要求1所述的计算机可读存储介质,其中所述分割图的所述多个迭代更新中的每个迭代更新还基于已训练卷积多模态递归神经网络,所述已训练卷积多模态递归神经网络传播所述分割图的所述多个迭代更新中的每个迭代更新。
6.根据权利要求1所述的计算机可读存储介质,其中所述图像特征由图像特征标识模型来标识,所述图像特征标识模型被实施于已训练完全卷积神经网络(FCN)上。
7.根据权利要求1所述的计算机可读存储介质,其中单词嵌入自然语言模型被用于标识所述标记的所述语义特征,所述单词嵌入自然语言模型在多维空间中嵌入所述标记中的每个标记,并且被嵌入在所述多维空间内的标记对之间的距离基于语义语料库内的语义分布来指示所述标记对之间的语义相似度。
8.一种用于对图像进行分割的方法,包括:
接收所述图像,其中所述图像包括多个像素;
基于自然语言短语来生成n元语法,所述自然语言短语引用在图像的第一区域内所描绘的对象,其中所述n元语法包括有序标记集合;
生成图像数据结构,所述图像数据结构对多个图像特征中的每个图像特征与所述多个像素的对应部分之间的映射进行编码,其中所述多个图像特征基于图像特征标识模型在所述图像内被标识;
基于自然语言模型来生成标记数据结构集合,其中所述标记数据结构中的每个标记数据结构对所述有序标记集合中对应标记的语义特征进行编码;
基于第一递归神经网络以及所述图像数据结构和所述标记数据结构集合中的部分的多个迭代生成的组合,来迭代地生成分割图,其中所述第一递归神经网络在所述分割图的迭代生成期间传播所述分割图,并且所述分割图标识在所述图像的所述第一区域中所包括的所述多个像素的子集;以及
基于经迭代生成的所述分割图来对所述图像进行分割。
9.根据权利要求8所述的方法,还包括:
基于第二递归神经网络和所述标记数据结构集合,来迭代地生成n元语法数据结构,其中所述第二递归神经网络在所述n元语法数据结构的迭代生成期间传播所述n元语法数据结构;以及
还基于所述图像数据结构和所述n元语法数据结构的多个迭代生成的组合,来迭代地生成所述分割图。
10.根据权利要求9所述的方法,还包括:
基于训练数据来训练长短期记忆神经网络,所述训练数据包括多个其他n元语法;以及
采用经训练的所述长短期记忆神经网络作为所述第二递归神经网络。
11.根据权利要求8所述的方法,还包括:
接收训练图像、训练n元语法和真实的分割图;
基于所述训练图像、所述训练n元语法和所述第一递归神经网络来迭代地生成训练分割图;
基于所述真实的分割图和所述训练分割图的比较来确定损失度量;以及
基于所述损失度量来更新所述第一递归神经网络。
12.根据权利要求8所述的方法,还包括:
接收音频数据,所述音频数据对由用户说出的所述自然语言短语进行编码;
基于所述接收的音频数据和语音到文本模型来生成文本数据;以及
基于生成的所述文本数据来生成所述n元语法。
13.根据权利要求8所述的方法,还包括:
基于训练数据来训练卷积多模态递归神经网络,所述训练数据包括多个其他图像、多个其他n元语法和多个分割图;以及
采用经训练的所述多模态递归神经网络作为所述第一递归神经网络。
14.一种计算系统,所述计算系统用于基于引用图像的第一区域的n元语法来对所述图像进行分割,其中所述图像包括多个像素并且所述n元语法包括有序标记集合,所述系统包括:
处理器设备;以及
计算机可读存储介质,所述计算机可读存储介质与所述处理器设备耦合,所述计算机可读存储介质具有存储于其上的指令,所述指令在由所述处理器设备执行时执行动作,所述动作包括:
用于基于图像特征标识模型来在对所述图像内的多个图像特征进行标识的步骤;
用于在图像数据结构中对所述多个图像特征中的每个图像特征与所述多个像素的对应部分之间的映射进行编码的步骤;
用于基于自然语言模型来标识针对所述有序标记集合中的每个标记的语义特征的步骤;
用于将所述有序标记集合中的每个标记的语义特征编码为标记数据结构集合的步骤;
用于基于分割图以及所述图像数据结构和所述标记数据结构集合的基于所述有序标记集合的顺序的有序组合集合,来迭代地更新所述分割图的步骤;以及
用于基于所述图像和所述分割图来提供分割图像的步骤。
15.根据权利要求14所述的计算系统,所述动作还包括:
用于基于n元语法数据结构和所述标记数据结构集合,来在所述n元语法数据结构中对所述有序标记集合顺序的语义特征进行迭代地编码的步骤;以及
用于还基于所述迭代地编码的n元语法数据结构来迭代地更新所述分割图的步骤。
16.根据权利要求15所述的计算系统,所述动作还包括:
用于基于已训练递归神经网络来更新所述n元语法数据结构的步骤;以及
用于采用所述已训练递归神经网络来存储所述n元语法数据结构的编码、以用于所述n元语法数据结构的后续更新的步骤。
17.根据权利要求14所述的计算系统,所述动作还包括:
用于基于已训练递归神经网络来更新所述分割图的步骤;以及
用于采用所述已训练递归神经网络来存储所述分割图的编码、以用于所述分割图的后续更新的步骤。
18.根据权利要求17所述的计算系统,其中所述已训练递归神经网络是卷积多模态递归神经网络(mRNN)。
19.根据权利要求14所述的计算系统,其中所述图像特征标识模型被实施于已训练完全卷积神经网络(FCN)上。
20.根据权利要求14所述的计算系统,其中所述自然语言模型是单词嵌入自然语言模型。
CN201810078350.8A 2017-03-14 2018-01-26 基于自然语言短语对图像进行自动分割 Active CN108573257B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/458,887 2017-03-14
US15/458,887 US10089742B1 (en) 2017-03-14 2017-03-14 Automatically segmenting images based on natural language phrases

Publications (2)

Publication Number Publication Date
CN108573257A CN108573257A (zh) 2018-09-25
CN108573257B true CN108573257B (zh) 2023-12-08

Family

ID=61283452

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810078350.8A Active CN108573257B (zh) 2017-03-14 2018-01-26 基于自然语言短语对图像进行自动分割

Country Status (5)

Country Link
US (2) US10089742B1 (zh)
CN (1) CN108573257B (zh)
AU (1) AU2018200165B2 (zh)
DE (1) DE102018000299A1 (zh)
GB (1) GB2560621B (zh)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339421B2 (en) * 2017-03-30 2019-07-02 Toyota Motor Engineering & Manufacturing North America, Inc. RGB-D scene labeling with multimodal recurrent neural networks
US10810371B2 (en) 2017-04-06 2020-10-20 AIBrain Corporation Adaptive, interactive, and cognitive reasoner of an autonomous robotic system
US11151992B2 (en) * 2017-04-06 2021-10-19 AIBrain Corporation Context aware interactive robot
US10839017B2 (en) 2017-04-06 2020-11-17 AIBrain Corporation Adaptive, interactive, and cognitive reasoner of an autonomous robotic system utilizing an advanced memory graph structure
US10929759B2 (en) 2017-04-06 2021-02-23 AIBrain Corporation Intelligent robot software platform
US10963493B1 (en) 2017-04-06 2021-03-30 AIBrain Corporation Interactive game with robot system
US11113599B2 (en) * 2017-06-22 2021-09-07 Adobe Inc. Image captioning utilizing semantic text modeling and adversarial learning
US11257217B2 (en) * 2017-11-20 2022-02-22 Google Llc Image segmentation using neural networks
US10748036B2 (en) 2017-11-21 2020-08-18 Nvidia Corporation Training a neural network to predict superpixels using segmentation-aware affinity loss
US10685446B2 (en) * 2018-01-12 2020-06-16 Intel Corporation Method and system of recurrent semantic segmentation for image processing
US11599927B1 (en) * 2018-01-17 2023-03-07 Amazon Technologies, Inc. Artificial intelligence system using deep neural networks for pairwise character-level text analysis and recommendations
US10884769B2 (en) * 2018-02-17 2021-01-05 Adobe Inc. Photo-editing application recommendations
US10706503B2 (en) * 2018-03-13 2020-07-07 Disney Enterprises, Inc. Image processing using a convolutional neural network
US11036811B2 (en) 2018-03-16 2021-06-15 Adobe Inc. Categorical data transformation and clustering for machine learning using data repository systems
US10977303B2 (en) * 2018-03-21 2021-04-13 International Business Machines Corporation Image retrieval using interactive natural language dialog
US11132124B2 (en) * 2018-06-12 2021-09-28 Intel Corporation Memory subsystem operations with unaligned and scatter gather feature to support convolution and dimension shuffle
KR101939349B1 (ko) * 2018-07-09 2019-04-11 장현민 기계학습모델을 이용하여 자동차용 어라운드 뷰 영상을 제공하는 방법
US11093560B2 (en) * 2018-09-21 2021-08-17 Microsoft Technology Licensing, Llc Stacked cross-modal matching
US11030750B2 (en) * 2018-10-03 2021-06-08 Merck Sharp & Dohme Corp. Multi-level convolutional LSTM model for the segmentation of MR images
CN110147806B (zh) * 2018-10-08 2023-04-07 腾讯科技(深圳)有限公司 图像描述模型的训练方法、装置及存储介质
CN112840353B (zh) * 2018-11-01 2023-12-29 赫尔实验室有限公司 自动生成图像并在训练中输入图像的系统、方法和介质
CN109814523B (zh) * 2018-12-04 2020-08-28 合肥工业大学 基于cnn-lstm深度学习方法及多属性时序数据的故障诊断方法
CN109741341B (zh) * 2018-12-20 2022-11-01 华东师范大学 一种基于超像素和长短时记忆网络的图像分割方法
CN109495727B (zh) * 2019-01-04 2021-12-24 京东方科技集团股份有限公司 智能监控方法及装置、系统、可读存储介质
US10798386B2 (en) 2019-01-25 2020-10-06 At&T Intellectual Property I, L.P. Video compression with generative models
US10915663B1 (en) * 2019-01-29 2021-02-09 Facebook, Inc. Systems and methods for protecting data
US20200272695A1 (en) * 2019-02-25 2020-08-27 Disney Enterprises, Inc. Techniques for performing contextual phrase grounding
US10558738B1 (en) * 2019-03-15 2020-02-11 Amazon Technologies, Inc. Compression of machine learned models
US20200311412A1 (en) * 2019-03-29 2020-10-01 Konica Minolta Laboratory U.S.A., Inc. Inferring titles and sections in documents
CN110135248A (zh) * 2019-04-03 2019-08-16 华南理工大学 一种基于深度学习的自然场景文本检测方法
CN116916080A (zh) * 2019-05-17 2023-10-20 上海哔哩哔哩科技有限公司 视频数据处理方法、装置、计算机设备及可读存储介质
US10885386B1 (en) 2019-09-16 2021-01-05 The Boeing Company Systems and methods for automatically generating training image sets for an object
US11113570B2 (en) 2019-09-16 2021-09-07 The Boeing Company Systems and methods for automatically generating training image sets for an environment
US11461998B2 (en) * 2019-09-25 2022-10-04 Samsung Electronics Co., Ltd. System and method for boundary aware semantic segmentation
US11604998B2 (en) * 2019-10-30 2023-03-14 Kaia Health Software GmbH Upgrading a machine learning model's training state
US11645505B2 (en) * 2020-01-17 2023-05-09 Servicenow Canada Inc. Method and system for generating a vector representation of an image
US10719666B1 (en) * 2020-01-31 2020-07-21 Capital One Services, Llc Computer-based systems utilizing textual embedding space software engines for identifying candidate phrases in a text document and methods of use thereof
US11468110B2 (en) * 2020-02-25 2022-10-11 Adobe Inc. Utilizing natural language processing and multiple object detection models to automatically select objects in images
US11556852B2 (en) 2020-03-06 2023-01-17 International Business Machines Corporation Efficient ground truth annotation
US11494588B2 (en) 2020-03-06 2022-11-08 International Business Machines Corporation Ground truth generation for image segmentation
US11495038B2 (en) 2020-03-06 2022-11-08 International Business Machines Corporation Digital image processing
US11361146B2 (en) 2020-03-06 2022-06-14 International Business Machines Corporation Memory-efficient document processing
US11263753B2 (en) * 2020-04-07 2022-03-01 Naver Corporation Method for training a convolutional neural network for image recognition using image-conditioned masked language modeling
US10817665B1 (en) * 2020-05-08 2020-10-27 Coupang Corp. Systems and methods for word segmentation based on a competing neural character language model
CN112001180A (zh) * 2020-07-14 2020-11-27 北京百度网讯科技有限公司 多模态预训练模型获取方法、装置、电子设备及存储介质
CN112184738B (zh) * 2020-10-30 2022-09-13 北京有竹居网络技术有限公司 一种图像分割方法、装置、设备及存储介质
US20230316606A1 (en) * 2022-03-21 2023-10-05 Adobe Inc. Generating and modifying digital images using a joint feature style latent space of a generative neural network
US20240078816A1 (en) * 2022-08-24 2024-03-07 Nec Laboratories America, Inc. Open-vocabulary object detection with vision and language supervision

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103999081A (zh) * 2011-12-12 2014-08-20 国际商业机器公司 生成用于信息领域的自然语言处理模型
CN106204522A (zh) * 2015-05-28 2016-12-07 奥多比公司 对单个图像的联合深度估计和语义标注

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2135231A4 (en) * 2007-03-01 2014-10-15 Adapx Inc SYSTEM AND METHOD FOR DYNAMIC LEARNING
US7899666B2 (en) * 2007-05-04 2011-03-01 Expert System S.P.A. Method and system for automatically extracting relations between concepts included in text
US8126274B2 (en) * 2007-08-30 2012-02-28 Microsoft Corporation Visual language modeling for image classification
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
WO2014049653A1 (ja) * 2012-09-27 2014-04-03 三洋電機株式会社 電池ブロック
US9489373B2 (en) * 2013-07-12 2016-11-08 Microsoft Technology Licensing, Llc Interactive segment extraction in computer-human interactive learning
US9129192B2 (en) * 2013-12-16 2015-09-08 Adobe Systems Incorporated Semantic object proposal generation and validation
RU2638634C2 (ru) * 2014-01-23 2017-12-14 Общество с ограниченной ответственностью "Аби Продакшн" Автоматическое обучение программы синтаксического и семантического анализа с использованием генетического алгоритма
US20160117386A1 (en) * 2014-10-22 2016-04-28 International Business Machines Corporation Discovering terms using statistical corpus analysis
US9704054B1 (en) * 2015-09-30 2017-07-11 Amazon Technologies, Inc. Cluster-trained machine learning for image processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103999081A (zh) * 2011-12-12 2014-08-20 国际商业机器公司 生成用于信息领域的自然语言处理模型
CN106204522A (zh) * 2015-05-28 2016-12-07 奥多比公司 对单个图像的联合深度估计和语义标注

Also Published As

Publication number Publication date
AU2018200165A1 (en) 2018-10-04
CN108573257A (zh) 2018-09-25
DE102018000299A1 (de) 2018-09-20
GB2560621B (en) 2020-08-26
US10089742B1 (en) 2018-10-02
US20190035083A1 (en) 2019-01-31
GB2560621A (en) 2018-09-19
GB201800842D0 (en) 2018-03-07
AU2018200165B2 (en) 2021-09-23
US10410351B2 (en) 2019-09-10
US20180268548A1 (en) 2018-09-20

Similar Documents

Publication Publication Date Title
CN108573257B (zh) 基于自然语言短语对图像进行自动分割
US11593612B2 (en) Intelligent image captioning
US10586350B2 (en) Optimizations for dynamic object instance detection, segmentation, and structure mapping
US11657230B2 (en) Referring image segmentation
US10665030B1 (en) Visualizing natural language through 3D scenes in augmented reality
US11367271B2 (en) Similarity propagation for one-shot and few-shot image segmentation
US11481656B2 (en) Method and apparatus for evaluating a matching degree of multi-domain information based on artificial intelligence, device and medium
US11238097B2 (en) Method and apparatus for recalling news based on artificial intelligence, device and storage medium
GB2574087A (en) Compositing aware digital image search
KR102635777B1 (ko) 분자 결합 부위를 검출하기 위한 방법 및 장치, 전자 디바이스 및 저장 매체
CN110807335B (zh) 基于机器学习的翻译方法、装置、设备及存储介质
KR102584900B1 (ko) 얼굴 이미지 검색을 통한 가상 인물 생성 시스템 및 방법
CN109710951B (zh) 基于翻译历史的辅助翻译方法、装置、设备及存储介质
CN115438215B (zh) 图文双向搜索及匹配模型训练方法、装置、设备及介质
WO2022174496A1 (zh) 基于生成模型的数据标注方法、装置、设备及存储介质
US10217224B2 (en) Method and system for sharing-oriented personalized route planning via a customizable multimedia approach
CN117078790B (zh) 图像生成方法、装置、计算机设备和存储介质
CN111488742A (zh) 用于翻译的方法和装置
CN114596566A (zh) 文本识别方法及相关装置
CN112836502A (zh) 一种金融领域事件隐式因果关系抽取方法
JP2023062150A (ja) 文字認識モデルトレーニング、文字認識方法、装置、機器及び媒体
CN117194616A (zh) 一种垂域知识图谱的知识查询方法、装置、计算机设备和存储介质
US11481419B2 (en) Method and apparatus for evaluating matching degree based on artificial intelligence, device and storage medium
US11644961B1 (en) Utilizing a transformer-based generative language model to generate digital design document variations
CN115761565B (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