CN116250002A - 具有软分层和深度感知的修复的单幅图像3d摄影 - Google Patents
具有软分层和深度感知的修复的单幅图像3d摄影 Download PDFInfo
- Publication number
- CN116250002A CN116250002A CN202180063773.2A CN202180063773A CN116250002A CN 116250002 A CN116250002 A CN 116250002A CN 202180063773 A CN202180063773 A CN 202180063773A CN 116250002 A CN116250002 A CN 116250002A
- Authority
- CN
- China
- Prior art keywords
- image
- foreground
- depth
- repair
- background
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000008439 repair process Effects 0.000 claims abstract description 184
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000012549 training Methods 0.000 claims description 95
- 230000008859 change Effects 0.000 claims description 20
- 230000011218 segmentation Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 14
- 230000000873 masking effect Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 description 61
- 241000282320 Panthera leo Species 0.000 description 20
- 238000004891 communication Methods 0.000 description 17
- 238000012360 testing method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 210000004209 hair Anatomy 0.000 description 6
- 241000282819 Giraffa Species 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000010339 dilation Effects 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 244000025254 Cannabis sativa Species 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000005670 electromagnetic radiation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 241000282818 Giraffidae Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002329 infrared spectrum Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 231100000289 photo-effect Toxicity 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- 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
- 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/73—Deblurring; Sharpening
- G06T5/75—Unsharp masking
-
- 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/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/261—Image signal generators with monoscopic-to-stereoscopic image conversion
-
- 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/10004—Still image; Photographic 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/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
一种方法包括:基于具有初始视点的图像来确定深度图像;以及确定前景可见性映射,该前景可见性映射包括与深度图像的深度梯度成反比的可见性值。该方法还包括基于深度图像来确定指示图像的像素将通过视点调整而被去除遮蔽的可能性的背景去除遮蔽掩模。该方法另外包括基于图像、深度图像和背景去除遮蔽掩模来生成修复图像和修复深度图像。该方法进一步包括:分别基于深度图像和修复深度图像来生成图像的第一三维(3D)表示和修复图像的第二3D表示;以及通过基于前景可见性映射将第一3D表示与第二3D表示组合来生成具有经调整的视点的经修改的图像。
Description
背景技术
机器学习模型可以用于处理包括图像的各种类型的数据,以生成各种期望输出。机器学习模型的改进允许模型更快地执行数据的处理,以利用更少计算资源用于处理,和/或生成具有相对更高质量的输出。
发明内容
一种三维(3D)照片系统可以被配置成基于单目图像来生成模拟由单目图像表示的场景的不同视点的3D观看效果/体验。具体地,可以基于单目图像来生成深度图像。软前景可见性映射可以基于深度图像来生成,并且可以指示单目图像的不同部分对背景层的透明度。可以认为单目图像形成前景层的部分。软背景去除遮蔽掩模可以基于深度图像来生成,并且可以指示由于视点改变而被去除遮蔽的单目图像的不同背景区域的可能性。修复模型可以使用软背景去除遮蔽掩模来修复单目图像和深度图像的去除遮蔽背景区域,从而生成背景层。前景层和背景层可以以3D表示,并且这些3D表示可以从新视点投影以生成新前景图像和新背景图像。新前景图像和新背景图像可以根据如重新投影到新视点中的软前景可见性映射来组合,从而生成具有场景的新视点的经修改的图像。
在第一示例实施例中,一种方法包括:获得具有初始视点的单目图像,以及基于该单目图像来确定包括多个像素的深度图像。深度图像的每个相应像素可以具有对应深度值。该方法还包括:针对深度图像的每个相应像素确定与深度图像的相应像素相关联的对应深度梯度,以及确定前景可见性映射,该前景可见性映射包括针对深度图像的每个相应像素的与对应深度梯度成反比的可见性值。该方法另外包括基于深度图像来确定背景去除遮蔽掩模,该背景去除遮蔽掩模包括针对深度图像的每个相应像素的去除遮蔽值,该去除遮蔽值指示单目图像的对应像素将通过初始视点的改变而被去除遮蔽的可能性。该方法还另外包括:(i)通过使用修复模型根据背景去除遮蔽掩模修复单目图像的部分来生成修复图像,以及(ii)通过使用修复模型根据背景去除遮蔽掩模修复深度图像的部分来生成修复深度图像。该方法进一步包括:(i)基于深度图像来生成单目图像的第一三维(3D)表示,以及(ii)基于修复深度图像来生成修复图像的第二3D表示。该方法还进一步包括通过根据前景可见性映射将第一3D表示与第二3D表示组合来生成具有不同于初始视点的经调整的视点的经修改的图像。
在第二示例实施例中,一种系统可以包括处理器和非暂时性计算机可读介质,该非暂时性计算机可读介质具有存储在其上的指令,所述指令在由处理器执行时使得该处理器执行根据第一示例实施例的操作。
在第三示例实施例中,一种非暂时性计算机可读介质可以具有存储在其上的指令,所述指令在由计算设备执行时使得该计算设备执行根据第一示例实施例的操作。
在第四示例实施例中,一种系统可以包括用于执行第一示例实施例的操作中的每个操作的各种装置。
这些以及其他实施例、方面、优点和替代方案将通过在适当的情况下参考附图阅读下面的详细描述而对于本领域普通技术人员变得显而易见。此外,本发明内容和本文提供的其它描述和附图旨在仅通过示例的方式说明实施例,并且因此,多种变型是可能的。例如,能够重新布置、组合、分布、消除或以其他方式改变结构元件和过程步骤,同时保持在如要求保护的实施例的范围内。
附图说明
图1图示根据本文描述的示例的计算设备。
图2图示根据本文描述的示例的计算系统。
图3A图示根据本文描述的示例的3D照片系统。
图3B图示根据本文描述的示例的图像和深度图像。
图3C图示根据本文描述的示例的可见性映射和背景去除遮蔽掩模。
图3D图示根据本文描述的示例的修复图像、修复深度图像和经修改的图像。
图4A图示根据本文描述的示例的软前景可见性模型。
图4B图示根据本文描述的示例的图像和深度图像。
图4C图示根据本文描述的示例的基于深度的前景可见性映射和前景阿尔法遮罩。
图4D图示根据本文描述的示例的基于遮罩的前景可见性映射和前景可见性映射。
图5A图示根据本文描述的示例的训练系统。
图5B图示根据本文描述的示例的背景遮蔽掩模。
图6包括根据本文描述的示例的流程图。
图7A、图7B和图7C包括根据本文描述的示例的性能度量的表。
具体实施方式
本文描述了示例方法、设备和系统。应当理解,词语“示例”和“示例性”在本文中用于表示“用作示例、实例或说明”。本文描述为“示例”、“示例性”和/或“说明性”的任何实施例或特征不必被解释为比其它实施例或特征优选或有利,除非这样陈述。因此,在不脱离本文呈现的主题的范围的情况下,能够利用其他实施例并且能够进行其他改变。
因此,本文描述的示例实施例并不意味着限制。将容易理解的是,如本文中一般性描述的以及在附图中示出的本公开的方面能够以各种各样的不同配置来布置、替换、组合、分离和设计。
此外,除非上下文另有建议,否则在每个图中示出的特征可以彼此组合使用。因此,附图通常应当被视为一个或多个总体实施例的组成方面,应当理解,并非所有示出的特征对于每个实施例都是必要的。
另外,本说明书或权利要求书中的元件、框或步骤的任何列举是为了清楚的目的。因此,这种列举不应被解释为要求或暗示这些元件、框或步骤遵循特定的布置或以特定的顺序执行。除非另有说明,否则附图不是按比例绘制的。
概述
表示来自初始视点的场景的单目图像可以用于生成表示来自经调整的视点的场景的经修改的图像。通过顺序地观看单目图像和/或经修改的图像,可以模拟3D效果,从而创建更丰富和/或更具交互性的观看体验。特别地,可以使用单个单目图像来创建该观看体验,该单目图像在不涉及单视场相机的光学硬件之外的附加光学硬件的情况下被生成。
用于生成具有经修改的视点的图像的一些技术可以依赖于基于硬不连续性将场景分解成两个或更多个层。硬不连续性可以定义两层(例如前景和背景)之间的急剧和/或离散(例如二元)过渡。硬不连续性可能不允许对诸如非常细薄的对象(例如,头发)的一些外观效果的准确建模,从而导致视觉上有瑕疵的或有缺陷的3D效果。用于生成具有经修改的视点的图像的其他技术可以依赖于训练数据集,该数据集包括提供不同视点的地面真实的多视图图像。然而,可能难以获得表示宽范围场景的多视图数据集,并且这些方法因此可能对于还没有被训练数据分布充分表示的分布外场景表现不良。
因此,本文提供了一种3D照片系统,其依赖于软分层形成和深度感知的修复来将给定场景分解成前景层和背景层。这些层可以被组合以从新视点生成经修改的图像。具体地,深度模型可以用于生成对应于单目图像的深度图像,并且深度图像可以用于生成软前景可见性映射和/或软背景去除遮蔽掩模。
软前景可见性映射可以基于深度图像的深度梯度来生成,并且可以指示前景层的不同部分是透明的程度,并且因此允许背景层的对应区域通过前景层被看见。前景可见性映射可以是软的,因为它由软前景可见性函数生成,该软前景可见性函数至少沿着深度梯度的输入值的范围是连续且平滑的。前景层可以由单目图像和前景可见性映射定义。在一些实施方式中,软前景可见性映射还可以是基于前景阿尔法遮罩,其可以改善例如头发和/或皮毛的细薄特征和/或高频特征的表示。
软背景去除遮蔽掩模可以基于深度图像来生成,以量化单目图像的不同像素由于视点的改变而被去除遮蔽的可能性。背景去除遮蔽掩模可以是软的,因为它由软背景去除遮蔽函数生成,该软背景去除遮蔽函数至少沿着深度图像的输入值的范围是连续且平滑的。术语“映射”和“掩模”可以互换地使用以指代灰度图像和/或二元图像。
修复模型可以使用软背景去除遮蔽掩模来修复单目图像和深度图像的可能被去除遮蔽的部分,从而生成背景层。具体地,相同的修复模型可以被训练以修复单目图像和对应深度图像,使得修复的像素值是基于单目图像的颜色/强度值和深度图像的深度值两者。可以在图像和深度数据两者上训练修复模型,使得其被训练以执行深度感知的修复。例如,修复模型可以被训练成并发地修复单目图像和对应深度图像。因此,修复模型可以被配置成通过借用来自其它背景区域的信息而不是借用来自前景区域的信息来修复去除遮蔽背景区域,从而产生视觉上一致的背景层。另外,修复模型可以被配置成在修复模型的单次迭代(例如,单次处理经过)中而不是使用多个迭代经过来修复单目图像和深度图像。
前景层和背景层的相应3D表示可以分别基于深度图像和修复深度图像来生成。可以调整从其观察到这些3D表示的视点,并且可以投影3D表示以生成具有经调整的视点的前景图像和背景图像。然后,可以根据也具有经调整的视点的经修改的前景可见性映射将前景图像和背景图像组合。因此,前景层中的去除遮蔽区域可以基于背景层的对应区域来填充,其中前景和背景之间的过渡包括前景层和背景层两者的融合。
示例计算设备和系统
图1图示示例计算设备100。计算设备100以移动电话的形状因子示出。然而,计算设备100可以替代地被实现为膝上型计算机、平板计算机和/或可穿戴计算设备,以及其他可能性。计算设备100可以包括各种元件,诸如主体102、显示器106以及按钮108和110。计算设备100可以进一步包括一个或多个相机,诸如前置相机104和后置相机112。
前置相机104可以被定位在主体102的在操作时通常面向用户的一侧(例如,与显示器106在同一侧)。后置相机112可以被定位在主体102的与前置相机104相反的一侧上。将相机称为前置和后置是任意的,并且计算设备100可以包括定位在主体102的各种侧上的多个相机。
显示器106能够表示阴极射线管(CRT)显示器、发光二极管(LED)显示器、液晶(LCD)显示器、等离子体显示器、有机发光二极管(OLED)显示器或本领域中已知的任何其它类型的显示器。在一些示例中,显示器106可以显示由前置相机104和/或后置相机112捕获的当前图像的数字表示、能够由这些相机中的一个或多个相机捕获的图像、最近由这些相机中的一个或多个相机捕获的图像、和/或这些图像中的一个或多个图像的修改版本。因此,显示器106可以用作相机的取景器。显示器106还可以支持触摸屏功能,该触摸屏功能能够调整计算设备100的一个或多个方面的设置和/或配置。
前置相机104可以包括图像传感器和诸如镜头的相关联的光学元件。前置相机104可以提供变焦能力或者能够具有固定焦距。在其它示例中,可互换镜头能够与前置相机104一起使用。前置相机104可以具有可变的机械光圈和机械和/或电子快门。前置相机104还能够被配置成捕获静止图像、视频图像或两者。此外,前置相机104能够表示例如单视场、立体视场或多视场相机。后置相机112可以类似地或不同地布置。另外,前置相机104和/或后置相机112中的一个或多个可以是一个或多个相机的阵列。
前置相机104和/或后置相机112中的一个或多个可以包括提供光场以照明目标对象的照明组件或与其相关联。例如,照明组件能够提供目标对象的闪光或恒定照明。照明组件还能够被配置成提供包括结构光、偏振光和具有特定光谱含量的光中的一个或多个的光场。在本文的示例的上下文内,已知的并且用于从对象恢复三维(3D)模型的其他类型的光场是可能的。
计算设备100还可以包括环境光传感器,其可以连续地或不时地确定相机104和/或112能够捕获的场景的环境亮度。在一些实施方式中,环境光传感器能够用于调整显示器106的显示亮度。另外,环境光传感器可以用于确定相机104或112中的一个或多个的曝光长度,或者帮助该确定。
计算设备100能够被配置成使用显示器106和前置相机104和/或后置相机112来捕获目标对象的图像。所捕获的图像能够是多个静止图像或视频流。图像捕获能够通过激活按钮108、按压显示器106上的软键或通过某种其它机制来触发。取决于实施方式,这些图像能够以特定时间间隔被自动地捕获,例如,在按压按钮108时、在目标对象的适当照明条件时、在将计算设备100移动预定距离时、或根据预定捕获时间表。
图2是示出示例计算系统200的一些组件的简化框图。作为示例而非限制,计算系统200可以是蜂窝移动电话(例如,智能电话)、计算机(诸如台式计算机、笔记本计算机、平板计算机或手持式计算机)、家庭自动化组件、数字视频记录器(DVR)、数字电视、遥控器、可穿戴计算设备、游戏控制台、机器人设备、车辆或一些其他类型的设备。计算系统200可以表示例如计算设备100的各方面。
如图2所示,计算系统200可以包括通信接口202、用户接口204、处理器206、数据存储208和相机组件224,所有这些都可以通过系统总线、网络或其他连接机制210通信地链接在一起。计算系统200可以被配备有至少一些图像捕获和/或图像处理能力。应当理解,计算系统200可以表示物理图像处理系统、图像感测和/或处理应用以软件在其上操作的特定物理硬件平台、或者被配置成执行图像捕获和/或处理功能的硬件和软件的其他组合。
通信接口202可以允许计算系统200使用模拟或数字调制与其他设备、接入网络和/或传输网络通信。因此,通信接口202可以促进电路交换和/或分组交换通信,例如普通老式电话服务(POTS)通信和/或因特网协议(IP)或其他分组化通信。例如,通信接口202可以包括被布置用于与无线电接入网络或接入点进行无线通信的芯片组和天线。此外,通信接口202可以采取有线接口的形式或包括有线接口,诸如以太网、通用串行总线(USB)或高清多媒体接口(HDMI)端口。通信接口202还可以采取无线接口的形式或包括无线接口,诸如Wi-Fi、全球定位系统(GPS)或广域无线接口(例如,WiMAX或3GPP长期演进(LTE))。然而,可以在通信接口202上使用其他形式的物理层接口和其他类型的标准或专有通信协议。此外,通信接口202可以包括多个物理通信接口(例如,Wi-Fi接口、/>接口、和广域无线接口)。
用户接口204可以用于允许计算系统200与人类或非人类用户交互,诸如接收来自用户的输入并且向用户提供输出。因此,用户接口204可以包括输入组件,诸如小键盘、键盘、触敏面板、计算机鼠标、跟踪球、操纵杆、麦克风等。用户接口204还可以包括一个或多个输出组件,诸如显示屏,其例如可以与触敏面板组合。显示屏可以是基于CRT、LCD和/或LED技术,或者现在已知或以后开发的其它技术。用户接口204还可以被配置成经由扬声器、扬声器插孔、音频输出端口、音频输出设备、耳机和/或其他类似设备生成可听输出。用户接口204还可以被配置成通过麦克风和/或其他类似设备接收和/或捕获可听话语、噪声和/或信号。
在一些示例中,用户接口204可以包括显示器,其用作由计算系统200支持的静态相机和/或视频相机功能的取景器。另外,用户接口204可以包括一个或多个按钮、开关、旋钮和/或拨盘,其促进相机功能的配置和聚焦以及图像的捕获。这些按钮、开关、旋钮和/或拨盘中的一些或全部可以通过触敏面板来实现。
处理器206可以包括一个或多个通用处理器(例如,微处理器)和/或一个或多个专用处理器(例如,数字信号处理器(DSP)、图形处理单元(GPU)、浮点单元(FPU)、网络处理器或专用集成电路(ASIC)。在一些情况下,专用处理器可以能够进行图像处理、图像对准和合并图像,以及其它可能性。数据存储208可以包括一个或多个易失性和/或非易失性存储组件,诸如磁、光、闪存或有机存储设备,并且可以整体或部分地与处理器206集成。数据存储208可以包括可移除组件和/或不可移除组件。
处理器206可以能够执行存储在数据存储208中的程序指令218(例如,编译的或未编译的程序逻辑和/或机器代码),以执行本文描述的各种功能。因此,数据存储208可以包括非暂时性计算机可读介质,该非暂时性计算机可读介质具有存储在其上的程序指令,该程序指令在由计算系统200执行时使计算系统200执行本说明书和/或附图中公开的方法、过程或操作中的任一个。由处理器206对程序指令218的执行可以导致处理器206使用数据212。
作为示例,程序指令218可以包括操作系统222(例如,操作系统内核、设备驱动器和/或其他模块)以及安装在计算系统200上的一个或多个应用程序220(例如,相机功能、地址簿、电子邮件、Web浏览、社交网络、音频到文本功能、文本翻译功能和/或游戏应用)。类似地,数据212可以包括操作系统数据216和应用数据214。操作系统数据216可以主要可由操作系统222访问,并且应用数据214可以主要可由一个或多个应用程序220访问。应用数据214可以被布置在对计算系统200的用户可见或隐藏的文件系统中。
应用程序220可以通过一个或多个应用编程接口(API)与操作系统222通信。这些API可以促进例如应用程序220读取和/或写入应用数据214、经由通信接口202传输或接收信息、在用户接口204上接收和/或显示信息等。
在一些情况下,应用程序220可以简称为“app”。另外,应用程序220可以可通过一个或多个在线应用商店或应用市场下载到计算系统200。然而,应用程序还能够以其他方式(诸如经由Web浏览器或通过计算系统200上的物理接口(例如,USB端口))安装在计算系统200上。
相机组件224可以包括但不限于光圈、快门、记录表面(例如,摄影胶片和/或图像传感器)、镜头、快门按钮、红外投影器和/或可见光投影器。相机组件224可以包括被配置用于捕获可见光谱(例如,具有380纳米至700纳米的波长的电磁辐射)中的图像的组件和/或被配置用于捕获红外光谱(例如,具有701纳米至1毫米的波长的电磁辐射)中的图像的组件,以及其他可能性。相机组件224可以至少部分地通过由处理器206执行的软件来控制。
示例3D照片系统
图3A图示用于基于单目图像来生成3D照片的示例系统。具体地,3D照片系统300可以被配置成基于图像302来生成经修改的图像370。3D照片系统300可以包括深度模型304、软前景可见性模型308、软背景去除遮蔽函数312、修复模型316、像素去除投影器322和像素投影器330。
图像302可以是包括多个像素的单目/单视场图像,每个像素可以与一个或多个颜色值(例如,红-绿-蓝颜色图像)和/或强度值(例如,灰度图像)相关联。图像302可以具有初始视点,相机已经从该初始视点捕获了该图像。该初始视点可以由初始相机参数表示,该初始相机参数指示相机与由图像302表示的场景的世界参考系之间的空间关系。例如,可以定义世界参考系,使得其最初与相机参考系对准。
经修改的图像370可以表示与来自不同于初始视点的经调整的视点的图像302相同的场景。经调整的视点可以由经调整的相机参数表示,经调整的相机参数不同于初始相机参数并且指示相机与场景中的世界参考系之间的经调整的空间关系。具体地,在经调整的空间关系中,相机参考系可以相对于世界参考系被旋转和/或平移。因此,通过生成经修改的图像370的一个或多个实例并且按顺序观看它们,由于从其观察到由图像302表示的场景的视点的改变,可以实现3D照片效果。这可以通过模拟相机相对于场景的运动来允许图像302在视觉上看起来更丰富和/或更具交互性。
深度模型304可以被配置成基于图像302来生成深度图像306。图像302可以被表示为I∈Rnx3。图像302因此可以具有n个像素,每个像素可以与3个颜色值(例如,红色、绿色和蓝色)相关联。深度图像306可以被表示为D=ΦD(I),其中,D∈Rnx1并且ΦD表示深度模型304。深度图像306可以因此具有n个像素,每个像素可以与对应深度值相关联。深度值可以被缩放到预定范围,诸如0到1(即,D∈[0,1]n)。在一些实施方式中,深度值可以表示视差而不是度量深度,并且可以通过视差的适当反转而被转换为度量深度。深度模型304可以是已经被训练成基于单目图像来生成深度图像的机器学习模型。例如,深度模型304可以表示MiDaS模型,如由Ranflt等创作并且公布为arXiv:1907.01341 v3的标题为“TowardsRobust Monocular Depth Estimation:Mixing Datasets for Zero-shot Cross-datasetTransfer(朝向鲁棒单目深度估计:混合用于零拍摄交叉数据集传输的数据集)”的文章中所讨论的。附加地或替换地,深度模型304可以被配置成使用其他技术和/或算法来生成深度图像306,其中的一些技术和/或算法可以是基于对应于图像302的附加图像数据。
软前景可见性模型308可以被配置成基于深度图像306来生成前景可见性映射310。前景可见性映射310可以替代地被称为软前景可见性映射310。前景可见性映射310可以被表示为A∈Rn。前景可见性映射310因此可以具有n个像素,每个像素可以与对应可见性值(其可以被称为前景可见性值)相关联。可见性值可以选自和/或缩放到预定范围,例如0到1(即,A∈[0,1]n)。在一些情况下,可见性值可以替代地被表示为透明度值,因为前景的可见性和前景的透明度是彼此的互补。即,第n个透明度值可以被表示为因为因此,应当理解,无论何时在本文讨论,可见性值可以根据可见性来显式地表示,或者等效地,根据透明度来隐式地表示。
在示例内,函数可以被认为是“软的”,因为沿着至少特定输入区间,该函数是连续的和/或平滑的。函数可以被认为是“硬的”,因为沿着至少特定输入区间,该函数不是连续的和/或平滑的。当使用软函数而不是使用硬函数来生成映射或掩码时,映射或掩码可以被视为“软的”。特别地,映射或掩模本身可能不是连续的和/或平滑的,但是如果其已经由软函数生成,则仍然可以被认为是“软的”。
软前景可见性模型308可以被配置成基于深度图像306的深度梯度并且可能还基于图像302的前景阿尔法遮罩来生成前景可见性映射310。前景可见性映射310的可见性值可以在表示从图像302的前景特征到图像302的背景特征的过渡的像素位置处相对较低(并且对应透明度值因此可以相对较高)。前景可见性映射310的可见性值可以在不表示从前景特征到背景特征的过渡的像素位置处相对较高(并且对应透明度值因此可以相对较低)。因此,可见性值可以允许至少部分地通过前景的内容看见由于视点的改变而被去除遮蔽的特征。软前景可见性模型308的附加细节在图4A、图4B、图4C和图4D中示出并且参考其来讨论。
软背景去除遮蔽函数312可以被配置成基于深度图像306来生成背景去除遮蔽掩模314。背景去除遮蔽掩模314可以替代地被称为软背景去除遮蔽掩模314。背景去除遮蔽掩码314可以被表示为S∈Rn。背景去除遮蔽掩模314可以因此具有n个像素,每个像素可以与对应去除遮蔽值(其可以被称为背景去除遮蔽值)相关联。去除遮蔽值可以从预定范围中选择和/或缩放到预定范围,诸如0到1(即,S∈[0,1]n)。
背景去除遮蔽掩模314的每个相应去除遮蔽值可以指示图像302的对应像素将通过图像302的初始视点的改变而被去除遮蔽(即,变得可见)的可能性。具体地,如果存在相邻参考像素(xi,yj),使得(i)与给定像素相关联的深度值D(x,y)和(ii)与相邻参考像素相关联的深度值D(xi,yj)之间的深度差大于这些像素的相应位置之间的经缩放的距离则与像素位置(x,y)相关联的给定像素可以由于初始视点的改变而被去除遮蔽。即,如果/>则在位置(x,y)处的给定像素可以被去除遮蔽,其中,ρ是当深度图像306表示视差时可以使用的标量参数以便将视差缩放到度量深度,其中,ρ的值可以基于初始视点与经修改的视点之间的最大假定相机移动来选择,并且其中因此,如果与周围像素相比,对应深度相对较低(或对应视差相对较高),则给定像素可以更可能通过初始视点的改变而被去除遮蔽,因为在视点改变时,更靠近相机的特征将看起来在图像302内比更远的特征移动得更多。
因此,软背景去除遮蔽函数312可以被表示为其中,γ是控制双曲正切函数的陡度的可调整参数,i和j各自被迭代通过对应范围,以将给定像素(x,y)与预定数量的相邻像素(xi,yj)进行比较,并且整流线性单元(ReLU)或泄漏ReLU可以被应用于双曲正切函数的输出以使S(x,y)为正。具体地,(xi,yj)∈N(x,y),其中,N(x,y)表示在位置(x,y)处的给定像素周围的m个像素的固定邻域。m的值和N(x,y)的形状可以基于例如分配给背景去除遮蔽掩模314的确定的计算时间来选择。例如,N(x,y)可以限定正方形、矩形、近似圆形的区域、或者两个或更多扫描线。两个或更多个扫描线可以包括垂直扫描线和/或水平扫描线,该垂直扫描线包括在给定像素(x,y)上方和下方的预定数量的像素,该水平扫描线包括在给定像素(x,y)的右侧和左侧的预定数量的像素。
因此,软背景去除遮蔽函数312可以被配置成:针对深度图像306的每个相应像素确定第一多个差值,其中,第一多个差值中的每个相应差值通过从相应像素的对应深度值D(x,y)中减去(i)位于相应像素的预定像素距离内的对应参考像素的对应深度值D(xi,yj)以及(ii)将相应像素与对应参考像素分开的经缩放的像素数量来确定。此外,软背景去除遮蔽函数312可以被配置成:针对深度图像306的每个相应像素确定第一多个差值中的第一最大差值(即,/>并且通过将双曲正切函数应用于第一最大差值来确定去除遮蔽值S(x,y)。
修复模型316可以被配置成基于图像302、深度图像306和背景去除遮蔽掩模314来生成修复图像318和修复深度图像320。修复图像318可以被表示为并且修复深度图像320可以被表示为/>修复图像318和修复深度图像320因此可以各自具有n个像素。修复模型316可以实现函数/>其中,/>表示修复图像318和修复深度图像320的深度方向级联,并且Θ(·)表示修复模型316。
具体地,修复图像318可以表示根据背景去除遮蔽掩模314修复的图像302,而修复深度图像320可以表示根据背景去除遮蔽掩模314修复的深度图像306。对初始视点的改变可以导致一个或多个前景区域的明显移动,从而导致(由背景去除遮蔽掩模314指示的)对应背景区域变得可见。由于图像302和深度图像306不包含这些背景区域的像素值,因此修复模型316可以用于生成这些像素值。因此,可以认为修复图像318和修复深度图像320形成背景层,而图像302和深度图像306形成前景层。这些层可以被组合作为生成经修改的图像370的一部分。
修复模型316可以被训练成利用匹配图像302中的其它背景区域的值而不是匹配图像302的前景区域的值来修复背景区域。附加地或替换地,修复模型316可以被配置成并行地和/或并发地生成修复图像318和修复深度图像320。例如,修复图像318和修复深度图像320两者都可以通过修复模型316的单次经过/迭代来生成。因此,修复模型316的输出可以是修复图像318和修复深度图像320的深度方向级联,并且这些修复图像中的每一个因此可以由输出的对应一个或多个通道来表示。
修复图像318和修复深度图像320两者都可以是基于图像302和深度图像306,使得修复图像318的修复部分的像素值与修复深度图像320的对应修复部分的深度值一致。即,修复模型316可以被配置成在生成去除遮蔽背景区域的值时考虑深度信息和颜色/强度信息两者,从而得到呈现出深度和颜色/强度的一致性的修复区域。深度信息可以允许修复模型316在图像302的前景区域和背景区域之间进行区分,并且因此选择从其借用用于修复的值的适当部分。因此,修复模型316可以被认为是深度感知的。修复模型316的附加细节在图5A中示出并且参考其来讨论。
像素去除投影器322可以被配置成生成(i)基于前景可见性映射310和深度图像306的前景可见性映射3D表示324,(ii)基于图像302和深度图像306的前景3D表示326,以及(iii)基于修复图像318和修复深度图像320的背景3D表示328。具体地,像素去除投影器322可以被配置成对前景可见性映射310、图像302和修复图像318的每个相应像素进行反投影,以生成对应的3D点来表示3D相机参考系内的相应像素。因此,前景可见性映射3D表示的3D点可以被表示为 前景3D表示326的3D点可以被表示为/>背景3D表示326的3D点可以被表示为/>其中,p表示相应像素,/>表示相应像素的坐标的同质性增强,M表示主点在图像302的中心的内在相机矩阵,D(p)表示与如深度图像306中表示的相应像素相对应的深度值(而不是逆深度值),/>表示与如由修复深度图像320表示的相应像素相对应的深度值(而不是逆深度值),并且相机参考系被假定为与世界参考系对准。由于V(p)=F(p),所以可以针对3D表示324和326确定并且通过3D表示324和326共享3D点的单个集合。
基于被确定为表示前景可见性映射310、图像302和修复图像318的像素的相应3D点,像素去除投影器322可以被配置成连接与邻接像素相对应的3D点,从而针对前景可见性映射310、图像302和修复图像318中的每一个生成相应多边形网格(例如,三角形网格)。具体地,如果对应于给定3D点的像素和对应于一个或多个其他3D点的像素在对应图像内彼此邻接,则该给定3D点可以被连接到该一个或多个其他3D点。
像素去除投影器322还可以被配置成基于对应图像或映像的像素值来对每个相应多边形网格进行纹理化。具体地,前景可见性映射3D表示324的多边形网格可以基于前景可见性映射310的对应值而被纹理化,前景3D表示326的多边形网格可以基于图像302的对应值而被纹理化,并且背景3D表示328的多边形网格可以基于修复图像318的对应值而被纹理化。当针对3D表示324和326确定并且由3D表示324和326共享3D点的单个集合时,3D表示324和326还可以使用包括多个通道的单个多边形网格来表示,其中一个或多个第一通道表示前景可见性映射310的值,并且一个或多个第二通道表示图像302的值。附加地或替换地,3D表示324、326和328可以包括点云、分层表示(例如,分层深度图像)、多平面图像和/或隐式表示(例如,神经辐射场(NeRF))以及其他可能性。
像素投影器330可以被配置成基于3D表示324、326和328来生成经修改的图像370。具体地,像素投影器330可以被配置成执行刚性变换T,该刚性变换T表示相机相对于与初始视点相关联的相机姿态的平移和/或旋转。因此,该刚性变换T可以表示定义了针对经修改的图像370的经调整的视点的经调整的相机参数。例如,刚性变换T可以相对于与图像302的初始视点相关联的世界参考系来表示。T的值可以是可调整的和/或可迭代的,以生成经修改的图像370的多个不同实例,每个实例表示来自对应的经调整的视点的图像302。
具体地,基于刚性变换T,像素投影器330可以被配置成(i)投影前景可见性映射3D表示324以生成经修改的前景可见性映射AT,(ii)投影前景3D表示326以生成前景图像IT,以及(iii)投影背景3D表示328以生成背景图像因此,经修改的前景可见性映射AT可以表示来自经修改的视点的前景可见性映射310,前景图像IT可以表示来自经修改的视点的图像302,并且背景图像可以表示来自经修改的视点的修复图像318。
像素投影器330可以另外被配置成根据经修改的前景可见性映射AT将前景图像IT与背景图像组合。例如,像素投影器330可以被配置成根据/>来生成经修改的图像370,其中,/>表示经修改的图像370。因此,经修改的图像370可以主要是基于其中前景可见性映射310的值相对较高的图像302,并且可以主要是基于前景可见性映射310的值相对较低的修复深度图像320。经修改的可见性映射AT的可见性值可以选自和/或缩放到与前景可见性映射310的值相同的预定范围。例如,经修改的前景可见性映射的值的范围可以从零到预定值(例如,AT∈[0,1]n)。因此,经修改的图像370可以是基于(i)前景图像和经修改的前景可见性映射的第一乘积(即,ATIT)与(ii)背景图像和预定值与经修改的前景可见性映射之间的差的第二乘积(即,/>)的总和。
在其他实施方式中,像素投影器330可以被配置成根据来生成经修改的图像370,其中,θ(·)表示已经被训练成根据AT将前景图像IT与背景图像/>组合的机器学习模型。例如,该机器学习模型可以使用多个训练图像集来训练,每个训练图像集包括场景的多个不同视图并且因此表示去除遮蔽区域的地面真实像素值。
图3B、图3C和图3D包含由3D照片系统300生成的图像和映射的示例。具体地,图3B包括图像380(图像302的示例)和对应深度图像382(深度图像306的示例)。图3C包括前景可见性映射384(前景可见性映射310的示例)和背景去除遮蔽掩模386(背景去除遮蔽掩模314的示例),它们中的每一个对应于图像380和深度图像382。图3D包括修复图像388(修复图像318的示例)、修复深度图像390(修复深度图像320的示例)和经修改的图像392(经修改的图像370的示例),它们中的每一个对应于图像380和深度图像382。
具体地,图像380包含相对于草地和树木的背景(背景特征/对象)的长颈鹿(前景特征/对象)。深度图像382指示长颈鹿比大部分背景更靠近相机。在前景可见性映射384中,以白色示出最大可见性值,以黑色示出最小可见性值,并且使用灰度级示出它们之间的值。因此,如上所述,以黑色和/或深灰度级示出了长颈鹿周围的区域、草地顶部和树线顶部,从而指示深度梯度在这些区域中相对较高,并且这些区域因此对于在三维中投影之后的修复背景像素值相对更透明。在背景去除遮蔽掩码386中,最大去除遮蔽值以白色示出,最小去除遮蔽值以黑色示出,并且使用灰度级示出它们之间的值。因此,以白色和/或浅灰度级示出了长颈鹿后面的区域和草地顶部后面的区域,从而指示这些区域可能通过从其渲染图像380的视点的改变而被去除遮蔽(即,变得可见)。
在修复图像388和修复深度图像390中,使用与图像380和深度图像382的背景部分相对应的新值,而不是使用与图像380和深度图像382的前景部分相对应的值,来修复图像380和深度图像382的先前表示长颈鹿和草地顶部的部分。因此,图像388和390分别表示图像380和382,其中前景内容中的至少一些被新合成的背景内容替换,该新合成的背景内容与图像380和382的背景部分是上下文相干的(在颜色/强度和深度方面)。
在经修改的图像392的渲染期间,图像380的内容(前景层)可以与修复图像388的修复内容(背景层)组合,以填充通过图像380的初始视点的修改而显露的去除遮蔽区域。在将图像380和388以及映射384重新投影到经修改的视点中之后,由前景可见性映射384指定图像380和388之间的融合比率。具体地,融合比率(在重新投影到经修改的视点中之后)由前景可见性映射384的对应像素指定,其中对应像素在去除投影图像380、修复图像388和前景可见性映射384之后被确定以生成相应3D表示和这些3D表示到经修改的视点中的投影。因此,经修改的图像392表示来自与图像380的初始视点不同的经修改的视点的图像380的内容。如图所示的经修改的图像392不是精确的矩形,因为图像380和388可能不包括图像380的外边界之外的内容。在一些情况下,经修改的图像392和/或其所基于的图像中的一个或多个图像可以经历进一步的修复,使得经修改的图像392即使在视点修改之后也是矩形的。
示例软前景可见性模型
图4A图示软前景可见性模型308的各方面,其可以被配置成基于深度图像306和图像302来生成前景可见性映射310。具体地,软前景可见性模型308可以包括软背景遮蔽函数332、逆函数336、软前景可见性函数340、前景分割模型350、遮罩模型354、膨胀函数358、差分算子362和乘法算子344。
软前景可见性函数340可以被配置成基于深度图像306来生成基于深度的前景可见性映射342。具体地,软前景可见性函数可以被表示为其中ADEPTH表示基于深度的前景可见性映射342,/>表示梯度算子(例如,Sobel梯度算子),并且β是可调整的标量参数。因此,深度图像306的给定像素p的前景可见性值可以是基于通过将梯度算子应用于给定像素p和一个或多个周围像素而确定的深度梯度/>的指数。
在一些实施方式中,基于深度的前景可见性映射342可以等于前景可见性映射310。即,软背景遮蔽函数332、逆函数336、前景分割模型350、遮罩模型354、膨胀函数358、差分算子362和/或乘法算子344可以从软前景可见性模型308中省略。然而,在一些情况下,深度图像306可能不准确地表示诸如头发或皮毛的一些细薄和/或高频特征(例如,由于深度模型304的属性)。为了改进这些细薄和/或高频特征在经修改的图像370中的表示,基于深度的前景可见性映射342可以与逆背景遮蔽掩模338和基于遮罩的前景可见性映射364组合以生成前景可见性映射310。由于基于深度的前景可见性映射342是软的,因此基于深度的前景可见性映射342可以与基于遮蔽的前景分割技术组合。
前景分割模型350可以被配置成基于图像302来生成前景分割掩模352。前景分割掩模352可以将图像302的前景特征(例如,使用二元像素值1表示)与图像302的背景特征(例如,使用二元像素值0表示)区分开。前景分割掩模352可以将前景与背景区分开,但是可能不能准确地表示被表示在图像302中的前景对象的细薄和/或高频特征。前景分割模型350可以例如使用在由Qin等创作并且公布为arXiv:2005.09007的标题为“U2-Net:GoingDeeper with Nested U-Structure for Salient Object Detection(U2-Net:进一步深入用于显著对象检测的嵌套U结构)”的文章中讨论的模型来实现。
遮罩模型354可以被配置成基于图像302和前景分割掩模352来生成前景阿尔法遮罩356。前景阿尔法遮罩356可以将图像302的前景特征与图像302的背景特征区分开,并且可以使用每像素一个二元值或每像素一个灰度级强度值来这样做。与前景分割掩模352不同,前景阿尔法遮罩356可以准确地表示被表示在图像302中的前景对象的细薄和/或高频特征(例如,头发或皮毛)。例如,可以使用Forte等创作并且公布为arXiv:2003.07711的标题为“F,B,Alpha Matting(F、B、阿尔法遮罩)”的文章中讨论的模型来实现遮罩模型354。
为了将前景阿尔法遮罩356并入到前景可见性映射310中,前景阿尔法遮罩356可以经历进一步的处理。具体地,前景可见性映射310被期望包括围绕前景对象边界的低可见性值,但是不被期望包括处于不在前景对象边界附近的区域中的低可见性值。然而,前景阿尔法遮罩356包括所有背景区域的低可见性值。因此,膨胀函数358可以被配置成基于前景阿尔法遮罩356来生成膨胀的前景阿尔法遮罩360,然后可以如差分算子362所指示的从前景阿尔法遮罩356中减去该膨胀的前景阿尔法遮罩360,以生成基于遮罩的前景可见性映射364。基于遮罩的前景可见性映射364因此可以包括围绕前景对象边界但不处于不在前景对象边界附近的背景区域中的低可见性值。
另外,软背景遮蔽函数332可以被配置成基于深度图像306来生成背景遮蔽掩模334。背景遮蔽掩模334可以替代地被称为软背景遮蔽掩模334。背景遮蔽掩模334可以被表示为并且因此可以具有n个像素,这些像素中的每个可以与对应遮蔽值(其可以被称为背景遮蔽值)相关联。遮蔽值可以选自和/或缩放到预定范围,诸如0到1(即,/>
背景遮蔽掩模334的每个相应遮蔽值可以指示图像302的对应像素将通过图像302的初始视点的改变而被遮蔽(即,被完全覆盖)的可能性。背景遮蔽掩模334的计算可以类似于背景去除遮蔽掩模314的计算。具体地,如果存在相邻参考像素(xi,yj),使得(i)与给定像素相关联的深度值D(x,y)和(ii)与相邻参考像素相关联的深度值D(xi,yj)之间的深度差小于这些像素的相应位置之间的经缩放的距离则与像素位置(x,y)相关联的给定像素可以由于初始视点的改变而被遮蔽。即,如果/>则在位置(x,y)处的给定像素可以被遮蔽。因此,软背景遮蔽函数332可以被表示为/> 其中,(xi,yj)∈N(x,y)使得i和j各自迭代通过对应范围以将给定像素(x,y)与预定数量的相邻像素(xi,yj)进行比较,并且可以将ReLU或泄漏ReLU应用于双曲正切函数的输出以使/>为正。
因此,软背景遮蔽函数332可以被配置成针对深度图像306的每个相应像素确定第二多个差值,其中,第二多个差值中的每个相应差值通过从(ii)对应参考像素的对应深度值D(xi,yj)中减去(i)相应像素的对应深度值D(x,y)以及将相应像素与位于相应像素的预定像素距离内的对应参考像素分开的经缩放的像素数量来确定。此外,软背景去除遮蔽函数312可以被配置成:针对深度图像306的每个相应像素确定第二多个差值中的第二最大差值(即,/>),并且通过将双曲正切函数应用于第二最大差值来确定去除遮蔽值/>
前景可见性映射310可以基于(i)基于深度的前景可见性映射342、(ii)基于遮罩的前景可见性映射364和(iii)逆背景遮蔽掩模338的乘积来确定,如乘法算子344所指示的。以此方式确定前景可见性映射310可以允许对前景对象的细薄和/或高频特征的表示,同时考虑到深度不连续性并且减少和/或避免基于遮罩的前景可见性映射364到太多背景上的“泄漏”。因此,该乘法的净效果是将由基于遮罩的前景可见性映射364表示的围绕前景对象边界的细薄和/或高频特征并入到基于深度的前景可见性映射342中。
图4B、图4C和图4D包含由软前景可见性模型308使用和/或生成的图像和映射的示例。具体地,图4B包括图像402(图像302的示例)和对应深度图像406(深度图像306的示例)。图4C包括基于深度的前景可见性映射442(基于深度的前景可见性映射342的示例)和前景阿尔法遮罩456(前景阿尔法遮罩356的示例),其中的每个对应于图像402和深度图像406。图4D包括基于遮罩的前景可见性映射462(基于遮罩的前景可见性映射364的示例)和前景可见性映射410(前景可见性映射310的示例),其中的每个对应于图像402和深度图像406。
具体地,图像402包含相对于模糊背景的狮子(前景对象)。深度图像406指示狮子比背景更靠近相机,其中狮子的鼻口部比狮子的其他部分更靠近。深度图像402不能准确地表示狮子的鬃毛中的一些头发的深度。在基于深度的前景可见性映射442和前景可见性映射410中,最大可见性值以白色示出,最小可见性值以黑色示出,并且使用灰度级示出它们之间的值。在前景阿尔法遮罩456和基于遮罩的前景可见性映射462中,以白色示出最大阿尔法值,以黑色示出最小阿尔法值,并且使用灰度级示出它们之间的值。最大阿尔法值对应于最大可见性值,因为两者都指示前景内容完全不透明。
因此,在基于深度的前景可见性映射442中,表示狮子和背景之间以及狮子的鼻口部和狮子的其他部分之间的过渡的轮廓区域以较深的灰度级示出,从而指示深度梯度在这些轮廓区域中相对较高,并且这些轮廓区域对于修复背景像素值相对更透明,而其他区域以较浅灰度级示出。在前景阿尔法遮罩456中,狮子以较浅灰度级示出,而背景以较深灰度级示出。与基于深度的前景可见性映射442不同,前景阿尔法遮罩456详细表示狮子的鬃毛的头发。在基于遮罩的前景可见性映射462中,以较浅灰度级示出狮子,以较深灰度级示出狮子周围的轮廓区域,并且以较浅灰度级示出轮廓区域之外的背景部分。该轮廓区域的大小可通过控制膨胀函数358对前景阿尔法遮罩356进行膨胀的像素的数量来控制。
在前景可见性映射410中,以较浅灰度级示出狮子的大部分,以较深灰度级示出狮子周围和狮子的鼻口部周围的轮廓区域,并且以较浅灰度级示出轮廓区域之外的背景部分。前景可见性映射410中的狮子的轮廓区域小于基于遮罩的前景可见性映射462中的狮子的轮廓区域,并且包括狮子的鬃毛的头发的详细表示。此外,前景可见性映射410包括狮子的鼻口部周围的轮廓区域,其存在于基于深度的前景可见性映射442中,但是不存在于基于遮罩的前景可见性映射462中。前景可见性映射410因此表示图像402的基于深度的不连续性以及狮子的鬃毛的基于遮罩的细薄和/或高频特征。
示例训练系统和操作
图5A图示可以用于训练3D照片系统300的一个或多个组件的示例训练系统500。具体地,训练系统500可以包括深度模型304、软背景遮蔽函数332、修复模型316、鉴别器模型512、对抗性损失函数522、重构损失函数508和模型参数调整器526。训练系统500可以被配置成基于训练图像502来确定经更新的模型参数528。训练图像502和训练深度图像506可以分别类似于图像302和深度图像306,但是可以在训练时间处而不是在推理时间处被确定。深度模型304和软背景遮蔽函数332已经分别参考图3A和图4A讨论。
修复模型316可以被训练成修复图像302的如由背景去除遮蔽掩模314所指示的可以通过视点的改变而被去除遮蔽的区域。然而,在一些情况下,这些去除遮蔽区域的地面真实像素值可能不可用(例如,训练图像502的多视图可能不可用)。因此,不是使用与训练图像502相对应的训练背景去除遮蔽掩模来训练修复模型316,而是可以使用训练背景遮蔽掩模534来训练修复模型316。训练背景遮蔽掩模534可以类似于背景遮蔽掩模334,但可以在训练时间处而不是在推理时间处被确定。因为由于初始视点的改变而可能被前景特征遮蔽的区域的地面真实像素值在训练图像502中可用,所以该技术可以允许在不依赖于多视图训练图像数据集的情况下训练修复模型316。在去除遮蔽区域的地面真实数据可用的情况下,可以使用去除遮蔽掩模来附加地或替换地训练修复模型。
具体地,修复模型316可以被配置成基于训练图像502、训练深度图像506和训练背景遮蔽掩模534来生成修复训练图像518和修复训练深度图像520,修复训练图像518和修复训练深度图像520可以分别类似于修复图像318和修复深度图像320。在一些情况下,还可以使用笔画形状的修复掩模(未示出)来训练修复模型316,从而允许修复模型316学习修复细薄的或小的对象。
修复模型316修复图像502和506的缺失区域的质量可以使用重构损失函数508和/或对抗性损失函数来量化。重构损失函数508可以被配置成通过分别将训练图像502和506与修复图像518和520进行比较来生成重构损失值510。例如,重构损失函数508可以被配置成至少相对于已经被修复的区域(如由训练背景遮蔽掩模534和/或笔画形状的修复掩模所指示的)确定(i)训练图像502和修复训练图像518之间的第一L-1距离以及(ii)训练深度图像506和修复训练深度图像520之间的第二L-1距离。重构损失函数508因此可以激励修复模型316以生成(i)彼此一致并且(ii)基于训练图像502的背景特征(而不是前景特征)的修复强度值和修复深度值。
鉴别器模型512可以被配置成基于修复训练图像518和修复训练深度图像520来生成鉴别器输出514。具体地,鉴别器输出514可以指示鉴别器模型512估计修复训练图像518和修复训练深度图像520是由修复模型316生成还是作为尚未由修复模型316生成的地面真实图像。因此,修复模型316和鉴别器模型512可以实现对抗性训练架构。因此,对抗性损失函数522可以包括例如铰链对抗性损失,并且可以被配置成基于鉴别器输出514来生成对抗性损失值524。对抗性损失函数522可以因此激励修复模型316以生成看起来逼真并且因此准确地模仿自然场景的修复强度值和修复深度值。
模型参数调整器526可以被配置成基于重构损失值510和对抗性损失值524(以及可以由训练系统500确定的任何其他损失值)来确定经更新的模型参数528。模型参数调整器526可以被配置成基于这些损失值的加权和来确定总损失值,其中,对应损失值的相对权重可以是可调整的训练参数。经更新的模型参数528可以包括修复模型316的一个或多个经更新的参数,其可以被表示为ΔΘ。在一些实施方式中,经更新的模型参数528可以另外包括用于3D照片系统300的一个或多个其他组件(诸如深度模型304或软前景可见性模型308等其他可能性)以及用于鉴别器模型512的一个或多个经更新的参数。
模型参数调整器526可以被配置成通过例如确定总损失函数的梯度来确定经更新的模型参数528。基于该梯度和总损失值,模型参数调整器526可以被配置成选择期望减小总损失值的经更新的模型参数528,并且因此改进3D照片系统300的性能。在将经更新的模型参数528应用于至少修复模型316之后,可以重复上面讨论的操作以计算总损失值的另一实例,并且基于此,可以确定经更新的模型参数528的另一实例并且将其至少应用于修复模型316以进一步改善其性能。可以重复3D照片系统300的组件的这种训练,直到例如总损失值被减小到目标阈值损失值以下。
图5B包括背景遮蔽掩模544(背景遮蔽掩模334和训练背景遮蔽掩模534的示例),其对应于图3B的图像380和深度图像382的一部分。在背景遮蔽掩模544中,最大遮蔽值以白色示出,最小遮蔽值以黑色示出,并且使用灰度级示出它们之间的值。因此,以白色或浅灰度级示出了长颈鹿周围的区域,从而指示这些区域可能通过从其渲染图像380的视点的改变而被遮蔽。
附加示例操作
图6图示与基于单目图像来生成3D效果相关的操作的流程图。操作可以由各种计算设备100、计算系统200、3D照片系统300和/或训练系统500以及其他可能性来执行。图6的实施例可以通过去除其中所示的任何一个或多个特征而被简化。此外,这些实施例可以与先前附图中的任一个的特征、方面和/或实施方式或本文中另外描述的特征、方面和/或实施方式组合。
框600可以涉及获得具有初始视点的单目图像。
框602可以涉及基于单目图像来确定包括多个像素的深度图像。深度图像的每个相应像素可以具有对应深度值。
框604可以涉及针对深度图像的每个相应像素确定与深度图像的相应像素相关联的对应深度梯度。
框606可以涉及确定前景可见性映射,该前景可见性映射包括针对深度图像的每个相应像素的与对应深度梯度成反比的可见性值。
框608可以涉及基于深度图像来确定背景去除遮蔽掩模,该背景去除遮蔽掩模包括针对深度图像的每个相应像素的去除遮蔽值,该去除遮蔽值指示单目图像的对应像素将通过初始视点的改变而被去除遮蔽的可能性。
框610可以涉及(i)通过使用修复模型根据背景去除遮蔽掩模修复单目图像的部分来生成修复图像,以及(ii)通过使用修复模型根据背景去除遮蔽掩模修复深度图像的部分来生成修复深度图像。
框612可以涉及(i)基于深度图像来生成单目图像的第一3D表示,以及(ii)基于修复深度图像来生成修复图像的第二3D表示。
框614可以涉及通过根据前景可见性映射将第一3D表示与第二3D表示组合来生成具有不同于初始视点的经调整的视点的经修改的图像。
在一些实施例中,前景可见性映射可以通过沿着至少第一区间是连续且平滑的软前景可见性函数来确定。
在一些实施例中,确定前景可见性映射包括:针对深度图像的每个相应像素通过将梯度算子应用于深度图像来确定与相应像素相关联的对应深度梯度,以及针对深度图像的每个相应像素基于与相应像素相关联的对应深度梯度的指数来确定可见性值。
在一些实施例中,背景去除遮蔽掩模可以通过沿着至少第二区间是连续且平滑的软背景去除遮蔽函数来确定。
在一些实施例中,确定背景去除遮蔽掩模可以包括:针对深度图像的每个相应像素确定第一多个差值。第一多个差值中的每个相应差值可以通过从相应像素的对应深度值中减去(i)位于相应像素的预定像素距离内的对应参考像素的对应深度值以及(ii)将相应像素与对应参考像素分开的经缩放的像素数量来确定。确定背景去除遮蔽掩模还可以包括:针对深度图像的每个相应像素基于第一多个差值来确定去除遮蔽值。
在一些实施例中,确定去除遮蔽值可以包括:针对深度图像的每个相应像素确定第一多个差值中的第一最大差值;以及针对深度图像的每个相应像素通过将双曲正切函数应用于第一最大差值来确定去除遮蔽值。
在一些实施例中,相应差值的对应参考像素可以选自:(i)包括在相应像素上方和下方的预定数量的像素的垂直扫描线,或(ii)包括在相应像素的右侧和左侧的预定数量的像素的水平扫描线。
在一些实施例中,确定前景可见性映射可以包括:确定基于深度的前景可见性映射,该基于深度的前景可见性映射包括针对深度图像的每个相应像素的可见性值,该可见性值与跟深度图像的相应像素相关联的对应深度梯度成反比;以及基于单目图像并且对应于单目图像来确定前景阿尔法遮罩。确定前景可见性映射还可以包括:基于(i)前景阿尔法遮罩与(ii)前景阿尔法遮罩的膨胀之间的差来确定基于遮罩的前景可见性映射,以及基于(i)基于深度的前景可见性映射和(ii)基于遮罩的前景可见性映射的乘积来确定前景可见性映射。
在一些实施例中,确定前景阿尔法遮罩可以包括:通过前景分割模型基于单目图像来确定前景分割,以及通过遮罩模型并且基于前景分割和单目图像来确定前景阿尔法遮罩。
在一些实施例中,确定前景可见性映射可以包括基于深度图像来确定背景遮蔽掩模,该背景遮蔽掩模包括针对深度图像的每个相应像素的遮蔽值,该遮蔽值指示单目图像的对应像素将通过初始视点的改变而被遮蔽的可能性。确定前景可见性映射还可以包括基于(i)基于深度的前景可见性映射、(ii)基于遮罩的前景可见性映射和(iii)背景遮蔽掩模的逆的乘积来确定前景可见性映射。
在一些实施例中,确定背景遮蔽掩模可以包括针对深度图像的每个相应像素确定第二多个差值。第二多个差值中的每个相应差值可以通过从(ii)对应参考像素的对应深度值中减去(i)相应像素的对应深度值以及将相应像素与位于相应像素的预定像素距离内的对应参考像素分开的经缩放的像素数量来确定。确定背景遮蔽掩模还可以包括针对深度图像的每个相应像素基于第二多个差值来确定遮蔽值。
在一些实施例中,确定遮蔽值可以包括:针对深度图像的每个相应像素确定第二多个差值中的第二最大差值,以及针对深度图像的每个相应像素通过将双曲正切函数应用于第二最大差值来确定遮蔽值。
在一些实施例中,单目图像可以包括前景特征和背景特征。修复模型可以已经被训练成修复(i)单目图像的具有匹配背景特征且独立于前景特征的强度值的去除遮蔽背景区域,以及(ii)深度图像的具有匹配背景特征且独立于前景特征的深度值的对应去除遮蔽背景区域。
在一些实施例中,修复模型可以已经被训练成使得修复图像的去除遮蔽区域的强度值与修复深度图像的对应去除遮蔽背景区域的对应深度值在上下文上一致。
在一些实施例中,修复模型可以已经通过训练过程被训练,该训练过程包括获得训练单目图像并且基于训练单目图像来确定训练深度图像。训练过程还可以包括基于训练深度图像来确定训练背景遮蔽掩模,该训练背景遮蔽掩模包括针对训练深度图像的每个相应像素的遮蔽值,该遮蔽值指示训练单目图像的对应像素将通过训练单目图像的原始视点的改变而被遮蔽的可能性。训练过程可以另外包括:(i)通过使用修复模型根据训练背景遮蔽掩模修复训练单目图像的部分来生成修复训练图像;以及(ii)通过使用修复模型根据训练背景遮蔽掩模修复训练深度图像的部分来生成修复训练深度图像。训练过程可以进一步包括:通过将损失函数应用于修复训练图像和修复训练深度图像来确定损失值;以及基于损失值来调整修复模型的一个或多个参数。
在一些实施例中,损失值可以是基于以下中的一个或多个:(i)基于通过鉴别器模型处理修复训练图像和修复训练深度图像而确定的对抗性损失值,或(ii)基于将修复训练图像与训练单目图像进行比较以及将修复训练深度图像与训练深度图像进行比较而确定的重建损失值。
在一些实施例中,生成经修改的图像可以包括基于深度图像来生成与第一3D表示相对应的3D前景可见性映射。生成经修改的图像还可以包括:(i)通过基于经调整的视点投影第一3D表示来生成前景图像,(ii)通过基于经调整的视点投影第二3D表示来生成背景图像,以及(iii)通过基于经调整的视点投影3D前景可见性映射来生成经修改的前景可见性映射。生成经修改的图像可以进一步包括根据经修改的前景可见性映射将前景图像与背景图像组合。
在一些实施例中,经修改的前景可见性映射的值可以具有零到预定值的范围。将前景图像与背景图像组合可以包括确定(i)前景图像与经修改的前景可见性映射的第一乘积与(ii)背景图像与预定值和经修改的前景可见性映射之间的差的第二乘积的总和。
在一些实施例中,生成第一3D表示和第二3D表示可以包括(i)通过基于深度图像对单目图像的像素去除投影来生成第一多个3D点,以及(ii)通过基于修复深度图像对修复图像的像素去除投影来生成第二多个3D点,以及(i)通过将与单目图像的邻接像素相对应的第一多个3D点的相应子集互连来生成第一多边形网格,以及(ii)通过将与修复图像的邻接像素相对应的第二多个3D点的相应子集互连来生成第二多边形网格。生成第一3D表示和第二3D表示还可以包括:(i)基于单目图像将一个或多个第一纹理应用于第一多边形网格,以及(ii)基于修复图像将一个或多个第二纹理应用于第二多边形网格。
示例性能度量
图7A、图7B和图7C各自包括包含对照对应数据集测试各种3D照片模型的结果的相应表。具体地,图7A、图7B和图7C中的每个比较SynSin模型(在由Wiles等创作并且公布为“arXiv:1912.08804”的标题为“SynSin:End-to-end View Synthesis from a SingleImage(Synsin:从单个图像的端到端视图合成)”的文章中描述)、SMPI模型(在由Tucker等创作并且公布为arXiv:2004.11364的标题为“Single-View View Synthesis withMultiplane Images(具有多平面图像的单视图视图合成)”的文章中描述)、3D照片模型(在由Shih等创作并且公布为arXiv:2004.04727的标题为“3D Photography using Context-aware Layered Depth Inpainting(使用上下文感知的分层深度修复的3D摄影)”的文章中描述)和如本文描述的3D照片系统300的性能。
性能通过学习的感知图像补丁相似性(LPIPS)度量(较低值表示更好性能)、峰值信噪比(PSNR)(较高值表示更好性能)和结构相似性指数量度(SSIM)(较高值表示更好性能)来量化。图7A、图7B和图7C中的结果分别对应于RealEvent10k图像数据集(在由Zhou等创作并且公布为arXiv:1805.09817的标题为“Stereo Magnification:Learning ViewSynthesis using Multiplane Images(立体放大:使用多平面图像学习视图合成)”的文章中讨论)、双像素图像数据集(在由Garg等创作并且公布为arXiv:1904.05822的标题为“Learning Single Camera Depth Estimation using Dual-Pixels(利用双像素学习单相机深度估计)”的文章中讨论)和人体模型挑战者图像数据集(在由Li等创作并且公布为arXiv:1904.11111的标题为“Learning the Depths of Moving People by WatchingFrozen People(通过观看冻结的人来学习移动的人的深度)”的文章中讨论)。
在图7A中,“T-5”和“T=10”指示针对测试图像相对于与分别距离测试图像5和10个时间步长的图像相对应的经修改的视点计算对应度量。在图7B中,针对测试图像相对于与和测试图像同时捕获的四个图像相对应的经修改的视点计算对应度量。在图7C中,针对测试图像相对于与测试图像之后且与测试图像连续的四个图像相对应的经修改的视点计算对应度量。如由图7A、图7B和图7C的每个中的表格的相应最底部行中的阴影图案所指示的,系统300在双像素和人体模型挑战者图像数据集的所有度量上优于其它模型,并且在RealEstate10k数据集的所有度量上优于其它系统或与其并列。因此,3D照片系统300匹配或超过其他3D照片系统的性能。
结论
本公开不应在本申请中描述的特定实施例方面受到限制,这些实施例旨在说明各个方面。如对于本领域技术人员将显而易见的,能够在不脱离其范围的情况下进行许多修改和变化。除了本文描述的那些之外,本公开的范围内的功能上等同的方法和装置根据前述描述对于本领域技术人员将是显而易见的。这些修改和变化旨在落入所附权利要求的范围内。
以上详细描述参考附图描述了所公开的系统、设备和方法的各种特征和操作。在附图中,除非上下文另有规定,否则类似的符号通常标识类似的组件。本文和附图中描述的示例性实施例不旨在为限制性的。在不脱离本文呈现的主题的范围的情况下,能够利用其它实施例,并且能够进行其它改变。将容易理解的是,如本文一般性描述的以及在附图中示出的本公开的方面能够以各种各样的不同配置来布置、替换、组合、分离和设计。
关于附图中以及如本文所讨论的任何或所有消息流程图、场景和流程图,每个步骤、框和/或通信能够表示根据示例实施例的信息的处理和/或信息的传输。替代实施例被包括在这些示例实施例的范围内。在这些替代实施例中,例如,被描述为步骤、框、传输、通信、请求、响应和/或消息的操作能够不按所示或所讨论的顺序执行,包括基本上同时或以相反的顺序执行,这取决于所涉及的功能。此外,更多或更少的框和/或操作能够与本文讨论的消息流程图、场景和流程图中的任何一个一起使用,并且这些消息流程图、场景和流程图能够部分或整体地彼此组合。
表示信息的处理的步骤或框可以对应于能够被配置成执行本文描述的方法或技术的特定逻辑功能的电路。替换地或附加地,表示信息的处理的框可以对应于模块、片段或程序代码(包括相关数据)的一部分。程序代码可以包括可由处理器执行用于实现方法或技术中的特定逻辑操作或动作的一个或多个指令。程序代码和/或相关数据可以被存储在任何类型的计算机可读介质上,诸如包括随机存取存储器(RAM)、磁盘驱动器、固态驱动器的存储设备或另一存储介质。
计算机可读介质还可以包括非暂时性计算机可读介质,诸如在短时间段内存储数据的计算机可读介质,如寄存器存储器、处理器高速缓存和RAM。计算机可读介质还可以包括在较长时间段内存储程序代码和/或数据的非暂时性计算机可读介质。因此,计算机可读介质可以包括二级或永久性长期存储,例如只读存储器(ROM)、光盘或磁盘、固态驱动器、光盘只读存储器(CD-ROM)。计算机可读介质还可以是任何其它易失性或非易失性存储系统。计算机可读介质可以被认为是例如计算机可读存储介质或有形存储设备。
此外,表示一个或多个信息传输的步骤或框可以对应于相同物理设备中的软件和/或硬件模块之间的信息传输。然而,其他信息传输可以在不同物理设备中的软件模块和/或硬件模块之间。
图中所示的特定布置不应被视为限制。应当理解,其它实施例能够包括更多或更少的在给定附图中示出的每个元件。此外,能够组合或省略一些所示元件。此外,示例实施例能够包括未在图中示出的元件。
虽然本文已经公开了各种方面和实施例,但是其它方面和实施例对于本领域技术人员将是显而易见的。本文公开的各个方面和实施例是出于说明的目的而不旨在为限制性的,真正的范围由所附权利要求指示。
Claims (20)
1.一种计算机实现的方法,包括:
获得具有初始视点的单目图像;
基于所述单目图像来确定包括多个像素的深度图像,其中,所述深度图像的每个相应像素具有对应深度值;
针对所述深度图像的每个相应像素,确定与所述深度图像的所述相应像素相关联的对应深度梯度;
确定前景可见性映射,所述前景可见性映射包括针对所述深度图像的每个相应像素的与所述对应深度梯度成反比的可见性值;
基于所述深度图像来确定背景去除遮蔽掩模,所述背景去除遮蔽掩模包括针对所述深度图像的每个相应像素的去除遮蔽值,所述去除遮蔽值指示所述单目图像的对应像素将通过所述初始视点的改变而被去除遮蔽的可能性;
(i)通过使用修复模型根据所述背景去除遮蔽掩模修复部分的所述单目图像来生成修复图像,以及(ii)通过使用所述修复模型根据所述背景去除遮蔽掩模修复部分的所述深度图像来生成修复深度图像;
(i)基于所述深度图像来生成所述单目图像的第一三维3D表示,以及(ii)基于所述修复深度图像来生成所述修复图像的第二3D表示;以及
通过根据所述前景可见性映射将所述第一3D表示与所述第二3D表示进行组合,来生成经修改的图像,所述经修改的图像具有与所述初始视点不同的经调整的视点。
2.根据权利要求1所述的计算机实现的方法,其中,通过沿着至少第一区间是连续且平滑的软前景可见性函数来确定所述前景可见性映射。
3.根据权利要求1-2中任一项所述的计算机实现的方法,其中,确定所述前景可见性映射包括:
针对所述深度图像的每个相应像素,通过将梯度算子应用于所述深度图像来确定与所述相应像素相关联的所述对应深度梯度;以及
针对所述深度图像的每个相应像素,基于与所述相应像素相关联的所述对应深度梯度的指数来确定所述可见性值。
4.根据权利要求1-3中任一项所述的计算机实现的方法,其中,通过沿着至少第二区间是连续且平滑的软背景去除遮蔽函数来确定所述背景去除遮蔽掩模。
5.根据权利要求1-4中任一项所述的计算机实现的方法,其中,确定所述背景去除遮蔽掩模包括:
针对所述深度图像的每个相应像素确定第一多个差值,其中,通过从所述相应像素的所述对应深度值中减去(i)位于所述相应像素的预定像素距离内的对应参考像素的所述对应深度值以及(ii)将所述相应像素与所述对应参考像素分开的经缩放的像素数量,来确定所述第一多个差值中的每个相应差值;以及
针对所述深度图像的每个相应像素,基于所述第一多个差值来确定所述去除遮蔽值。
6.根据权利要求5所述的计算机实现的方法,其中,确定所述去除遮蔽值包括:
针对所述深度图像的每个相应像素,确定所述第一多个差值中的第一最大差值;以及
针对所述深度图像的每个相应像素,通过将双曲正切函数应用于所述第一最大差值来确定所述去除遮蔽值。
7.根据权利要求5-6中任一项所述的计算机实现的方法,其中,所述相应差值的所述对应参考像素选自:(i)包括在所述相应像素上方和下方的预定数量的像素的垂直扫描线,或(ii)包括在所述相应像素的右侧和左侧的所述预定数量的像素的水平扫描线。
8.根据权利要求1-7中任一项所述的计算机实现的方法,其中,确定所述前景可见性映射包括:
确定基于深度的前景可见性映射,所述基于深度的前景可见性映射包括针对所述深度图像的每个相应像素的所述可见性值,所述可见性值与跟所述深度图像的所述相应像素相关联的所述对应深度梯度成反比;
基于所述单目图像并且对应于所述单目图像来确定前景阿尔法遮罩;
基于在(i)所述前景阿尔法遮罩与(ii)所述前景阿尔法遮罩的膨胀之间的差,来确定基于遮罩的前景可见性映射;以及
基于以下各项的乘积来确定所述前景可见性映射:(i)所述基于深度的前景可见性映射和(ii)所述基于遮罩的前景可见性映射。
9.根据权利要求8所述的计算机实现的方法,其中,确定所述前景阿尔法遮罩包括:
通过前景分割模型,基于所述单目图像来确定前景分割;以及
通过遮罩模型并且基于所述前景分割和所述单目图像,来确定所述前景阿尔法遮罩。
10.根据权利要求8-9中任一项所述的计算机实现的方法,其中,确定所述前景可见性映射包括:
基于所述深度图像来确定背景遮蔽掩模,所述背景遮蔽掩模包括针对所述深度图像的每个相应像素的遮蔽值,所述遮蔽值指示所述单目图像的对应像素将通过所述初始视点的改变而被遮蔽的可能性;以及
基于以下各项的乘积来确定所述前景可见性映射:(i)所述基于深度的前景可见性映射、(ii)所述基于遮罩的前景可见性映射和(iii)所述背景遮蔽掩模的逆。
11.根据权利要求10所述的计算机实现的方法,其中,确定所述背景遮蔽掩模包括:
针对所述深度图像的每个相应像素确定第二多个差值,其中,通过从(ii)所述对应参考像素的所述对应深度值中减去(i)所述相应像素的所述对应深度值以及将所述相应像素与位于所述相应像素的预定像素距离内的对应参考像素分开的经缩放的像素数量,来确定所述第二多个差值中的每个相应差值;以及
针对所述深度图像的每个相应像素,基于所述第二多个差值来确定所述遮蔽值。
12.根据权利要求11所述的计算机实施的方法,其中,确定所述遮蔽值包括:
针对所述深度图像的每个相应像素,确定所述第二多个差值中的第二最大差值;以及
针对所述深度图像的每个相应像素,通过将双曲正切函数应用于所述第二最大差值来确定所述遮蔽值。
13.根据权利要求1-12中任一项所述的计算机实现的方法,其中,所述单目图像包括前景特征和背景特征,其中,所述修复模型已经被训练成修复(i)所述单目图像的具有匹配所述背景特征且独立于所述前景特征的强度值的去除遮蔽背景区域、以及(ii)所述深度图像的具有匹配所述背景特征且独立于所述前景特征的深度值的对应去除遮蔽背景区域,并且其中,所述修复图像的所述去除遮蔽区域的所述强度值与所述修复深度图像的所述对应去除遮蔽背景区域的对应深度值在上下文上一致。
14.根据权利要求1-13中任一项所述的计算机实现的方法,其中,所述修复模型已经通过训练过程被训练,所述训练过程包括:
获得训练单目图像;
基于所述训练单目图像来确定训练深度图像;
基于所述训练深度图像来确定训练背景遮蔽掩模,所述训练背景遮蔽掩模包括针对所述训练深度图像的每个相应像素的遮蔽值,所述遮蔽值指示所述训练单目图像的对应像素将通过所述训练单目图像的原始视点的改变而被遮蔽的可能性;
(i)通过使用所述修复模型、根据所述训练背景遮蔽掩模修复部分的所述训练单目图像来生成修复训练图像,以及(ii)通过使用所述修复模型、根据所述训练背景遮蔽掩模修复部分的所述训练深度图像来生成修复训练深度图像;
通过将损失函数应用于所述修复训练图像和所述修复训练深度图像来确定损失值;以及
基于所述损失值来调整所述修复模型的一个或多个参数。
15.根据权利要求14所述的计算机实现的方法,其中,所述损失值是基于以下中的一个或多个:(i)基于通过鉴别器模型处理所述修复训练图像和所述修复训练深度图像而确定的对抗性损失值,或(ii)基于将所述修复训练图像与所述训练单目图像进行比较以及将所述修复训练深度图像与所述训练深度图像进行比较而确定的重建损失值。
16.根据权利要求1-15中任一项所述的计算机实现的方法,其中,生成所述经修改的图像包括:
基于所述深度图像来生成与所述第一3D表示相对应的3D前景可见性映射;
(i)通过基于所述经调整的视点将所述第一3D表示进行投影来生成前景图像,(ii)通过基于所述经调整的视点将所述第二3D表示进行投影来生成背景图像,以及(iii)通过基于所述经调整的视点将所述3D前景可见性映射进行投影来生成经修改的前景可见性映射;以及
根据所述经修改的前景可见性映射,将所述前景图像与所述背景图像组合。
17.根据权利要求16所述的计算机实现的方法,其中,所述经修改的前景可见性映射的值具有零到预定值的范围,并且其中,将所述前景图像与所述背景图像组合包括:
确定下述各项之总和:(i)所述前景图像与所述经修改的前景可见性映射的第一乘积与(ii)所述背景图像与在所述预定值和所述经修改的前景可见性映射之间的差的第二乘积。
18.根据权利要求1-17中任一项所述的计算机实现的方法,其中,生成所述第一3D表示和所述第二3D表示包括:
(i)通过基于所述深度图像对所述单目图像的像素进行去除投影来生成第一多个3D点,以及(ii)通过基于所述修复深度图像对所述修复图像的像素进行去除投影来生成第二多个3D点;
(i)通过将与所述单目图像的邻接像素相对应的所述第一多个3D点的相应子集互连来生成第一多边形网格,以及(ii)通过将与所述修复图像的邻接像素相对应的所述第二多个3D点的相应子集互连来生成第二多边形网格;以及
(i)基于所述单目图像将一个或多个第一纹理应用于所述第一多边形网格,以及(ii)基于所述修复图像将一个或多个第二纹理应用于所述第二多边形网格。
19.一种系统,包括:
处理器;以及
具有存储的指令非暂时性计算机可读介质,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-18中任一项所述的操作。
20.一种具有存储的指令的非暂时性计算机可读介质,所述指令在由计算设备执行时使所述计算设备执行根据权利要求1-18中任一项所述的操作。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2021/044828 WO2023014368A1 (en) | 2021-08-05 | 2021-08-05 | Single image 3d photography with soft-layering and depth-aware inpainting |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116250002A true CN116250002A (zh) | 2023-06-09 |
Family
ID=77519853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180063773.2A Pending CN116250002A (zh) | 2021-08-05 | 2021-08-05 | 具有软分层和深度感知的修复的单幅图像3d摄影 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240249422A1 (zh) |
EP (2) | EP4283566A3 (zh) |
JP (1) | JP7387029B2 (zh) |
KR (1) | KR20230022153A (zh) |
CN (1) | CN116250002A (zh) |
WO (1) | WO2023014368A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12045998B2 (en) * | 2022-05-18 | 2024-07-23 | Toyota Research Institute, Inc. | Systems and methods for neural implicit scene representation with dense, uncertainty-aware monocular depth constraints |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101669820B1 (ko) * | 2010-07-02 | 2016-10-27 | 삼성전자주식회사 | 볼륨 예측 기반 폐색 영역 양방향 복원 장치 및 방법 |
US11373067B2 (en) * | 2018-08-10 | 2022-06-28 | Nec Corporation | Parametric top-view representation of scenes |
-
2021
- 2021-08-05 CN CN202180063773.2A patent/CN116250002A/zh active Pending
- 2021-08-05 EP EP23201428.2A patent/EP4283566A3/en active Pending
- 2021-08-05 KR KR1020227035898A patent/KR20230022153A/ko unknown
- 2021-08-05 EP EP21762285.1A patent/EP4150560B1/en active Active
- 2021-08-05 JP JP2022563457A patent/JP7387029B2/ja active Active
- 2021-08-05 WO PCT/US2021/044828 patent/WO2023014368A1/en active Application Filing
- 2021-08-05 US US17/907,529 patent/US20240249422A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4150560A1 (en) | 2023-03-22 |
EP4150560B1 (en) | 2023-10-04 |
EP4283566A3 (en) | 2024-02-21 |
KR20230022153A (ko) | 2023-02-14 |
JP7387029B2 (ja) | 2023-11-27 |
US20240249422A1 (en) | 2024-07-25 |
WO2023014368A1 (en) | 2023-02-09 |
EP4283566A2 (en) | 2023-11-29 |
JP2023540652A (ja) | 2023-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11756223B2 (en) | Depth-aware photo editing | |
US10652522B2 (en) | Varying display content based on viewpoint | |
US11663733B2 (en) | Depth determination for images captured with a moving camera and representing moving features | |
US8947422B2 (en) | Gradient modeling toolkit for sculpting stereoscopic depth models for converting 2-D images into stereoscopic 3-D images | |
US11488348B1 (en) | Computing virtual screen imagery based on a stage environment, camera position, and/or camera settings | |
RU2453922C2 (ru) | Способ представления исходной трехмерной сцены по результатам съемки изображений в двумерной проекции (варианты) | |
CN111406406B (zh) | 虚拟现实场景中的动态范围扩展的设备和方法 | |
WO2022063260A1 (zh) | 一种渲染方法、装置及设备 | |
CN113658316B (zh) | 三维模型的渲染方法和装置、存储介质及计算机设备 | |
Bonnard et al. | High-dynamic range video acquisition with a multiview camera | |
GB2612881A (en) | Techniques for re-aging faces in images and video frames | |
CN116980579B (zh) | 一种基于图像虚化的图像立体成像方法及相关装置 | |
JP7387029B2 (ja) | ソフトレイヤ化および深度認識インペインティングを用いた単画像3d写真技術 | |
US20230171508A1 (en) | Increasing dynamic range of a virtual production display | |
Liu et al. | Fog effect for photography using stereo vision | |
Gigilashvili et al. | Appearance manipulation in spatial augmented reality using image differences | |
CN116569191A (zh) | 对情境注意特征和卷积特征的门控 | |
Thatte | Cinematic virtual reality with head-motion parallax | |
Istead et al. | Layer-based disparity adjustment in stereoscopic 3D media | |
Loscos et al. | 3D Video: from Capture to Interactive Display. | |
Jacobs | Illumination for mixed reality of complex-to-model scenes | |
Rémion et al. | 3D Video: from Capture to Diffusion. |
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 |