CN113989460A - 用于增强现实场景的实时天空替换特效控制方法及装置 - Google Patents
用于增强现实场景的实时天空替换特效控制方法及装置 Download PDFInfo
- Publication number
- CN113989460A CN113989460A CN202111215497.5A CN202111215497A CN113989460A CN 113989460 A CN113989460 A CN 113989460A CN 202111215497 A CN202111215497 A CN 202111215497A CN 113989460 A CN113989460 A CN 113989460A
- Authority
- CN
- China
- Prior art keywords
- sky
- frame
- image
- pixel
- color
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000000694 effects Effects 0.000 title claims abstract description 28
- 230000003190 augmentative effect Effects 0.000 title claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims abstract description 32
- 238000013135 deep learning Methods 0.000 claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 6
- 230000000087 stabilizing effect Effects 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 16
- 230000003044 adaptive effect Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000013461 design Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000007704 transition Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 5
- 238000007670 refining Methods 0.000 claims description 4
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 239000003086 colorant Substances 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了用于增强现实场景的实时天空替换特效控制方法及装置,所述方法包括:利用移动设备摄像头获取视频帧图像;利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图;利用惯性传感器数据和每帧图像对天空区域掩码图进行细化和稳定;使用抠图算法为掩码图增加alpha值;利用最终的掩码图将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果。通过本发明解决了在移动设备上无法实现高效实时的天空替换的问题,实现了增强现实中对天空替换效果的控制。
Description
技术领域
本发明属于图像处理技术领域,涉及增强现实技术,特别涉及一种用于增强现实场景的实时天空替换特效控制方法及装置。
背景技术
增强现实(AR)技术的发展模糊了现实和虚拟世界之间的界限,而天空区域在日常环境中无处不在,对它的增强功能开始在AR应用中引起关注。例如,AR观星应用可以帮助用户通过交互式AR实时识别恒星、星座、行星等。天空替换问题是实现该功能的核心问题之一,也是最具有挑战性的问题。在移动AR应用中,我们期望用户用手机的摄像头举起手机就能获得实时的天空替换效果——天空区域被准确地分离出来,并被一个虚拟天空代替。此外,用户可以自由移动手机,以获得虚拟天空与现实混合的沉浸式体验。解决这个问题可以实现更多AR应用,如显示罕见的天文景观,展示幻想中的天体,直观地了解天气现象,创造烟花等。
为了实现图像或视频中的天空替换,可以利用抠图方法来提取每个单独视频帧的天空区域。然而,这些技术对实现我们的目标有局限性,因为(1)抠图方法往往需要用户互动;(2)抠图方法通常计算速度过慢,无法在实时状态下运行,特别是在移动设备上。除了抠图方法外,近年来出现了一些专门用于替换天空的视频编辑方法,然而,它们中的大多数都需要较高的算力,或者不支持实时运行。此外,上述这些方法都没有考虑到AR中的虚拟—真实世界融合,因为它们主要关注的是离线图像或视频。
因此,移动AR应用的实时天空替换问题带来了现有图像(视频)编辑方法所不具备的新挑战。首先,我们必须在移动处理器上以低延迟和低计算量提取天空区域。其次,我们要实现视频帧在时间上的一致性,这意味着提取的区域不能有明显的不稳定(抖动)。第三,我们希望最终的合成效果在视觉上足够美观,尤其是在天空和非天空区域的交界处不能出现明显的硬边缘。最后,我们必须确保该解决方案能够被有效地整合到一个实时的移动AR应用系统中。
目前还没有一种现有的方法能够在移动设备上以较低的计算量实现实时的天空替换,而且要保证较好的视觉效果。
发明内容
针对现有技术存在的不足,本发明提供一种用于增强现实场景的实时天空替换特效控制方法及装置,解决的技术问题是如何在算力有限的移动设备上快速而准确地实时提取相机画面中的天空区域。
为了解决上述技术问题,本发明采用的技术方案是:
首先,本发明提供一种用于增强现实场景的实时天空替换特效控制方法,包括以下步骤:
步骤101、利用移动设备摄像头获取视频帧图像;
步骤102、将视频帧图像降采样缩小图像大小,利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图;
步骤103、利用惯性传感器数据和每帧图像对粗略的天空区域掩码图进行细化和稳定;
步骤104、使用快速抠图算法为掩码图增加alpha值;
步骤105、将最终的掩码图上采样到原始视频帧图像大小,然后将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果。
进一步的,步骤102中利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图,具体包括以下步骤:
步骤201、设计深度学习网络模型,该模型包含编码器和解码器,编码器减小特征图大小,解码器接收不同分辨率的特征并将它们融合在一起,最后采用softmax层进行语义分割结果的预测;
步骤202、采用小批量随机梯度下降法(mini-batch SGD)来优化网络,并设置参数;
步骤203、使用ADE20K和SkyFinder两个数据集进行网络模型的训练;在训练过程中,对数据集进行三个增强操作,包括随机翻转、随机选择和随机亮度,使网络模型能够更好地适应空间位置和亮度变化的天空特征;
步骤204、在PC平台上构建和训练上述网络模型,使用第三方推理引擎将网络模型部署到移动端设备中。
进一步的,步骤103的具体步骤如下:
步骤301、从网络模型中获取粗略的天空区域分割结果;
步骤302、设计基于时间一致性的约束,通过惯性传感器数据在视频的前一帧和当前帧之间进行像素级的对应,以优化天空区域中的错误分割结果;
步骤303、设计基于位置一致性的约束,通过惯性传感器数据识别地平线在设备取景框中的位置,消除那些在地平线以下误被识别为天空区域的错误像素;
步骤304、设计自适应的颜色一致性约束,利用天空区域的色彩特征和局部色彩特征来优化具有复杂边界的物体和靠近天空区域但与天空颜色明显不同的物体;
步骤305、将上述三个约束统一到表达式中,从而并行地实现像素级优化,提升计算效率。
其中下标为t-1的变量代表在第t-1帧中计算的值,并通过HΔt进行重投影到第t帧;εtemp是误差系数;
I为移动设备的相机帧彩色图像,fi seg∈[0,1]代表从步骤301获得的网络模型输出的第i个像素的分割值,这个值表示一个像素是否为天空区域的概率,所有的fi seg组成了一个向量fseg,通过使用阈值0.5可以将fseg进行二值分类,得到Pseg,Pseg是一个二维向量阵列,组成一张黑白图,即初步的天空分割掩码图。
该约束利用下列公式获得:
UVi是帧的二维索引的UV坐标,UVi.y表示帧的垂直方向;上述公式(3)表示通过KRtK-1转换UV坐标的y方向后,天空区域不允许出现在下部;smooth(x)∈[0,1]是平滑过渡函数。
进一步的,步骤304设计自适应的颜色一致性约束时,用Isky表示从I中复制的彩色图像,但只包含天空区域的像素,图像其他部分的颜色总是被设置为黑色;用N表示I、fseg、Pseg和Isky中所有像素的个数,用Nsky来表示属于天空区域的像素个数;
该等式的计算复杂度同样为O(klogkN);
然后,设计自适应的颜色一致性约束颜色一致性约束的任务是评估一个像素是否更接近于天空的平均色csky,还是更接近于该像素邻近像素的平均色即这里R是用来选取周围像素的正方形区域ω的边长,引入变量来表示像素的二值分类结果,和表示如下:
使用HSV空间来计算颜色距离函数D,εcol是一个阈值,表示颜色一致性约束的有效范围。
进一步的,将如前所述的三个约束统一到表达式中,从而并行地实现像素级优化,提升计算效率;设最终输出的区域分类结果为Pi,t,则基于单个像素的约束表达式如下:
其中Pi,t和Pi,t-1分别表示最终优化后的像素二值分类结果。为时间一致性约束,为位置一致性约束,与为自适应的颜色一致性约束;表示第t帧的像素二值分类结果,所有的Pi,t组成了最终优化后的第t帧的天空区域掩码图Pt。
本发明还提供一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行如前所述的用于增强现实场景的实时天空替换特效控制方法。
与现有技术相比,本发明优点在于:
本发明通过利用语义分割网络模型获得粗略的天空区域掩码图,利用惯性传感器数据和每帧图像对天空区域掩码图进行细化和稳定,使用快速抠图算法为掩码图增加alpha值,利用最终的掩码图将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果,解决了在移动设备上无法实现高效实时的天空替换的问题,实现了增强现实中对天空替换效果的控制。
并且,通过本发明使用的时间一致性约束,提取的区域像素帧之间的抖动会被纠正,实现视频帧在时间上的一致性;通过本发明的位置一致性约束,可以消除那些在地平线以下误被识别为天空区域的错误像素;通过本发明的颜色一致性约束,最终的合成效果具有较好的视觉效果,尤其是天空和非天空区域的交界处,不会出现明显的硬边缘。通过本发明可以实现多种应用,如增强现实广告、超自然艺术、特殊天气演示等。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1的用于增强现实场景的实时天空替换特效控制方法的流程图;
图2为本发明实施例1的利用深度学习对每帧图像进行二值语义分割的流程图;
图3为本发明实施例1的利用惯性传感器数据和每帧图像对粗略的天空区域掩码图进行细化和稳定的示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
实施例1
本发明为了在增强现实场景中进行实时天空替换,首先以移动端设备的相机帧图像和惯性传感器(IMU)数据作为输入,并使用一个高效的、预训练的图像语义分割网络来估计天空区域,以获得粗略的掩码图。然后,使用IMU数据,通过不同的约束条件来完善该掩码图,以保持时间、位置和颜色的一致性。之后,利用抠图方法给掩码图增加更多的边缘细节和软过渡。最终,使用优化后的天空区域掩码图将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果。
具体实施方法如图1所示的用于增强现实场景的实时天空替换特效控制方法的流程图,包括以下步骤:
步骤101、利用移动设备摄像头获取视频帧图像;
步骤102、将视频帧图像降采样到640*360,利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图;
步骤103、利用惯性传感器数据和每帧图像对粗略的天空区域掩码图进行细化和稳定;
步骤104、使用快速抠图算法为掩码图增加alpha值;
步骤105、将最终的掩码图上采样到原始视频帧图像大小,然后将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果。
在此实施例中,所述步骤102中利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图,具体地,如图2所示,具体包括以下步骤:
步骤201、设计深度学习网络模型,该模型包含编码器和解码器,编码器不断将特征图的大小减少到原始输入图像的1/32,解码器接收不同分辨率的特征并将它们融合在一起,最后采用一个softmax层进行语义分割结果的预测,其中该网络模型的目标函数定义为交叉熵损失函数。
步骤202、采用小批量随机梯度下降法(mini-batch SGD)来优化网络,并设置参数;其中动量设置为0.9,权重衰减设置为为5e-4,每次迭代的批次大小设定为4。学习率策略中的初始率乘以其中iter为迭代次数。
步骤203、使用ADE20K和SkyFinder两个数据集进行网络模型的训练;ADE20K(《Scene Parsing through ADE20K Dataset》)数据集包含了室内和室外的天空信息,以保证普适性。然而,由于缺乏不同天气条件下天空区域的视觉信息,限制了分割的识别能力。因此,使用SkyFinder(《SkyFinder:Attribute-Based Sky Image Search》)数据集来消除天气的影响。丢弃数据集中所有尺寸小于480*480的图像数据以适应网络模型的裁剪尺寸。
此外,在训练过程中,对数据集进行三个增强操作,包括随机翻转、随机选择和随机亮度,使网络模型能够更好地适应空间位置和亮度变化的天空特征。
步骤204、在PC平台上构建和训练上述网络模型,使用第三方推理引擎将网络模型部署到移动端设备中。
例如可在PC平台上使用PyTorch(《Pytorch:An imperative style,high-performance deep learning library》)来构建和训练上述网络模型。完成训练后,利用第三方推理引擎MNN(《Mnn:A universal and efficient inference engine》)将网络模型部署到移动端设备中,将输入图像的分辨率设置为480*480或者640*360,在主流的移动端手机上可以达到实时的推理速度。
在此实施例中,所述步骤103利用惯性传感器数据和每帧图像对粗略的天空区域掩码图进行细化和稳定,具体地,如图3所示,具体步骤如下:
步骤301、从网络模型中获取粗略的天空区域分割结果。
设I为移动设备的相机帧彩色图像,也是本方法的一个输入变量。fi seg∈[0,1]代表从网络模型输出的第i个像素的分割值,这个值表示一个像素是否为天空区域的概率,所有的fi seg组成了一个向量fseg,通过使用阈值0.5可以将fseg进行二值分类,得到Pseg,Pseg是一个二维向量阵列,组成一张黑白图,即初步的天空分割掩码图。
具体地,从用户的视角来看,天空区域可以被认为是无限远处;同时,手持设备的移动在短时间内是相对连续的,因此天空区域的运动位移可以在两个相邻的帧之间被忽略。基于
这些观察结果,使用单应矩阵HΔt来获得第t-1帧和第t帧之间天空区域的像素级对应,公式如下:
其中下标为t-1的变量代表表示在第t-1帧中计算的值,并通过HΔt进行重投影到第t帧;在实践中,HΔt直接作用于GPU上采样纹理的UV坐标。εtemp是误差系数。上述方程的作用是在连续的帧之间尽可能地保持天空区域的分割结果一致性。
实验证明,由于网络模型输出的分割结果导致天空区域中一些假阴性像素带来了帧之间的抖动,在使用时间一致性约束后,这些像素会被纠正。
当使用者严格垂直手持设备时,天空区域不可能出现在相机取景器的下半部分,即地平线以下的区域(这里假定使用者站在或靠近地面,而不是在高空中)。然而,在实践中,设备的局部坐标系的垂直方向并不总是垂直于地面的,因为用户在拍摄时可能会自由地旋转设备。通过IMU数据可以获取重力的方向,从而估计地平线在取景器中的具体位置。从IMU数据中得到的旋转矩阵Rt实际上是从相机空间到世界空间的旋转矩阵,而相机投影矩阵K有助于将帧图像从本地相机坐标系转化为世界空间坐标系。该约束利用下列公式获得:
UVi是帧的二维索引的UV坐标,UVi.y表示帧的垂直方向;上述公式(3)表示通过KRtK-1转换UV坐标的y方向后,天空区域不允许出现在下部;smooth(x)∈[0,1]是平滑过渡函数,以避免产生锐利的边界。
在实践中,可以用smooth(x)=0.5+0.5*tanh(20x)作为平滑过渡。实验证明,由不同IMU数据约束的对齐天空区域,即使用IMU数据来确定地平线的位置,地平线以下的区域永远不会有天空像素。并且,位置约束能对日常拍摄场景中假阳性像素进行修正,需要说明的是,该约束并不能对地平线以上的非天空物体(如树木和建筑,或者抬起设备往高处拍摄时遮挡了使用者的物体)进行修正。这些物体将在颜色一致性约束中被完善。
在使用场景中,可能有一些靠近天空区域的物体具有复杂的边界,从而导致错误的分割结果。这些物体或像素不能被时间一致性或位置一致性约束所优化,因为它们往往靠近分割边界,这些像素不能被IMU数据所对齐,也不能被判断为地平线以下的区域。为了解决这个问题,使用自适应的颜色一致性约束,利用天空区域的色彩特征和局部色彩特征来改善那些与天空区域有明显不同颜色的像素。
为了清楚起见,需要引入一些记号。由于本约束与IMU数据无关,只讨论某一时刻的一帧数据的优化,可以忽略表示时间的下标t。Isky表示从I中复制的彩色图像(I已经在前文中给出解释),但只包含天空区域的像素(即图像其他部分的颜色总是被设置为黑色)。用N表示I、fseg、Pseg和Isky中所有像素的个数,因为这些图像在GPU中作为采样纹理时具有相同的尺寸。同样地,用Nsky来表示属于天空区域的像素个数。
首先,利用这些记号计算出天空区域的平均颜色csky=(R,G,B),这是一个三通道的颜色向量。不能简单地利用平均值公式来计算,该公式的时间复杂度为O(N),这样会导致计算效率非常低,无法实现实时计算。相反地,本实施例利用一种加速策略,基于均值滤波的思想,使用一个具有k×k内核的像素均值滤波对图像进行降采样,从而得到均值。
这两个值通过进行logkN次均值滤波降采样获得,其总时间复杂度为O(klogkN);将上述等式代入csky的计算方程中,可以得到:
该等式的计算复杂度同样为O(klogkN)。
然后,设计自适应的颜色一致性约束颜色一致性约束的任务是评估一个像素是否更接近于天空的平均色csky,还是更接近于该像素邻近像素的平均色即这里R是用来选取周围像素的正方形区域ω的边长,引入变量来表示像素的二值分类结果,和表示如下:
使用HSV空间来计算颜色距离函数D,因为HSV模型更适合于人类对颜色相似性的感知(详见《Hue and Saturation in the RGB Color Space》一文)。εcol是一个阈值,表示颜色一致性约束的有效范围。值得指出的是,这种简单的基于颜色的分类并不总能产生良好的优化效果,因此,用这种方法只优化那些fii seg的值在0.5左右的像素,而不是对整个图像产生影响。试验证明,图像中像素颜色的D值更接近于时,这些像素会被成功地修改为正确的值;并且边界周围的颜色经过过颜色一致性约束的优化之后,这类错误就不那么明显了。
步骤305、将上述三个约束统一到表达式中,从而并行地实现像素级优化,提升计算效率。
设最终输出的区域分类结果为Pi,t,则基于单个像素的约束表达式如下:
其中Pi,t和Pi,t-1分别表示最终优化后的像素二值分类结果。为时间一致性约束,为位置一致性约束,与为自适应的颜色一致性约束;表示第t帧的像素二值分类结果,前文提到的Pseg是一个向量,因此带有下标i的表示单个像素,t表示第t帧;所有的Pi,t组成了最终优化后的第t帧的天空区域掩码图Pt。
在此实施例中,所述使用快速抠图算法为掩码图增加alpha值,具体实施如下:
步骤401、在使用场景中,有些像素可能属于天空区域,也可能属于非天空区域。而Pt关注的是整体分类的正确性,但无法在区域的分割边界产生柔和过渡。这样的像素需要额外的alpha值,它们与边缘的形状有关。本实施例利用了一种高效的抠图方法GuidedImage Filtering来产生alpha值,该抠图方法是由He等人提出的,用于图像抠图、去噪等任务。Guided Image Filtering将本实施例优化后的天空区域掩码图作为输入,并产生带有额外alpha值的抠图结果。在实践中,使用这个方法的快速版本(《Fast guided filter》)来得到最终的掩码图Q=G(I,P,εmat,Rmat,saat)。其中G(x)表示其引导滤波函数,εmat、Rmat和smat分别为正则化参数、滤波窗口的大小和下采样率,具体实现过程可参考作者的文章,此处不再赘述。这个并行步骤的逐像素时间复杂度为
实施例2
本发明还提供一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行如前实施例1所述的用于增强现实场景的实时天空替换特效控制方法,此处不再赘述。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (8)
1.用于增强现实场景的实时天空替换特效控制方法,其特征在于,包括以下步骤:
步骤101、利用移动设备摄像头获取视频帧图像;
步骤102、将视频帧图像降采样缩小图像大小,利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图;
步骤103、利用惯性传感器数据和每帧图像对粗略的天空区域掩码图进行细化和稳定;
步骤104、使用快速抠图算法为掩码图增加alpha值;
步骤105、将最终的掩码图上采样到原始视频帧图像大小,然后将虚拟场景与原视频帧图像进行混合,输出带有虚拟天空和其他虚拟三维物体的增强现实效果。
2.根据权利要求1所述的用于增强现实场景的实时天空替换特效控制方法,其特征在于,步骤102中利用深度学习对每帧图像进行二值语义分割,得到粗略的天空区域掩码图,具体包括以下步骤:
步骤201、设计深度学习网络模型,该模型包含编码器和解码器,编码器减小特征图大小,解码器接收不同分辨率的特征并将它们融合在一起,最后采用softmax层进行语义分割结果的预测;
步骤202、采用小批量随机梯度下降法来优化网络,并设置参数;
步骤203、使用ADE20K和SkyFinder两个数据集进行网络模型的训练;在训练过程中,对数据集进行三个增强操作,包括随机翻转、随机选择和随机亮度,使网络模型能够更好地适应空间位置和亮度变化的天空特征;
步骤204、在PC平台上构建和训练上述网络模型,使用第三方推理引擎将网络模型部署到移动端设备中。
3.根据权利要求2所述的用于增强现实场景的实时天空替换特效控制方法,其特征在于,步骤103的具体步骤如下:
步骤301、从网络模型中获取粗略的天空区域分割结果;
步骤302、设计基于时间一致性的约束,通过惯性传感器数据在视频的前一帧和当前帧之间进行像素级的对应,以优化天空区域中的错误分割结果;
步骤303、设计基于位置一致性的约束,通过惯性传感器数据识别地平线在设备取景框中的位置,消除那些在地平线以下误被识别为天空区域的错误像素;
步骤304、设计自适应的颜色一致性约束,利用天空区域的色彩特征和局部色彩特征来优化具有复杂边界的物体和靠近天空区域但与天空颜色明显不同的物体;
步骤305、将上述三个约束统一到表达式中,从而并行地实现像素级优化,提升计算效率。
4.根据权利要求3所述的用于增强现实场景的实时天空替换特效控制方法,其特征在于,步骤302设计基于时间一致性的约束t表示帧的序号,i表示像素的序号;使用单应矩阵HΔt来获得第t-1帧和第t帧之间天空区域的像素级对应,公式如下:
其中下标为t-1的变量代表在第t-1帧中计算的值,并通过HΔt进行重投影到第t帧;εtemp是误差系数;
6.根据权利要求5所述的用于增强现实场景的实时天空替换特效控制方法,其特征在于,步骤304设计自适应的颜色一致性约束时,用Isky表示从I中复制的彩色图像,但只包含天空区域的像素,图像其他部分的颜色总是被设置为黑色;用N表示I、fseg、Pseg和Isky中所有像素的个数,用Nsky来表示属于天空区域的像素个数;
该等式的计算复杂度同样为O(klogkN);
然后,设计自适应的颜色一致性约束颜色一致性约束的任务是评估一个像素是否更接近于天空的平均色csky,还是更接近于该像素邻近像素的平均色即这里R是用来选取周围像素的正方形区域ω的边长,引入变量来表示像素的二值分类结果,和表示如下:
使用HSV空间来计算颜色距离函数D,εcol是一个阈值,表示颜色一致性约束的有效范围。
8.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的用于增强现实场景的实时天空替换特效控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111215497.5A CN113989460B (zh) | 2021-10-19 | 2021-10-19 | 用于增强现实场景的实时天空替换特效控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111215497.5A CN113989460B (zh) | 2021-10-19 | 2021-10-19 | 用于增强现实场景的实时天空替换特效控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113989460A true CN113989460A (zh) | 2022-01-28 |
CN113989460B CN113989460B (zh) | 2024-05-17 |
Family
ID=79739372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111215497.5A Active CN113989460B (zh) | 2021-10-19 | 2021-10-19 | 用于增强现实场景的实时天空替换特效控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113989460B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115272681A (zh) * | 2022-09-22 | 2022-11-01 | 中国海洋大学 | 基于高阶特征类解耦的海洋遥感图像语义分割方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012041418A1 (en) * | 2010-10-01 | 2012-04-05 | Telefonica, S.A. | Method and system for real-time images foreground segmentation |
WO2015175201A1 (en) * | 2014-05-15 | 2015-11-19 | Intel Corporation | Content adaptive background-foreground segmentation for video coding |
CN113034514A (zh) * | 2021-03-19 | 2021-06-25 | 影石创新科技股份有限公司 | 天空区域分割方法、装置、计算机设备和存储介质 |
-
2021
- 2021-10-19 CN CN202111215497.5A patent/CN113989460B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012041418A1 (en) * | 2010-10-01 | 2012-04-05 | Telefonica, S.A. | Method and system for real-time images foreground segmentation |
WO2015175201A1 (en) * | 2014-05-15 | 2015-11-19 | Intel Corporation | Content adaptive background-foreground segmentation for video coding |
CN106664417A (zh) * | 2014-05-15 | 2017-05-10 | 英特尔公司 | 用于视频编码的内容自适应背景前景分割 |
CN113034514A (zh) * | 2021-03-19 | 2021-06-25 | 影石创新科技股份有限公司 | 天空区域分割方法、装置、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
朱正伟;张静;饶鹏;陈忻;: "一种用于三维重建的多视图前景目标自动分割算法", 计算机应用与软件, no. 06, 12 June 2019 (2019-06-12) * |
沈逸云;邵雅琪;刘春晓;周华健;赵锦威: "结合天空检测与纹理平滑的图像去雾", 中国图象图形学报, vol. 22, no. 007, 31 December 2017 (2017-12-31) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115272681A (zh) * | 2022-09-22 | 2022-11-01 | 中国海洋大学 | 基于高阶特征类解耦的海洋遥感图像语义分割方法及系统 |
CN115272681B (zh) * | 2022-09-22 | 2022-12-20 | 中国海洋大学 | 基于高阶特征类解耦的海洋遥感图像语义分割方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113989460B (zh) | 2024-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020192568A1 (zh) | 人脸图像生成方法、装置、设备及存储介质 | |
US10147459B2 (en) | Artistic style transfer for videos | |
US10198839B2 (en) | Style transfer-based image content correction | |
US20180144509A1 (en) | Systems and Methods for Providing Convolutional Neural Network Based Image Synthesis Using Stable and Controllable Parametric Models, a Multiscale Synthesis Framework and Novel Network Architectures | |
WO2020000814A1 (en) | Computer-implemented method for generating composite image, apparatus for generating composite image, and computer-program product | |
US20210004962A1 (en) | Generating effects on images using disparity guided salient object detection | |
KR101288670B1 (ko) | 최초 배경 복구에 대한 대응책 | |
CN113287118A (zh) | 用于面部再现的系统和方法 | |
US20110273466A1 (en) | View-dependent rendering system with intuitive mixed reality | |
CN108875900B (zh) | 视频图像处理方法和装置、神经网络训练方法、存储介质 | |
CN107920202B (zh) | 基于增强现实的视频处理方法、装置及电子设备 | |
CN113688907B (zh) | 模型训练、视频处理方法,装置,设备以及存储介质 | |
CN111583100B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
KR102145220B1 (ko) | 딥러닝을 활용하여 2차원 이미지를 3차원 이미지로 변환하는 방법 및 장치 | |
KR20200128378A (ko) | 이미지 생성 네트워크의 훈련 및 이미지 처리 방법, 장치, 전자 기기, 매체 | |
CN112995678B (zh) | 一种视频运动补偿方法、装置及计算机设备 | |
CN108875751B (zh) | 图像处理方法和装置、神经网络的训练方法、存储介质 | |
CN116569213A (zh) | 图像区域的语义细化 | |
CN115187706B (zh) | 一种人脸风格迁移的轻量化方法、系统、存储介质和电子设备 | |
US20160086365A1 (en) | Systems and methods for the conversion of images into personalized animations | |
CN107766803B (zh) | 基于场景分割的视频人物装扮方法、装置及计算设备 | |
CN114758027A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN113989460B (zh) | 用于增强现实场景的实时天空替换特效控制方法及装置 | |
JP2023545052A (ja) | 画像処理モデルの訓練方法及び装置、画像処理方法及び装置、電子機器並びにコンピュータプログラム | |
CN111968191B (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 |