CN116710962A - 图像填充方法及装置、解码方法及装置、电子设备及介质 - Google Patents

图像填充方法及装置、解码方法及装置、电子设备及介质 Download PDF

Info

Publication number
CN116710962A
CN116710962A CN202080107775.2A CN202080107775A CN116710962A CN 116710962 A CN116710962 A CN 116710962A CN 202080107775 A CN202080107775 A CN 202080107775A CN 116710962 A CN116710962 A CN 116710962A
Authority
CN
China
Prior art keywords
image
pixels
filled
cavity
hole
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
Application number
CN202080107775.2A
Other languages
English (en)
Inventor
虞露
李思成
王楚楚
谢志煌
戴震宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Zhejiang University ZJU
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU, Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Zhejiang University ZJU
Publication of CN116710962A publication Critical patent/CN116710962A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/54Extraction of image or video features relating to texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/771Feature selection, e.g. selecting representative features from a multi-dimensional feature space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Processing (AREA)

Abstract

本公开实施例提供了一种图像填充方法及装置、解码方法及装置、电子设备及介质,其中一示例公开的图像填充方法包括:根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;至少基于所述可用像素对所述空洞进行填充。

Description

图像填充方法及装置、解码方法及装置、电子设备及介质 技术领域
本公开实施例涉及但不限于图像处理技术,尤指一种图像填充方法及装置、解码方法及装置、电子设备及介质。
背景技术
在涉及平移自由度的沉浸式视频应用中,观看者观看位置的移动会导致一些未曾被采集过的区域被暴露出来,这些区域被称为空洞。为了保证呈现给观看者的画面的完整性,涉及平移自由度的沉浸式视频系统会在解码端的最后,设置一个修复画面中空洞区域的步骤,该步骤被称为空洞填充。
相关技术中采用的空洞填充方式是逐像素遍历插值方法。然而,该逐像素遍历插值方法中,每个待填充像素仅以两个像素为参考对象进行空洞填充,很难在空洞位置上修复出细致、逼真的纹理。
因此,在沉浸式视频应用中,需要一种对图像空洞区域进行填充的新方法,以在空洞位置上修复出细致、逼真的纹理。
发明概述
本公开一示例性实施例提供了一种图像填充方法,包括:
根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
至少基于所述可用像素对所述空洞进行填充。
本公开一示例性实施例提供了一种图像填充装置,包括:
确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
填充单元,设置为至少基于所述可用像素对所述空洞进行填充。
本公开一示例性实施例提供了一种解码方法,包括:
根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
至少基于所述可用像素对所述空洞进行填充;
其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
本公开一示例性实施例提供了一种解码装置,包括:
确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
填充单元,设置为至少基于所述可用像素对所述空洞进行填充;
其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
本公开一示例性实施例提供了一种电子设备,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如上述的图像填充方法,或者实现如上述的解码方法。
本公开一示例性实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序时被处理器执行时实现如上述的图像填充方法,或者实现如上述的解码方法。
附图概述
附图用来提供对本公开示例性实施例的理解,并且构成说明书的一部分,与本公开示例性实施例一起用于解释本公开示例性实施例的技术方案,并不构成对本公开示例性实施例技术方案的限制。
图1为相关技术中MPEG沉浸式视频系统的框架示意图;
图2为相关技术中TMIV编码器执行数据表达的流程示意图;
图3为相关技术中TMIV解码器执行数据表达的流程示意图;
图4为本公开一示例性实施例图像填充方法的流程示意图;
图5为本公开一示例性实施例图像填充方法的流程示意图;
图6为一个原始待填充纹理图像的示意图;
图7为一个原始待填充深度图像的示意图;
图8为一个空洞掩模图像的示意图;
图9a为一个待填充纹理图像的示意图;
图9b为图6a中空洞的空洞周边可用像素的示意图;
图9c为图6a中空洞的空洞周边可用性模板图像的示意图;
图9d为图6a所示待填充纹理图像对应的纹理图像的示意图;
图9e为图6a所示待填充纹理图像对应的真实图像的示意图;
图10a为一个待填充纹理图像的示意图;
图10b为图7a中空洞的空洞周边可用像素的示意图;
图10c为图7a中空洞的空洞周边可用性模板图像的示意图;
图10d为图7a所示待填充纹理图像对应的纹理图像的示意图;
图10e为图7a所示待填充纹理图像对应的真实图像的示意图;
图11为一种利用预先训练好的神经网络进行空洞填充的示意图;
图12为本公开一示例性实施例图像填充装置的结构示意图;
图13为本公开一示例性实施例解码方法的流程示意图;
图14为本公开一示例性实施例解码装置的结构示意图;
图15为本公开一示例性实施例电子设备的结构示意图。
详述
在描述具有代表性的示例性实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本公开实施例的精神和范围内。
图1为相关技术中MPEG沉浸式视频(MIV,MPEG(Moving Picture Experts Group,动态图像专家组)Immersive Video)系统的框架示意图,如图1所示,所述MPEG沉浸式视频系统,包括TMIV(MIV的参考软件测试平台,Test model on MPEG Immersive Video)编码器(TMIV Encoder)、HM(High Efficiency Video Coding,HEVC,高效视频编码)编码器(HM Encoder)、HM解码器(HM Decoder)和TMIV解码器(TMIV Decoder)。
其中,HM编码器和HM解码器也可以被替换为VTM(Versatile Video Coding,VVC,通用视频编码)编码器(VTM Encoder)和VTM解码器(VTM Decoder),也可以是其他类型的编解码器,在此并不限制。
如图1所展示的,数据采集到的数据传送给TMIV编码器,该数据包括视域参数(View Parameters)、属性视频数据(Attribute Video Data)、几何视频数据(Geometry Video Data)和实体信息(Entity Map)。TMIV编码器对接收到的数据进行数据表达处理后一方面输出地图集(Atlas),另一方面将处理后的数据传递给HM编码器。HM编码器对接收的数据进行视频编码,将编码后的数据传递给HM解码器。HM解码器对接收到的数据进行视频解码,将解码后的数据传递给TMIV解码器。TMIV解码器根据视窗参数(Viewport Parameters)对接收到的数据进行视图渲染,将渲染后的数据传递给视窗(Viewport),由视窗进行图像呈现。
其中,针对TMIV编码器,其进行数据表达的流程如图2所示,包括:
对源视域(Source views)的数据进行自动参数选择(Automatic parameter selection);其中,该源视域(选择视域组,seleted for group)数据包括:视域参数View Parameters(包括基本/附加标签,incl.basic/additional label)、几何部分(Geometry Component)、属性部分(Attribute Component)和实体信息(可选)(Entity Map(opt)),源视域还可以输出视域参数列表(View Parameters list);
自动参数选择后,一放面输出参数集,另一方面进行分离实体层(可选)(Separate in entity layers(opt.));其中,自动参数选择和分离实体层的目的是为了准备源材料(Prepare source material);
进行分离实体层之后,依次进行编辑像素(Prune pixels)和聚合剪枝遮罩(Aggregate pruning masks);其中,编辑像素和聚合剪枝遮罩都属于修剪处理(Pruning processes);
进行聚合剪枝遮罩之后,依次进行聚集有效像素(Cluster active pixels)、拆分簇(Split clusters)、补丁打包(Pack patches)、打包属性平均值修正(Patch attr.Average value modification)和颜色校正(可选)(Color correction(opt.));其中,聚集有效像素、拆分簇、补丁打包、打包属性平均值修正和颜色校正都属于地图集处理(Atlas processes);
进行颜色校正之后,一方面输出地图集数据(Atlas data),另一方面生成视频数据(Generate video data);
生成视频数据之后,第一方面直接依次执行量化几何(Quantize geometry)和缩放几何图形(Scale geometry),生成几何视频数据(原始)(Geometry Video Data(raw));第二方面直接生成属性视频数据(原始)(Attribute Video Data(raw));第三方面执行等级占用率(可选)(Scale occupancy(opt.)),生成占用视频数据(原始)(Occupancy Video Data(raw));
其中,生成视频数据、量化几何、缩放几何图形和等级占用率都属于视频处理(Video processes)。
其中,针对TMIV解码器,其进行图像渲染的流程如图3所示,针对解码访问单元(所有一致性点)(Decoded access unit(all conformance points))根据视窗参数(Viewport Parameters)进行图像渲染(Rendering),其中,解码访问单元(所有一致性点)包括参数集(Parameter sets(VPS(Virtual Private Server虚拟专用服务器),CASPS(CAS Private Server单点登录认证专用服务器,Cetral Autheticatio Service)))、视域参数列表(View Parameters list(CAF,Core Audio File核心音频文件))、和多个地图集;其中,每个地图集(Per atlas)包括:地图集参数集(Atlas parameter sets(ASPS(Active Server Page Script动态服务页脚本),AFPS(Apple File System文件系统),SEI(Supplemental enhancement information补充增强信息)))、修补参数列表(Patch parameter list(ATL(自适应阈值的学习Adaptive Threshold Learning),FOC(磁场定向控制Field Oriented Control)))、块到块映射(Block to patch map)、几何视频数据(Geometry Video Data)、属性视频数据(Attribute Video Data)、以及占用视频数据(Occupancy Video Data)。
如图3所示,渲染过程包括:
依次执行实体筛选(可选)(Entity filtering(opt.))和斑块剔除(Patch culling),之后进入修剪视图重建(Pruned view reconstruction);其中,实体筛选和斑块剔除属于块到块映射过滤(Block to patch map filtering);
执行占用重建(Occupancy reconstruction)后进入修剪视图重建(Pruned view reconstruction);
分别执行属性平均值恢复(可选)(Attribute avg.value restoration(opt.))和几何缩放(可选)(Geometry scaling(opt.))后进入修剪视图重建(Pruned view reconstruction);其中,占用重建、修剪视图重建和属性平均值恢复属于重建处理(Reconstruction processes);
执行修剪视图重建(Pruned view reconstruction)后,一方面执行深度值解码(可选)(Depth value decoding(opt.))和深度估计(可选)(Depth estimation(opt.));另一方面执行未投影的全局重建剪枝视图坐标系(Unproject reconstructed pruned views to global coord.sys);其中,几何缩放、深度值解码和深度估计属于几何处理(Geometry processes);
在执行深度值解码和深度估计之后,也进入未投影的全局重建剪枝视图坐标系(Unproject reconstructed pruned views to global coord.sys);
在执行未投影的全局重建剪枝视图坐标系(Unproject reconstructed pruned views to global coord.sys)之后执行重新投影并合并到视窗中(Reproject & merge into a viewport),然后依次执行修补(Inpainting)和视窗空间处理(Viewing space handling),最后通过视窗(Viewport)呈现解码后的图像。
其中,未投影的全局重建剪枝视图坐标系和重新投影并合并到视窗中属于视图合成(View synthesis),修补和视窗空间处理属于视窗过滤(Viewport filtering)。
本公开下面所述实施例中涉及的图像填充方法,属于图3中视窗空间处理(Viewing space handling)中的操作。
需要说明地是,图1中所示的MPEG沉浸式视频系统框架仅为一种示例性说明,本公开下面所述实施例中涉及的图像填充方法或者解码方法,也可以应用于其他的MIV系统,对此并不作限制。
相关技术中,在MPEG(Moving Picture Experts Group,动态图像专家组)沉浸式视频MIV(MPEG Immersive Video)中,TMIV(MIV的参考软件测试平台,Test model on MPEG Immersive Video)目前采用的空洞填充方式是较为简单的逐像素遍历插值方法。该逐像素遍历插值方法主要通过以下流程实现:
寻找与待填充像素I位于同一行的、位于其左侧的距离其最近的有效像素A以及位于其右侧的距离其最近的有效像素B;
利用有效像素A、B的像素值以及待填充像素I到有效像素A、B的距离,以线性加权的形式计算得到待填充像素I的像素值。
如果固定地选取待填充像素的左侧、右侧最近邻有效像素作为参考像素,会导致选取参考像素的方式过于固化,不够灵活。因为,MPEG沉浸式视频中的空洞大多出现在深度较浅的物体周边,这种空洞的特性使得对于空洞内部的像素而言,仅有一部分位于空洞周边的像素是有参考价值的,其余的位于空洞周边的像素不仅没有参考价值,甚至有可能误导空洞填充结果。因此只有一部分的位于空洞周边的像素应该被选为参考像素,其余的位于空洞周边的像素不应被选择为参考像素。
另外,也可基于深度学习进行空洞填充,把图像空洞填充问题视为学习一个从被遮挡的输入到完整的输出的端到端映射问题。比如引入卷积神经网络构建神经网络基础模型,通过在大数据量的数据集上对神经网络进行训练,从而利用训练好的神经网络生成图像空洞区域中的新内容。但是该基于深度学习的空洞填充方法,同样存在选取参考像素的方式过于固化,不够灵活的问题。
由于相关技术中,每个待填充像素仅以两个像素为参考对象进行空洞填充,但是仅参考两个像素进行空洞填充会导致参考像素数量过少,从而无法充分地参考空洞外部周边像素之间的像素值关系,无法很好地重建空洞区域内部在水平方向上的高频纹理特征,因此很难在空洞位置上修复出细致、逼真的纹理。
本公开一些实施例提供了的一种图像填充方法,在一示例性实施例中,如图4所示,该方法包括:
步骤401,根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
步骤402,至少基于所述可用像素对所述空洞进行填充。
其中,所述至少基于所述可用像素对所述空洞进行填充,包括以下一种或者多种方式:
基于所述可用像素对所述空洞进行填充;
基于所述可用像素和所述不可用像素对所述空洞进行填充;
基于所述可用像素和所述不可用像素对所述空洞进行填充,且为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
在一示例性实施例中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
其中,所述屏蔽是指填充时不使用不可用像素对空洞进行填充。
在一示例性实施例中,所述待填充图像为从包括多个空洞的原始图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,包括:
根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
在一示例性实施例中,所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述至少基于所述可用像素对所述空洞进行填充,包括:
使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。在一示例性实施例中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
将所述可用像素组成的图像经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
在一示例性实施例中,所述神经网络是对预设的神经网络通过空洞填充样本进行训练得到的神经网络,以一个空洞对应的待填充图像、空洞掩模图像和空洞周边可用性模板图像为输入,以该待填充图像对应的纹理图像为输出;所述空洞填充样本为已各自标记对应待填充图像、空洞掩模图像、空洞周边可用性模板图像和真实图像的多个空洞。
在一示例性实施例中,通过以下一种或者多种方式实现使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像:
将所述空洞的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;将所述空洞的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像;
对所述空洞的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像;
其中在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积 操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集;N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,该方法还包括:
利用所述空洞填充样本对预设的神经网络进行训练得到所述神经网络,包括:
针对每一个空洞填充样本分别执行如下操作:
将该空洞填充样本中的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;将该空洞填充样本中的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理;
或者,对该空洞填充样本中的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理;
将所述神经网络输出的图像与该空洞填充样本中的真实图像进行比较,根据比较结果对所述神经网络继续进行训练;
其中在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集;N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,所述M的取值为{1、2}。
在一示例性实施例中,所述至少基于所述可用像素对所述空洞进行填充,包括:
针对所述空洞中的每一个待填充像素,分别执行如下操作:
确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
本示例中,不再仅仅依据待填充像素左右两个有效像素进行空洞填充,而是至少基于可用像素对待填充图像中的空洞进行填充,可以很好地重建空洞区域内部在水平方向上的高频纹理特征,从而在空洞区域上修复出细致、逼真的纹理。
本公开一些实施例提供了的一种图像填充方法,在一示例性实施例中,如图5所示,该方法包括:
步骤501,根据待填充图像中空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
步骤502,对所述待填充图像中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述空洞周边的可用像素,深度值小于所述深度阈值的像素设置为所述空洞周边的不可用像素;
步骤503,使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
在一示例性实施例中,所述待填充图像为从包括多个空洞的原始图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述原始图像包括虚拟视点图像中的一帧图像对应的原始待填充纹理图像和原始待填充深度图像。所述待填充图像包括待填充纹理图像和待填充深度图像。所述待填充纹理图像为从包括多个空洞的原始待填充纹理图像分割得到的纹理子块图像,所述纹理子块图像包括所述空洞。所述待填充深度图像为从包括多个空洞的原始待填充深度图像分割得到的深度子块图像,所述深度子块图像包括所述空洞。
在一示例性实施例中,可以通过对真实图像进行虚拟视点合成,获得该真实图像对应的虚拟视点图像。可以对所述虚拟视点图像中的一帧图像进行图像处理,获得该帧图像对应的原始待填充图像和空洞掩模图像;所述原始待填充图像包括原始待填充纹理图像和原始待填充深度图像。
在一示例性实施例中,对真实图像进行虚拟视点合成可以采用现有的任一种视点合成算法来完成,例如正向映射算法、反向映射算法等,在此并不作限制。该真实图像是指在沉浸式视频应用中,由至少左右两个相机分别对同一对象同时进行拍摄得到的图像。对虚拟视点图像进行图像处理可以采用现有的任一种算法,在此并不作限制。
在一示例性实施例中,原始待填充纹理图像包括两类区域,一类区域被称为有效区域,该区域内的像素均为有效像素,其像素值代表该像素的真实纹理值;另一类区域被称为空洞区域,该区域内的像素均为无效像素,这些像素本应缺失像素值,可以用0值来代替,在图像中可以呈现为黑色区域。
在一示例性实施例中,原始待填充纹理图像如图6所示,在图6中,有效区域内的像素均为有效像素,其像素值代表该像素的真实纹理值;空洞区域内的像素均为无效像素,这些像素本应缺失像素值,图6中用0值来代替,呈现为黑色区域。
在一示例性实施例中,所述待填充纹理图像的至少一个像素是有效像素并且所述待填充纹理图像的至少一个不同像素是无效像素。
在一示例性实施例中,原始待填充深度图像也包括两类区域,一类区域被称为有效区域,该区域内的像素均为有效像素,其像素值代表该像素的真实深度值;另一类区域被称为空洞区域,该区域内的像素均为无效像素,这些像素本应缺失像素值,可以用0值来代替。
在一示例性实施例中,原始待填充深度图像如图7所示,在图7中,有效区域内的像素均为有效像素,其像素值代表该像素的真实深度值;空洞区域内的像素均为无效像素,这些像素本应缺失像素值,在图7中用0值来代替。
在一示例性实施例中,所述待填充深度图像的至少一个像素是有效像素并且所述待填充纹理图像的至少一个不同像素是无效像素。
在一示例性实施例中,所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,空洞掩模图像是一张二值图像,用于指明原始待填充图像中的 空洞区域,对于每一张原始待填充图像而言都有一张对应的空洞掩模图像。空洞掩模图像也包括两类区域,一类区域对应原始待填充图像中的空洞区域,该区域的像素值为1,可以呈现为白色区域,另一类区域的像素值为0,可以呈现为黑色区域。
在一示例性实施例中,空洞掩模图像如图8所示,在图8中,空洞掩模图像中的一个区域,对应待填充图像中的空洞区域,该区域的像素值为1,图8中呈现白色区域,其他区域的像素值为0,在图8中呈现为黑色区域。
在一示例性实施例中,所述空洞的空洞掩模图像的至少一个像素是有效像素并且所述空洞掩模图像的至少一个不同像素是无效像素。
在一示例性实施例中,可以通过下述方式获取一个空洞的空洞掩模图像:
在空洞掩模图像中,按一定的扫描顺序,逐一选取由缺失像素构成的连通域,将该连通域作为一个空洞区域;
将该空洞区域的重心像素作为中心像素;
在所述空洞掩模图像中,以所述中心像素为中心截取宽和高均为W个像素的图像,作为该空洞的空洞掩模图像。
在一示例性实施例中,可以通过下述方式获取一个待填充纹理图像:
在对应的空洞掩模图像中,按一定的扫描顺序,逐一选取由缺失像素构成的连通域,将该连通域作为一个空洞区域;
将该空洞区域的重心像素作为中心像素;
在原始待填充纹理图像中,以所述中心像素为中心截取宽和高均为W个像素的图像,作为该待填充纹理图像。
在一示例性实施例中,可以通过下述方式获取一个待填充深度图像:
在对应的空洞掩模图像中,按一定的扫描顺序,逐一选取由缺失像素构成的连通域,将该连通域作为一个空洞区域;
将该空洞区域的重心像素作为中心像素;
在原始待填充深度图像中,以所述中心像素为中心截取宽和高均为W个像素的图像,作为该待填充深度图像。
在一示例性实施例中,所述W为512。
在一示例性实施例中,所述W的数值可以根据每个空洞区域的大小进行预先设定,根据预先设定的M的数值获取的空洞的空洞掩模图像、待填充纹理图像和待填充深度图像需要包含至少一个完整的空洞。
在一示例性实施例中,执行膨胀操作可以采用现有的任一种图像膨胀算法,在此并不作限制。
在一示例性实施例中,所述预设的阈值分割算法可以为现有的任一种阈值分割算法,在此并不作限制。
在一示例性实施例中,所述预设的阈值分割算法为大律法(OTSU算法,最大类间方差法)。
在一示例性实施例中,还可以采用如下方式确定一个空洞周边的可用像素和不可用像素:
对该空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述 可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
在一示例性实施例中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
将所述可用像素组成的图像经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
其中,M的取值为{1、2、3……N-1}的子集,N为所述神经网络包括的卷积层层数;所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
在一示例性实施例中,M的取值为{1、2}。
在一示例性实施例中,M的取值可以根据要求的填充效果进行预先设定。
在一示例性实施例中,空洞周边可用性模板图像,是分析空洞掩模图像与待填充深度图像,得到可指导后续空洞填充操作的参考区域,其中参考区域以二值掩模图像的形式来表示。生成空洞周边可用性模板的目的是明确待填充纹理图像中的对后续空洞填充操作有指导性帮助的区域。
在一示例性实施例中,空洞周边可用性模板图像也包含两类区域,一类区域对应待填补深度图像中的可用像素区域,像素值可以设置为0,在图中呈现为黑色区域,另一类区域对应与不可用像素区域,像素值可以设置为1,在图中呈现为白色区域。
本示例中,对待填充深度图像和空洞掩模图像处理得到空洞周边可用性模板图像。空洞周边可用性模板图像明确了待填补纹理图像中对后续空洞填充有指导性意义的参考区域,有助于提升经后续空洞填充网络处理后得到的完整的目标视窗图像的质量。
在一示例性实施例中,还可以采用如下方式对一个空洞进行填充:
以注意力机制将该空洞周边的可用像素和不可用像素引入预先训练好的神经网络对该空洞进行填充,其中,填充时为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
在一示例性实施例中,所述神经网络是对预设的神经网络通过空洞填充样本进行训练得到的神经网络,以一个空洞对应的待填充图像、空洞掩模图像和空洞周边可用性模板图像为输入,以该待填充图像对应的纹理图像为输出;所述空洞填充样本为已各自标记对应待填充图像、空洞掩模图像、空洞周边可用性模板图像和真实图像的多个空洞。
在一示例性实施例中,通过以下一种或者多种方式实现使用预先训练好的神经网络对所述空洞进行填充
将所述空洞的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;
将所述空洞的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像;
对所述空洞的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像。
在一示例性实施例中,在进行卷积处理中,在前(N-1)/2个卷积层和第(N1/2)+1个卷积层中,每一个卷积层输出张量的高和宽为输入张量的一半;在后(N-1)/2个卷积层中,每一个卷积层输出张量的高和宽为输入张量的两倍;
其中,在前(N-1)/2个卷积层和后(N-1)/2个卷积层中,将每两个卷积层输出尺寸一样的张量进行级联操作,并将级联操作后的张量作为该两个卷积层中位于后(N-1)/2个卷积层中的卷积层的特征图;
其中,在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集,N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,该方法还包括:
利用所述空洞填充样本对预设的神经网络进行训练得到所述神经网络,包括:
针对每一个空洞填充样本分别执行如下操作的一种或者多种:
将该空洞填充样本中的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;将该空洞填充样本中的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理;
对该空洞填充样本中的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理;
将所述神经网络输出的图像与该空洞填充样本中的真实图像进行比较,根据比较结果对所述神经网络继续进行训练。
在一示例性实施例中,在进行卷积处理中,在前(N-1)/2个卷积层和第(N1/2)+1个卷积层中,每一个卷积层输出张量的高和宽为输入张量的一半;在后(N-1)/2个卷积层中,每一个卷积层输出张量的高和宽为输入张量的两倍;
其中,在前(N-1)/2个卷积层和后(N-1)/2个卷积层中,将每两个卷积层输出尺寸一样的张量进行级联操作,并将级联操作后的张量作为该两个卷积层中位于后(N-1)/2个卷积层中的卷积层的特征图;
其中,在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集;N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,所述N的数值为13。
在一示例性实施例中,所述N的数值可以预先设定,例如可以根据要求的填充效果进行预先设定。
在一示例性实施例中,所述C的数值为5。
在一示例性实施例中,所述C的数值可以预先设定,例如可以根据要求的填充效果进行预先设定。
在一示例性实施例中,还可以采用如下方式对一个空洞进行填充:
针对该空洞中的每一个待填充像素,分别执行如下操作:
确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
本示例提供的技术方案,将空洞周边的可用像素以注意力机制的形式加入到神经网络中,使得神经网络能够显式地参考对空洞填充有价值的像素。
在一示例性实施例中,待填充纹理图像如图9a或者图10a所示。
在一示例性实施例中,对应于图9a中的空洞,获得的空洞周边的可用像素和不可用像素如图9b所示,获得的空洞周边可用性模板图像如图9c。对应于图10a中的空洞区域,获得的空洞周边的可用像素和不可用像素如图10b所示,获得的空洞周边可用性模板图像如图10c所示。
在一示例性实施例中,图11为一预先训练好的神经网络,包括13个卷积层和1个全连接层,每层卷积核大小为3*3。
基于图11所示的神经网络,如图11所示,针对图9a所示的空洞,执行如下操作:
1、将该空洞的待填充纹理图像、待填充深度图像和空洞掩模图像进行级联操作得到一个5通道张量,然后将5通道张量该与如图9c所示空洞周边可用性模板图像按元素位置点乘操作得到一个新的5通道张量;
2、将该新的5通道张量输入所述神经网络进行卷积处理;其中,在前6个卷积层和第7个卷积层中,每一个卷积层输出张量的高和宽为输入张量的一半;在后6个卷积层中,每一个卷积层输出张量的高和宽为输入张量的两倍;
其中,在前6个卷积层和后6个卷积层中,将每两个卷积层输出尺寸一样的张量进行级联操作,并将级联操作后的张量作为该两个卷积层中位于后6个卷积层中的卷积层的特征图;
其中,在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1,2};
3、输出得到一张智能填充纹理图像。
在本示例中,该智能填充纹理图像如图9d所示,待填充纹理图像对应的真实图像如图9e所示。对比图9a、图9d、图9e,可以看出经过本示例所述的图像填充方法进行空洞填充后,得到的纹理图像在空洞区域上修复出了细致、逼真的纹理,与真实图像相比较差距很小。
本示例中,为了更好地引入空洞周边可用性模板,没有选择将空洞周边可用性模板图像与待填充纹理图像、待填充深度图像和空洞掩模图像以级联的方式共同送进神经网络,而是选择将空洞周边可用性模板图像以注意力机制的形式加入到神经网络中,即1、利用空洞周边可用性模板图像与神经网络的输入张量执行按元素位置点乘操作;2、利用对空洞周边可用性模板图像经过卷积操作得到的可用性特征图与经神经网络处理得到的第1、2层特征图执行按元素位置点乘操作。通过将空洞周边可用性模板图像以注意力机制的形式加入到神经网络中,使得神经网络能够显式地参考对空洞填充有价值的参考区域(即空洞周边可用性模板图像)的信息。
本示例中,将空洞周边可用性模板图像引入神经网络中,以注意力机制的方式将空洞周边可用性模板图像作用于神经网络的浅层特征,有效地使其关注待填充纹理图像中有价值的参考区域。
在一示例性实施例中,针对图10a所示的空洞区域,采用图11所示填充方法进行空洞填充后,得到的纹理图像如图10d所示,而图10a所示的待填充纹理子块图像对应的真实图像如图10e所示。对比图10a、图10d、图10e,可以看出经过本示例所述的图像填充方法进行空洞填充后,得到的纹理图像在空洞区域上修复出了细致、逼真的纹理,与真实图像相比较差距很小。
本公开一些实施例提供的图像填充方法,可以位于视点合成操作之后,修复经过视点合成而得到的纹理图像中的未被着色区域的纹理图案,可以提升高自由度视频中单帧图像的画面质量。
本公开一些实施例提供的图像填充方法,可以有效减少最终呈现给观看者的目标视窗图像中的瑕疵与伪影,提升目标视窗图像的主、客观质量。
本公开一些实施例提供了的一种图像填充装置,在一示例性实施例中,如图12所示,该装置包括:
确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
填充单元,设置为至少基于所述可用像素对所述空洞进行填充。
在一示例性实施例中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
在一示例性实施例中,所述待填充图像为从包括多个空洞的原始图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述确定单元,设置为根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
在一示例性实施例中,所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述填充单元,设置为使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
在一示例性实施例中,所述填充单元,设置为通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:将用于指示所述可用 像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
将所述可用像素组成的图像经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
在一示例性实施例中,所述神经网络是对预设的神经网络通过空洞填充样本进行训练得到的神经网络,以一个空洞对应的待填充图像、空洞掩模图像和空洞周边可用性模板图像为输入,以该待填充图像对应的纹理图像为输出;所述空洞填充样本为已各自标记对应待填充图像、空洞掩模图像、空洞周边可用性模板图像和真实图像的多个空洞。
在一示例性实施例中,所述填充单元,设置为通过以下一种或者多种方式实现使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像:
将所述空洞的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;将所述空洞的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像;
对所述空洞的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理,将所述神经网络输出的图像作为所述空洞的纹理图像;
其中在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集;N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,该装置还包括:
训练单元,设置为利用所述空洞填充样本对预设的神经网络进行训练得到所述神经网络,包括:
针对每一个空洞填充样本分别执行如下操作:
将该空洞填充样本中的待填充图像与空洞掩模图像进行级联操作,得到第一C通道张量,C为≥1的整数;将该空洞填充样本中的空洞周边可用性模板图像与该第一C通道张量执行元素位置点乘操作得到第二C通道张量;将该第二C通道张量输入所述神经网络进行卷积处理;
或者,对该空洞填充样本中的待填充图像、空洞掩模图像与空洞周边可用性模板图像进行级联操作,得到第三C通道张量,C为≥1的整数;将该第三C通道张量输入所述神经网络进行卷积处理;
将所述神经网络输出的图像与该空洞填充样本中的真实图像进行比较,根据比较结果对所述神经网络继续进行训练;
其中在进行卷积处理中,将对该空洞填充样本中的空洞周边可用性模板图像进行卷积操作得到可用性特征图,并将该可用性特征图与前M层卷积层的输出特征图按元素位置点乘操作后得到的特征图作为前M+1层卷积层的输入;M的取值为{1、2、3……N-1}的子集;N为所述神经网络包括的卷积层层数,N为≥3的奇数。
在一示例性实施例中,所述M的取值为{1、2}。
在一示例性实施例中,所述填充单元,设置为针对所述空洞中的每一个待填充像素,分别执行如下操作:
确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
本示例,不再仅仅依据待填充像素左右两个有效像素进行空洞填充,而是至少基于可用像素对待填充图像中的空洞进行填充,可以很好地重建空洞区域内部在水平方向上的高频纹理特征,从而在空洞区域上修复出细致、逼真的纹理。
本公开一些实施例提供了的一种解码方法,如图13所示,该方法包括:
步骤1301,根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
步骤1302,至少基于所述可用像素对所述空洞进行填充;
其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
在一示例性实施例中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
在一示例性实施例中,通过以下方式获取所述待填充图像:
对已编码图像进行视频解码得到原始图像;
从包括多个空洞的原始图像中分割得到子块图像,所述子块图像包括所述空洞;
将所述子块图像作为所述待填充图像。
在一示例性实施例中,所述根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,包括:
根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
在一示例性实施例中,所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
其中,所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述至少基于所述可用像素对所述空洞进行填充,包括:
使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填 充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
在一示例性实施例中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:
将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
将所述可用像素经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
在一示例性实施例中,所述至少基于所述可用像素对所述空洞进行填充,包括:
针对所述空洞中的每一个待填充像素,分别执行如下操作:
确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
本公开一些实施例提供了的一种解码方法,在一示例性实施例中,该方法包括:
采用上述任一示例所述的图像填充方法对待填充图像进行填充;
其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
在一示例性实施例中,在采用上述任一示例所述的图像填充方法对待填充图像进行填充之前,该方法还包括:
对已编码图像进行视频解码;
将从包括多个空洞的原始图像中分割得到子块图像,所述子块图像包括所述空洞;
将所述子块图像作为所述待填充图像。
在一示例性实施例中,在采用上述任一示例所述的图像填充方法对待填充图像进行填充之后,该方法还包括:
将进行填充后的图像作为解码后的图像。
本公开一些实施例提供了的一种解码装置,在一示例性实施例中,如图14所示,该装置包括:
确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
填充单元,设置为至少基于所述可用像素对所述空洞进行填充;
其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
在一示例性实施例中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权 重低于为所述可用像素赋予的权重。
在一示例性实施例中,该装置还包括,获取单元,设置为通过以下方式获取所述待填充图像:
对已编码图像进行视频解码得到原始图像;
从包括多个空洞的原始图像中分割得到子块图像,所述子块图像包括所述空洞;
将所述子块图像作为所述待填充图像。
在一示例性实施例中,所述确定单元,设置为根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
在一示例性实施例中,所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
其中,所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
在一示例性实施例中,所述填充单元,设置为使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
在一示例性实施例中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:
将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
将所述可用像素经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
在一示例性实施例中,所述填充单元,设置为针对所述空洞中的每一个待填充像素,分别执行如下操作:
确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
本公开一些实施例提供了的一种电子设备,在一示例性实施例中,如图15所示,该电子设备包括:
存储器和处理器;
其中,所述储存器中存储有可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现上述任一示例所述的图像填充方法,或者实现上述任一示例所述的解码方法。
本公开一些实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序时被处理器执行时实现上述任一示例所述的图像填充方法,或者实现上述任一示例所述的解码方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (20)

  1. 一种图像填充方法,包括:
    根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
    至少基于所述可用像素对所述空洞进行填充。
  2. 根据权利要求1所述的图像填充方法,其中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
  3. 根据权利要求1所述的图像填充方法,其中,所述待填充图像为从包括多个空洞的原始图像分割得到的子块图像,所述子块图像包括所述空洞。
  4. 根据权利要求1所述的图像填充方法,其中,所述根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,包括:
    根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
    对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
  5. 根据权利要求1所述的图像填充方法,其中,
    所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
    对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
    将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
    其中,所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
  6. 根据权利要求1所述的图像填充方法,其中,所述至少基于所述可用像素对所述空洞进行填充,包括:
    使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
  7. 根据权利要求6所述的图像填充方法,其中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:
    将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
    将所述可用像素经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
    其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
  8. 根据权利要求1所述的图像填充方法,其中,所述至少基于所述可用像素对所述空洞进行填充,包括:
    针对所述空洞中的每一个待填充像素,分别执行如下操作:
    确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
    或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
  9. 一种图像填充装置,包括:
    确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
    填充单元,设置为至少基于所述可用像素对所述空洞进行填充。
  10. 一种解码方法,包括:
    根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
    至少基于所述可用像素对所述空洞进行填充;
    其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
  11. 根据权利要求10所述的解码方法,其中,填充时屏蔽所述不可用像素,或者为所述不可用像素赋予的权重低于为所述可用像素赋予的权重。
  12. 根据权利要求10所述的解码方法,其中,通过以下方式获取所述待填充图像:
    对已编码图像进行视频解码得到原始图像;
    从包括多个空洞的原始图像中分割得到子块图像,所述子块图像包括所述空洞;
    将所述子块图像作为所述待填充图像。
  13. 根据权利要求10所述的解码方法,其中,所述根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,包括:
    根据所述空洞周边区域的像素的深度值,采用阈值分割算法计算得到深度阈值;
    对所述待填充图像或所述空洞周边区域中的像素,将其中深度值大于等于所述深度阈值的像素设置为所述可用像素,深度值小于所述深度阈值的像素设置为所述不可用像素。
  14. 根据权利要求13所述的解码方法,其中,
    所述空洞周边区域是指由候选像素形成的区域;所述候选像素通过以下操作获得:
    对所述空洞的空洞掩模图像中对应的空洞区域执行膨胀操作;
    将执行膨胀操作后得到的图像与所述空洞的空洞掩模图像执行异或操作,并将执行异或操作后得到的像素作为候选像素;
    其中,所述空洞的空洞掩模图像为从包括多个空洞的原始图像对应的空洞掩模图像分割得到的子块图像,所述子块图像包括所述空洞。
  15. 根据权利要求10所述的解码方法,其中,所述至少基于所述可用像素对所述空洞进行填充,包括:
    使用预先训练好的神经网络对所述空洞进行填充,得到所述空洞的纹理图像,其中填充时通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分。
  16. 根据权利要求15所述的解码方法,其中,通过以下一种或者多种方式实现通过注意力机制将所述可用像素作为输入的待填充图像中需要关注的部分:
    将用于指示所述可用像素的空洞周边可用性模板图像与所述神经网络的输入张量执 行按元素位置点乘操作,以屏蔽所述输入张量中与所述不可用像素对应的元素;
    将所述可用像素经过卷积操作得到的特征图与经所述神经网络处理得到的前M层特征图执行按元素位置点乘操作;
    其中,M的取值为{1、2、3……N-1}的子集,所述输入张量是所述待填充图像与所述空洞的空洞掩模图像进行级联操作得到的张量。
  17. 根据权利要求10所述的解码方法,其中,所述至少基于所述可用像素对所述空洞进行填充,包括:
    针对所述空洞中的每一个待填充像素,分别执行如下操作:
    确定与该待填充像素位于同一行的可用像素,基于确定的可用像素的纹理值,对所述待填充像素进行填充;
    或者,确定与该待填充像素位于同一行的可用像素和不可用像素,基于确定的可用像素和不可用素的纹理值,对所述待填充像素进行填充,其中为不可用像素的纹理值赋予的权重低于可用像素的纹理值得权重。
  18. 一种解码装置,包括:
    确定单元,设置为根据待填充图像中空洞周边区域的像素的深度,确定所述空洞周边的可用像素和不可用像素,其中,所述可用像素的深度值大于所述不可用像素的深度值;
    填充单元,设置为至少基于所述可用像素对所述空洞进行填充;
    其中,所述待填充图像为从对已编码图像进行视频解码后得到的原始图像中获取的图像。
  19. 一种电子设备,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如权利要求1至8中任一项所述的图像填充方法,或者实现如权利要求10至17中任一项所述的解码方法。
  20. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序时被处理器执行时实现如权利要求1至8中任一项所述的图像填充方法,或者实现如权利要求10至17中任一项所述的解码方法。
