CN109671126B - 使用神经网络预测分块位移图 - Google Patents
使用神经网络预测分块位移图 Download PDFInfo
- Publication number
- CN109671126B CN109671126B CN201810870771.4A CN201810870771A CN109671126B CN 109671126 B CN109671126 B CN 109671126B CN 201810870771 A CN201810870771 A CN 201810870771A CN 109671126 B CN109671126 B CN 109671126B
- Authority
- CN
- China
- Prior art keywords
- image
- offset
- pixels
- digital image
- neural network
- 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
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 80
- 238000006073 displacement reaction Methods 0.000 title claims abstract description 66
- 239000013598 vector Substances 0.000 claims abstract description 69
- 238000012549 training Methods 0.000 claims description 123
- 238000000034 method Methods 0.000 claims description 82
- 238000013507 mapping Methods 0.000 claims description 29
- 238000012805 post-processing Methods 0.000 claims description 12
- 230000003287 optical effect Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 8
- 238000013527 convolutional neural network Methods 0.000 claims 2
- 230000010339 dilation Effects 0.000 claims 1
- 238000012800 visualization Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 16
- 238000005192 partition Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 239000003086 colorant Substances 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 239000000945 filler Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 210000003467 cheek Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 210000001061 forehead Anatomy 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 210000001331 nose Anatomy 0.000 description 1
- 210000004279 orbit Anatomy 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/60—Image enhancement or restoration using machine learning, e.g. neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- 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
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- 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/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/755—Deformable models or variational models, e.g. snakes or active contours
- G06V10/7557—Deformable models or variational models, e.g. snakes or active contours based on appearance, e.g. active appearance models [AAM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20004—Adaptive image processing
- G06T2207/20012—Locally adaptive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20076—Probabilistic image processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/759—Region-based matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Biodiversity & Conservation Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
描述了使用神经网络来预测分块位移图。首先,将要执行图像编辑操作的数字图像作为输入提供给具有偏移预测神经网络的分块匹配器。从该图像并且基于该网络被训练的图像编辑操作,偏移预测神经网络生成形成为位移图的偏移预测,该位移图具有表示数字图像的像素到执行图像编辑操作的不同位置的位移的偏移向量。通过以下项将数字图像的像素值复制到受操作影响的图像像素:确定与受图像编辑操作影响的图像像素相对应的向量像素,并将由所确定的偏移向量表示的图像像素的像素值映射到受影响的像素。根据该映射,设置受影响的像素的像素值,从而有效地执行图像编辑操作。
Description
背景技术
内容创建系统继续在计算技术方面取得进步,以便以过去很大程度上受限于专业摄影师的各种方式来增强数字图像。利用这些进步,内容创建系统能够从由设备用户捕获的数字图像生成专业质量的数字图像,设备用户几乎没有构成视觉上令人愉快的图像的经验或者规则知识,例如三分法则。举例来说,内容创建系统可以分析数字图像,并基于该分析来选择后处理操作(诸如裁剪、缩放、过滤等等)以对数字图像执行。在一些情况中,这些内容创建系统使用分块匹配来执行这种图像编辑操作。一般来说,分块匹配涉及将来自图像中一组像素的值复制到受操作影响的图像像素。考虑一个示例,其中结合填充图像的孔洞来利用分块匹配。为了填充这样的孔洞,可以利用分块匹配来将对应于剩余图像的像素的值复制到对应于孔洞的像素。
传统的分块匹配技术试图定位具有与通过图像编辑操作正在编辑的像素大致匹配的像素值的最近的分块(例如像素组)。然而,在某些场景中,这种仅仅最近的分块匹配会导致在语义上不一致的编辑图像。考虑一个示例,其中人脸的数字图像在人的眼睛之一处有孔洞。使用涉及分块匹配的常规孔洞填充技术,基于孔洞附近的像素(例如对应于人的额头、眼窝、脸颊、鼻子等的像素)的分块来填充该孔洞。然而仅仅将这些像素的值复制到在人眼处的孔洞像素不能在该位置处再现眼睛。因此,传统的分块匹配技术可能不适合于实现各种图像编辑操作。
发明内容
为了克服这些问题,在数字媒体环境中利用使用神经网络来预测分块位移图。最初,接收相对于其将执行图像编辑操作的数字图像。将该数字图像作为输入被提供给分块匹配器,分块匹配器被形成为具有包括偏移预测神经网络的框架。根据数字图像并且基于针对其偏移预测神经网络被训练的图像编辑操作,偏移预测神经网络生成形成为位移图的偏移预测。该位移图由偏移向量形成,偏移向量表示当数字图像被输入时数字图像的图像像素到用于执行图像编辑操作的不同位置的位移。偏移预测还用作将数字图像的像素值复制到受操作影响的图像像素的基础。这涉及确定与受图像编辑操作影响的图像像素相对应的偏移向量。此外,由确定的偏移向量表示的图像像素的像素值被映射到受影响的图像像素。根据该映射,设置受影响的图像像素的像素值,这对于执行图像编辑操作是有效的。
本发明内容以简化的形式引入了一些概念的选择,这些概念在下面的具体实施方式中进一步描述。这样,本发明内容部分不旨在标识要求保护的主题的必要特征,也不旨在用作确定所要求保护的主题的范围的辅助手段。
附图说明
该专利或申请文件包含以颜色执行的至少一张图。具有颜色图的本专利或专利申请公开的副本将由局根据请求以及必要的费用的支付来提供。
参照附图描述详细描述。
图1是可操作用于采用本文描述的技术的示例实现中的环境的图示。
图2描绘了用于可视化位移图的颜色编码参考的示例实现,该位移图用于基于预测的像素偏移来将输入图像的像素映射到受图像编辑操作影响的像素。
图3描绘了孔洞数字图像和使用预测像素偏移生成的对应的填充数字图像的示例,该预测像素偏移指示孔洞数字图像的剩余像素与孔洞的像素之间的映射。
图4描绘了其中分块匹配系统使用预测像素偏移来生成输出数字图像的示例实现,该预测像素偏移指示从输入数字图像的像素到受关于输入数字图像执行的操作影响的像素的映射。
图5描绘了使用深度学习训练的并且生成形成为位移图的偏移预测的分块匹配网络框架的示例实现。
图6描绘了示例实现中的过程,在该过程中通过根据形成为位移图的偏移预测将数字图像的像素映射到受操作影响的像素来对数字图像执行图像编辑操作。
图7描绘了示例实现中的过程,其中网络框架被形成为使用基于形成为由框架生成的位移图的偏移预测的分块匹配来执行图像编辑操作。
图8图示了包括示例设备的各种组件的示例系统,该示例设备可以被实现为如参考图1-图7所描述和/或利用的、用于实现本文描述的技术的实施例的任意类型的计算设备。
具体实施方式
概述
结合不同的图像编辑操作(诸如图像重定向和图像孔洞填充)使用图像分块匹配。一般来说,分块匹配涉及将来自图像中一组像素的值复制到受操作影响的图像像素。然而,传统的分块匹配技术在某些场景中只会失败。这是因为传统的分块匹配技术是基于低级像素值而不是可以用深度学习来学习的语义概念。典型地,这些传统的分块匹配技术试图定位具有与经历图像编辑操作的分块大致匹配的像素值的最近的分块(例如像素组)。然而,在某些场景中,这种最近分块的匹配会导致在语义上不一致的编辑图像,诸如在试图填充位于所描绘的人眼睛附近的孔洞的场景中。因此,传统的分块匹配技术可能不适合于实现各种图像编辑操作。
为了克服这些问题,在数字媒体环境中利用使用神经网络来预测分块位移图。最初,接收相对于其将执行图像编辑操作的数字图像。可以使用所描述的技术来实现的示例性图像编辑操作包括孔洞填充、图像重定向(例如裁剪、缩放、按比例缩放、非裁剪)、两个不同图像(例如视频帧)之间的光流预测、视频帧的未来帧预测等。该图像可以在用户选择执行操作的场景中接收,诸如使用图像编辑应用来选择重新定向图像。备选地或附加地,图像可以在计算设备模块选择执行操作的场景中被接收,诸如选择重新定位图像以用于对象识别。在任意情况下,在不脱离所描述的技术的精神或范围的情况下,可以将数字图像提供给被用于执行各种操作的分块匹配系统。
通常,这些分块匹配系统被配置为输出用涉及分块匹配的编辑操作来编辑的数字图像。为此,分块匹配系统将来自数字图像的像素组的像素值复制到受该操作影响的数字图像的像素。然而,与传统技术相比,所描述的技术利用机器学习,使得分块匹配保持图像的语义概念,例如面部特征。在一个或多个实现中,分块匹配系统被配置为具有包括偏移预测神经网络的网络框架,该偏移预测神经网络被训练成通过展露于不同训练图像集合来识别语义概念。此外,偏移预测神经网络被训练用于特定图像编辑操作以学习由于图像编辑操作而发生的图像改变,诸如由于孔洞填充而对图像发生的改变与由于裁剪而对图像发生的改变。为了实现不同的图像编辑操作,可以部署不同训练的偏移预测神经网络。
根据所描述的技术,偏移预测神经网络被训练成从数字图像生成偏移预测,相对于该数字图像的图像编辑操作正被执行。这些偏移预测是形成为包括偏移向量的位移图的数字内容,例如数字图像的每个像素的一个向量。偏移向量表示在数字图像被输入时数字图像的图像像素到用于执行图像编辑操作的不同位置的位移。这种位移可以使用颜色编码的可视化来可视化,该颜色编码的可视化使用由颜色编码参考定义的颜色来表示偏移向量。通常,颜色编码参考中的颜色的位置对应于表示通常位于数字图像中的相同位置处的图像像素的向量。例如,颜色编码参考的右上角的颜色对应于代表数字图像右上角的图像像素的向量。
在任意情况下,偏移预测用作将数字图像的像素值复制到受操作影响的图像像素的基础。这涉及确定与受图像编辑操作影响的图像像素相对应的偏移像素。在孔洞填充示例中,这涉及确定与形成孔洞的图像像素相对应的偏移向量。本文,由确定的偏移向量表示的图像像素的像素值被映射到受影响的图像像素。在一个或多个实现中,这涉及将确定的偏移向量应用于数字图像以标识向量表示的图像像素。基于此,像素值被映射到受影响的图像像素。根据该映射,设置受影响的图像像素的像素值,这对于执行图像编辑操作是有效的。
通过利用在图像集合上训练的神经网络,分块匹配系统避免输出具有语义上不一致的内容的编辑图像。分块匹配系统还输出编辑图像而不需要后处理操作。在此过程中,不必对根据所描述的技术配置的分块匹配系统施加执行后处理操作的负担。
术语说明
如本文所使用的,术语“分块匹配”是指用于将来自图像中的一组像素的值复制到该图像的其他像素(例如,经历图像编辑操作的图像的像素)的一种或多种技术。这些技术的差异部分地包括选择从中复制值的像素的方式中的差异。
如本文所使用的,术语“分块”是指图像的一组像素或以图像像素为中心并基于附近图像像素例如经由内插生成的一组分块像素。
如本文所使用的,术语“图像像素”是指数字图像的像素。以类似的方式,术语“偏移向量”是指形成为位移图的偏移预测的向量。在一个或多个实现中,位移图包括对应于正被编辑的数字图像的每个图像像素的向量,并且还指示映射到图像像素的位置。
在下面的讨论中,术语“孔洞”是指数字图像的、具有指示不存在所描绘的内容的值的一组连续像素。作为示例,这些像素可以具有空值或指示没有内容的其他值。在一个或多个实现中,这些像素可具有使像素被显示为白色或黑色的值。事实上,像素可以简单地与白色或黑色像素值相关联。无论如何,这些孔洞看起来与孔洞数字图像中描绘的剩余图像不一致。如本文所讨论的,可以基于各种操作将孔洞引入到数字图像中。
术语“后处理”是指关于数字图像执行的用于修改那些图像的描绘内容的操作。作为示例,后处理操作包括缩放、裁剪、按比例缩放、混合、过滤、选择性颜色改变等等。在不脱离所描述的技术的精神或范围的情况下,后处理可以涵盖各种其他图像修改操作。
在以下讨论中,首先描述可采用本文描述的技术的示例环境。然后描述可以在示例环境以及其他环境中执行的示例实现细节和过程。因此,示例过程的执行不限于示例环境,并且示例环境不限于示例过程的执行。
示例环境
图1是可操作以采用如本文所述的使用神经网络来预测分块位移图的示例实现中的环境100的图示。所图示的环境100包括经由网络108彼此通信地耦合的服务提供商系统102、客户端设备104和分块匹配器生成系统106。
可用于实现服务提供商系统102、客户端设备104和分块匹配器生成系统106的计算设备可以以各种方式来配置。例如,计算设备可以被配置为台式计算机、膝上型计算机、移动设备(例如,假定诸如平板计算机或移动电话的手持配置)等等。因此,计算设备可以从具有大量存储器和处理器资源的全资源设备(例如,个人计算机、游戏控制台)到具有有限存储器和/或处理资源的低资源设备(例如,移动设备)。另外,计算设备可以表示多个不同设备,诸如由企业用来执行如关于图8进一步描述的“通过云”的操作的多个服务器。
服务提供商系统102被图示为包括服务管理器模块110,服务管理器模块110表示用于向客户端设备用户提供经由网络108可访问的服务的功能。例如,服务管理器模块110可以展示由客户端设备104的应用112经由网络108可访问的内容或功能。应用112可以被配置为支持网络的应用、浏览器、本地应用等等,其经由网络108从服务提供商系统102获得数据。该数据可以被应用112采用,以使得当服务提供商系统102提供用于管理内容编辑应用的功能时,客户端设备104的用户能够与服务提供商系统102通信,诸如以接收应用更新和特征。
在所描述的技术的上下文中,应用112包括编辑诸如数字图像114的数字内容的功能。在所图示的示例中,应用112包括分块匹配器116,分块匹配器116至少部分地以客户端设备104的硬件实现、部分地用于匹配用于至少一个图像编辑操作的分块。涉及分块匹配的一个示例图像编辑操作用于填充孔洞数字图像的孔洞。广义上讲,“孔洞”是指数字图像的、具有指示不存在所描绘的内容的值的连续像素的区域。在这些区域中,所描绘的内容可能已被移除,使得对应的像素具有空值、无意义的值、白色像素的值、黑色像素的值等等。孔洞可以呈现在数字图像114中,因为客户端设备104的用户与应用112交互以从数字图像中移除对象,以擦除图像的一部分,从图像切下一部分,以及等等。备选地或另外地,应用112可以诸如通过例如基于用户选择来移除特定内容(例如污渍、商标内容、瑕疵等)、用户选择自动修正特征等等来自动地移除图像的一部分,将孔洞引入到数字图像中。分块匹配器116还被配置为匹配数字图像114的分块以重定向图像(例如裁剪、缩放、按比例缩放)、预测两个不同图像(例如,视频帧)之间的光流、预测视频的未来帧等等。
关于孔洞填充,客户端设备104被示出为经由显示设备118显示具有孔洞122的孔洞图像120。该分块匹配器116被配置为填充孔洞图像120的孔洞122以产生填充的数字图像124。与孔洞122不同,填充的数字图像124包括映射内容126。通常,映射内容126包括具有从孔洞图像120的、对应于所描绘的图像的像素(孔洞图像120的非孔洞像素)映射的值的像素。在一个或多个实现中,分块匹配器116生成从孔洞图像120到孔洞122的像素的像素的预测偏移。该预测偏移形成为位移图,该位移图包括向量,该向量表示作为到分块匹配器116的输入的孔洞图像120的图像像素到用于填充孔洞122的不同位置的位移。预测的偏移可以使用根据颜色编码参考128进行颜色编码的预测的偏移可视化来可视化,颜色编码参考128将颜色模型(例如,红绿蓝(RGB)颜色模型)的独有颜色与要对例如孔洞图像操作的图像的像素相关联。作为示例,位于孔洞图像120的右上方附近的像素与颜色编码参考128的右上方的颜色相关联。当可视化指示针对孔洞像素的来自颜色编码参考128的右上方的颜色时,这对应于指示将孔洞图像的右上方的像素的像素值映射到孔洞像素的向量。
分块匹配器116通过基本实时地预测和映射来确定像素值,以生成映射内容126,使得在没有后处理的情况下,映射内容126与孔洞图像120的剩余内容一致。分块匹配器116还能够使用分块匹配来填充孔洞图像的多个孔洞并且填充具有各种分辨率的图像的孔洞。换句话说,可以使用完全卷积的端到端神经网络来实现分块匹配器116,该完全卷积的端到端神经网络将孔洞图像(具有一个或多个孔洞)作为输入并输出形成为位移图的预测像素偏移以产生填充数字图像(其中每个孔洞都被填充)。在采用分块匹配的其他图像编辑操作的上下文中,分块匹配器116可以使用完全卷积的端到端神经网络来实现,该完全卷积的端到端神经网络正被操作的图像(例如,被重定向的图像)作为输入并输出形成为位移图的预测像素偏移以产生经操作的图像(其中图像根据操作被重定向)。另外地或备选地,神经网络可以被配置为前馈神经网络。
为了向客户端设备104提供具有分块匹配器116的应用112,服务提供商系统102可以利用分块匹配器生成系统106。虽然分块匹配器生成系统106的功能被图示为与服务提供商系统102分离,该功能也可以被合并为服务提供商系统102的一部分、在其他实体之间被进一步划分等等。附加地或备选地,分块匹配器生成系统106的全部或部分功能可以被合并为客户端设备104的一部分。分块匹配器生成系统106包括训练管理器模块130,其至少部分地以计算设备的硬件实现,以部分地部署深度学习以生成分块匹配器132,其在存储装置134中被图示出。分块匹配器116例如可以对应于使用训练管理器模块130的功能生成的分块匹配器132中的一个。
为了生成分块匹配器132,训练管理器模块130被配置为训练偏移预测网络136。通常,偏移预测网络136表示用于生成包括来自输入图像(例如孔洞图像120)的位移图的预测的功能。一般而言,这些位移图使用向量来表示输入图像中的像素到图像位置的映射,以匹配与执行图像编辑操作(例如孔洞填充、图像重定向、光流预测等等)相关的分块。此外,基于诸如颜色编码参考128的颜色编码参考对预测的偏移进行编码以用于可视化。
为了转换生成的预测的偏移向量,训练管理器模块130生成偏移应用模块138。训练管理器模块130将偏移应用模块138与偏移预测网络136组合以形成分块匹配器132。一般来说,偏移应用模块138表示将输入图像的像素映射到受影响像素位置并因此产生输出图像的功能。该映射基于如由偏移预测网络136生成的形成为位移图的偏移预测。换句话说,位移图用作到偏移应用模块138的输入。偏移应用模块138处理位移图的向量,以确定该向量表示的输入图像的像素。基于此,偏移应用模块138将由向量表示的输入图像像素的像素值映射到与该向量对应的输出图像的像素。偏移应用模块138然后根据该映射来调整输出图像的像素值。以这种方式,分块匹配器132能够接收要操作的图像作为输入并提供与执行操作相关的图像作为输出。
关于网络架构,训练管理器模块130能够训练偏移预测网络136以预测针对与不同操作(例如孔洞填充、图像重定向、光流预测等等)相结合的分块匹配的偏移。偏移预测网络136因此学习基于训练管理器模块130在训练期间网络被展露给的数据来针对不同操作生成偏移预测。偏移预测的优点在于其允许偏移预测网络136将被生成以针对各种操作匹配分块。所描述的组合偏移预测网络136和偏移应用模块138的框架因此比传统系统更高效,因为所描述的框架可用于各种操作-仅改变训练数据可以有效地配置偏移预测网络136用于与不同的图像编辑操作结合使用。另外,分块匹配器132执行这些图像编辑操作而不利用后处理技术,例如颜色调整。因此根据所描述的技术配置的分块匹配器不会对运算期间执行后处理技术的计算设备资源施加进一步的负担。
已经考虑示例环境,现在考虑根据一个或多个实现的用于在数字媒体环境中使用神经网络来预测分块位移图的技术的一些示例细节的讨论。
使用神经网络来预测分块位移图
图2描绘了用于可视化位移图的颜色编码参考的示例200,位移图用于基于预测的像素偏移来将输入图像的像素映射到受图像编辑操作影响的像素。具体地,所图示的示例包括图1的颜色编码参考128,但是更加详细。
通常,颜色编码参考128包括多个像素。颜色编码参考128的像素相对于颜色编码参考128的每个其他像素与独有的颜色相关联。颜色编码参考128的像素还表示输入到分块匹配器116的数字图像的像素。颜色编码参考128的像素可以使用数据结构来实现,使得颜色编码参考128的每个像素对应于这些数据结构中的一个。在一个或多个实现中,颜色编码参考像素数据结构包括指示相应颜色编码参考像素的颜色(例如,RGB值、十六进制值、CMYK值等)的信息以及指示由颜色编码参考像素(例如,指示所表示的像素的向量等)表示的输入图像的像素的信息。
在一个或多个实现中,指示输入图像的像素的信息对应于向量。作为示例,位移图的对应偏移向量可以指示颜色编码参考像素距颜色编码参考128的中心的位移。广义地说,该向量关于输入图像被使用以例如通过确定输入图像的哪个像素从向量所对应的像素位移向量所指示的量来找到所表示的输入图像像素。该向量还可以用于指示颜色编码参考像素从颜色编码参考128的中心位移的量以找到用于偏移预测的可视化的颜色。
如上所述,可以使用不同格式(例如,RGB、十六进制、CMYK等)来描述颜色编码参考像素的颜色。通常,颜色编码参考128被配置为包括均匀分布的、对应于由颜色编码参考128指示的颜色范围的像素。考虑其中颜色编码参考128是RGB颜色的示例。在这个示例中,颜色编码参考128的像素可以被分配来均匀地表示RGB颜色模型。在任意情况下,指示预测像素偏移的可视化都被限制在颜色编码参考128的颜色上。
由此,考虑所图示的示例200的颜色编码参考像素202(“CC参考像素202”)。在颜色编码参考128中,CC参考像素202由圆圈指示,其为了清楚起见,表示颜色编码参考128的单个像素。还图示出了可以用于实现CC参考像素202的数据结构。在所图示的示例中,CC参考像素202包括颜色值204和输入图像参考206。然而,在不偏离本文描述的技术的精神或范围的情况下,颜色编码参考128的像素可以被不同地配置。
关于所图示的示例200,颜色值204描述颜色编码参考128中的CC参考像素202的颜色。在所图示的示例中,CC参考像素202被描绘为具有绿色。因此,颜色值204描述CC参考像素202的该绿色。偏移应用模块138将使用相同绿色可视化的预测偏移的向量映射到CC参考像素202,而不映射到颜色编码参考128的其它像素。偏移应用模块138还使用该向量来确定输入图像的哪个像素由向量表示,使得所表示的像素的像素值(例如,一个或多个颜色值)可被映射到输出图像的对应于该向量的像素。
在这种上下文中,考虑输入图像参考206,其指示CC参考像素202表示的输入图像的像素。在该示例200中,CC参考像素202位于颜色编码参考128的右上方。基于此,输入图像参考206指示输入图像的右上方的像素。如上所述,输入图像的像素由向量描述,例如,也可以用于描述CC参考像素202距CCR中心像素208的位移的向量。
在任意情况下,偏移应用模块138标识由偏移向量描述的输入图像的像素。这也可以通过CC参考像素202的偏移预测的可视化来表示。显然,偏移应用模块138能够标识输入图像的像素,其由具有除了CC参考像素202的绿色之外的颜色的颜色编码参考128的像素可视化。偏移应用模块138使用该信息将输入图像的代表像素的值映射到受操作(例如孔洞填充)影响的输出图像像素。在这种上下文中,考虑图3。
图3描绘了孔洞数字图像和使用预测像素偏移生成的对应的填充数字图像的示例300,预测像素偏移指示孔洞数字图像的剩余像素与孔洞的像素之间的映射。
具体地,所图示的示例300包括具有孔洞318、320、322、324、326、328、330、332的孔洞图案图像302、304、306、308、310、312、314、316。所图示的示例300还包括指示形成为位移图的偏移预测的可视化334、336、338、340、342、344、346、348和填充图案图像350、352、354、356、358、360、362、364。根据所描述的技术,形成为偏移预测网络136和偏移应用模块138的组合的分块匹配器116被配置为从孔洞图像生成这些填充图像。
例如,给定孔洞图案图像302,分块匹配器116采用偏移预测网络136来生成偏移预测,其利用可视化334进行可视化。然后,分块匹配器116提供孔洞图案图像302和偏移预测作为到偏移应用模块138的输入。给定该输入,偏移应用模块138如上下文所述进行操作以输出填充图案图像350,其包括代替孔洞318的孔洞填充内容366。在该示例中,可视化334用框368来描绘,框368对应于孔洞318的像素和孔洞填充内容366的像素。另外,孔洞填充内容366的填充像素370对应于可视化334的颜色编码的偏移像素372。偏移应用模块138使用由可视化334可视化的向量来将孔洞图案图像302的像素映射到孔洞318的像素,并且因此产生孔洞填充内容366。
为了映射这些像素,偏移应用模块138确定由颜色编码的偏移像素372指示的向量。偏移应用模块138还被配置为标识由偏移向量指示的颜色编码参考128的像素例如以生成可视化334。在所图示的示例300中,匹配颜色像素374表示颜色编码参考128的、匹配由颜色编码偏移像素372指示的向量的像素。这些匹配颜色像素374也指示孔洞图案图像的像素。匹配颜色像素374位于颜色编码参考128的右侧并且正好在垂直中间的上方。匹配颜色像素374的这个位置可以由偏移向量来描述,如上所述。在任意情况下,匹配颜色像素374表示孔洞图案图像302的右侧和正好在垂直中间的上方的输入图像像素376。偏移应用模块138可以基于由偏移向量所指示的位移来标识输入图像像素376。由此,偏移应用模块138使用输入图像像素376的值来设置填充像素370的值。换句话说,输入图像像素376的像素值被映射到填充像素370。
虽然没有用附图标记进行标记,但所图示示例300的其他填充图像也用相应的孔洞填充内容来描绘。这些图像的孔洞填充内容由分块匹配器116以与上述相同的方式生成。现在考虑根据一个或多个实现的示例系统。
图4描绘了示例实现方式400,其中分块匹配系统使用预测像素偏移来生成输出数字图像,该预测像素偏移指示输入数字图像的像素与受与输入数字图像相关执行的操作影响的像素之间的映射。在所图示的示例中,图1的分块匹配器116被更详细地图示出并且用作分块匹配系统的至少一部分。分块匹配器116被进一步描绘为包括补偿预测网络136和补偿应用模块138。如上所述,训练管理器模块130形成作为这些的组合的分块匹配器116。
在该示例200中,示出了分块匹配器116获得输入数字图像402。输入数字图像402对应于相对于其涉及分块匹配的图像编辑操作正在被执行的图像。作为示例,客户端设备104的用户可以经由应用112选择用于执行涉及关于输入数字图像402的分块匹配的操作(诸如填充输入数字图像402的孔洞、重定向(例如裁剪、缩放、按比例缩放)输入数字图像402、预测输入数字图像402和另一个数字图像(例如,其中输入数字图像402和对应于视频的帧的其他数字图像)之间的光流、预测来自输入数字图像402的视频的未来帧等等)的选项。
广义地说,这些操作影响输入数字图像402的像素。例如,在孔洞填充示例中,对应于输入数字图像402的孔洞的像素受到该操作的影响,例如,对应于孔洞的像素被给予值以用内容填充孔洞。在此上下文中,分块匹配器116还被描绘为具有操作掩模模块404,其表示用于生成编辑操作掩模406的功能。编辑操作掩模406被配置为指示输入数字图像402中的、受与输入数字图像402相关地执行的操作影响的像素。
为了指示这一点,编辑操作掩模406可以包括输入数字图像402的每个像素的值,该值指示像素是否受操作影响。例如,编辑操作掩模406可包括对于输入数字图像402的、不受操作影响的像素的值“1”以及对于输入数字图像402的、受操作影响的像素的值“0”,例如对应于输入数字图像402的、将被填充的孔洞的像素。备选地,编辑操作掩模406可包括输入数字图像402的、不受操作影响的像素的值“0”以及输入数字图像402的、受操作影响的像素的值“1”。在不脱离本文描述的技术的精神或范围的情况下,编辑操作掩模406可以以不同方式指示输入数字图像402的受影响像素。
在任意情况下,偏移预测网络136接收输入数字图像402和编辑操作掩模406作为输入。偏移预测网络136从输入数字图像402和编辑操作掩模406生成偏移预测408作为位移图。偏移预测408包括受影响像素偏移预测410。受影响像素偏移预测410对应于受操作影响的输入数字图像402的像素。具体而言,特定像素的受影响像素偏移预测410对应于输入数字图像402的源像素到特定像素的映射。考虑正在执行的操作是孔洞填充操作的示例。在该示例中,受影响像素偏移预测410针对特定孔洞的像素包括指示输入数字图像402的像素的偏移向量。该映射被用于修改指示空的和/或移除内容的特定孔洞的像素的值,以代替地指示来自输入数字图像402的映射的分块。具体地,偏移预测网络136基于在训练期间学习的描绘的内容特性以及部分地基于输入数字图像402的、不受该操作的影响的像素的像素值来生成这些预测的偏移。
偏移应用模块138接收具有受影响像素偏移预测410的偏移预测408。偏移应用模块138将输入数字图像402的分块匹配到受影响的像素,以基于包括在偏移预测408中的该偏移向量来修改那些像素的值。偏移应用模块138可以匹配这些分块,如关于图2和图3更详细描述的那样。偏移应用模块138通过将输入数字图像402的像素的值映射到受图像编辑操作影响的像素并根据偏移预测408(具体地根据受影响像素偏移预测410)来产生输出数字图像412。通过为给定操作生成偏移预测408,并根据偏移将值映射到受操作影响的像素,分块匹配器116能够输出该输出数字图像412,而不需要后处理(例如,混合、颜色调整等等)。
为了了解这些不同操作的特性并且因此生成作为位移图的偏移预测,训练管理器模块130可以通过将其展露于操作特定的训练图像来训练偏移预测网络136。偏移预测网络136的框架支持这种操作特定类型的训练。该框架支持的这种操作特定的训练进一步使得偏移预测网络能够生成用于执行不同图像编辑操作的偏移预测。为了进一步讨论框架,根据一个或多个实现考虑图5。
图5描绘了使用深度学习训练并且生成形成为位移图的偏移预测的分块匹配网络框架的实现的示例500。根据所描述的技术,所图示示例500描绘了完全卷积网络框架。
所图示的示例500包括输入孔洞数字图像502,输入孔洞数字图像502用作完全卷积偏移预测神经网络504的输入。在一个或多个实现中,偏移预测网络136被配置为并因此对应于完全卷积偏移预测神经网络504。此外,完全卷积偏移预测神经网络504可以被配置为前馈神经网络。在一个或多个实现中,完全卷积偏移预测神经网络504包括中间扩张卷积层。例如,完全卷积偏移预测神经网络504包括四个这样的扩张卷积层。完全卷积偏移预测神经网络504还具有信道,其数目取决于训练数据集合而改变,例如,取决于数据集是否包括选择用于训练网络以用于孔洞填充操作的图像,选择用于训练网络以用于图像重定向操作的图像等等。虽然是变化的,但是训练管理器模块130可以被配置为选择集合中的这些信道数,例如{32、64、128、256}的集合。另外,训练管理器模块130在微分器-网络配置的末端处配置完全卷积偏移预测神经网络504具有完全连接层。
此外,所图示的示例500描绘偏移预测506和受影响像素偏移预测508的可视化。受影响像素偏移预测508包括对应于输入孔洞数字图像502的受影响像素510(例如,孔洞)的偏移预测506的一部分。受影响像素偏移预测508的可视化根据所描述的技术(例如,根据颜色编码参考128)被颜色编码,并且指示由完全卷积偏移预测神经网络504输出的位移图。具体地,受影响像素偏移预测508由完全卷积偏移预测神经网络504的输出层输出。
通过比较,填充的数字图像512对应于偏移应用模块138的输出并因此对应于网络框架的输出。因此,所示的网络框架是一个端到端的深度神经网络,其将正在被操作的图像作为输入并输出已经在其中进行操作的图像。具体而言,通过对受操作影响的像素应用预测偏移来执行图像编辑操作。通过这种方式配置框架使得要被利用的框架能够执行图像编辑操作,以产生与传统技术相比更加边界一致、语义上合理并且视觉上令人满意的编辑数字图像。这种配置也比常规技术更高效地产生这些图像,例如以更少的时间和使用更少的资源。在一个或多个实现中,训练管理器模块130如下生成并训练所图示示例500的框架。
根据所描述的技术,训练管理器模块130基于可微分分块匹配内核来生成完全卷积偏移预测神经网络504。在此过程中,所图示示例500的网络框架比基于生成性对抗网络的传统技术产生更稳定的收敛。因此,图示的网络框架是在不采用生成性对抗训练技术的情况下被训练的。在训练期间,训练管理器模块130配置完全卷积偏移预测神经网络504以根据基于分块的目标函数来生成偏移预测。作为其中的一部分,训练管理器模块130为每个训练图像构建基于分块的训练数据结构。
在以下讨论中,训练图像的高度由项H表示,并且训练图像的宽度由项W表示。在一个或多个实现中,训练图像的像素颜色使用红-绿-蓝(RGB)颜色模型表示,因此具有三个通道的值。另外,对于训练图像的每个像素,训练管理器模块130可以确定以像素为中心的精确分块。在一个或多个实现中,所确定的精确分块具有七乘七的尺寸。在该示例中,训练管理器模块130因此可以用以下维度来生成图像的基于分块的训练数据结构:
H×W×7×7
在一个或多个实现中,例如,当训练管理器模块130训练完全卷积偏移预测神经网络504用于孔洞填充时,训练管理器模块130从训练图像中随机地移除底部(“ground”)真实分块以在训练图像中产生孔洞。训练管理器模块130被配置为取决于针对完全卷积偏移预测神经网络504正被训练的操作而不同地修改训练图像。尽管如此,关于孔洞填充示例,训练管理器模块130向完全卷积偏移预测神经网络504提供孔洞训练图像。在训练期间,完全卷积偏移预测神经网络504产生形成为位移图的偏移预测以用于这些孔洞训练图像,并且偏移应用模块138根据偏移预测来产生填充的数字图像。
训练管理器模块130被配置为将框架输出的这些填充图像与原始训练图像(例如,移除了底部真实分块的图像)进行比较。另外,训练管理器模块130被配置为将基于根据偏移预测将像素映射到孔洞所生成的、用于填充孔洞的内容与被移除以产生孔洞的底部真实分块进行比较。在一个或多个实现中,训练管理器模块130基于l1损失将底部真实分块与孔洞填充内容(或用于其他操作的受影响像素的内容)进行比较。作为示例,这种损失可以对应于l1距离,l1距离是基于原始训练图像的H×W×7×7个分块和从偏移预测得到的输出图像中提取的H×W×7×7个分块计算的。训练管理器模块130基于计算的l1距离通过反向传播向完全卷积偏移预测神经网络504提供反馈。使用涉及H×W×7×7个分块的目标函数进一步有效地改善由完全卷积偏移预测神经网络504输出的图像的清晰度。换句话说,H×W×7×7个分块的使用对于产生图像是有效的,这比利用H×W个分块的技术是更少模糊的。
此外,训练管理器模块130被配置为部署反向传播算法以训练完全卷积偏移预测神经网络504。为了部署这种反向传播算法,训练管理器模块130使用可微分技术来对训练期间生成的偏移预测的像素进行采样。在一个或多个实现中,训练管理器模块130通过使用由完全卷积偏移预测神经网络504输出的偏移的浮点值和双线性内插来对这些像素进行采样。
广义地说,训练管理器模块130训练完全卷积偏移预测神经网络504以产生偏移预测,偏移预测当被应用于输入图像时,导致具有边界一致、语义上合理且视觉上令人愉快的内容的输出图像。通过训练处理,训练管理器模块130改进了作为输出的偏移预测,使得在训练之后,输出图像具有比在训练开始时输出的图像更边界一致、语义上合理并且视觉上令人愉快的内容。为了实现这一点,例如在引入孔洞之前,训练管理器模块130利用操作员将偏移预测应用于原始训练图像。在一个或多个实现中,训练管理器模块130利用采样内核作为该运算符。
在讨论示例采样内核时,该项oi,j表示位于x坐标i和y坐标j处的图像像素的偏移。在一个或多个实现中,训练管理器模块130通过解释附近像素的双线性内插来计算位于(i,j)处的像素的偏移oi,j。在这个讨论中,项l表示偏移o的一个底,因此l=floor(o)。此外,项u等同于偏移底l加1,因此u=l+1。项‘diff’表示偏移o和偏移底l之间的差异,使得diff=o-l。项‘neg_diff’表示1与偏移和底差‘diff’之间的差,使得-neg_diff=1.0-diff。就此而言,训练管理器模块130在一个或多个实现中利用以下采样内核:
本文,项S(o)表示偏移o的像素采样。通过使用该采样内核,训练管理器模块130部署在训练期间生成的偏移预测的像素的可微分采样。通过偏移预测的这种可微分的采样,训练管理器模块130完全地端对端地训练完全卷积偏移预测神经网络504。
已经讨论了使用神经网络来预测分块位移图的技术的示例细节,现在考虑一些示例过程来说明这些技术的附加方面。
示例过程
本部分描述了在一个或多个实现中用于在数字媒体环境中使用神经网络预测分块位移贴图的示例过程。过程的各方面可以用硬件、固件或软件或其组合来实现。这些过程被显示为指定由一个或多个设备执行的操作的框集合,并且不一定限于所示的用于执行各个框的操作的顺序。在至少一些实现中,由合适配置的设备来执行这些过程,诸如利用分块匹配器116的图1的客户端设备104或利用训练管理器模块130的分块匹配器生成系统106。
图6描绘了示例过程600,其中通过根据形成为位移图的偏移预测将数字图像的像素映射到受操作影响的像素来对数字图像执行图像编辑操作。
接收要关于对其执行图像编辑操作的数字图像(框602)。作为示例,分块匹配器116获得具有孔洞318的孔洞图案图像302。在该示例中,分块匹配器116获得孔洞图案图像302以执行作为图像编辑操作的孔洞填充。尽管参考孔洞填充示例讨论了过程600,但应当理解,在不脱离本文描述的技术的精神或范围的情况下,图像编辑操作可以对应于不同的操作,诸如图像重定向(例如,裁剪、缩放、按比例缩放)、预测视频帧之间的光流、根据接收的数字图像来预测视频的未来帧等等。
数字图像展露于组合偏移预测神经网络和偏移应用模块的块匹配框架(框604)。作为示例,分块匹配器116将孔洞图案图像302展露给组合偏移预测网络136和偏移应用模块138的分块匹配框架。偏移预测网络136和偏移应用模块138可以由训练管理器模块130组合。
由分块匹配框架的偏移预测神经网络生成形成为位移图的偏移预测(框606)。根据本文讨论的原理,位移图包括偏移向量,其表示在数字图像被输入时数字图像的图像像素到用于执行图像编辑操作的不同位置的位移。作为示例,偏移预测网络136生成由可视化334指示的偏移预测。由可视化334指示的偏移预测的偏移向量表示孔洞图案图像302的像素。例如,由颜色编码偏移像素372指示的向量表示输入图像像素376。可视化颜色表示的孔洞图案图像302的像素由颜色编码参考128定义。
确定与受图像编辑操作影响的图像像素相对应的偏移预测的偏移向量(框608)。举例来说,偏移应用模块138确定由可视化334的框368指示的、对应于孔洞318的像素的向量。这些偏移向量包括由可视化334的颜色编码的偏移像素372指示的偏移向量。在该示例中,孔洞318的像素是受图像编辑操作影响的图像像素,例如孔洞填充操作。
由向量表示的图像像素的像素值被偏移应用模块映射到受影响的图像像素(框610)。举例来说,偏移应用模块138通过参照由颜色编码偏移像素372在可视化334中指示的向量来标识输入图像像素376。基于此,偏移应用模块138将输入图像像素376的像素值映射到填充像素370。
受影响的图像像素的像素值由偏移应用模块设置为映射的像素值(框612)。作为示例,偏移应用模块138将孔洞318的像素的值设置为在框610处映射的像素值。具有已执行的图像编辑操作的编辑数字图像作为来自分块匹配框架的输出而被接收(框614)。根据本文讨论的原理,图像编辑操作关于数字图像被执行,以通过将受影响像素的像素值设置为映射像素值来生成编辑数字图像。作为示例,应用112接收填充图案图像350作为来自分块匹配器116的输出。已经关于孔洞图案图像302执行了上述孔洞填充,以通过在框612处设置受影响的像素的值来产生填充图案图像350。填充图案图像350是从分块匹配器116接收的,而无需在填充图案图像350由分块匹配框架输出时对填充图案图像350进行后处理。以这种方式,分块匹配框架可被认为是端到端完全卷积。分块匹配框架也可以被实现使得相应的神经网络是前馈神经网络。
图7描绘了示例过程700,其中形成网络框架以使用分块匹配来执行图像编辑操作,分块匹配是基于形成为由该框架生成的位移图的偏移预测。
偏移预测神经网络与偏移应用模块组合以形成分块匹配框架(框702)。举例来说,训练管理器模块130将完全卷积偏移预测神经网络504与偏移应用模块138组合以形成所图示示例500的分块匹配框架。
训练图像基于针对其将采用分块匹配框架的特定图像编辑操作来修改(框704)。举例来说,为了训练针对孔洞填充的框架,训练管理器模块130从训练图像的一个或多个集合中的每个图像中移除区域。例如,训练管理器模块130从训练图像(未示出)中移除区域以引入孔洞318、320、322、324、326、328、330、332,从而产生孔洞图案图像302、304、306、308,310、312、314、316。在这个示例中,这些孔洞图案图像已经从没有孔洞的原始版本进行了修改。应当理解,训练管理器模块130基于针对其要将采用分块匹配框架的特定图像编辑操作来修改训练图像。例如,训练管理器模块130在采用分块匹配框架来实现裁剪操作的场景中不同地修改训练图像。在不脱离所描述的技术的精神或范围的情况下,训练管理器模块130被配置为以各种方式修改训练图像以训练分块匹配框架以执行不同的图像编辑操作。
将修改训练图像展露于分块匹配框架(框706)。根据本文讨论的原理,分块匹配框架将展露的图像作为输入提供给偏移预测神经网络。作为示例,训练管理器模块130将在框704处修改的训练图像展露给所示示例500的分块匹配框架。这样做时,训练管理器模块130发起该框架的训练。在训练期间,框架学习生成被形成为位移图的偏移预测以执行相对于修改的训练图像的特定图像编辑操作。该学习部分基于确定以训练图像的像素为中心的精确分块以及通过学习目标函数的权重。
形成为位移图的偏移预测通过分块匹配框架作为偏移预测神经网络的输出而被获得(框708)。举例来说,训练管理器模块130获得偏移预测,偏移预测被形成为由完全卷积偏移预测神经网络504生成的位移图。偏移预测和修改的训练图像由分块匹配框架提供给偏移应用模块(框710)。举例来说,训练管理器模块130将在框704处产生的修改的训练图像和在框708处获得的偏移预测提供给偏移应用模块138。
获得作为偏移应用模块的输出的具有所执行的操作的图像(框712)。根据本文讨论的原理,通过根据偏移预测将输入的修改的训练图像的像素映射到受操作影响的像素来执行操作。举例来说,训练管理器模块130获得图像作为来自偏移应用模块138的输出。已经通过偏移应用模块138将在框706处展露给分块匹配框架的经修改的训练图像的像素映射到由操作影响的像素来对这些图像执行特定图像编辑操作。偏移应用模块138基于在框710处提供的偏移预测来执行该映射。
基于训练图像与由分块匹配框架输出的编辑图像的比较来调整分块匹配框架的参数(框714)。根据本文讨论的原理,基于在框704处修改之前的受影响像素的值与受影响像素的映射值的比较来进一步调整参数。作为示例,训练管理器模块130将由框架输出的、如已经被操作的图像与训练图像进行比较。训练管理器模块130还将与在框704处修改之前的受影响像素相对应的训练图像像素的值和在框712处映射到那些像素的值进行比较。在一个或多个实现中,训练管理器模块130通过使用基于原始训练图像的H×W×7×7个分块和从在框712处获得的图像中提取的H×W×7×7个分块的l1距离来计算损失以进行这些比较。作为计算距离的一部分,训练管理器模块130利用如上所述的采样内核来获取偏移预测像素的可微分样本。基于这些所计算的距离,训练管理器模块130调整框架的参数,诸如扩张卷积层的参数。通过这种方式,框架学习生成偏移预测,当应用时,该偏移预测导致输出图像,其中受图像编辑操作影响的像素具有边界一致、语义上合理并且与图像的其他内容在视觉上令人愉快的内容。
已经描述了根据一个或多个实现的示例过程,现在考虑可以用来实现本文描述的各种技术的示例系统和设备。
示例系统和设备
图8图示了一般在800处的示例系统,其包括示例性计算设备802,该示例性计算设备802代表可以实现本文描述的各种技术的一个或多个计算系统和/或设备。这通过包括分块匹配器116和训练管理器模块130来图示。计算设备802可以是例如服务提供商的服务器、与客户端(例如,客户端设备)相关联的设备、片上系统、和/或任意其他合适的计算设备或计算系统。
如图所示的示例计算设备802包括以彼此通信耦合的处理系统804、一个或多个计算机可读介质806、一个或多个I/O接口808。尽管未示出,但是计算设备802还可以包括系统总线或将各种组件彼此耦合的其他数据和命令传输系统。系统总线可以包括不同总线结构中的任意一个或组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种总线体系结构中的任一种的处理器或本地总线。还构想了各种其他示例,诸如控制和数据线路。
处理系统804表示使用硬件执行一个或多个操作的功能。因此,处理系统804被图示为包括硬件元件810,硬件元件810可以被配置为处理器、功能块等等。这可以包括以硬件的作为专用集成电路或使用一个或多个半导体形成的其他逻辑器件的实现。硬件元件810不受其形成的材料或其中采用的处理机构的限制。例如,处理器可以包括半导体和/或晶体管(例如,电子集成电路(IC))。在这种上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读存储介质806被图示为包括存储器/存储组件812。存储器/存储组件812表示与一个或多个计算机可读介质相关联的存储器/存储组件容量。存储器/存储组件812可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储组件812可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等等)。计算机可读介质806可以以如下面进一步描述的各种其他方式来配置。
输入/输出接口808表示以下功能:允许用户向计算设备802输入命令和信息并且还允许使用各种输入/输出设备将信息呈现给用户和/或其他组件或设备。输入设备的示例包括键盘、光标控制设备(例如鼠标)、麦克风、扫描仪、触摸功能(例如,电容或被配置为检测物理触摸的其他传感器)、相机(例如,可以采用可见或不可见的波长,例如红外频率,以将运动识别为不涉及触摸的手势)等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等等。因此,计算设备802可以以如下面进一步描述的多种方式配置,以支持用户交互。
本文可以在软件、硬件元件或程序模块的通用上下文中描述各种技术。通常,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等等。本文使用的术语“模块”、“功能”和“组件”通常表示软件、固件、硬件或其组合。本文描述的技术的特征是独立于平台的,这意味着可以在具有各种处理器的各种商业计算平台上实现这些技术。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者通过某种形式的计算机可读介质传输。计算机可读介质可以包括可以由计算设备802访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
“计算机可读存储介质”可以指与仅仅信号传输、载波或信号本身相对的能够实现信息的持久和/或非暂时存储的介质和/或设备。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括硬件,诸如易失性和非易失性、可移动和不可移动介质和/或存储设备,其以适合于诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据的信息的存储的方法或技术实现。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储器、硬盘、磁带盒、磁带、磁盘存储器或其他磁存储设备或其他存储设备、有形介质或适于存储所需信息并可由计算机访问的制品。
“计算机可读信号介质”可以指信号承载介质,信号承载介质被配置为诸如经由网络向计算设备802的硬件发送指令。信号介质通常可以实施计算机可读指令、数据结构、程序模块或调制数据信号中的其他数据,例如载波、数据信号或其他传输机制。信号介质还包括任意信息传递介质。术语“已调制数据信号”是指具有以对信号中的信息进行编码的方式设置或改变的其特性的一个或多个的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质,以及诸如声学、RF、红外线和其他无线介质的无线介质。
如前所述,硬件元件810和计算机可读介质806代表以硬件形式实现的模块、可编程设备逻辑和/或固定设备逻辑,其可以在一些实施例中被采用以用于实现本文描述的技术的至少一些方面,诸如执行一个或多个指令。硬件可以包括集成电路或片上系统的组件、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及以硅或其他硬件的其他实现。在这种上下文中,硬件可以作为执行由硬件实施的指令和/或逻辑定义的程序任务的处理设备以及用于存储用于执行的指令的硬件(例如,先前描述的计算机可读存储介质)来操作。
前述的组合也可以用于实现本文所述的各种技术。因此,可以将软件、硬件或可执行模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件810实施的一个或多个指令和/或逻辑。计算设备802可以被配置为实现对应于软件和/或硬件模块的特定指令和/或功能。因此,可由计算设备802执行的作为软件的模块的实现可以例如通过计算机可读存储介质和/或处理系统804的硬件元件810的使用来可以至少部分地以硬件实现。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备802和/或处理系统804)执行/操作以实现本文所描述的技术、模块和示例。
本文描述的技术可以由计算设备802的各种配置来支持,并且不限于本文所描述的技术的具体示例。该功能还可以全部或部分地通过使用分布式系统诸如经由平台816通过“云”814来实现,如下所述。
云814包括和/或代表资源818的平台816。平台816抽象云814的硬件(例如,服务器)和软件资源的底层功能。资源818可以包括在计算机处理在远离计算设备802的服务器上执行时可以利用的应用和/或数据。资源818还可以包括通过因特网和/或通过诸如蜂窝或Wi-Fi网络的订户网络提供的服务。
平台816可以抽象资源和功能以将计算设备802与其他计算设备连接。平台816还可以用于抽象资源的缩放以对应的缩放级别提供给针对经由平台816实现的资源818的遇到的需求。因此,在互连的设备实施例中,本文描述的功能的实现可以分布在整个系统800上。例如,功能可部分地在计算设备802上以及经由抽象云814的功能的平台816来实现。
结论
尽管已经用特定于结构特征和/或方法动作的语言描述了本发明,但是应当理解,在所附权利要求中限定的本发明不一定限于所描述的具体特征或动作。相反,作为实现要求保护的发明的示例形式的具体特征和动作被公开了。
Claims (20)
1.一种在用于执行涉及分块匹配的图像编辑操作的数字媒体环境中由计算设备实现的方法,所述方法包括:
由所述计算设备接收数字图像,相对于所述数字图像,图像编辑操作要被执行;
由所述计算设备将所述数字图像展露给具有偏移预测神经网络的分块匹配器;以及
由所述计算设备接收作为来自所述分块匹配器的输出的经编辑的数字图像,所述分块匹配器执行关于所述数字图像的所述图像编辑操作,以通过以下项来生成用于输出的所述经编辑的数字图像:
用所述偏移预测神经网络生成作为位移图的偏移预测,所述位移图包括偏移向量,所述偏移向量表示用于执行所述图像编辑操作的所述数字图像的图像像素的位移;
确定与受所述图像编辑操作影响的所述图像像素相对应的所述偏移向量;
将由所确定的所述偏移向量表示的所述图像像素的像素值映射到受影响的所述图像像素,
根据所述映射来设置受影响的所述图像像素的像素值。
2.根据权利要求1所述的方法,其中所述映射还包括:通过基于由相对于受所述操作影响的对应图像像素的所述偏移向量描述的所述位移而计算所标识的图像像素的位置,来标识由所述偏移向量表示的图像像素。
3.根据权利要求1所述的方法,其中所述偏移预测神经网络基于通过在训练期间展露于训练图像而学习的图像特征、而不是基于像素值确定最近的相邻分块,来生成作为所述位移图的所述偏移预测。
4.根据权利要求1所述的方法,其中所述偏移预测神经网络包括卷积神经网络,所述卷积神经网络具有中间扩张层,所述中间扩张层用于执行一个或多个卷积运算,作为生成作为所述位移图的所述偏移预测以用于所述图像编辑操作的一部分。
5.根据权利要求1所述的方法,其中所述偏移预测神经网络使用可微分采样以在训练期间对由所述偏移预测神经网络生成的偏移预测的所述偏移向量进行采样而被训练。
6.根据权利要求1所述的方法,其中所述经编辑的数字图像作为来自所述分块匹配器的输出而被接收,而没有图像后处理操作相对于受影响的所述图像像素被执行。
7.根据权利要求1所述的方法,其中所述偏移预测神经网络被训练以生成针对所述图像编辑操作的偏移预测,所述图像编辑操作包括涉及分块匹配的多个图像编辑操作中的一个操作,所述多个图像编辑操作包括以下项中的至少一项:
孔洞填充操作;
图像重定向操作;
光流预测操作;或
未来的视频帧预测操作。
8.根据权利要求1所述的方法,还包括:
接收具有至少一个孔洞的孔洞数字图像,所述至少一个孔洞包括具有指示不存在所描绘图像的值的一组连续图像像素;
将所述孔洞数字图像展露给所述分块匹配器;
接收作为来自所述分块匹配器的输出的填充数字图像,所述填充数字图像包括代替所述至少一个孔洞的孔洞填充数字内容,所述分块匹配器通过以下项输出所述填充数字图像:
用所述偏移预测神经网络生成作为所述位移图的所述偏移预测,所述偏移向量表示所述孔洞数字图像的、被配置为填充所述孔洞数字图像的所述孔洞的所述图像像素的位移;
确定对应于所述孔洞数字图像的所述孔洞的所述偏移向量;
将由所确定的所述偏移向量表示的所述图像像素的所述像素值映射到所述孔洞的所述图像像素,以及
根据有效的所述映射来设置所述孔洞的所述图像像素的所述像素值,以用所描绘的内容来填充所述孔洞。
9.根据权利要求8所述的方法,其中所述孔洞数字图像具有多个孔洞。
10.根据权利要求1所述的方法,其中接收所述数字图像、展露所述数字图像、和接收所述经编辑的数字图像结合包括所述分块匹配器的所述计算设备的图像编辑应用而被执行。
11.根据权利要求10所述的方法,还包括:从服务提供商接收具有所述分块匹配器的所述图像编辑应用。
12.一种系统,包括:
分块匹配器,用于基于作为输入接收的数字图像、以及图像编辑操作来输出编辑的数字图像,所述分块匹配器的偏移预测神经网络针对所述图像编辑操作被训练,以生成形成为位移图的偏移预测;
至少一个处理器;以及
存储器,其上存储有计算机可读指令,所述计算机可读指令可由所述至少一个处理器执行以执行操作,所述操作包括:
将数字图像展露给所述分块匹配器;以及
从所述分块匹配器接收经编辑的数字图像,所述经编辑的数字图像通过设置经展露的所述数字图像的、受所述图像编辑操作影响的图像像素的像素值来生成,受影响的所述图像像素的所述像素值根据由所述偏移预测神经网络生成的、形成为位移图的偏移预测而被设置。
13.根据权利要求12所述的系统,其中受影响的所述图像像素的所述像素值还根据所述位移图的偏移向量而被设置,所述偏移向量指示作为到所述预测神经网络的输入的、所述数字图像的图像像素到用于执行所述图像编辑操作的不同位置的位移。
14.根据权利要求12所述的系统,其中所述分块匹配器包括至少第一偏移预测神经网络和第二偏移预测神经网络,所述第一偏移预测神经网络和第二偏移预测神经网络被训练为分别生成针对至少第一图像编辑操作和第二图像编辑操作形成为所述位移图的所述偏移预测。
15.根据权利要求12所述的系统,其中以下项中的至少一项:
所述偏移预测神经网络被配置为具有四个中间扩张卷积层的卷积神经网络;
所述偏移预测神经网络被配置为前馈神经网络;
所述偏移预测神经网络使用可微分采样技术来训练,以在训练期间对由所述偏移预测神经网络生成的所述偏移预测的偏移向量进行采样;或
所述偏移预测神经网络在没有生成性对抗训练的情况下被训练。
16.一种在数字媒体环境中由计算设备实现的方法,所述数字媒体环境用于训练具有偏移预测神经网络的分块匹配框架,以执行涉及对数字图像进行分块匹配的图像编辑操作,所述方法包括:
由所述计算设备基于图像编辑操作来修改训练图像的区域,所述偏移预测神经网络正在被训练以支持所述图像编辑操作;
由所述计算设备将经修改的所述训练图像展露给所述分块匹配框架;
由所述计算设备从所述分块匹配框架接收经编辑的数字图像,所述经编辑的数字图像通过根据由所述偏移预测神经网络生成的、形成为位移图的偏移预测来设置经展露的所述训练图像的图像像素的像素值而被生成;
由所述计算设备基于至少一个损失函数和所生成的所述偏移预测的可微分采样来将所述经编辑的数字图像与所述训练图像进行比较;以及
由所属计算设备并且基于所述比较来调整在操作中使用的所述偏移预测神经网络的参数,以生成所述偏移预测。
17.根据权利要求16所述的方法,其中所述比较包括从所述经编辑的数字图像和经修改的所述训练图像中提取分块,所提取的所述分块集中于在所述经编辑的训练图像和经修改的所述训练图像的每个像素周围,并用于形成具有与图像高度、图像宽度和分块尺寸的乘积相对应的尺寸的数据结构。
18.根据权利要求17所述的方法,其中所述损失函数中的至少一个损失函数测量针对修改的训练图像与对应的编辑的数字图像形成的所述数据结构之间的距离。
19.根据权利要求16所述的方法,还包括:针对多个偏移预测神经网络,执行所述修改、展露、接收、比较和调整,以训练所述偏移预测神经网络中的每个偏移预测神经网络,来生成形成为所述位移图的所述偏移预测以用于多个图像编辑操作的编辑操作。
20.根据权利要求19所述的方法,其中所述多个图像编辑操作包括以下项中至少一项:
孔洞填充操作;
图像重定向操作;
光流预测操作;或
未来的视频帧预测操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/785,386 | 2017-10-16 | ||
US15/785,386 US10672164B2 (en) | 2017-10-16 | 2017-10-16 | Predicting patch displacement maps using a neural network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109671126A CN109671126A (zh) | 2019-04-23 |
CN109671126B true CN109671126B (zh) | 2024-05-24 |
Family
ID=66097516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810870771.4A Active CN109671126B (zh) | 2017-10-16 | 2018-08-02 | 使用神经网络预测分块位移图 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10672164B2 (zh) |
CN (1) | CN109671126B (zh) |
AU (1) | AU2018211354B2 (zh) |
DE (1) | DE102018006243A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10699453B2 (en) | 2017-08-17 | 2020-06-30 | Adobe Inc. | Digital media environment for style-aware patching in a digital image |
US10614557B2 (en) | 2017-10-16 | 2020-04-07 | Adobe Inc. | Digital image completion using deep learning |
US10672164B2 (en) | 2017-10-16 | 2020-06-02 | Adobe Inc. | Predicting patch displacement maps using a neural network |
EP3495988A1 (en) * | 2017-12-05 | 2019-06-12 | Aptiv Technologies Limited | Method of processing image data in a connectionist network |
US10755391B2 (en) | 2018-05-15 | 2020-08-25 | Adobe Inc. | Digital image completion by learning generation and patch matching jointly |
KR102677022B1 (ko) * | 2018-12-26 | 2024-06-24 | 삼성전자주식회사 | 영상 처리 장치 및 그 영상 처리 방법 |
US11080835B2 (en) * | 2019-01-09 | 2021-08-03 | Disney Enterprises, Inc. | Pixel error detection system |
US20220092869A1 (en) * | 2019-01-17 | 2022-03-24 | Toyota Motor Europe | System and method for generating a mask for object instances in an image |
CN110060264B (zh) * | 2019-04-30 | 2021-03-23 | 北京市商汤科技开发有限公司 | 神经网络训练方法、视频帧处理方法、装置及系统 |
JP7245364B2 (ja) * | 2019-06-06 | 2023-03-23 | エレクタ、インク. | 変形可能な層を有するCycleGANを用いたsCT画像生成 |
CN110853110B (zh) * | 2019-09-20 | 2023-06-30 | 杭州火烧云科技有限公司 | 一种基于生成对抗网络的图片自动调色方法 |
US11687778B2 (en) | 2020-01-06 | 2023-06-27 | The Research Foundation For The State University Of New York | Fakecatcher: detection of synthetic portrait videos using biological signals |
US11348314B2 (en) * | 2020-05-08 | 2022-05-31 | Dreamworks Animation Llc | Fast and deep facial deformations |
US11689713B2 (en) | 2020-07-15 | 2023-06-27 | Tencent America LLC | Predicted frame generation by deformable convolution for video coding |
US11763436B2 (en) * | 2020-07-31 | 2023-09-19 | Adobe, Inc. | Facial reconstruction network |
CN112053375A (zh) * | 2020-08-26 | 2020-12-08 | 上海眼控科技股份有限公司 | 基于改进的网络卷积模型预测临近预报的方法及设备 |
CN112702598B (zh) * | 2020-12-03 | 2024-06-04 | 浙江智慧视频安防创新中心有限公司 | 基于位移操作进行编解码的方法、装置、电子设备及介质 |
CN112862672B (zh) * | 2021-02-10 | 2024-04-16 | 厦门美图之家科技有限公司 | 刘海生成方法、装置、计算机设备和存储介质 |
CN113688742B (zh) * | 2021-08-26 | 2023-10-20 | 五邑大学 | 一种sar图像识别方法、装置及存储介质 |
CN116128792A (zh) * | 2021-11-12 | 2023-05-16 | 北京三星通信技术研究有限公司 | 图像处理方法及相关设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6160923A (en) * | 1997-11-05 | 2000-12-12 | Microsoft Corporation | User directed dust and compact anomaly remover from digital images |
US6163334A (en) * | 1997-10-31 | 2000-12-19 | Sharp Kabushiki Kaisha | Image forming device |
CN101999230A (zh) * | 2008-04-10 | 2011-03-30 | 高通股份有限公司 | 子像素分辨率下的偏移 |
CN104731446A (zh) * | 2013-12-20 | 2015-06-24 | 奥多比公司 | 基于提示的斑点修复技术 |
CN105631913A (zh) * | 2014-11-21 | 2016-06-01 | 奥多比公司 | 用于图像的基于云的内容认知填充 |
US9558428B1 (en) * | 2014-07-18 | 2017-01-31 | Samuel B. Green | Inductive image editing based on learned stylistic preferences |
CN106408610A (zh) * | 2015-04-16 | 2017-02-15 | 西门子公司 | 用边缘空间深度神经网络进行解剖对象检测的方法和系统 |
US9760978B1 (en) * | 2016-05-09 | 2017-09-12 | Adobe Systems Incorporated | Missing region prediction |
Family Cites Families (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2255699B (en) | 1991-05-10 | 1994-09-28 | Marconi Gec Ltd | Methods and apparatus for image restoration |
US7039621B2 (en) * | 2000-03-22 | 2006-05-02 | Johnson & Johnson Pharmaceutical Research & Development, L.L.C. | System, method, and computer program product for representing object relationships in a multidimensional space |
WO2001075790A2 (en) * | 2000-04-03 | 2001-10-11 | 3-Dimensional Pharmaceuticals, Inc. | Method, system, and computer program product for representing object relationships in a multidimensional space |
US7782338B1 (en) * | 2004-02-17 | 2010-08-24 | Krzysztof Antoni Zaklika | Assisted adaptive region editing tool |
US7653261B2 (en) | 2004-11-12 | 2010-01-26 | Microsoft Corporation | Image tapestry |
US8340463B1 (en) | 2008-08-29 | 2012-12-25 | Adobe Systems Incorporated | Candidate pruning for patch transforms |
US8233739B1 (en) | 2008-08-29 | 2012-07-31 | Adobe Systems Incorporated | Patch jittering for visual artifact correction |
US8249365B1 (en) | 2009-09-04 | 2012-08-21 | Adobe Systems Incorporated | Methods and apparatus for directional texture generation using sample-based texture synthesis |
KR20120014876A (ko) | 2010-08-10 | 2012-02-20 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
US20120141045A1 (en) | 2010-12-01 | 2012-06-07 | Sony Corporation | Method and apparatus for reducing block artifacts during image processing |
US8670630B1 (en) | 2010-12-09 | 2014-03-11 | Google Inc. | Fast randomized multi-scale energy minimization for image processing |
US8861868B2 (en) | 2011-08-29 | 2014-10-14 | Adobe-Systems Incorporated | Patch-based synthesis techniques |
US9916538B2 (en) | 2012-09-15 | 2018-03-13 | Z Advanced Computing, Inc. | Method and system for feature detection |
US8818135B1 (en) | 2012-02-22 | 2014-08-26 | Adobe Systems Incorporated | Low memory content aware fill |
US9575641B2 (en) | 2012-03-20 | 2017-02-21 | Adobe Systems Incorporated | Content aware image editing |
US8965083B2 (en) * | 2012-06-28 | 2015-02-24 | General Electric Company | Automatic detection of vertebrae boundaries in spine images |
US9153209B2 (en) * | 2012-08-06 | 2015-10-06 | Nvidia Corporation | Method and system for generating a displacement map from a normal map |
US9129399B2 (en) | 2013-03-11 | 2015-09-08 | Adobe Systems Incorporated | Optical flow with nearest neighbor field fusion |
US9208548B1 (en) | 2013-05-06 | 2015-12-08 | Amazon Technologies, Inc. | Automatic image enhancement |
US10249029B2 (en) | 2013-07-30 | 2019-04-02 | Apple Inc. | Reconstruction of missing regions of images |
US9730643B2 (en) * | 2013-10-17 | 2017-08-15 | Siemens Healthcare Gmbh | Method and system for anatomical object detection using marginal space deep neural networks |
US9668699B2 (en) * | 2013-10-17 | 2017-06-06 | Siemens Healthcare Gmbh | Method and system for anatomical object detection using marginal space deep neural networks |
FR3020735B1 (fr) * | 2014-04-30 | 2017-09-15 | Ulis | Procede de traitement d'une image infrarouge pour une correction des non uniformites |
CN105321147B (zh) * | 2014-06-25 | 2019-04-12 | 腾讯科技(深圳)有限公司 | 图像处理的方法及装置 |
US9396530B2 (en) | 2014-07-24 | 2016-07-19 | Adobe Systems Incorporated | Low memory content aware image modification |
US9536293B2 (en) * | 2014-07-30 | 2017-01-03 | Adobe Systems Incorporated | Image assessment using deep convolutional neural networks |
AU2014271236A1 (en) | 2014-12-02 | 2016-06-16 | Canon Kabushiki Kaisha | Video segmentation method |
US9697234B1 (en) | 2014-12-16 | 2017-07-04 | A9.Com, Inc. | Approaches for associating terms with image regions |
JP2018515164A (ja) * | 2015-03-27 | 2018-06-14 | シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft | 画像分類を用いた脳腫瘍自動診断方法および脳腫瘍自動診断システム |
US9842436B2 (en) | 2015-05-05 | 2017-12-12 | Autodesk, Inc. | Seamless texture transfer |
US10467495B2 (en) * | 2015-05-11 | 2019-11-05 | Siemens Healthcare Gmbh | Method and system for landmark detection in medical images using deep neural networks |
US9552626B1 (en) | 2015-10-07 | 2017-01-24 | Adobe Systems Incorporated | Digital image blemish removal |
WO2017077121A1 (en) | 2015-11-06 | 2017-05-11 | Thomson Licensing | Method for transfer of a style of a reference visual object to another visual object, and corresponding electronic device, computer readable program products and computer readable storage medium |
US9710898B2 (en) | 2015-11-18 | 2017-07-18 | Adobe Systems Incorporated | Image synthesis utilizing an active mask |
KR101727836B1 (ko) | 2015-12-22 | 2017-04-17 | 한국과학기술원 | 영상 복원 장치 및 방법 및 장치 |
US10181195B2 (en) * | 2015-12-28 | 2019-01-15 | Facebook, Inc. | Systems and methods for determining optical flow |
US10282877B2 (en) | 2016-02-02 | 2019-05-07 | Adobe Inc. | Generating content aware image fill with geometrical constraints |
EP3433816A1 (en) | 2016-03-22 | 2019-01-30 | URU, Inc. | Apparatus, systems, and methods for integrating digital media content into other digital media content |
WO2017215767A1 (en) | 2016-06-17 | 2017-12-21 | Huawei Technologies Co., Ltd. | Exposure-related intensity transformation |
US9911201B2 (en) | 2016-06-23 | 2018-03-06 | Adobe Systems Incorporated | Imaging process initialization techniques |
US10387765B2 (en) * | 2016-06-23 | 2019-08-20 | Siemens Healthcare Gmbh | Image correction using a deep generative machine-learning model |
US10147459B2 (en) | 2016-09-22 | 2018-12-04 | Apple Inc. | Artistic style transfer for videos |
US10198839B2 (en) | 2016-09-22 | 2019-02-05 | Apple Inc. | Style transfer-based image content correction |
US10134108B2 (en) | 2016-10-05 | 2018-11-20 | Adobe Systems Incorporated | Content aware sampling during patch synthesis |
US10282815B2 (en) | 2016-10-28 | 2019-05-07 | Adobe Inc. | Environmental map generation from a digital image |
US10489676B2 (en) | 2016-11-03 | 2019-11-26 | Adobe Inc. | Image patch matching using probabilistic sampling based on an oracle |
US10607109B2 (en) | 2016-11-16 | 2020-03-31 | Samsung Electronics Co., Ltd. | Method and apparatus to perform material recognition and training for material recognition |
EP3330919A1 (en) | 2016-11-30 | 2018-06-06 | Thomson Licensing | Method for filling-in missing regions in an image of a multimedia content, corresponding computer program product and apparatus |
US10290085B2 (en) | 2016-12-14 | 2019-05-14 | Adobe Inc. | Image hole filling that accounts for global structure and local texture |
EP3340166A1 (en) | 2016-12-21 | 2018-06-27 | Dassault Systèmes | Completing an image |
US20180211380A1 (en) | 2017-01-25 | 2018-07-26 | Athelas Inc. | Classifying biological samples using automated image analysis |
US10127631B1 (en) | 2017-03-02 | 2018-11-13 | Snap Inc. | Automatic image inpainting using local patch statistics |
US10147193B2 (en) * | 2017-03-10 | 2018-12-04 | TuSimple | System and method for semantic segmentation using hybrid dilated convolution (HDC) |
US10607329B2 (en) * | 2017-03-13 | 2020-03-31 | Adobe Inc. | Illumination estimation from a single image |
US10579898B2 (en) * | 2017-04-16 | 2020-03-03 | Facebook, Inc. | Systems and methods for provisioning content using barrel projection representation |
US10586308B2 (en) | 2017-05-09 | 2020-03-10 | Adobe Inc. | Digital media environment for removal of obstructions in a digital image scene |
US10504267B2 (en) | 2017-06-06 | 2019-12-10 | Adobe Inc. | Generating a stylized image or stylized animation by matching semantic features via an appearance guide, a segmentation guide, and/or a temporal guide |
US11154196B2 (en) * | 2017-06-20 | 2021-10-26 | Siemens Healthcare Gmbh | Deep-learnt tissue deformation for medical imaging |
US10776982B2 (en) | 2017-07-03 | 2020-09-15 | Artomatix Ltd. | Systems and methods for providing non-parametric texture synthesis of arbitrary shape and/or material data in a unified framework |
CN109284749A (zh) * | 2017-07-19 | 2019-01-29 | 微软技术许可有限责任公司 | 精细化图像识别 |
US11257259B2 (en) * | 2017-08-15 | 2022-02-22 | Siemens Healthcare Gmbh | Topogram prediction from surface data in medical imaging |
US10699453B2 (en) | 2017-08-17 | 2020-06-30 | Adobe Inc. | Digital media environment for style-aware patching in a digital image |
US10706890B2 (en) * | 2017-08-24 | 2020-07-07 | Intel Corporation | Cinematic space-time view synthesis for enhanced viewing experiences in computing environments |
US10832440B2 (en) * | 2017-08-31 | 2020-11-10 | Nec Corporation | Temporal multi-scale clockwork memory networks for object detection in videos |
US10803555B2 (en) | 2017-08-31 | 2020-10-13 | Shanghai United Imaging Healthcare Co., Ltd. | System and method for determining a trained neural network model for scattering correction |
AU2017225023A1 (en) * | 2017-09-05 | 2019-03-21 | Canon Kabushiki Kaisha | System and method for determining a camera pose |
US10474900B2 (en) * | 2017-09-15 | 2019-11-12 | Snap Inc. | Real-time tracking-compensated image effects |
CN107704857B (zh) | 2017-09-25 | 2020-07-24 | 北京邮电大学 | 一种端到端的轻量级车牌识别方法及装置 |
CA3066775A1 (en) | 2017-10-16 | 2019-04-25 | Illumina, Inc. | Deep learning-based techniques for training deep convolutional neural networks |
US10614557B2 (en) | 2017-10-16 | 2020-04-07 | Adobe Inc. | Digital image completion using deep learning |
US10672164B2 (en) | 2017-10-16 | 2020-06-02 | Adobe Inc. | Predicting patch displacement maps using a neural network |
US10152970B1 (en) * | 2018-02-08 | 2018-12-11 | Capital One Services, Llc | Adversarial learning and generation of dialogue responses |
US11037019B2 (en) | 2018-02-27 | 2021-06-15 | Adobe Inc. | Generating modified digital images by identifying digital image patch matches utilizing a Gaussian mixture model |
US10839575B2 (en) | 2018-03-15 | 2020-11-17 | Adobe Inc. | User-guided image completion with image completion neural networks |
US10740881B2 (en) | 2018-03-26 | 2020-08-11 | Adobe Inc. | Deep patch feature prediction for image inpainting |
JP7351847B2 (ja) | 2018-04-19 | 2023-09-27 | サトゥル メディカル,インコーポレイテッド | 深層学習を使用して磁気共鳴撮像を向上させるためのシステムおよび方法 |
US10755391B2 (en) | 2018-05-15 | 2020-08-25 | Adobe Inc. | Digital image completion by learning generation and patch matching jointly |
US10380753B1 (en) * | 2018-05-30 | 2019-08-13 | Aimotive Kft. | Method and apparatus for generating a displacement map of an input dataset pair |
US11080895B2 (en) | 2018-10-30 | 2021-08-03 | International Business Machines Corporation | Generating simulated body parts for images |
US10878575B2 (en) | 2019-04-15 | 2020-12-29 | Adobe Inc. | Foreground-aware image inpainting |
US11055828B2 (en) | 2019-05-09 | 2021-07-06 | Adobe Inc. | Video inpainting with deep internal learning |
-
2017
- 2017-10-16 US US15/785,386 patent/US10672164B2/en active Active
-
2018
- 2018-08-02 CN CN201810870771.4A patent/CN109671126B/zh active Active
- 2018-08-06 AU AU2018211354A patent/AU2018211354B2/en active Active
- 2018-08-07 DE DE102018006243.1A patent/DE102018006243A1/de active Pending
-
2020
- 2020-03-02 US US16/806,344 patent/US11436775B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6163334A (en) * | 1997-10-31 | 2000-12-19 | Sharp Kabushiki Kaisha | Image forming device |
US6160923A (en) * | 1997-11-05 | 2000-12-12 | Microsoft Corporation | User directed dust and compact anomaly remover from digital images |
CN101999230A (zh) * | 2008-04-10 | 2011-03-30 | 高通股份有限公司 | 子像素分辨率下的偏移 |
CN104731446A (zh) * | 2013-12-20 | 2015-06-24 | 奥多比公司 | 基于提示的斑点修复技术 |
US9558428B1 (en) * | 2014-07-18 | 2017-01-31 | Samuel B. Green | Inductive image editing based on learned stylistic preferences |
CN105631913A (zh) * | 2014-11-21 | 2016-06-01 | 奥多比公司 | 用于图像的基于云的内容认知填充 |
CN106408610A (zh) * | 2015-04-16 | 2017-02-15 | 西门子公司 | 用边缘空间深度神经网络进行解剖对象检测的方法和系统 |
US9760978B1 (en) * | 2016-05-09 | 2017-09-12 | Adobe Systems Incorporated | Missing region prediction |
Non-Patent Citations (1)
Title |
---|
利用BP神经网络识别数字图像;范重庆;高等函授学报(自然科学版)(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
US10672164B2 (en) | 2020-06-02 |
US20190114818A1 (en) | 2019-04-18 |
US20200202601A1 (en) | 2020-06-25 |
US11436775B2 (en) | 2022-09-06 |
CN109671126A (zh) | 2019-04-23 |
AU2018211354B2 (en) | 2021-10-28 |
AU2018211354A1 (en) | 2019-05-02 |
DE102018006243A1 (de) | 2019-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109671126B (zh) | 使用神经网络预测分块位移图 | |
CN109670558B (zh) | 使用深度学习的数字图像完成 | |
US11334971B2 (en) | Digital image completion by learning generation and patch matching jointly | |
US10650495B2 (en) | High resolution style transfer | |
US20220114705A1 (en) | Digital Image Fill | |
US20200143171A1 (en) | Segmenting Objects In Video Sequences | |
US12008464B2 (en) | Neural network based face detection and landmark localization | |
CN109771951B (zh) | 游戏地图生成的方法、装置、存储介质和电子设备 | |
US10902657B2 (en) | Jointly editing related objects in a digital image | |
JP7432005B2 (ja) | 二次元画像の三次元化方法、装置、機器及びコンピュータプログラム | |
CN112150347B (zh) | 从有限的修改后图像集合中学习的图像修改样式 | |
US10846889B2 (en) | Color handle generation for digital image color gradients using machine learning | |
CN113298226A (zh) | 通过中间潜在空间控制神经网络 | |
US20210065351A1 (en) | Object count estimation apparatus, object count estimation method, and computer program product | |
US9959672B2 (en) | Color-based dynamic sub-division to generate 3D mesh | |
KR102659290B1 (ko) | 모자이크 생성 장치 및 방법 | |
GB2567722A (en) | Predicting patch displacement maps using a neural network | |
US11526967B2 (en) | System and method for precise image inpainting to remove unwanted content from digital images | |
US11200708B1 (en) | Real-time color vector preview generation | |
US10650581B1 (en) | Sketch-based 3D fluid volume generation using a machine learning system | |
KR102684693B1 (ko) | 그래프 기반의 패치 재배열을 통한 적응형 이미지 외삽 방법 및 장치, 컴퓨터 프로그램 | |
CN117333616A (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 |