CN108140130B - 图像处理方法及非暂时性计算机可读介质 - Google Patents
图像处理方法及非暂时性计算机可读介质 Download PDFInfo
- Publication number
- CN108140130B CN108140130B CN201680045790.2A CN201680045790A CN108140130B CN 108140130 B CN108140130 B CN 108140130B CN 201680045790 A CN201680045790 A CN 201680045790A CN 108140130 B CN108140130 B CN 108140130B
- Authority
- CN
- China
- Prior art keywords
- vertex
- pixels
- reference image
- image
- target
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 5
- 239000003086 colorant Substances 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 157
- 238000000034 method Methods 0.000 claims description 105
- 239000013598 vector Substances 0.000 claims description 53
- 238000010606 normalization Methods 0.000 claims 4
- 238000012545 processing Methods 0.000 abstract description 31
- 238000001914 filtration Methods 0.000 abstract description 8
- 238000005070 sampling Methods 0.000 abstract description 5
- 230000011218 segmentation Effects 0.000 abstract description 5
- 238000013507 mapping Methods 0.000 abstract description 4
- 239000000463 material Substances 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 91
- 230000006870 function Effects 0.000 description 50
- 238000004891 communication Methods 0.000 description 22
- 238000003491 array Methods 0.000 description 13
- 238000009499 grossing Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000009977 dual effect Effects 0.000 description 7
- 238000005192 partition Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000004040 coloring Methods 0.000 description 5
- 230000001788 irregular Effects 0.000 description 5
- 241000196324 Embryophyta Species 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 244000025254 Cannabis sativa Species 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000010287 polarization Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241000764238 Isis Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000001444 catalytic combustion detection Methods 0.000 description 1
- 238000002939 conjugate gradient method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 102000054766 genetic haplotypes Human genes 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
- G06T3/4076—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution using the original low-resolution images to iteratively correct the high-resolution images
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/32—Normalisation of the pattern dimensions
-
- 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/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
- G06V10/422—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation for representing the structure of the pattern or shape of an object therefor
- G06V10/426—Graphical representations
-
- 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/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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/20024—Filtering details
- G06T2207/20028—Bilateral filtering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
示例实施例可以允许关于参考图像的图像数据的高效的边缘保持的过滤、上采样或其他处理。从输入阵列生成输出图像的成本最小化问题被映射到多维顶点空间中的规则间隔的顶点。该映射基于参考图像的像素与顶点之间以及输入阵列的元素与参考图像的像素之间的关联。问题然后被求解以确定每个顶点的顶点视差值。输出图像的像素可以基于与每个像素关联的相应一个或多个顶点的所确定的顶点视差值来确定。这种快速、高效的图像处理方法可以用来实现边缘保持的图像上采样、图像着色、图像内容的语义分割、图像过滤或去噪声或其他应用。
Description
相关申请的交叉引用
本申请要求于2015年11月5日提交的美国临时专利申请第62/251,608号的优先权并且通过引用并入其内容。
技术领域
本申请通常涉及边缘感知的双边图像处理,更具体地,涉及图像处理方法及非暂时性计算机可读介质。
背景技术
当对自然场景的图像执行图像处理时,考虑离散的人、动物、植物、物体、建筑物或这样的图像的其他内容的位置和边界可能是有益的。这样的图像处理任务可以包括图像数据的过滤(例如,去除噪声或伪像)、图像的着色,确定关于图像的内容的信息(例如,图像中的每个像素的深度、分配到图像中的每个像素的语义类别标签)或一些其他图像处理任务。例如,在对图像着色时,将少量手动指定的色彩值应用到对象的其余部分以生成图像的着色版本可能是有益的。在另一示例中,对图像的深度图(例如,从立体图像对确定的、或由与相机或其他图像生成装置对准的深度传感器生成的深度图)进行过滤和/或上采样可能是有益的。这样的图像处理任务可能是计算密集的(例如,需要大量的时间、存储器或其他计算资源)。开发执行这种图像处理任务的改进方法可能是有益的。
发明内容
自然场景的图像(例如,建筑物内的图像或室外区域的图像)通常包括人、动物、建筑物、植物或其他离散物体。以尊重图像内的这些对象的边界的方式过滤、上采样或以其他方式操纵色彩信息或与图像有关的其他数据可能是有益的。例如,当对图像着色时,人可以手动指定图像内的区域或对象的色彩。然后可以将这些手动指定的色彩应用于图像的相邻区域,而不会跨过图像内的边缘。在另一示例中,对应于场景的可见光图像的场景的低分辨率红外图像可以被上采样,以生成场景的更高分辨率的红外图像。这种上采样可以基于可见光图像,使得上采样的红外图像在场景的对象内是平滑的,但是可能在场景内跨对象的边缘突然改变。快速过滤、上采样或以边缘保持方式操纵这些信息的能力在各种其他应用中可能是有益的。
在第一方面,一种方法包括:(i)通过计算系统获得(1)由相机设备捕获的参考图像和(2)目标阵列,其中所述参考图像包括多个像素,所述多个像素在所述参考图像中具有各自的像素位置和各自的色彩变量,其中目标阵列包括目标值,并且其中目标值分别对应于参考图像的像素;(ii)由计算系统将参考图像的像素与顶点空间中的各个顶点关联,其中顶点空间包括两个空间维度和色彩空间维度,其中参考图像的像素与各个顶点之间的关联由关联矩阵定义,其中所述关联矩阵包括多个值,多个值中的少于一半是非零的;(iii)由计算系统将目标值与各个顶点关联,参考图像的与目标值对应的像素是与所述各个顶点关联的;(iv)由所述计算系统基于以下来确定顶点成本矩阵:(1)参考图像的像素和各个顶点之间的关联,以及(2)参考图像的像素对之间的相似度,其中,参考图像的特定像素对之间的相似度与参考图像中的该特定像素对的像素位置之间的距离、以及参考图像的该特定像素对的色彩变量之间的色彩空间维度中的距离相关;(v)由计算系统通过求解由顶点成本矩阵和顶点成本向量定义的线性系统来确定顶点的各个顶点拟合值;以及(vi)由所述计算系统生成过滤的输出图像,其中所述过滤的输出图像包括分别对应于所述参考图像的像素的像素,其中生成所述过滤的输出图像包括使用与所述参考图像的像素关联的顶点的所确定的顶点拟合值作为基础来确定过滤的输出图像的各个像素。
在另一方面,一种非暂时性计算机可读介质,其中存储有可由计算系统执行以使所述计算系统执行操作的指令,所述操作包括:(i)获得(1)由相机设备捕获的参考图像和(2)目标阵列,其中所述参考图像包括多个像素,所述多个像素在所述参考图像中具有各自的像素位置和各自的色彩变量,其中目标阵列包括目标值,并且其中目标值分别对应于参考图像的像素;(ii)将参考图像的像素与顶点空间中的各个顶点关联,其中顶点空间包括两个空间维度和色彩空间维度,其中参考图像的像素与各个顶点之间的关联由关联矩阵定义,其中所述关联矩阵包括多个值,多个值中的少于一半是非零的;(iii)将目标值与各个顶点关联,参考图像的与目标值对应的像素是与所述各个顶点关联的;(iv)基于以下来确定顶点成本矩阵:(1)参考图像的像素和各个顶点之间的关联,以及(2)参考图像的像素对之间的相似度,其中,参考图像的特定像素对之间的相似度与参考图像中的该特定像素对的像素位置之间的距离、以及参考图像的该特定像素对的色彩变量之间的色彩空间维度中的距离相关;(v)通过求解由顶点成本矩阵和顶点成本向量定义的线性系统来确定顶点的各个顶点拟合值;以及(vi)生成过滤的输出图像,其中所述过滤的输出图像包括分别对应于所述参考图像的像素的像素,其中生成所述过滤的输出图像包括使用与所述参考图像的像素关联的顶点的所确定的顶点拟合值作为基础来确定过滤的输出图像的各个像素。
通过适当参考附图处阅读以下详细描述,这些以及其他方面、优点和替代方案对于本领域普通技术人员将变得明显。此外,应该理解的是,在该发明内容部分中以及在该文件中的其他地方提供的描述旨在通过示例而不是限制的方式来说明要求保护的主题。
附图说明
图1A描绘了由设备成像的示例场景的内容。
图1B是由图1A的设备的相机捕获的图1A中描绘的场景的示例图像。
图2A是表示图1A中描绘的场景的较低分辨率图像的第一示例目标阵列。
图2B是表示图1B的图像的区域的语义分类的第二示例目标阵列。
图2C是表示图1B的图像的区域的预期着色的第三示例目标阵列。
图3描绘了可以基于输入目标阵列和图1B的图像确定的示例输出图像。
图4A描绘了示例一维图像的像素位置。
图4B描绘了包含图4A的像素位置已经嵌入其中的示例顶点的示例顶点空间。
图5A描绘了示例一维图像的像素位置。
图5B描绘了包含图5A的像素位置已经嵌入其中的示例顶点的示例顶点空间。
图6示出了示例方法。
图7是示出可以包括相机组件的示例计算设备的一些组件的简化框图。
具体实施方式
本文描述了方法和系统的示例。应该理解的是,本文使用词语“示例性”、“示例”和“说明性的”来表示“用作示例、实例或说明”。本文中被描述为“示例性”、“示例”或“说明性”的任何实施例或特征不一定被解释为比其他实施例或特征优选或有利。此外,本文描述的示例性实施例并不意味着限制。将容易理解的是,所公开的系统和方法的某些方面可以以种类广泛的不同配置进行布置和组合。
I.概述
示例实施例可以帮助以边缘保持(edge-preserving)的方式更高效地过滤、上采样、着色、语义分段或执行其他图像处理任务。具体而言,可以基于输入数据集来确定色彩、内容、深度、视差和/或其他图像信息,使得输出图像信息在离散对象或参考图像的其他内容(例如,对象、障碍物、表面)内相对平滑,但可能在对象之间急剧改变。
以边缘保持方式快速执行图像处理任务的能力在各种应用中可能是有益的。例如,与场景的图像(例如,由红外相机或深度传感器生成的场景的另一图像)对应的较低分辨率图像可以以边缘感知(edge-aware)的方式被上采样,使得输出上采样的图像可具有与场景的图像中的边缘对应的边缘。在另一示例中,关于场景和/或其图像的像素的特定区域的信息(例如,场景的黑白图像中的对象的手动指定的色彩、关于场景中对象的身份(identity)的机器生成的信息)可以用于生成与输入信息对应、并且可以具有与场景的参考图像中的边缘对应的边缘的输出图像。在又一示例中,场景的图像可以被过滤、去噪声或者以边缘保持的方式进行其他处理。当然,应该理解的是,本文描述的示例实施例的益处和用途是为了解释的目的而提供的,并且不应该被解释为限制本发明的范围。
在一些实施例中,提供场景的参考图像。参考图像可以由相机生成。还提供了包括多个目标值的目标阵列。每个目标值与参考图像的相应像素对应,并且表示关于像素和/或由像素表示的对象的一些信息。例如,目标值可以表示对象的身份或色彩、对象相对于生成参考图像的相机的深度或距离。可以有与参考图像的像素一样多的目标值。例如,在使用本文的方法来以尊重边缘的方式过滤参考图像的示例中,目标阵列可以是具有与参考图像相同的分辨率的另一图像,或者目标值可以是色彩变量或关于像素本身的其他信息。替代地,可以有比参考图像中的像素更少的目标值。例如,目标阵列可以是较低分辨率的图像、用于对黑白图像着色的多个手动指定的对象色彩、或关于参考图像的区域和/或有限数量的像素的一些其他信息。
然后参考图像被用于基于目标值生成输出图像。输出图像可以是参考图像的着色版本、识别场景中的对象的图像、目标阵列的上采样版本(例如,红外图像、深度图)、参考图像的过滤版本或者一些其他图像信息。生成输出图像可以包括应用(例如,最小化)取目标阵列作为输入的成本函数。这样的成本函数可以包括与所生成的输出图像的平滑度相关的(即,与输出图像中的彼此接近或者以某种方式相关的(例如,色彩和/或亮度、或者一些其他度量或者度量的组合相似的)的像素之间的总体相似度相关的)项。这样的成本函数可以附加地包括与输出图像的像素和目标阵列的对应目标值之间的对应程度(例如,色彩和/或亮度的相似度)相关的项。
可以以各种方式确定输出图像的像素。在一些示例中,通过将成组的参考图像的像素(例如,通过使用边缘检测或其他图像处理技术确定参考图像中的对象的范围)与确定的或指定的特征(例如,图像的指定块、可以嵌入像素的空间中的顶点)相关联,或者根据一些其他方法,可以简化确定输出图像的像素的处理。
例如,参考图像的每个像素可以与顶点空间中的一个或多个顶点相关联。顶点空间可具有两个空间维度(例如,与参考图像的帧内的像素位置的两个空间维度对应的空间维度)和至少一个色彩空间维度(与色彩、亮度、色彩特定亮度或由第一图像的像素表示的参考图像的属性对应)。例如,参考图像可以是黑白图像,并且顶点空间可以具有与参考图像的帧内的像素位置对应的两个空间维度、和与参考图像中的像素的亮度对应的第三色彩空间维度。因此,参考图像的每个像素可以具有顶点空间中的位置,可以基于与顶点空间中的顶点的接近度而与一个或多个顶点相关联。
然后可以根据顶点与参考图像的像素之间的关联将用于生成输出图像的成本函数映射到顶点。然后可以使用该映射的成本函数来确定每个顶点的拟合值(fit value)。可以有比参考图像中的像素少得多的顶点,使得求解映射的成本函数快得多和/或计算密集度更小。然后可以使用所确定的顶点拟合值来根据顶点与参考图像的像素之间的关联生成输出图像的像素。
顶点空间中的维数可以依赖于具体的应用而变化。在一些示例中,可以为彩色参考图像确定输出图像(例如,对于其像素定义色彩空间例如,红绿蓝(RGB)色彩空间中的色彩的图像)。与这样的示例对应的顶点空间可以具有与参考图像的帧内的像素位置对应的两个空间维度。顶点空间可以具有与色彩空间中的由(一个或多个)图像的像素所定义的色彩的位置对应的另外三个色彩空间维度。
顶点空间中的顶点的位置可以规则地间隔开(例如,以提供对应于参考图像的顶点空间的体积的一致“采样”)。例如,顶点可以位于顶点空间中三维或更多维形状的棋盘格状和/或规则重复的阵列的、或者根据一些其他规则图案的顶点处。在一些示例中,顶点可以位于矩形阵列中(即,沿着多维空间中的正交方向规则间隔,在超矩形的棋盘格阵列的顶点处)。在一些示例中,顶点可以位于三角形阵列中(即,在顶点空间中规则棋盘格状的三角形、四面体或更高维单形体(higher-dimensional simplexes)的顶点处)。
应当理解的是,上述实施例以及本文所述的其他实施例是为了说明的目的而提供的,并不意图进行限制。
II.示例图像和应用
一般来说,成像可以指以数字、化学或其他格式(例如,照片和/或运动视频)捕获和存储真实世界环境或场景的色彩和亮度特性。存在多种图像捕获设备(例如,CCD、光电检测器阵列、有源像素传感器)以便于在不同格式(例如,彩色成像、黑白成像)的主机中捕获图像。
可以以各种方式处理图像;替代地,该图像可以用于通知处理一些其他图像或图像相关信息。在一些示例中,参考图像可以表示场景,并且参考图像中的对象(例如,人、动物、建筑物、植物)的位置和范围可以用于以保留图像中的对象的边缘的方式、或者尊重在图像中的这些边缘的其他方式,执行一些图像处理任务。例如,例如通过总体上平滑图像,但允许跨边缘的尖锐过渡,参考图像本身可以被过滤、去噪声、着色、或者以保留图像中的边缘的方式进行其他处理。在一些示例中,可以对与图像的场景相关的信息进行上采样或以其他方式处理,以生成与参考图像具有相同分辨率的输出图像,该输出图像可以包括与参考图像中的边缘对应的边缘或其他尖锐过渡。例如,可见光相机和较低分辨率的红外相机可以分别用于生成相同场景的可见和红外图像。可见光图像然后可以用作参考图像以生成红外图像的上采样版本,使得上采样的红外图像总体上是平滑的,但是在参考图像中的边缘位置处可以包括尖锐过渡或其他特征。可以使用手动指定的色彩、识别图像内容的语义信息、从立体图像对确定的视差信息、眼睛注视跟踪信息或其他信息与参考图像组合,以生成具有与参考图像相同的分辨率、并且可以包括与参考图像中的边缘对应的尖锐过渡或其他特征的输出图像。
图1A示出了包含近处对象103和远处对象105的场景100。图1A另外示出了接近近处对象103布置并且被配置为生成场景100的可见光图像(例如,配置为生成场景100的立体图像对)以及其他功能的设备110。作为示例而非限制,设备110可以是蜂窝移动电话(例如,智能电话)、静物照相机、摄像机、计算机(诸如台式机、笔记本、平板计算机或手持式计算机)、个人计算机数字助理(PDA)、家庭自动化组件、数字录像机(DVR)、数字电视机、遥控器、可穿戴计算设备或配备有至少一个相机的一些其他类型的设备。应该理解的是,设备110可以表示诸如数字相机的分立物理设备、相机应用以软件操作的特定物理硬件平台、或者被配置为执行相机功能的硬件和软件的其他组合。
设备110包括可以被操作以生成可见光图像的相机115a。设备110另外包括另外的传感器115b,其可以独立地和/或与相机115a(即,通过设备110的一个或多个控制器(未示出))协同操作。另外的传感器115b可以是另一可见光相机(例如,以便于生成立体图像对)、红外相机、距离传感器(例如,激光或雷达距离传感器)、或者可操作以生成关于由相机115a成像的场景(例如,100)的信息的一些其他感测设备。
图1B示出场景100的示例参考图像150,其包括参考近处对象图像155a和参考远处对象图像155b。示例参考图像150可以由相机115a生成。
参考图像150可以用作信息源,以相对于参考图像150中的对象的边缘执行一些边缘保持图像处理。例如,参考图像150可以用来基于一些目标图像相关信息生成输出图像,使得输出图像总体上是平滑的,但是可具有与参考图像150中的边缘对应的尖锐过渡或其他特征。该目标信息可以采取目标值(例如,目标色彩、目标亮度、目标对象标识符、目标距离或视差)的阵列的形式,每个目标值与参考图像150的相应像素和/或目标图像150内的位置对应。该目标阵列可以是具有与参考图像相同分辨率的图像。例如,目标阵列可以是参考图像本身,并且输出图像可以是参考图像150的过滤版本。替代地,目标阵列可以是比参考图像150更低分辨率的图像。在又一示例中,目标阵列可以包括表示手动指定的色彩、图像内容的身份或与参考图像150内的像素、位置、区域或对象相关的一些其他信息的多个值。
在一些示例中,目标信息可以是由另外的传感器115b生成的较低分辨率的红外图像或深度图,并且输出图像可以是这种图像的上采样版本。替代地,目标信息可以是基于包括参考图像150的立体图像对确定的多个视差值、参考图像150的内容的身份的较低分辨率确定、参考图像150的一个或多个对象或区域的手动或自动指定的色彩、或者从参考图像150确定或以其他方式与参考图像150相关的一些其他信息。
目标阵列可以是具有比参考图像150更低分辨率的场景100的图像。例如,目标阵列可以是由红外相机生成的图像、使用距离传感器或另外的传感器115b的一些其他传感元件测量的距离的深度图。另外地或替代地,目标阵列可以是从参考图像150和/或从一些其他(一个或多个)图像生成的图像。例如,目标阵列的值可以是基于包括参考图像150的立体图像对(例如,包括参考图像150和由另外的传感器115b的可见光相机生成的第二图像的立体图像对)确定的视差值、熵度量、视觉兴趣或图像的区域的一些其他派生的局部属性、或基于参考图像150确定的一些其他较低分辨率图像。可以基于参考图像150以边缘保持方式对较低分辨率图像进行上采样。
图2A示出表示包括多个目标值210a的场景100的较低分辨率图像的第一示例目标阵列200a。每个目标值可以表示与场景100、参考图像150和/或像素、对象或其区域相关的色彩、亮度、温度、视差、深度、距离、图像熵、图像流信息或一些其他信息。参考图像150中的对象的轮廓在图2A中由虚线示出。
第一示例目标阵列200a可以由红外相机、紫外相机、距离传感器或一些其他感测设备生成。例如,第一目标阵列200a的目标值210a可以表示使用红外相机检测的场景100的对象或区域的温度。在另一示例中,第一目标阵列200a的目标值210a可以表示用于生成参考图像150的相机(例如,相机115a)与由参考图像150中的对应于目标值210a的像素表示的场景100的对象或区域之间的距离。
目标阵列可以表示关于场景100的多个指定区域和/或参考图像150的像素或区域的一些信息。例如,目标阵列可以包括描述场景100内的对象的目标值,所述对象由参考图像150的与目标值对应的像素来表示。这样的目标值可以是分类(categorical)的(例如,1=人,2=自行车,3=家具)、关于单一类型的对象的(例如,1=人,0=不是人)、关于对象的身份的置信度的(例如,1=肯定是人,0.1=不太可能是人),或者可以以其他方式描述在参考图像150中表示的对象。这样的目标值可以通过算法(例如,通过模式匹配、神经网络或一些其他方法)确定和/或可以基于来自人的手动输入来确定。
图2B示出了第二示例目标阵列200b,其包括与参考图像150内的相应像素和/或位置对应的多个目标值210b、220b、230b。第二示例目标阵列200b的目标值表示由参考图像150的对应像素表示的对象的身份。例如,第二目标阵列200b的第一组目标值210b描述山,第二目标阵列200b的第二组目标值220b描述狗,并且第二目标阵列200b的第三组目标值230b描述草。参考图像150中的对象的轮廓在图2B中由虚线示出。如所示,第二示例目标阵列200b包括与参考图像150的几个位置和/或像素对应的目标值;然而,这样的描述对象的目标阵列可以包括与参考图像的每个像素对应的目标值。取决于用于生成这样的更高分辨率的对象识别目标阵列的方法,这样的目标阵列可以呈现场景中的对象边缘附近的场景中的对象的低置信度、不连续或其他方式的低质量的识别。
目标阵列可以表示关于场景100的多个指定区域和/或参考图像150的像素或区域的色彩信息。例如,目标阵列可以包括目标值,该目标值描述场景100内的由参考图像150的与目标值210a对应的像素表示的对象的色彩。这样的目标值可以通过算法(例如,通过模式匹配、神经网络或一些其他方法)确定和/或可以基于来自人的手动输入确定。例如,人可以手动将期望的色彩应用于图像内的多个不同对象中的每一个的中心。
图2C示出了第三示例目标阵列200c,其包括与参考图像150内的像素和/或位置的相应指定色彩对应的目标值210c、220c、230c。第三示例目标阵列200c的目标值表示由参考图像150的对应像素表示的对象的色彩。例如,第三目标阵列200c的第一组目标值210c可表示色彩灰色(对应于山的指定色彩),第三目标阵列200c的第二组目标值220c可表示色彩棕色(对应于狗的指定色彩),并且第三目标阵列200c的第三组目标值230c可表示色彩绿色(对应于草或其他植物的指定色彩)。参考图像150中的对象的轮廓在图2C中由虚线示出。如所示,第三示例目标阵列200c包括与参考图像150的几个位置和/或几组像素对应的目标值;然而,这样的表示色彩的目标阵列可以包括与参考图像的每个像素对应的目标值。
目标阵列(例如200a、200b、200c)可以结合参考图像(例如,150)使用,来以保持参考图像中的边缘的方式基于目标区域生成输出图像。例如,目标阵列可被上采样、过滤或以其他方式处理,以生成这样的输出图像,其与目标阵列的内容(例如,红外图像、描述图像中对象的身份的图像、深度图、参考图像的彩色图)对应,并且总体上是平滑的,但是可以包括与参考图像中的边缘对应的尖锐过渡、边缘或其他特征。
图3示出了可以与目标阵列200a、200b、200c中的一个对应并且保持存在于参考图像150中的边缘的示例输出图像300。例如,输出图像300可以与由第一示例目标阵列200a表示的较低分辨率的红外图像对应,使得输出图像300的特定像素的灰度色(grayscalecolor)与由参考图像150的对应像素表示的对象的温度对应。在另一示例中,输出图像300可以与由第二示例目标阵列200b表示的参考图像150中的对象的身份对应,使得输出图像300的特定像素的灰度色与由参考图像150的对应像素表示的对象的身份(例如,狗、山)对应。在又一示例中,输出图像300可以与由第三示例目标阵列200c表示的参考图像150中的对象的指定色彩对应,使得输出图像300的特定像素的灰度色与由参考图像150的对应像素表示的对象的色彩(例如,灰色、棕色、绿色)对应。可以以各种方式基于参考图像150和目标阵列(例如,200a、200b、200c)生成输出图像300。
III.示例图像处理任务
以相对于参考图像的边缘保持方式从输入数据(例如,较低分辨率图像数据、对象描述数据)生成输出图像可能是计算上昂贵的处理。生成输出图像的处理可以包括确定输出图像的每个像素的信息(例如,确定每个像素的像素色彩、亮度、深度、对象描述类别或(一个或多个)其他变量)。这样的确定可以包括将输出图像的给定像素的属性(例如,色彩、位置)与输入数据的一个或多个值(例如,与目标阵列的一个或多个目标值)进行比较。可以确定输出图像的像素,使得它们对应于各自的目标值,例如,使得输出图像是输入数据的经上采样、过滤或以其他方式修改的版本。
这样的经修改的输出图像的像素与输入目标阵列的目标值之间的对应关系(correspondence)可以与在像素空间(例如,输出图像和/或参考图像帧内的二维像素空间)中的输出图像像素相对于目标阵列的目标值的像素位置的位置相关。这可以包括确定每个目标值与输出图像的相应一个或多个单独像素之间的对应关系。例如,目标阵列可以包括与输出图像中的像素一样多的目标值(例如,目标阵列本身可以是图像),并且目标值可以各自与输出图像的相应唯一像素对应。
可以确定过滤的输出图像像素以相对于输入目标阵列应用一些成本或误差函数。例如,可以确定输出图像像素,以最小化基于输出图像的像素和目标阵列的目标值之间的关系(例如,差)确定的总和、乘积或一些其他成本函数。这样的成本函数可以是输出图像像素与目标阵列的值之间的差的二次成本函数、线性成本函数或一些其他函数。可以使用梯度下降、遗传算法、模拟退火或一些其他方法或方法的组合来确定输出图像像素,以最小化、减小、最大化、增大或以其他方式应用成本函数。
为了生成平滑的输出图像,但是保持存在于参考图像中的边缘,可以考虑彼此确定输出图像的像素。例如,可以确定成本函数,其包括与输出图像和目标阵列之间的对应关系有关的数据项,并且还包括与输出图像的各个像素之间的相似度有关的(例如,与输出图像的相邻或以其他方式附近的像素之间的相似度有关的)平滑项,可以应用(例如,使用梯度下降、动态编程或一些其他方法)来确定第一图像的像素位置的视差值。这样的平滑项可以基于参考图像来确定,使得与参考图像中的边缘的任一侧上的像素对应的输出图像像素与没有被这样的边缘分开的参考图像像素对应的输出图像像素相比,彼此能够更好地区分。
包括平滑项(在加法符号的左边)和损耗项(在加法符号的右边)的示例成本函数由以下等式描述:
其中xi是过滤的输出图像的第i个像素的值(例如,亮度、红色强度、蓝色强度、温度、深度、视差、对象身份)。输出图像的第i个像素对应于目标阵列的第i个目标值ti。是包括多个值的像素相似矩阵。是与过滤的输出图像的确定的第i个像素和第j个像素之间的相似度相对应的像素相似矩阵的值。因此,对于第i个过滤的输出图像像素的确定的值xi和第j个过滤的输出图像像素的确定的值xj之间的给定差,的较高值将导致较高的成本。λ是加权因子,其可以在确定所确定的过滤的输出图像像素x的给定集合的总成本时被指定以设置平滑项和损耗项的相对重要性(其中x的第i个元素是xi,针对第i个过滤的输出图像像素的所确定的值)。
如所示,成本函数是关于每个输出像素与输入目标阵列t(其中t的第i个元素是ti)的相应目标值之间的差的二次方。然后根据置信度阵列c的对应置信度值ci对该平方差进行缩放。提供置信度阵列,使得输出像素值和目标阵列值的特定对之间的对应关系大于其他对的对应关系。这样的置信度值可以对应于目标阵列的单个目标值的质量(quanlity)的置信度程度、噪声水平、方差或其他度量。请注意,置信度阵列在此处作为示例提供,并且可以省略(例如,置信度值可以全部设置为1)。
注意,虽然所示的目标阵列包括输出图像的每个像素的目标值(即,存在与输出图像像素一样多的目标值),但是如本文所述的目标阵列可以包括更少的目标值。在这样的示例中,可以改变所示的成本函数以仅对具有相应目标值的那些输出图像像素的差求和。另外地或替代地,输入目标阵列可以被扩展以包括与输出图像中的像素一样多的目标值(例如,通过将设置为零或一些其他任意值的值加到目标阵列或者通过上采样目标阵列)。这可以包括将与添加的目标值对应的置信度值设置为零,例如以防止添加的目标值影响生成的输出图像。
所示的每个目标值对应于输出图像和/或参考图像的相应像素的损耗项意在作为非限制示例。可以使用替代损耗项。例如,损耗项可以基于单个目标值与多个输出图像像素之间的差、输出图像像素与多个目标值之间的加权差(例如,根据输出图像像素的像素空间中的位置和目标值之间的距离加权),或者根据一些其他考虑。
可以选择像素相似矩阵的元素使得第i个和第j个输出图像像素之间的相似度的平滑成本与输出图像的帧内的第i个和第j个输出图像像素之间和/或参考图像的帧内的第i个和第j个参考图像像素之间的接近度相关。例如,相似度的平滑成本可以与参考图像的帧内的、第i个和第j个参考图像像素的像素位置之间的距离的指数函数或其他函数相关,所述第i个和第j个参考图像像素分别对应于第i个和第j个输出图像像素。另外地或替代地,对于比彼此远离指定距离更远或根据一些其他标准的第i个和第j个像素位置对,相似度的平滑成本可以为零。可以选择像素相似矩阵的元素使得第i个和第j个过滤的输出图像像素的确定的值之间的相似度的平滑成本与输出图像像素和/或对应的参考图像像素的一些其他属性或多个属性(例如,参考图像像素的亮度、色彩或一些其他属性或多个属性之间的相似度)相关。
在一些示例中,像素相似矩阵可以是稀疏的,也就是说,像素相似矩阵的许多元素可以是零。例如,像素相似矩阵的少于一半的元素可以是零,或者像素相似矩阵的少于百分之一的元素可以是零。例如,对于不相邻的第i个和第j个像素位置对,相似度的平滑成本可为零。在这种情景下,可以是稀疏矩阵,因为与不相邻的第i个和第j个像素对对应的将是零。
可以选择像素相似矩阵的元素使得第i个和第j个过滤的输出图像像素的确定的值之间的相似度的平滑成本与对应于过滤后的输出图像像素的参考图像像素的空间上的相似度(例如,与参考图像的帧中的像素位置之间的接近度)和色彩空间上的相似度(例如,与参考图像像素的色彩的亮度-色度(LUV)或一些其他色彩空间表示中的接近度)相关。例如,元素可以是在五维XYLUV(例如,在参考图像的帧内的位置(XY)和色彩空间表示(LUV))空间(例如,与双边过滤器相关)中定义的参考图像像素的所有对之间的高斯势:
其中,分别表示在参考图像的帧内的第i个和第j个参考图像像素的水平位置,并且分别表示在参考图像的帧内的第i个和第j个参考图像像素的垂直位置。此外,表示第i个参考图像像素的亮度值和色度值,并且表示第j个参考图像像素的亮度值和色度值。是参考图像的帧内位置的缩放因子,是亮度的缩放因子,并且是色度的缩放因子。
当基于参考图像的像素的色彩变量以及像素位置计算时,这种类型的像素相似矩阵定义(考虑到参考图像的帧内的空间相似度和色彩空间相似度)可以促进相对于参考图像的内容的边缘保持的图像处理。
注意,可以确定、指定或以其他方式使用其他像素相似矩阵元素以确定成本函数或以其他方式基于一些输入目标阵列来确定过滤的输出图像的像素的确定的值的集合。例如,可以基于在参考图像的帧内的XY空间中定义的高斯势来确定元素(例如,使用类似于上面的等式的等式,但省略了指数内右边的项)。预期其他示例函数、函数类、函数或其他方法来确定和/或指定像素相似矩阵的元素
可以选择像素相似矩阵的元素使得关联因子的矩阵(即其第[i,j]个元素是的矩阵)是对称的和双随机的(bistochastic)(即,使得并且使得的每一行总和为1,并且的每一列总和为1)。对称和双随机像素相似矩阵的使用可以允许对平滑项进行更有效的计算(例如,通过允许一个或多个矩阵乘法、或例如使用成本函数执行梯度下降来确定过滤的输出图像的像素的值的集合中所涉及的其他过程的一些简化)。
这样的双随机像素相似矩阵可以以多种方式从非双随机像素相似矩阵(例如,从按照上面所示的定义的W)确定,例如通过在前和在后乘以一个或多个对角矩阵。可以直接确定这样的对角矩阵,例如,通过确定与过滤的输出图像和/或参考图像的像素一样多的矩阵对角线上元素(on-diagonal elements)。替代地,在将像素相似矩阵映射到顶点空间之后,可以如下所述在这样的顶点空间中确定这样的对角矩阵。
IV.在顶点空间中嵌入立体图像数据和示例顶点空间
基于输入目标阵列确定高分辨率的过滤的输出图像的每个像素的值可能在计算上是昂贵的(例如,由于图像中的像素的总数大致以图像分辨率的平方而缩放)。对于给定数量的过滤的输出图像像素(或图像的其他点或其他特征),确定像素值(例如,深度图、参考图像的每个像素的对象识别、黑白参考图像的色彩重叠)所需的计算量(例如,处理器资源(例如,MIPS)、处理器时间)可以以指数方式与像素的数量相关。因此,在有限的计算资源和/或有限的可用计算时间(例如,移动设备的有限的计算资源)的情况下,基于更大和/或更详细的参考图像和/或目标阵列来确定这样的像素色彩、温度、对象类别、深度、距离、色彩或其他值的集合可能难以处理。
作为响应,可以采用多种方法来简化确定过滤的输出图像的像素的任务。在一些示例中,可以在第一步骤中对输出图像的像素的子集(例如,对图像内的像素位置的规则间隔的子集)确定像素值,并且可以对过滤的输出图像中的不在第一步中确定其值的像素的子集中的像素来内插所确定的值。在一些示例中,可以对参考图像进行分块(blocked)或以其他方式进行分区(例如,以规则块或者根据与参考图像内的确定的对象对应的区域,例如通过一些图像处理),并且可以根据它们在参考图像的帧内的位置将各个目标值(例如,通过加权组合)应用到各个块或其他分区。然后可以将对特定分区确定的值应用于分区内的所有输出图像像素。
通过将问题映射到较少数量的代表性变量,可以简化确定过滤的输出图像的像素的问题。例如,参考图像的像素可以与顶点空间中的顶点相关联,其中顶点的数量明显少于像素的数量(例如,小于一半、小于百分之一、小于千分之一)。关联可以基于在顶点空间内参考图像像素的像素位置和色彩与顶点之间的接近度或其他关系(例如,给定参考图像像素可以与顶点空间内的最近顶点相关联,或者与顶点集合(例如,定义顶点空间中的包围给定像素的形状的顶点的顶点集合)相关联)。顶点空间可具有空间维度(例如,与参考图像内的参考图像像素的像素位置的水平和垂直维度对应的维度)以及一个或多个色彩空间维度(例如,与亮度、色彩、红色、绿色或蓝色强度、照度、色度或色彩空间内的参考图像像素的其他属性对应的维度)。
参考图像的像素与顶点空间中的顶点之间的关联可以由关联矩阵来定义。这样的关联矩阵可以具有与关联的像素和顶点对相对应的非零元素、以及与不关联的像素和顶点对相对应的零值元素。该关联可以在顶点和与其相关联的多个参考图像像素之间和/或在像素和与其相关联的多个顶点之间具有相等的加权(例如,特定的像素可以与在顶点空间中其最接近的三个顶点相等地关联)。替代地,可以根据例如在顶点空间中的顶点和与其相关联的每个参考图像像素之间和/或在像素和与其相关联的每个顶点之间的相对接近度来对该关联进行加权。
由于每个参考像素可能与少数顶点相关联(例如,每个像素可仅与顶点空间中最接近其的单个顶点相关联),所以关联的许多元素可以是零。例如,关联矩阵的少于一半的元素可以是零。在一些示例中,关联矩阵的少于百分之一的元素可以是零。在又一示例中,关联矩阵的少于千分之一的元素可以是零。关联矩阵的非零元素的比例可以与像素和顶点的相对数量、可以与单个顶点关联的顶点的数量(或反之亦然)和/或将像素与顶点关联的方法有关。
基于参考图像的像素和顶点空间中的顶点之间的关联,通过转换与参考图像有关的处理(例如,基于目标值的输入阵列以边缘保持的方式生成过滤的输出图像)使得可以对顶点执行该处理(其数量可以实质上少于参考图像的像素的数量和/或过滤的输出图像的像素的数量),该处理可以简化(例如,以更少的时间和/或通过使用更少的计算资源来执行)。然后,可以使用对顶点执行的处理的结果(例如,对每个顶点确定的顶点拟合值)来生成过滤的输出图像(例如,通过基于与特定的过滤的输出图像像素和/或与其相对应的参考图像像素相关联的顶点的确定的顶点拟合值,内插或以其他方式计算过滤的输出图像的特定像素的值)。
为了说明参考图像的像素与顶点空间中顶点的关联,图4A描绘了示例一维图像400a(即,像素的一维条带)。图像400a的像素(包括给定像素410a)定义相应的亮度(即,图像400a的各个像素定义一维(例如,黑白)色彩空间内的色彩)。
图4B描绘了示例二维顶点空间400b。顶点空间400b包括与图像400a的一维“帧”内的图像400a的像素位置对应的空间维度(标记为“像素位置”,如水平轴所示)。顶点空间400b另外包括色彩空间维度(标记为“色彩”,如垂直轴所示;较亮的像素位于顶点空间400b内的较高位置)。顶点空间400b内的图像400a的像素位置由十字指示。多个顶点位于顶点空间400b中。顶点的位置在顶点空间400b中以三角形图案规则地间隔开,并由点指示。顶点空间400b内的顶点可被描述为位于规则2-单形体(即三角形)的规则堆叠(或棋盘格)图案的顶点的位置处。
可根据像素和顶点空间400b内的顶点的相对位置的接近度或一些其他属性,将图像400a的像素与顶点空间400b内的顶点相关联。这种关联可以由关联矩阵来定义。在像素与顶点的第一关联方案中,顶点空间400b中的给定像素410b(与图像400a的给定像素410a对应)可与三个顶点420相关联,所述三个顶点420定义包围顶点空间的包含给定像素410b的区域(或者更一般地说,维度空间等于顶点空间的维数)的封闭三角形425。在这样的示例关联中,给定像素410b可以与三个顶点420中的每一个均等地关联,或者可以根据一些函数或其他考虑以加权方式关联。例如,可根据顶点空间400b中的给定像素410b与各个顶点之间的相应距离(例如,根据给定像素410b的在三个顶点420的顶点之间的一些重心分区或其他分配),将给定像素410b与三个顶点420的各个顶点相关联。
类似地,封闭三角形425内的其他像素可以与三个顶点420相关联(尽管例如根据顶点空间400b内的第一和第二像素的位置的差,425内的第一像素和三个顶点420之间的关联的加权可能不同于425内的第二像素和三个顶点420之间的关联的加权)。为了进一步示出这个示例关联方案,示例顶点450可以与第一示例空间475内的像素相关联。第一示例空间475可以被定义为包括第一示例顶点450作为顶点的封闭三角形集合。
作为另一关联方案的示例,给定像素410b可以与多个顶点中离给定像素最近的最近顶点430相关联。在这样的关联方案下,顶点空间中的位于封闭空间435内的像素也可以与第一顶点相关联。封闭空间435可以被定义为顶点空间400b内的空间的子集,在该空间的子集内最近顶点430是多个顶点中的最近顶点。为了进一步示出这个示例关联方案,示例顶点450可以与第二示例空间465内的像素460相关联。第二示例空间465可以被定义为顶点空间400b内的空间的子集,在该空间的子集内示例顶点450是多个顶点中的最近顶点。
注意,如图4B所示,顶点空间400b中的多个顶点的位置意味着顶点空间中的顶点位置的图案的非限制示例。如所示,顶点位于顶点空间400b中的等边、规则平铺的三角形(即规则的二维单形体)的顶点处。根据应用,顶点可以替代地位于顶点空间400b中的一些其他规则或不规则的图案中。
例如,顶点可位于顶点空间400b中规则平铺的不规则三角形(例如,等腰三角形、不等边三角形)的顶点处。三角形的平铺的主轴的角度可以平行于顶点空间400b的一个或多个维度的轴线中的一个(例如,平行于“像素位置”轴,如图4B所示)或者可以有一些其他的方向。顶点可以在顶点空间400b中的一个或多个第一方向上具有第一“有效分辨率”(即,图案重复的周期)(例如,顶点空间的空间维度中的第一重复周期),并在一个或多个第二方向上具有第二“有效分辨率”(例如,顶点空间的色彩空间维度中的第二重复周期)。预期顶点空间中的多个顶点与像素相关联的其他图案、比例和方案。
为了说明图像的像素与顶点空间中的顶点的关联的另一实例,图5A描绘示例一维图像500a(即,像素的一维条带)。图像500a的像素(包括给定像素510a)定义了相应的亮度(即,图像500a的各个像素定义了一维(例如黑白)色彩空间内的色彩)。
图5B描绘了示例二维顶点空间500b。顶点空间500b包括与图像500a的一维“帧”内的图像500a的像素的位置相对应的空间维度(标记为“像素位置”,如水平轴所示)。顶点空间500b另外包括色彩空间维度(标记为“色彩”,如垂直轴所示;较亮的像素位于顶点空间500b内的较高位置)。顶点空间500b内的图像500a的像素的位置由十字指示。多个顶点位于顶点空间500b中。顶点的位置在顶点空间500b中以正方形图案规则地间隔开,并由点指示。顶点空间500b内的顶点可被描述为处于规则正方形(即,2维超立方体)的规则堆叠(或棋盘格)图案的顶点的位置处。
可根据顶点空间500b内的像素和顶点的相对位置的接近度或一些其他属性,将图像500a的像素与顶点空间500b内的顶点相关联。在像素与顶点的第一关联方案中,顶点空间500b中的给定像素510b(对应于图像500a的给定像素510a)可以与四个顶点520相关联,所述四个顶点520定义包围顶点空间的包含给定像素510b的区域(或者更一般地说,维度空间等于顶点空间的维数)的封闭正方形525。在这样的示例关联中,给定像素510b可以与四个顶点520中的每一个均等地关联,或者可以根据一些函数或其他考虑以加权方式关联。例如,可根据顶点空间500b中的给定像素510b与各个顶点之间的相应距离(例如,根据给定像素510b的在四个顶点520的顶点之间的一些重心分区或其他分配),将给定像素510b与四个顶点520的各个顶点相关联。
类似地,封闭正方形525内的其他像素可以与四个顶点520相关联(尽管例如根据第一和第二像素的顶点空间500b内的位置的差,525内的第一像素和四个顶点520之间的关联的加权可以不同于525内的第二像素和四个顶点520之间的关联的加权)。为了进一步示出这个示例关联方案,示例顶点550可以与第一示例空间575内的像素相关联。第一示例空间575可以被定义为包括第一示例顶点550作为顶点的封闭正方形集合。
作为另一关联方案的示例,给定像素510b可以与多个顶点中与给定像素最近的最近顶点530相关联。在这样的关联方案下,顶点空间中的位于封闭空间535内的像素也可以与第一顶点相关联。封闭空间535可以被定义为顶点空间500b内的空间的子集,在该空间的子集内最近顶点530是多个顶点中最近的顶点。为了进一步示出这个示例关联方案,示例顶点550可以与第二示例空间565内的像素560相关联。第二示例空间565可以被定义为顶点空间500b内的空间的子集,在该空间的子集内示例顶点550是多个顶点中最近的顶点。
注意,如图5B所示,顶点空间500b中的多个顶点的位置意味着顶点空间中的顶点位置的图案的非限制示例。如所示,顶点位于顶点空间500b中规则的规律平铺的矩形(即正方形或规则的2维超立方体)的顶点处。根据应用,顶点可以替代地位于顶点空间500b中的一些其他规则或不规则的图案中。
例如,顶点可以位于顶点空间500b中的规则平铺的不规则超矩形的顶点处。正方形、矩形、超立方体、超矩形或其他堆叠、平铺或以其他方式棋盘格形状的平铺的主轴的角度可以平行于顶点空间500b的一个或多个维度的轴线中的一个(例如,平行于“像素位置”轴和“色彩”轴,如图5B所示),或者可以具有一些其他方向。顶点可以在顶点空间500b中的一个或多个第一方向上具有第一“有效分辨率”(即,图案重复周期)(例如,顶点空间的空间维度中的第一重复周期)以及在一个或多个第二方向上具有第二“有效分辨率”(例如,顶点空间的色彩空间维度中的第二重复周期)。预期顶点空间中的多个顶点与像素关联的其他图案、比例和方案。
注意,分别如图4A、图5A、图4B和图5B所示的一维图像400a、500a和对应的二维顶点空间400b、500b旨在作为用于将图像(例如,包括像素的二维阵列的二维图像)与顶点空间(例如,具有等于对应图像的维数的空间维数、以及对应于图像的像素的色彩空间信息的一个或更多色彩空间维度的顶点空间)中的顶点相关联的方法的说明示例。在一个示例中,二维黑白(或灰度级)图像的像素可以与三维顶点空间中的顶点相关联,该三维顶点空间具有对应于图像的两个维度(例如,水平和垂直方向)的两个空间维度、以及与由图像的像素定义的亮度或其他灰度级信息对应的第三色彩空间维度。
在另一示例中,二维色彩(例如,RGB、LUV、YPBPR、YCBCR)图像的像素位置可以与五维顶点空间中的顶点相关联,该五维顶点空间具有与图像的两个维度(例如,水平方向和垂直方向)对应的两个空间维度、以及与由图像的像素定义的色彩空间信息(例如,红色、绿色和蓝色的色彩强度)对应的三个色彩空间维度。预期顶点空间的额外或更少的空间(例如,与1维线图像或3维体积或全息图像对应)和/或色彩空间(例如,与高光谱彩色通道对应、与极化信息通道对应)维度。
此外,请注意,顶点内的顶点的位置不需要是规则的,而是可以根据应用根据任何规则或不规则的方案来指定。例如,可以根据高斯或其他KD树的质心、由初始的规则间隔的顶点集合的贪婪式整合(greedy consolidation)得到的顶点集合、或根据顶点空间内的一些其他间隔和/或顶点空间的分区,定位顶点。
通常,图像(例如,参考图像、过滤的输出图像)的像素和/或其信息(例如,亮度、色彩、深度值、温度、物体识别信息)可以基于对应的关联顶点和/或其信息(例如,顶点亮度等)的加权组合。具体而言,对于基于确定的顶点拟合值确定过滤的输出图像的像素的情况,过滤的输出图像的像素(例如,这样的像素的亮度或其他变量)可以通过以下方式与确定的顶点拟合值相关:
x=STy
其中x是确定的过滤的输出图像像素的向量,y是确定的顶点拟合值的向量,并且ST是其元素定义各个顶点与参考图像的各个像素之间(并且因此在各个顶点与过滤的输出图像的各个像素之间,其分别对应于参考图像的像素)的关联的关联矩阵。
因此,对于对应于不与特定像素相关联的顶点的所有列,对应于(参考图像或过滤的输出图像的)相应特定像素的ST的特定行是零。对于与特定像素相关联的所有列,特定行具有非零值。这种非零值可以与特定像素和对应顶点之间的关联程度有关。可以使用这种非零值来确定特定像素相对于对应的确定的顶点拟合值的亮度、色彩、深度、视差、对象身份或其他值。替代地,如果参考图像的各个像素与顶点空间中的所有顶点相关到一定的非零程度,则ST可以是完全矩阵(即,可以基本上不具有非零条目)。
相对于本文其他地方(例如,图4A、4B、5A和5B中)所描述的像素与顶点之间的示例关联,ST的特定行的非零元素可对应于与对应于特定行的像素相关联的顶点,并且非零元素的相对值可以对应于特定像素与关联顶点的关系的相对加权(例如,根据特定像素与顶点之间的相对距离,例如根据一些重心加权)。
如本文其他地方所指出的,参考图像的像素可以与顶点空间中的各个顶点相关联。然后可以使用包含多个目标值的目标阵列以尊重参考图像中存在的边缘的方式来生成过滤的输出图像。过滤的输出图像的每个像素可以对应于参考图像的相应像素。此外,例如根据参考图像的帧内的参考图像的像素的像素位置、和参考图像的帧内的目标值的像素位置,目标阵列的每个目标值可以对应于参考图像的一个或多个像素。例如,每个目标值可以对应于参考图像的相应像素。因此,每个目标值可以与对应于目标值的参考图像的像素所关联的顶点相关联。
然后可以根据参考图像的像素与顶点空间中的顶点之间的关联将成本函数或根据过滤的输出图像的像素定义的其他问题映射到顶点上。例如,包括损耗项和相似项的成本函数可以被映射到顶点拟合值的线性系统上。顶点拟合值的说明线性系统是:
Ay=b
其中y是顶点拟合值的向量,A是顶点成本矩阵,并且b是顶点成本向量。一旦(例如,通过预处理的共轭梯度方法或通过一些其他方法)确定了y,则可以使用关联矩阵基于所确定的顶点拟合值y来确定过滤的输出图像的像素。
顶点成本矩阵可以基于(1)参考图像的像素和与其相关联的各个顶点之间的关联(例如,关联矩阵S)以及(2)参考图像的像素对之间的相似度而确定。参考图像的特定像素对之间的相似度可以与特定像素对的像素位置之间的距离、以及色彩空间维度(例如,1维黑白色彩空间、三维RGB色彩空间)中特定像素对的像素位置之间的距离相关。这种相似度可以采取如本文其他地方所述的像素相似矩阵的元素的形式。
顶点成本矩阵可以通过基于定义参考图像的像素与顶点空间中的顶点之间的关联的关联矩阵因式分解(factorizing)参考图像的像素相似矩阵来确定。一个说明性的示例是:
其中W是其元素与参考图像的像素对之间的相似度相关的像素相似矩阵,S是关联矩阵,并且是顶点相似矩阵。可以通过因式分解W来确定,使得上面的等式近似相等。这样的因式分解可包括生成多个稀疏矩阵,其相乘得到然后可以基于顶点相似矩阵来确定顶点成本矩阵A。
如上所述,求解像素相似矩阵是双随机的问题可能是优选的。直接从大的非双随机矩阵生成双随机矩阵可能在计算上花费很大;相反,可以利用顶点空间来简化问题。在示例中,可以确定一个或多个对角矩阵,使得当关联矩阵和对角矩阵应用于顶点相似矩阵时,得到归一化的双随机像素相似矩阵。可以基于关于问题结构的一些合理假设或者根据一些其他的考虑选择确定这些对角矩阵的具体形式和方法来简化结果的计算,提供分析或计算上易处理的求解,简化结果的计算。为了说明这一点,可以确定对角矩阵,使得:
其中是像素相似矩阵W的双随机版本,Dm是第一对角矩阵,并且Dn是第二对角矩阵。基于关联矩阵的行和来确定第一对角矩阵Dm:
并且确定Dn,使得通过将关联矩阵和对角矩阵应用于顶点相似矩阵(例如,如上所示)而产生的是双随机的。
这样的Dn可以通过多种方式来确定。一种有效的方法是使用迭代方法多次(例如,直到对角元素收敛)更新Dn的对角元素的估计。在具体示例中,该方法包括基于关联矩阵的行和来确定第一归一化向量,如:
其中m是第一归一化向量。然后可以将第二归一化向量设置为初始值,例如:
其中n是第二归一化向量。然后多次更新第二归一化向量,例如,直到向量收敛或直到预指定次数。该更新可以包括取向量的每个元素的平方根,其基于(a)第一归一化向量和第二归一化向量的逐元素的乘积以及(b)顶点相似矩阵和第二归一化向量的乘积之间的比率,例如:
其中°是Hadamard积或逐元素乘法运算符。然后可以从第二归一化向量确定第二对角矩阵,例如:
Dn=diag(n)
顶点成本矩阵可以基于顶点相似矩阵以及第一和第二对角矩阵来确定为,例如:
其中c是对应于目标阵列t的各个目标值的置信度值的置信度阵列。在一些示例中,上面的等式可能缺少置信度阵列(例如,置信度阵列可以用1的向量代替)。
可以基于(1)目标值与顶点之间的关联以及(2)目标值的集合来确定顶点成本向量b。在存在对应于目标阵列的置信度阵列的示例中,顶点成本向量可以基于目标阵列和置信度阵列的逐元素的乘积来确定。例如:
b=λS(c°t)
为了加速顶点拟合值的线性系统的求解,可以选择顶点拟合值的初始猜测以使损耗项最小化,例如:
顶点空间中的多个顶点中的顶点的数量可以基于参考图像的一个或多个属性。此外,可以基于参考图像来指定和/或确定顶点空间内的多个顶点的位置。顶点空间中的顶点的位置可以跨越(span)顶点空间中由参考图像的像素跨越的体积。例如,顶点空间可以是三维的(例如,参考图像可以是黑白的),并且顶点可以跨越与参考图像的帧的范围对应的顶点空间的两个空间维度中、以及与由参考图像的像素表示的亮度值的范围对应的一维色彩空间维度中的体积。例如,顶点空间中的顶点的位置可以跨越顶点空间中由参考图像的像素跨越的体积(例如,三维顶点空间可以包括跨越与参考图像的帧的范围对应的顶点空间的两个空间维度中、以及与由参考图像的像素表示的亮度值的范围对应的一维色彩空间维度中的体积的顶点)。
可以独立于参考图像来确定顶点空间中的顶点的数量。例如,对于具有一定范围的分辨率和/或像素数量的图像,可以为执行本文描述的方法来指定多个顶点。顶点的指定数量可以是用于执行本文描述的方法的参考图像的像素的数量的很小一部分(例如,小于1%)。
可以重新使用用于确定顶点拟合值的线性系统的元素或从参考图像确定的其他信息来生成多个过滤的输出图像。例如,可以基于各个不同的输入目标阵列和/或置信度阵列(例如,包含表示参考图像的不同像素是否代表相应不同类型的对象的目标值的目标阵列)来生成对应于参考图像中的各个不同类型的对象的身份的多个过滤的输出图像。在另一示例中,单个黑白参考图像可以根据表示参考图像中各自不同的指定色彩和/或色彩位置的多个不同目标阵列来着色。这可以包括连接(concatenate)顶点成本向量和各个不同的顶点拟合值向量以求解整个线性系统,例如:
AY=B
其中A是顶点成本矩阵(至少基于(1)顶点和参考图像的像素之间的关联和(2)参考图像的像素之间的相似度),Y是包括对应于各个不同的目标阵列的顶点拟合值向量的连接的矩阵,并且B是包括与各个不同的目标阵列对应并且基于其所确定的顶点成本向量的连接的矩阵。整个线性系统可以用各种方式来求解,例如通过QR因式分解来求解。
V.替代的误差函数
上述方法针对输入目标阵列的目标值与所生成的过滤的输出图像的对应像素之间的差使用二次成本函数,例如:
ci(xi-ti)2
然而,本文描述的方法可以应用于使用替代成本函数来确定过滤的输出图像,例如:
ρ(xi-ti)2
其中ρ是通用成本函数(例如,对于异常值比二次成本函数更有弹性的鲁棒成本函数)。为了将本文描述的方法应用于这样的任意成本函数,可以使用关于过滤的输出图像的像素的值的特定初始估计,以使关于估计的整体问题线性化(包括(一个或多个)一般成本函数)。该线性化可以包括基于初始输出图像估计来确定初始置信度阵列。然后可以使用初始置信度阵列来执行该方法以确定过滤的输出图像的后续估计。然后关于过滤的输出图像的后续估计的整体问题可以线性化并且迭代该方法,直到过滤的输出图像收敛、直到已经执行了指定数量的这样的迭代、或者直到已经满足一些其他标准。
VI.反向传播
在一些示例中,可以基于算法或其他自动化方法来确定目标阵列(要使用参考图像从目标阵列中生成过滤的输出图像)。例如,目标阵列可以表示描述参考图像中的对象的信息(例如,语义分割数据、位于参考图像中的对象的类别)。这样的目标阵列可以基于参考图像使用神经网络、模式匹配或一些其他方法来确定。
在这样的示例中,将从这样的目标阵列生成的过滤的输出图像与已知的“真实的”或者另外期望的对象图像(objective image)(例如,优选目标阵列导致的图像)进行比较可能是有益的。这样的对象图像可以是例如描述参考图像内的特定对象或特定类型的对象的位置和范围的人为生成的图像。此外,基于过滤的输出图像和对象图像之间的差来更新可能是有益的,无论使用什么算法或处理来生成目标阵列。这样的更新可能需要确定关于过滤的输出图像中的误差与目标阵列的特定目标值中的误差之间的关系的误差梯度或其他信息。
为了确定关于目标阵列的这种误差信息,可以确定过滤的输出图像和对象图像之间的差,并用于生成更新的目标阵列。可以基于关联矩阵、向量成本矩阵以及所确定的对象图像和过滤的输出图像之间的差,使用反向传播来确定这种更新的目标阵列。
这种反向传播可以通过仅针对向量成本矩阵的对角线上元素计算导数而简化。例如,在关于过滤的输出图像定义了损耗函数的情况下,目标阵列的偏导数是:
并且置信度阵列的偏导数(如果存在的话)是:
其中
并且
其中是用于生成过滤的输出图像的像素的确定的顶点拟合值的向量。
VII.示例方法
图6是示出根据示例实施例的方法600的流程图。方法600可以通过包括相机或一些其他设备的设备(包括但不限于相机设备、移动设备、便携式设备、蜂窝电话、膝上型计算机、平板计算机、服务器、云计算系统、机器人、无人机、自驾驶汽车和自动驾驶车辆)来实现。
替代地,方法600可以由与这样的相机设备分开并且被配置为与这样的相机设备通信和/或访问存储在存储器(例如,存储卡、紧凑盘、硬盘驱动器、云存储服务、远程服务器(例如,与互联网通信的服务器)的存储器)中的图像的设备或系统来实现。在任何情况下,可以实现方法600以相对于一个或多个参考图像以边缘保持方式基于输入目标阵列生成过滤的输出图像。
方法600可以包括由计算系统获得(1)由相机设备捕获的参考图像;以及(2)目标阵列(610)。参考图像包括多个像素,这些像素在参考图像中具有各自的像素位置和各自的色彩变量。目标阵列包括分别对应于参考图像的像素的目标值。获得参考图像和/或目标阵列可以包括操作第一和/或第二相机以捕获场景的相应第一和/或第二图像。另外地或替代地,目标阵列可以由红外相机、深度传感器或一些其他(一个或多个)感测元件生成。获得参考图像和/或目标阵列可以包括从存储器(例如,从存储卡、硬盘驱动器、紧凑盘)或从远程系统(例如,从可通过互联网访问的远程服务器)访问信息。
此外,获得参考图像和/或目标阵列可以包括访问和/或生成与真实世界场景不相关的图像或其他信息。例如,它可以包括访问由仿真、计算机图形或其他计算处理生成的信息。预期用于生成、捕获、过滤、修改或以其他方式获得参考图像和/或目标阵列的其他方法或方法的组合。
方法600另外包括由计算系统将参考图像的像素与顶点空间中的各个顶点相关联(620)。顶点空间包括两个空间维度和至少一个色彩空间维度。参考图像的像素与各个顶点之间的关联由包括少于一半的值是非零的多个值的关联矩阵来定义。在一些示例中,关联矩阵的少于百分之一或少于千分之一的值是非零的。
将参考图像的每个像素与一个或多个顶点相关联可以基于顶点空间内像素的像素位置与顶点之间的接近度或一些其他关系(例如,给定像素可以与顶点空间内的最近顶点或顶点集合(例如,定义顶点空间中包围给定像素位置的形状的顶点的顶点集合)相关联)。顶点空间可具有空间维度(例如,对应于参考图像的水平维度和垂直维度的维度)以及一个或多个色彩空间维度(例如对应于亮度、色彩、红色、绿色或蓝色强度或者色彩空间内的像素位置的其他属性的维度)。
在一些示例中,参考图像可以是彩色图像(例如,可以是其像素定义例如红-绿-蓝(RGB色彩空间)的色彩空间中的色彩的图像),并且顶点空间可以具有对应于参考图像的帧内的像素位置的两个空间维度、和对应于色彩空间中由参考图像的多个像素定义的色彩的位置的另外三个色彩空间维度。对于其像素定义更多或更少色彩信息(例如,其像素定义二维色彩空间(例如,红绿色彩空间)或多于三维色彩空间(例如,被定义为表示高光谱成像仪的检测器的输出的色彩空间)中的色彩)或其他信息(例如,图像中的光的偏振的方向和/或程度)的图像,可以使用更高维或低维顶点空间。
顶点空间中的顶点的位置可以跨越顶点空间中由参考图像的像素跨越的的体积。例如,顶点空间可以是三维的(例如,第一图像可以是黑白的),并且顶点可以跨越顶点空间的与参考图像的帧的范围对应的两个空间维度中以及与由参考图像的像素表示的亮度值的范围相对应的一维色彩空间维度中的体积。
此外,顶点空间中的顶点的位置可以规则地间隔开(例如,以提供对应于参考图像的顶点空间的体积的统一的“采样”)。例如,顶点可以位于顶点空间中棋盘格化和/或规则重复的三维或更多维形状的阵列或者根据一些其他规则图案的顶点处。在一些示例中,顶点可以位于矩形阵列中(即,沿着多维空间中的正交方向规则间隔开、在超矩形的棋盘格化阵列的顶点处)。在一些示例中,顶点可以位于三角形阵列中(即,在顶点空间中规则棋盘格化的三角形、四面体或更高维单形体的顶点处)。
方法600另外包括通过计算系统将目标值与各个顶点相关联,参考图像的与目标值相对应的像素与所述各个顶点是关联的(630)。这可以包括根据关联矩阵将目标值与顶点相关联。
方法600另外包括由计算系统基于(1)参考图像的像素和各个顶点之间的关联,以及(2)参考图像的像素对之间的相似度来确定顶点成本矩阵(640)。参考图像的特定像素对之间的相似度与参考图像中的特定像素对的像素位置之间的距离、以及参考图像的特定像素对的色彩变量之间的色彩空间维度上的距离相关。顶点成本矩阵可以基于顶点相似矩阵,其本身基于(1)参考图像的像素与各个顶点之间的关联、以及(2)其元素与参考图像的特定像素对之间的相似度相关的像素相似矩阵确定。这样的顶点相似矩阵可以通过使用关联矩阵因式分解像素相似矩阵来确定。通过计算系统来确定顶点成本矩阵可以包括附加的或替代的步骤。
方法600另外包括由计算系统通过求解由顶点成本矩阵和顶点成本向量定义的线性系统来确定顶点的各个顶点拟合值(650)。这可包括执行梯度下降或一些其他方法来求解线性系统。由计算系统确定各个顶点拟合值可以包括例如通过确定目标阵列和置信度阵列的逐元素乘积,基于(1)目标值与各个顶点之间的关联;以及(2)目标值的集合来确定顶点成本向量,所述置信度阵列对应于关于目标阵列的目标值的质量的方差、不确定性或其他信息。由计算系统确定各个顶点拟合值可以包括附加的或替代的步骤。
方法600另外包括由计算系统生成过滤的输出图像(660)。过滤的输出图像包括分别对应于参考图像的像素的像素。生成过滤的输出图像包括使用与参考图像的像素相关联的顶点的所确定的顶点拟合值作为基础,确定过滤的输出图像的各个像素。生成过滤的输出图像可以附加地包括执行一些另外的步骤,例如,将过滤的输出图像的所确定的色彩信息应用于参考图像,以便生成参考图像的着色版本。生成过滤的输出图像可以包括附加的或替代的步骤。
方法600可以包括除上面列出的那些(例如,610、620、630、640、650、660)之外的附加步骤或元件。例如,方法600可以包括基于参考图像中的像素的确定的视差值来确定深度信息(例如,参考图像中的每个像素的像素深度值)。如此,过滤的输出图像可被用来生成场景的深度图。然后可以使用深度图来帮助确定场景的焦点设置、确定场景中的对象的位置、映射场景、导航场景(例如,操作机器人或其他自主设备移动穿过场景)和/或可以用于其他目的。方法600可以包括基于过滤的输出图像对参考图像执行图像处理。例如,可以对于参考图像的对应于对象的区域(即参考图像内的像素的区域)选择性地执行图像处理过程(例如,模糊、过滤、对比度的增加或减小、色彩平衡的改变、滤色器的应用),所述对象具有确定的深度值、色彩、对象描述或对应于指定值范围的其他属性。
方法600可以包括基于所生成的过滤的输出图像的其他应用或处理。使用方法600确定的信息(例如,确定的过滤的输出图像像素和/或顶点拟合值)的应用包括但不限于增强现实(例如,提供深度提示、辅助导航),图像的着色或过滤、图像的语义分割、深度超分辨率或者较低分辨率图像或其他传感器数据的向上采样。预期方法600的其他附加和/或替代元件和/或应用。
VIII.说明性系统
可以由计算系统执行本文描述的计算功能(例如,用于基于参考图像从目标阵列生成过滤的输出图像的功能)。这样的计算系统可以被集成到诸如移动电话、平板计算机、膝上型计算机、服务器、云计算网络和/或可编程逻辑控制器的计算设备中或采取上述形式。为了示例的目的,图7是示出了可以包括相机组件724的示例计算设备700的一些组件的简化框图。相机组件724可以包括多个相机,诸如可见光相机、红外相机或其他类型的相机。
作为示例而非限制,计算设备700可以是蜂窝移动电话(例如,智能电话)、静物照相机、摄像机、传真机、计算机(诸如桌面式计算机、笔记本、平板计算机、或手持式计算机)、个人数字助理(PDA)、家庭自动化组件、数字视频记录仪(DVR)、数字电视、遥控器、可穿戴计算设备、机器人、无人机、自主车辆、或者可以配备有一些图像捕获和/或图像处理能力的一些其他类型的设备。应当理解的是,计算设备700可以表示诸如数字相机的物理相机设备,相机应用以软件操作的特定物理硬件平台、或者被配置为执行图像捕获和/或处理功能的硬件和软件的其他组合。
如图7所示,计算设备700可以包括通信接口702、用户接口704、处理器706、数据存储装置708和相机组件724,所有这些可以通过系统总线、网络或其他连接机制710通信地链接在一起。
通信接口702可用于允许计算设备700使用电、磁、电磁、光或其他信号的模拟或数字调制与其他设备、接入网络和/或传输网络进行通信。因此,通信接口702可以促进电路切换和/或分组切换通信,诸如普通老式电话服务(POTS)通信和/或互联网协议(IP)或其他分组化通信。例如,通信接口702可以包括被布置用于与无线电接入网络或接入点进行无线通信的芯片组和天线。而且,通信接口702可以采取有线接口的形式或包括有线接口,诸如以太网、通用串行总线(USB)或高清晰度多媒体接口(HDMI)端口。通信接口702还可以采取无线接口的形式或包括无线接口,诸如Wifi、全球定位系统(GPS)或广域无线接口(例如,WiMAX或3GPP长期演进(LTE))。然而,可以在通信接口702上使用其他形式的物理层接口和其他类型的标准或专有通信协议。此外,通信接口702可以包括多个物理通信接口(例如,Wifi接口、接口和广域无线接口)。
在一些实施例中,通信接口702可用于允许计算设备700与其他设备、远程服务器、接入网络和/或传输网络进行通信。例如,通信接口702可以用于经由与远程服务器或其他远程设备或系统的通信来访问参考图像、目标阵列和/或置信度阵列,以便允许计算设备700基于访问的参考图像、置信度阵列和/或目标阵列生成过滤的输出图像。例如,远程系统可以是包含含有一个或多个参考图像和/或目标阵列的存储器的服务器。附加地或替代地,远程系统可以包括被配置为生成参考图像、目标阵列或可以如上所述由计算设备700访问的其他信息的相机或其他图像捕获设备。这样的过滤的输出图像可以由计算设备700根据本文描述的方法或通过一些其他方法来生成。
用户接口704可以用于允许计算设备700与用户交互,例如从用户接收输入和/或向用户提供输出。因此,用户接口704可以包括诸如小键盘、键盘、触敏或存在敏感的面板、计算机鼠标、轨迹球、操纵杆、麦克风等的输入组件。用户接口704还可以包括一个或多个输出组件,诸如显示屏,其例如可以与存在敏感的面板组合。显示屏可以基于CRT、LCD和/或LED技术,或者现在已知或以后开发的其他技术。用户接口704还可以被配置为经由扬声器、扬声器插孔、音频输出端口、音频输出设备、耳机和/或其他类似设备来生成(一种或多种)可听输出。
在一些实施例中,用户接口704可以包括充当由计算设备700支持的静物照相机和/或摄像机功能(例如,用于使用相机组件724捕获的图像的功能)的取景器的显示器。另外,用户接口704可以包括便于相机组件724的配置和聚焦以及使用相机组件724捕获图像的一个或多个按钮、开关、旋钮和/或拨号盘。有可能的是,这些按钮、开关、旋钮和/或拨号盘中的一些或全部被实现为触摸或存在敏感面板上的功能。用户接口704可以被配置成允许用户输入目标阵列信息,例如手动指定参考图像的区域的色彩。
处理器706可以包括一个或多个通用处理器(例如,微处理器)和/或一个或多个专用处理器,例如数字信号处理器(DSP)、图形处理单元(GPU)、浮点单元(FPU)、网络处理器或专用集成电路(ASIC)。在一些情况下,专用处理器可能能够进行图像处理、图像对准和合并图像以及其他应用或功能。数据存储装置708可以包括一个或多个易失性和/或非易失性存储组件,诸如磁、光、闪速或有机存储装置,并且可以整体地或部分地与处理器706集成。数据存储装置708可以包括可移除的和/或不可移除的组件。
处理器706能够执行存储在数据存储装置708中的程序指令718(例如,编译的或非编译的程序逻辑和/或机器代码)以执行本文所述的各种功能。因此,数据存储装置708可以包括其上存储有程序指令的非暂时性计算机可读介质,程序指令在由计算设备700执行时使计算设备700执行本说明书和/或附图中公开的任何方法、处理或功能。处理器706执行程序指令718可导致处理器706使用数据712。
举例来说,程序指令718可以包括安装在计算设备700上的操作系统722(例如,操作系统内核、(一个或多个)设备驱动器和/或其他模块)以及一个或多个应用程序720(例如,相机功能、地址簿、电子邮件、网页浏览、社交网络、和/或游戏应用)。类似地,数据712可以包括操作系统数据716和应用数据714。操作系统数据716主要可以被操作系统722访问,并且应用数据714主要可以被一个或多个应用程序720访问。应用数据714可以被布置在对计算设备700的用户可见或对其隐藏的文件系统中。
应用程序720可以通过一个或多个应用编程接口(API)与操作系统722进行通信。例如,这些API可以有助于例如应用程序720读取和/或写入应用数据714、经由通信接口702发送或接收信息、在用户接口704上接收和/或显示信息、使用相机组件724捕获图像等等。
可以由处理器706的一个或多个组件(例如,由一个或多个数字信号处理器(DSP)、图形处理单元(GPU)、中央处理单元(CPU)、浮点单元(FPU)、专用集成电路(ASIC)、一些其他类型的计算组件、和/或处理器706的一种或多种类型的计算组件的一些组合),从由相机捕获的或由一些其他手段(例如,图像处理、虚拟现实、计算机生成的图像、增强现实、深度传感器)生成的参考图像和/或目标阵列(即,从由例如相机组件724捕获的立体图像对)进行过滤输出图像的确定和/或基于这种过滤的输出图像进行其他信息的确定。例如,可以由处理器706的第一计算元件或第一类型的计算元件(例如,DSP、GPU)来执行与过滤的输出图像的像素的确定相关的某些操作(例如,矩阵乘法、基于确定的顶点拟合值确定像素值),并且可以由处理器706的第二计算元件或第二类型的计算元件(例如,通用CPU)执行与顶点拟合值的确定相关的其他某些操作(例如,在梯度下降操作期间的步长优化来求解线性系统)。
应用程序720可以采取可以通过一个或多个在线应用商店或应用市场(经由例如通信接口702)下载到计算设备700的“应用”的形式。然而,应用程序也可以以其他方式安装在计算设备700上,诸如经由web浏览器或通过计算设备700的物理接口(例如,USB端口)。
相机组件724可以包括但不限于光圈、快门、记录表面(例如,照相胶片和/或图像传感器)、透镜和/或快门。相机组件724可以至少部分地由处理器706执行的软件(例如,通过应用程序720)来控制。此外,相机组件724可以包括多个相机系统,其中每个相机系统包括相应的光圈、快门、记录表面、透镜、图像传感器、处理器和/或其他元件。
当包括多个相机系统时,可能存在在系统之间共享的一些组件以及不共享的其他组件。例如,每个相机可以包括其自己的光圈、透镜和图像传感器,同时共享诸如处理器、数据总线和/或快门按钮的其他组件。作为另一示例,每个相机可以包括其自己的透镜,但是共享相同的图像传感器。替代地,单个相机系统的组件可以仅用于该单个相机系统,并且不与其他相机系统共享。
IX.实验结果
可以实现本文描述的方法,作为对其他方法的替代或添加,以便对输入数据(例如,目标阵列)进行过滤、上采样、着色或以其他方式处理以基于参考图像以边缘保持方式生成输出图像。在许多情况下,本文描述的方法在计算时间、存储器要求或其他考虑方面优于其他方法。此外,虽然某些替代方法可以是依赖于上下文的(例如,特别适用于处理表示某些类型的场景或内容的图像),但是本文描述的方法相对于方法所可应用到的参考图像和/或目标阵列的细节是相对不可知的。因此,本文描述的方法代表了对图像处理领域中的计算机和计算机相关技术的改进。
本文的方法可以用于上采样使用消费级深度传感器生成的噪声深度图。本文描述的方法相对于其他现有技术的方法通常改善基于深度传感器输出生成的超分辨深度图的质量。本文描述的方法通常还大大减少了生成这种提高的分辨率的深度图所需的计算时间,如下所示。
本文描述的方法可以用于基于少量的用户输入或其他外部信息来着色参考图像。本文描述的方法生成与使用Levin等人的方法生成的图像的质量相似的着色图像。然而,本文描述的方法大大减少了生成这种着色图像所需的计算时间,每百万像素需要0.854秒,而Leven等人每百万像素需要80.99秒。
本文描述的方法可以用于分配类别标签(例如,以执行语义分割任务)或以其他方式对于参考图像的每个像素生成描述参考图像中的对象的信息。这样的确定可以基于描述参考图像中的在参考图像的少量位置或像素处(例如,以比参考图像更低的分辨率)的对象的输入数据(例如,目标阵列)和/或对于参考图像的每个像素但是以噪声、不确定或者其他低质量的方式(例如,以跨图像边界平滑和模糊的方式)描述参考图像中的对象的输入数据。
本文描述的方法生成比由其他方法生成的离散分割图像更平滑且近似一样精确的离散分割图像;此外,本文所述的方法比与它们所比较的其他方法明显更快,如下所示。用于生成输入数据的方法包括Chen等人的DeepLab系统的深度卷积神经网络、以及Zheng等人的条件随机场-递归神经网络(CRF-RNN)系统的卷积神经网络组件。本文使用的方法在过滤这样的分割算法的输出的任务中与用于后处理这种语义输出的条件随机场(CRF)方法进行比较。下文中的“CNN+本文的方法”指的是将本文描述的方法应用于Zheng等人的CRF-RNN系统的卷积神经网络组件的输出。
X.结论
以上详细描述参照附图描述了所公开的系统、设备和方法的各种特征和功能。在附图中,除非上下文另外指示,否则相似的符号通常标识相似的组件。在详细描述、附图和权利要求书中描述的说明性实施例并不意味着限制。可以使用其他实施例,并且可以做出其他改变,而不偏离本文提出的主题的范围。将容易理解的是,如本文一般性描述的以及在附图中示出的本公开的方面可以以各种各样的不同配置进行布置、替换、组合、分离和设计,所有这些都被明确地考虑于此。
关于附图中以及如本文所讨论的消息流图、场景和流程图中的任何或全部,每个步骤、块和/或通信可以表示根据示例实施例的信息处理和/或信息传输。替代实施例被包括在这些示例实施例的范围内。在这些替代实施例中,例如,取决于所涉及的功能,被描述为步骤、块、传输、通信、请求、响应和/或消息的功能可以与所示出或讨论的次序颠倒地执行,包括基本上同时或以相反次序。此外,更多或更少的步骤、块和/或功能可以与本文讨论的任何消息流图、场景和流程图一起使用,并且这些消息流图、场景和流程图可以部分或整体相互组合。
表示信息处理的步骤或块可对应于可被配置为执行本文描述的方法或技术的特定逻辑功能的电路。替代地或附加地,表示信息处理的步骤或块可对应于模块、段或程序代码的一部分(包括相关数据)。程序代码可以包括可由处理器执行的一个或多个指令,用于实现该方法或技术中的特定逻辑功能或动作。程序代码和/或相关数据可以存储在任何类型的计算机可读介质上,诸如包括盘驱动器、硬盘驱动器或其他存储介质的存储设备。
计算机可读介质还可以包括诸如短时间段存储数据的计算机可读介质的非暂时性计算机可读介质,比如寄存器存储器、处理器高速缓存和/或随机存取存储器(RAM)。计算机可读介质还可以包括诸如二次或持久长期存储装置的存储程序代码和/或数据更长时间段的非暂时性计算机可读介质,例如比如只读存储器(ROM)、光盘或磁盘、和/或紧凑盘只读存储器(CD-ROM)。计算机可读介质还可以是任何其他易失性或非易失性存储系统。计算机可读介质可以被认为是例如计算机可读存储介质或者有形存储设备。
而且,表示一个或多个信息传输的步骤或块可对应于同一物理设备中的软件和/或硬件模块之间的信息传输。然而,其他信息传输可以在不同物理设备中的软件模块和/或硬件模块之间。
虽然本文已经公开了各个方面和实施例,但是其他方面和实施例对于本领域技术人员将是明显的。本文公开的各个方面和实施例是用于说明的目的,而不意在限制性的,真正的范围由所附权利要求书指示。
Claims (18)
1.一种图像处理方法,包括:
通过计算系统获得(1)由相机设备捕获的参考图像和(2)目标阵列,其中所述参考图像包括多个像素,所述多个像素在参考图像中具有各自的像素位置和各自的色彩变量,其中目标阵列包括目标值,并且其中目标值分别对应于参考图像的像素;
由计算系统将参考图像的像素与顶点空间中的各个顶点关联,其中顶点空间包括两个空间维度和色彩空间维度,其中参考图像的像素与各个顶点之间的关联由关联矩阵定义,其中所述关联矩阵包括多个值,多个值中的少于一半是非零的;
由计算系统将目标值与各个顶点关联,参考图像的与目标值对应的像素是与所述各个顶点关联的;
由所述计算系统基于以下来确定顶点成本矩阵:(1)参考图像的像素和各个顶点之间的关联,以及(2)参考图像的像素对之间的相似度,其中,参考图像的特定像素对之间的相似度与参考图像中的该特定像素对的像素位置之间的距离、以及参考图像的该特定像素对的色彩变量之间的色彩空间维度中的距离相关;
由计算系统通过求解由顶点成本矩阵和顶点成本向量定义的线性系统来确定顶点的各个顶点拟合值,其中,顶点成本向量是基于(1)目标值与各个顶点之间的关联以及(2)目标值集合确定的;以及
由所述计算系统生成过滤的输出图像,其中所述过滤的输出图像包括分别对应于所述参考图像的像素的像素,其中生成过滤的输出图像包括使用与参考图像的像素关联的顶点的所确定的顶点拟合值作为基础来确定过滤的输出图像的各个像素。
2.如权利要求1所述的方法,其中确定所述顶点成本矩阵包括:
确定像素相似矩阵,其中所述像素相似矩阵包括多个值,其中所述像素相似矩阵的所述值分别对应于参考图像的像素对之间的相似度;以及
确定顶点相似矩阵,其中确定所述顶点相似矩阵包括使用所述关联矩阵来将所述像素相似矩阵因式分解;以及
基于顶点相似矩阵确定顶点成本矩阵。
3.如权利要求2所述的方法,其中确定所述顶点成本矩阵还包括:
基于所述关联矩阵的行和来确定第一对角矩阵;以及
确定第二对角矩阵,使得将所述关联矩阵、第一对角矩阵和第二对角矩阵应用于所述顶点相似矩阵导致为双随机的归一化像素相似矩阵;以及
基于顶点相似矩阵、第一对角矩阵和第二对角矩阵来生成顶点成本矩阵。
4.如权利要求3所述的方法,其中确定所述第二对角矩阵包括:
基于所述关联矩阵的行和来确定第一归一化向量;
多次更新第二归一化向量,其中更新所述第二归一化向量包括取基于以下两者之间的比率的向量的每个元素的平方根:(a)所述第一归一化向量与所述第二归一化向量的逐元素乘积;以及(b)顶点相似矩阵和第二归一化向量的乘积;以及
基于第二归一化向量确定第二对角矩阵。
5.如权利要求1所述的方法,其中,所述目标阵列包括与所述参考图像中的像素的数量一样多的目标值,并且还包括:
获得置信度阵列,其中置信度阵列包括置信度值,所述置信度值分别对应于目标阵列的目标值;以及
基于所述目标阵列和置信度阵列的逐元素乘积生成顶点成本向量。
6.如权利要求5所述的方法,还包括:
确定第二置信度阵列,其中第二置信度阵列包括分别对应于目标阵列的目标值的置信度值,其中确定第二置信度阵列的置信度值包括将相应的成本函数应用于过滤的输出图像的像素和目标阵列的目标值之间的相应的差;
基于(1)参考图像的像素和各个顶点之间的关联,(2)参考图像的像素对之间的相似度,以及(3)第二置信度阵列,确定第二顶点成本矩阵;
基于(1)目标值与各个顶点之间的关联以及(2)目标阵列与第二置信度阵列的逐元素乘积,确定第二顶点成本向量;
通过求解由第二顶点成本矩阵和第二顶点成本向量定义的线性系统,确定顶点的各个第二顶点拟合值;以及
生成第二过滤的输出图像,其中第二过滤的输出图像包括分别对应于参考图像的像素的像素,其中生成第二过滤的输出图像包括使用与参考图像的像素关联的顶点的确定的第二顶点拟合值作为基础,来确定第二过滤的输出图像的各个像素。
7.如权利要求1所述的方法,其中所述目标阵列包括比所述参考图像中的像素的数量少的目标值,其中所述目标阵列的目标值表示所述参考图像的区域的色彩,并且其中生成过滤的输出图像包括生成参考图像的着色版本。
8.如权利要求1所述的方法,其中所述目标阵列包括比所述参考图像中的像素的数量少的目标值,其中所述目标阵列的目标值描述由所述参考图像的各个像素表示的对象,并且其中生成过滤的输出图像包括生成描述在参考图像中表示的对象的范围和位置的图像。
9.如权利要求1所述的方法,其中所述目标阵列包括比所述参考图像中的像素的数量少的目标值,其中所述目标阵列的目标值表示具有比所述参考图像低的分辨率的目标图像,并且其中生成过滤的输出图像包括生成目标图像的上采样版本。
10.如权利要求1所述的方法,其中所述目标阵列的目标值表示捕获所述参考图像的所述相机与由所述参考图像的各个像素表示的对象之间的距离,并且其中生成过滤的输出图像包括生成捕获参考图像的相机和由参考图像的各个像素表示的对象之间的距离。
11.如权利要求1所述的方法,其中将所述参考图像的像素与顶点空间中的各个顶点关联包括:确定所述顶点空间中的哪个顶点比任何其他顶点更接近所述参考图像的特定像素。
12.如权利要求1所述的方法,还包括:
确定过滤的输出图像与对象图像之间的差,其中所述对象图像包括分别对应于过滤的输出图像的像素的像素;以及
生成更新的目标阵列,其中更新的目标阵列包括更新的目标值,并且其中更新的目标值分别对应于目标阵列的目标值,其中生成更新的目标阵列包括使用反向传播来基于关联矩阵、顶点成本矩阵、以及过滤的输出图像与对象图像之间的差来确定更新的目标阵列。
13.一种非暂时性计算机可读介质,其中存储有可由计算系统执行以使所述计算系统执行操作的指令,所述操作包括:
获得(1)由相机设备捕获的参考图像和(2)目标阵列,其中所述参考图像包括多个像素,所述多个像素在所述参考图像中具有各自的像素位置和各自的色彩变量,其中目标阵列包括目标值,并且其中目标值分别对应于参考图像的像素;
将参考图像的像素与顶点空间中的各个顶点关联,其中顶点空间包括两个空间维度和色彩空间维度,其中参考图像的像素与各个顶点之间的关联由关联矩阵定义,其中所述关联矩阵包括多个值,多个值中的少于一半是非零的;
将目标值与各个顶点关联,参考图像的与目标值对应的像素是与所述各个顶点关联的;
基于以下来确定顶点成本矩阵:(1)参考图像的像素和各个顶点之间的关联,以及(2)参考图像的像素对之间的相似度,其中,参考图像的特定像素对之间的相似度与参考图像中的该特定像素对的像素位置之间的距离、以及参考图像的该特定像素对的色彩变量之间的色彩空间维度中的距离相关;
通过求解由顶点成本矩阵和顶点成本向量定义的线性系统来确定顶点的各个顶点拟合值,其中,顶点成本向量是基于(1)目标值与各个顶点之间的关联以及(2)目标值集合确定的;以及
生成过滤的输出图像,其中所述过滤的输出图像包括分别对应于所述参考图像的像素的像素,其中生成所述过滤的输出图像包括使用与所述参考图像的像素关联的顶点的所确定的顶点拟合值作为基础来确定过滤的输出图像的各个像素。
14.如权利要求13所述的非暂时性计算机可读介质,其中确定所述顶点成本矩阵包括:
确定像素相似矩阵,其中所述像素相似矩阵包括多个值,其中所述像素相似矩阵的所述值分别对应于所述参考图像的像素对之间的相似度;以及
确定顶点相似矩阵,其中确定所述顶点相似矩阵包括使用所述关联矩阵来将所述像素相似矩阵因式分解;以及
基于顶点相似矩阵确定顶点成本矩阵。
15.如权利要求14所述的非暂时性计算机可读介质,其中确定所述顶点成本矩阵还包括:
基于所述关联矩阵的行和来确定第一对角矩阵;以及
确定第二对角矩阵,使得将所述关联矩阵、第一对角矩阵和第二对角矩阵应用于所述顶点相似矩阵导致归一化像素相似矩阵,其中所述归一化像素相似矩阵是双随机矩阵;以及
基于顶点相似矩阵、第一对角矩阵和第二对角矩阵来生成顶点成本矩阵。
16.如权利要求15所述的非暂时性计算机可读介质,其中确定所述第二对角矩阵包括:
基于所述关联矩阵的行和来确定第一归一化向量;
多次更新第二归一化向量,其中更新所述第二归一化向量包括取基于以下两者之间的比率的向量的每个元素的平方根:(a)所述第一归一化向量与第二归一化向量的逐元素乘积;以及(b)顶点相似矩阵和第二归一化向量的乘积;以及
基于第二归一化向量确定第二对角矩阵。
17.如权利要求13所述的非暂时性计算机可读介质,其中,所述目标阵列包括与所述参考图像中的像素的数量一样多的目标值,并且其中所述操作还包括:
获得置信度阵列,其中置信度阵列包括置信度值,并且其中所述置信度值分别对应于目标阵列的目标值;以及
基于所述目标阵列和置信度阵列的逐元素乘积生成所述顶点成本向量。
18.如权利要求13所述的非暂时性计算机可读介质,其中所述目标阵列包括比所述参考图像中的像素的数量少的目标值,其中所述目标阵列的目标值表示具有比所述参考图像低的分辨率的目标图像,并且其中生成过滤的输出图像包括生成目标图像的上采样版本。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562251608P | 2015-11-05 | 2015-11-05 | |
US62/251,608 | 2015-11-05 | ||
PCT/US2016/060733 WO2017079702A1 (en) | 2015-11-05 | 2016-11-04 | Edge-aware bilateral image processing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108140130A CN108140130A (zh) | 2018-06-08 |
CN108140130B true CN108140130B (zh) | 2019-10-18 |
Family
ID=58663129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680045790.2A Active CN108140130B (zh) | 2015-11-05 | 2016-11-04 | 图像处理方法及非暂时性计算机可读介质 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9892496B2 (zh) |
EP (1) | EP3295426B1 (zh) |
JP (1) | JP6431245B1 (zh) |
KR (1) | KR101936919B1 (zh) |
CN (1) | CN108140130B (zh) |
AU (1) | AU2016349518B2 (zh) |
CA (1) | CA2995857C (zh) |
WO (1) | WO2017079702A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10769453B2 (en) | 2017-05-16 | 2020-09-08 | Samsung Electronics Co., Ltd. | Electronic device and method of controlling operation of vehicle |
US9789880B2 (en) | 2016-03-03 | 2017-10-17 | Uber Technologies, Inc. | Sensory stimulation system for an autonomous vehicle |
US10093252B2 (en) | 2016-04-01 | 2018-10-09 | Uber Technologies, Inc. | Transport facilitation system for configuring a service vehicle for a user |
US10012990B2 (en) | 2016-04-01 | 2018-07-03 | Uber Technologies, Inc. | Optimizing timing for configuring an autonomous vehicle |
US9989645B2 (en) | 2016-04-01 | 2018-06-05 | Uber Technologies, Inc. | Utilizing accelerometer data to configure an autonomous vehicle for a user |
US10255816B2 (en) | 2016-04-27 | 2019-04-09 | Uber Technologies, Inc. | Transport vehicle configuration for impaired riders |
US10043316B2 (en) | 2016-08-05 | 2018-08-07 | Uber Technologies, Inc. | Virtual reality experience for a vehicle |
US9922466B2 (en) * | 2016-08-05 | 2018-03-20 | Uber Technologies, Inc. | Virtual reality experience for a vehicle |
US10466714B2 (en) * | 2016-09-01 | 2019-11-05 | Ford Global Technologies, Llc | Depth map estimation with stereo images |
JP6904684B2 (ja) * | 2016-11-04 | 2021-07-21 | キヤノン株式会社 | 画像処理装置、画像処理方法、およびプログラム |
WO2018112707A1 (zh) * | 2016-12-19 | 2018-06-28 | 深圳前海达闼云端智能科技有限公司 | 障碍物检测方法及装置 |
US10621446B2 (en) * | 2016-12-22 | 2020-04-14 | Texas Instruments Incorporated | Handling perspective magnification in optical flow processing |
US10803323B2 (en) | 2017-05-16 | 2020-10-13 | Samsung Electronics Co., Ltd. | Electronic device and method of detecting driving event of vehicle |
KR102472767B1 (ko) | 2017-09-14 | 2022-12-01 | 삼성전자주식회사 | 신뢰도에 기초하여 깊이 맵을 산출하는 방법 및 장치 |
JP7071088B2 (ja) * | 2017-10-24 | 2022-05-18 | キヤノン株式会社 | 距離検出装置、撮像装置、距離検出方法、及びプログラム |
EP3685346A4 (en) * | 2017-11-09 | 2020-09-02 | SZ DJI Technology Co., Ltd. | SYSTEM AND PROCEDURE FOR ADJUSTING THE DYNAMIC IMAGE AREA |
US10748036B2 (en) * | 2017-11-21 | 2020-08-18 | Nvidia Corporation | Training a neural network to predict superpixels using segmentation-aware affinity loss |
US10909377B2 (en) * | 2018-04-18 | 2021-02-02 | Baidu Usa Llc | Tracking objects with multiple cues |
CN109191558B (zh) * | 2018-07-27 | 2020-12-08 | 深圳市商汤科技有限公司 | 图像打光方法和装置 |
CN109191392B (zh) * | 2018-08-09 | 2021-06-04 | 复旦大学 | 一种语义分割驱动的图像超分辨率重构方法 |
US10719737B2 (en) | 2018-08-23 | 2020-07-21 | Denso International America, Inc. | Image classification system for resizing images to maintain aspect ratio information |
US11657322B2 (en) * | 2018-08-30 | 2023-05-23 | Nec Corporation | Method and system for scalable multi-task learning with convex clustering |
US10831702B2 (en) | 2018-09-20 | 2020-11-10 | Ceva D.S.P. Ltd. | Efficient utilization of systolic arrays in computational processing |
EP3627379A1 (en) * | 2018-09-24 | 2020-03-25 | Siemens Aktiengesellschaft | Methods for generating a deep neural net and for localising an object in an input image, deep neural net, computer program product, and computer-readable storage medium |
CN111091592B (zh) * | 2018-10-24 | 2023-08-15 | Oppo广东移动通信有限公司 | 图像处理方法、图像处理装置、电子设备及可读存储介质 |
US20200151576A1 (en) * | 2018-11-08 | 2020-05-14 | Uber Technologies, Inc. | Training adaptable neural networks based on evolvability search |
CN110799983A (zh) * | 2018-11-22 | 2020-02-14 | 深圳市大疆创新科技有限公司 | 一种地图生成方法、设备、飞行器及存储介质 |
TWI697846B (zh) * | 2018-11-26 | 2020-07-01 | 財團法人工業技術研究院 | 物體辨識方法及其裝置 |
US11321865B1 (en) * | 2019-03-15 | 2022-05-03 | Nvidia Corporation | Synthetic infrared image generation for machine learning of gaze estimation |
US11845191B1 (en) * | 2019-06-26 | 2023-12-19 | Amazon Technologies, Inc. | Robotic picking of cuboidal items from a pallet |
CN110636294B (zh) * | 2019-09-27 | 2024-04-09 | 腾讯科技(深圳)有限公司 | 视频解码方法及装置,视频编码方法及装置 |
KR102316165B1 (ko) * | 2019-11-11 | 2021-10-22 | 공주대학교 산학협력단 | 딥러닝 기반 얼굴 인식 시스템의 공격용 이미지 생성 장치 및 방법 |
KR102167808B1 (ko) * | 2020-03-31 | 2020-10-20 | 한밭대학교 산학협력단 | Ar에 적용 가능한 의미적인 분할 방법 및 시스템 |
CN111738370B (zh) * | 2020-08-25 | 2020-11-17 | 湖南大学 | 本质流形结构的图像特征融合与聚类协同表达方法及系统 |
CN112233150A (zh) * | 2020-09-09 | 2021-01-15 | 北京迈格威科技有限公司 | 图像处理和虚化方法、装置、电子设备及存储介质 |
CN112164017B (zh) * | 2020-09-27 | 2023-11-17 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种基于深度学习的偏振彩色化方法 |
CN112668579A (zh) * | 2020-12-24 | 2021-04-16 | 西安电子科技大学 | 基于自适应亲和力和类别分配的弱监督语义分割方法 |
CN114305349B (zh) * | 2022-03-14 | 2022-05-27 | 天津大学四川创新研究院 | 利用猪只感温变色耳标的温度检测方法及系统 |
CN113658200B (zh) * | 2021-07-29 | 2024-01-02 | 东北大学 | 基于自适应特征融合的边缘感知图像语义分割方法 |
US12008766B2 (en) * | 2022-07-26 | 2024-06-11 | Behr Process Corporation | Image processing to detect edges, walls, and surfaces for a virtual painting application |
US20240119655A1 (en) * | 2022-10-05 | 2024-04-11 | Sony Interactive Entertainment LLC | Auto-generated shader masks and parameters |
US11967019B1 (en) * | 2022-10-24 | 2024-04-23 | Varjo Technologies Oy | Depth maps and 3D reconstruction with segmentation masks |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101855912A (zh) * | 2007-11-14 | 2010-10-06 | 微软公司 | 用于图像变换过程的自适应滤波 |
CN103150720A (zh) * | 2011-12-07 | 2013-06-12 | 邓禄普体育用品株式会社 | 轮廓校正方法和系统以及轮廓提取方法和系统 |
CN104969258A (zh) * | 2013-01-24 | 2015-10-07 | 汤姆逊许可公司 | 插值方法和对应设备 |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5729691A (en) | 1995-09-29 | 1998-03-17 | Intel Corporation | Two-stage transform for video signals |
US6043909A (en) | 1996-02-26 | 2000-03-28 | Imagicolor Corporation | System for distributing and controlling color reproduction at multiple sites |
US6075905A (en) | 1996-07-17 | 2000-06-13 | Sarnoff Corporation | Method and apparatus for mosaic image construction |
US6046763A (en) | 1997-04-11 | 2000-04-04 | Nec Research Institute, Inc. | Maximum flow method for stereo correspondence |
US6044181A (en) | 1997-08-01 | 2000-03-28 | Microsoft Corporation | Focal length estimation method and apparatus for construction of panoramic mosaic images |
US6009190A (en) | 1997-08-01 | 1999-12-28 | Microsoft Corporation | Texture map construction method and apparatus for displaying panoramic image mosaics |
US6097854A (en) | 1997-08-01 | 2000-08-01 | Microsoft Corporation | Image mosaic construction system and apparatus with patch-based alignment, global block adjustment and pair-wise motion-based local warping |
US6018349A (en) | 1997-08-01 | 2000-01-25 | Microsoft Corporation | Patch-based alignment method and apparatus for construction of image mosaics |
US5986668A (en) | 1997-08-01 | 1999-11-16 | Microsoft Corporation | Deghosting method and apparatus for construction of image mosaics |
US5987164A (en) | 1997-08-01 | 1999-11-16 | Microsoft Corporation | Block adjustment method and apparatus for construction of image mosaics |
US6157747A (en) | 1997-08-01 | 2000-12-05 | Microsoft Corporation | 3-dimensional image rotation method and apparatus for producing image mosaics |
US6411953B1 (en) | 1999-01-25 | 2002-06-25 | Lucent Technologies Inc. | Retrieval and matching of color patterns based on a predetermined vocabulary and grammar |
US7200264B2 (en) | 2002-04-10 | 2007-04-03 | Hewlett-Packard Development Company, L.P. | White point estimation using color by convolution |
US7113649B2 (en) | 2002-06-24 | 2006-09-26 | Eastman Kodak Company | Enhancing the tonal characteristics of digital images |
US6987511B2 (en) * | 2002-10-17 | 2006-01-17 | International Business Machines Corporation | Linear anisotrophic mesh filtering |
US7365879B2 (en) * | 2004-05-13 | 2008-04-29 | Eastman Kodak Company | Determining sets of n-dimensional colorant control signals |
US7127104B2 (en) * | 2004-07-07 | 2006-10-24 | The Regents Of The University Of California | Vectorized image segmentation via trixel agglomeration |
US7248968B2 (en) | 2004-10-29 | 2007-07-24 | Deere & Company | Obstacle detection using stereo vision |
WO2007017834A2 (en) | 2005-08-09 | 2007-02-15 | Koninklijke Philips Electronics N.V. | Disparity value generator |
WO2007063352A1 (en) | 2005-11-30 | 2007-06-07 | Telecom Italia S.P.A. | Method for determining scattered disparity fields in stereo vision |
US7587099B2 (en) | 2006-01-27 | 2009-09-08 | Microsoft Corporation | Region-based image denoising |
US8155454B2 (en) | 2006-07-20 | 2012-04-10 | Qualcomm Incorporated | Method and apparatus for encoder assisted post-processing |
US8253752B2 (en) | 2006-07-20 | 2012-08-28 | Qualcomm Incorporated | Method and apparatus for encoder assisted pre-processing |
JP5034820B2 (ja) * | 2007-09-21 | 2012-09-26 | セイコーエプソン株式会社 | 画像処理装置、画像処理プログラム |
US8179402B2 (en) | 2007-10-31 | 2012-05-15 | Canon Kabushiki Kaisha | Generating colorimetric profiles from spectral data and user input |
US8059908B2 (en) * | 2008-04-29 | 2011-11-15 | Sony Corporation | Adaptive area of influence filter for irregular spatial sub-sampled images |
WO2010084460A1 (en) * | 2009-01-20 | 2010-07-29 | Nxp B.V. | Image processing using a bilateral grid |
US8149459B2 (en) | 2009-02-24 | 2012-04-03 | Xerox Corporation | Mapping an out-of-gamut color to a surface of a color gamut |
JP5319415B2 (ja) | 2009-06-22 | 2013-10-16 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
JP5560766B2 (ja) * | 2010-02-25 | 2014-07-30 | 株式会社ニコン | 画像処理装置、撮像装置、及びプログラム |
US8588551B2 (en) | 2010-03-01 | 2013-11-19 | Microsoft Corp. | Multi-image sharpening and denoising using lucky imaging |
JP5087665B2 (ja) * | 2010-08-30 | 2012-12-05 | 株式会社東芝 | 画像処理装置、方法、及びプログラム |
US8849054B2 (en) | 2010-12-23 | 2014-09-30 | Samsung Electronics Co., Ltd | Digital image stabilization |
US8233586B1 (en) | 2011-02-17 | 2012-07-31 | Franz Edward Boas | Iterative reduction of artifacts in computed tomography images using forward projection and an edge-preserving blur filter |
US9007484B2 (en) | 2011-10-12 | 2015-04-14 | Apple Inc. | Alleviating dominant color failure in automatic white balance using histogram trimming |
WO2013078479A1 (en) | 2011-11-23 | 2013-05-30 | Thomson Licensing | Method and system for three dimensional visualization of disparity maps |
US8866927B2 (en) | 2012-12-13 | 2014-10-21 | Google Inc. | Determining an image capture payload burst structure based on a metering image capture sweep |
US8902336B2 (en) * | 2013-01-30 | 2014-12-02 | Altasens, Inc. | Dynamic, local edge preserving defect pixel correction for image sensors with spatially arranged exposures |
US9275446B2 (en) * | 2013-10-15 | 2016-03-01 | Samsung Electronics Co., Ltd. | Large radius edge-preserving low-pass filtering |
US9571819B1 (en) * | 2014-09-16 | 2017-02-14 | Google Inc. | Efficient dense stereo computation |
US9336582B1 (en) | 2015-04-17 | 2016-05-10 | Google Inc. | Convolutional color correction |
-
2016
- 2016-11-04 KR KR1020187004724A patent/KR101936919B1/ko active IP Right Grant
- 2016-11-04 JP JP2018507680A patent/JP6431245B1/ja active Active
- 2016-11-04 WO PCT/US2016/060733 patent/WO2017079702A1/en active Application Filing
- 2016-11-04 AU AU2016349518A patent/AU2016349518B2/en active Active
- 2016-11-04 US US15/344,501 patent/US9892496B2/en active Active
- 2016-11-04 CA CA2995857A patent/CA2995857C/en active Active
- 2016-11-04 EP EP16863134.9A patent/EP3295426B1/en active Active
- 2016-11-04 CN CN201680045790.2A patent/CN108140130B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101855912A (zh) * | 2007-11-14 | 2010-10-06 | 微软公司 | 用于图像变换过程的自适应滤波 |
CN103150720A (zh) * | 2011-12-07 | 2013-06-12 | 邓禄普体育用品株式会社 | 轮廓校正方法和系统以及轮廓提取方法和系统 |
CN104969258A (zh) * | 2013-01-24 | 2015-10-07 | 汤姆逊许可公司 | 插值方法和对应设备 |
Also Published As
Publication number | Publication date |
---|---|
KR101936919B1 (ko) | 2019-04-09 |
EP3295426A4 (en) | 2018-08-15 |
EP3295426B1 (en) | 2019-07-17 |
EP3295426A1 (en) | 2018-03-21 |
WO2017079702A1 (en) | 2017-05-11 |
AU2016349518B2 (en) | 2018-06-07 |
AU2016349518A1 (en) | 2018-01-04 |
JP2018537742A (ja) | 2018-12-20 |
JP6431245B1 (ja) | 2018-11-28 |
US20170132769A1 (en) | 2017-05-11 |
CN108140130A (zh) | 2018-06-08 |
KR20180023011A (ko) | 2018-03-06 |
CA2995857C (en) | 2019-02-12 |
US9892496B2 (en) | 2018-02-13 |
CA2995857A1 (en) | 2017-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108140130B (zh) | 图像处理方法及非暂时性计算机可读介质 | |
US9736451B1 (en) | Efficient dense stereo computation | |
US10846870B2 (en) | Joint training technique for depth map generation | |
WO2016074620A1 (en) | Parallax tolerant video stitching with spatial-temporal localized warping and seam finding | |
EP3698323A1 (en) | Depth from motion for augmented reality for handheld user devices | |
US11113832B2 (en) | Aperture supervision for single-view depth prediction | |
US9865032B2 (en) | Focal length warping | |
JP2021502626A (ja) | 両眼画像の深度推定方法及び装置、機器、プログラム並びに媒体 | |
Liu et al. | Image de-hazing from the perspective of noise filtering | |
CN108876706A (zh) | 根据全景图像的缩略图生成 | |
US20230351724A1 (en) | Systems and Methods for Object Detection Including Pose and Size Estimation | |
Luo et al. | Bokeh rendering from defocus estimation | |
EP4055556B1 (en) | Defocus blur removal and depth estimation using dual-pixel image data | |
CN107967709B (zh) | 通过使用透视图或者传送的改进的对象涂绘 | |
Wu et al. | Multi-aperture stereo reconstruction for artificial compound eye with cross image belief propagation | |
Yue et al. | High-dimensional camera shake removal with given depth map | |
Nguyen et al. | Accuracy and robustness evaluation in stereo matching | |
Yang et al. | An adaptive cost aggregation method based on bilateral filter and canny edge detector with segmented area for stereo matching | |
Xu et al. | Depth estimation algorithm based on data-driven approach and depth cues for stereo conversion in three-dimensional displays | |
Zhang et al. | Multimodal region-consistent saliency based on foreground and background priors for indoor scene | |
Jang et al. | An adaptive camera-selection algorithm to acquire higher-quality images | |
EP4154182A1 (en) | Generation of machine learning predictions using multiple domain data sets | |
CN116912533A (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 |