CN202080107775.2A 2020-12-14 2020-12-14 图像填充方法及装置、解码方法及装置、电子设备及介质 Pending CN116710962A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/136215 WO2022126333A1 (zh) 2020-12-14 2020-12-14 图像填充方法及装置、解码方法及装置、电子设备及介质

Publications (1)

Publication Number Publication Date
CN116710962A true CN116710962A (zh) 2023-09-05

Family

ID=82058766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080107775.2A Pending CN116710962A (zh) 2020-12-14 2020-12-14 图像填充方法及装置、解码方法及装置、电子设备及介质

Country Status (4)

Country Link
US (1) US20230306563A1 (zh)
EP (1) EP4262197A4 (zh)
CN (1) CN116710962A (zh)
WO (1) WO2022126333A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240152757A1 (en) * 2022-11-08 2024-05-09 Adobe Inc. Guided comodgan optimization
CN116977162B (zh) * 2023-09-25 2024-01-19 福建自贸试验区厦门片区Manteia数据科技有限公司 图像配准方法、装置、存储介质以及电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102239506B (zh) * 2008-10-02 2014-07-09 弗兰霍菲尔运输应用研究公司 中间视合成和多视点数据信号的提取
WO2013073316A1 (ja) * 2011-11-14 2013-05-23 独立行政法人情報通信研究機構 立体映像符号化装置、立体映像復号化装置、立体映像符号化方法、立体映像復号化方法、立体映像符号化プログラム及び立体映像復号化プログラム
US9117290B2 (en) * 2012-07-20 2015-08-25 Samsung Electronics Co., Ltd. Apparatus and method for filling hole area of image
CN103269438A (zh) * 2013-05-27 2013-08-28 中山大学 基于3d视频和自由视点电视的深度图像绘制的方法
US11670039B2 (en) * 2019-03-04 2023-06-06 Dolby Laboratories Licensing Corporation Temporal hole filling for depth image based video rendering
CN111325693B (zh) * 2020-02-24 2022-07-12 西安交通大学 一种基于单视点rgb-d图像的大尺度全景视点合成方法

Also Published As

Publication number Publication date
EP4262197A4 (en) 2024-01-17
EP4262197A1 (en) 2023-10-18
US20230306563A1 (en) 2023-09-28
WO2022126333A1 (zh) 2022-06-23

Similar Documents

Publication Publication Date Title
US11055828B2 (en) Video inpainting with deep internal learning
CN113658051B (zh) 一种基于循环生成对抗网络的图像去雾方法及系统
Guo et al. Progressive image inpainting with full-resolution residual network
US10860929B2 (en) Machine-learning based video compression
US20230306563A1 (en) Image filling method and apparatus, decoding method and apparatus, electronic device, and medium
US20230267651A1 (en) Method for encoding and decoding a point cloud
US20200296401A1 (en) Method and Apparatus of Patch Segmentation for Video-based Point Cloud Coding
US20230051960A1 (en) Coding scheme for video data using down-sampling/up-sampling and non-linear filter for depth map
US20220414838A1 (en) Image dehazing method and system based on cyclegan
EP3343445A1 (en) Method and apparatus for encoding and decoding lists of pixels
CN116205820A (zh) 图像增强方法、目标识别方法、设备及介质
US20230360180A1 (en) Digital image inpainting utilizing a cascaded modulation inpainting neural network
US6373977B1 (en) Methods and apparatus for constructing a 3D model of a scene and rendering new views of the scene
US20230343017A1 (en) Virtual viewport generation method and apparatus, rendering and decoding methods and apparatuses, device and storage medium
CN116681631A (zh) 基于对偶网络的低质量胶片图像修复增强方法及系统
CN113706572B (zh) 一种基于查询向量的端到端的全景图像分割方法
US11558625B2 (en) Method for generating residual image of multi-view video and apparatus using the same
US20230145498A1 (en) Image reprojection and multi-image inpainting based on geometric depth parameters
EP3154023A1 (en) Method and apparatus for de-noising an image using video epitome
Evain et al. A lightweight neural network for monocular view generation with occlusion handling
CN116958317A (zh) 一种结合边缘信息和外观流操作的图像修复方法及系统
CN111901595A (zh) 一种基于深度神经网络的视频编码方法及装置、介质
Zhong et al. Displacement-invariant cost computation for efficient stereo matching
Carvalho et al. Learning multiplane images from single views with self-supervision
Zhu et al. Fused network for view synthesis

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