CN108564527B - 基于神经网络的全景图内容补全和修复的方法及装置 - Google Patents

基于神经网络的全景图内容补全和修复的方法及装置 Download PDF

Info

Publication number
CN108564527B
CN108564527B CN201810296759.7A CN201810296759A CN108564527B CN 108564527 B CN108564527 B CN 108564527B CN 201810296759 A CN201810296759 A CN 201810296759A CN 108564527 B CN108564527 B CN 108564527B
Authority
CN
China
Prior art keywords
coordinate system
image
compensated
neural network
panoramic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810296759.7A
Other languages
English (en)
Other versions
CN108564527A (zh
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201810296759.7A priority Critical patent/CN108564527B/zh
Publication of CN108564527A publication Critical patent/CN108564527A/zh
Application granted granted Critical
Publication of CN108564527B publication Critical patent/CN108564527B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/08Projecting images onto non-planar surfaces, e.g. geodetic screens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

本发明提出了一种基于神经网络的全景图内容补全和修复的方法,包括:确定第一坐标系S下的全景图中的待补全区域,待补全区域以第二坐标系Q表示;将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R,得到待补全平面图像;在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像;将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S。据此,可以依据全景图数据进行水印消除,前景遮挡物去除等图像补全操作。克服了相关技术中直接在全景图的二维存储形态上进行图像补全的变形失真等问题,显著提升了全景内容的展现质量和内容分发过程中的用户体验。

Description

基于神经网络的全景图内容补全和修复的方法及装置
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于神经网络的全景图内容补全和修复的方法及装置。
背景技术
全景内容(panorama)包括全景图片和全景视频,有时也被称为“360°全景”或“街景(street view)”等,是图片或视频的一种特殊呈现形式。通过全景图可以利用广角的表现手段以及图像、视频、三维模型等形式,更好地表现出周围的环境。让用户可从任意角度无限制地观看全景内容投影到三维空间之后的画面(例如,一般来说,构造全景图时会期望全景图可支持可水平方向360°范围、垂直方向180°范围)。
传统视觉内容——例如典型的平面图片和视频,所展示的画面空间上大多局限于矩形屏幕、用户视角被局限在特定范围内。全景图与之相比,具有连贯性好、能多线性、多角度地展示周围环境、提供更好的临场感、大空间、以及高交互性等优点。由于全景图可以展示维度更高、更丰富的视觉内容,提供更具沉浸感、真实性和趣味性的视觉体验,故而尤其适合支持复杂环境、虚拟户外、沉浸探索、操作指导等场景下的信息展示和用户交互。并且全景图在虚拟现实(VR:virtual reality)技术中的场景展示和用户交互方面也得到越来越广泛的应用。可以说,全景图及其在VR场景下的展示和用户交互,代表了下一代信息展现的形态和趋势。
同时,随着摄影技术(如民用无人机、便携式全景相机等)的高速发展,全景内容的生产成本越来越低。在精度要求不高的情况下,很多智能手机均能实现简单的全景图像拍摄和拼接,无需专业设备和软件。从而在互联网尤其是社交媒体上,全景内容也越来越多地出现。除了专业VR设备外,主流的网页浏览器现已支持对全景内容的展示和交互。在人工智能背景下,全景内容也能更好地满足用户对视觉信息进行搜索和消费的需求。可以预见,在短期未来内,直接以全景图形式提供和展现的视觉内容,将会在内容领域占据越来越多的比例。
在传统视觉内容的生成和传播所遇到的问题,全景图基本均要面对,此外还有一部分由于全景图特点而导致的特殊问题。例如,全景内容在制作、分发、传播的过程中也可能被人为加入广告或水印等附加视觉信息,对内容产生一定程度的遮挡,影响全景内容的完整性和用户观看体验。图1示出了一些添加了水印的全景图局部图像,其中,水印区域以方框标识。此外,在全景内容的拍摄过程中,也会出现不受控制的局部遮挡,例如在热门景点,由于人流密度大,极易发生拍摄全景图时主体景物被人遮挡的情况,而拍摄者难以像拍摄普通照片一样对整个场景进行有效控制。再者,基于隐私等因素的考虑,也可能需要对全景中出现的特定物体(如行人、车辆等)进行自然地抹除。
在技术层面,水印或者特定遮挡物的去除涉及对全景画面中的特定像素区域进行修复。一般体现为抹除前景像素、基于其周边可用的背景像素信息对前景范围内的像素取值进行推断、计算和填充。对于普通的平面图像,相关技术中有一些手段来实现这样的目的,但是对于从全景图中直接进行对广告/水印/特定物体等的抹除,尚无有效的方法。而直接将用于普通平面图像的修复方法用于全景图,则会面临扭曲、失真等问题。因此,需要有效的针对全景内容的图像补全和修复方法,以实提升用户观看体验和/或对隐私的有效保护。
现有技术中直接在全景内容基础上的进行图像补全和修复方法非常少,而且这极少的方法中大部分是关于补全全景内容拍摄时在相机支架位置(全景正下方地面部分)产生的空洞,而非如图中任意位置的缺陷,因此适用场景受限。并且这些方法使用的图像补全技术均不基于神经网络或其他机器学习方法,不依赖于训练数据,而是利用边缘像素平滑填充等数值计算方式,直接将此类方法用于任意位置的补全效果也不理想。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一,提供一种可直接用于全景图的内容补全和修复的方法及装置。
为达上述目的,本发明第一方面的实施例提供了一种基于神经网络的全景图内容补全和修复的方法,所述方法包括:确定全景图中的待补全区域,其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f;将全景图中的待补全区域内的像素及其周缘预定义范围内的像素按照映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,从第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影;在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像;以及将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S。
在一些实施例中,所述第二坐标系Q与第一坐标系S不同,确定全景图中的待补全区域包括:将全景图映射到第二坐标系Q,并在第二坐标系Q下确定待补全区域。
在一些实施例中,所述第二坐标系Q与第一坐标系S不同,确定全景图中的待补全区域包括:在第一坐标系S下确定待补全区域,并将第一坐标系S下的待补全区域映射到第二坐标系Q,得到第二坐标系Q下的待补全区域。
在一些实施例中,所述第二坐标系Q与第一坐标系S相同,确定全景图中的待补全区域包括在第一坐标系S下确定待补全区域;将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R包括:将全景图中的待补全区域内的像素及其周缘预定义范围内的像素从第一坐标系S映射到第三坐标系R。
在一些实施例中,所述第二投影变换g为满足保持特定几何特性的变换。
在一些实施例中,所述满足保持特定几何特性的变换为保角变换或保形变换。
在一些实施例中,所述第二投影变换g满足:待补全区域的几何中心在第二投影变换后,对应于待补全平面图像的几何中心或几何中心附近一定范围的邻域内。
在一些实施例中,所述第二坐标系Q为球坐标系。
在一些实施例中,将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R,包括:将全景图映射到第二坐标系Q,第二坐标系Q为球坐标系;以第二坐标系Q的球心为观察点;以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
在一些实施例中,基于神经网络方法对待补全平面图像进行补全包括:使用生成式对抗网络实现对待补全平面图像的补全。
在一些实施例中,基于神经网络方法对待补全平面图像进行补全包括:根据全景内容生成训练数据,对神经网络进行预先训练,将训练后的神经网络作为图像补全模型;根据图像补全模型对所述待补全平面图像进行补全。
在一些实施例中,根据全景内容生成训练数据包括:根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据,其中,所述观察视角包括模拟观察点的方位,观察角度以及可视范围;所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影。
在一些实施例中,所述全景内容以球坐标系表示,所述根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行平面投影包括:将过所述可视范围内的几何中心,且与全景内容所在的球面相切的平面作为基本投影面;以及将可视区域内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到二维平面图像。
在一些实施例中,根据图像补全模型对待补全平面图像进行补全包括:根据所述全景图生成新的训练数据;根据所述新的训练数据对图像补全模型进行训练,并对图像补全模型进行更新;根据更新的图像补全模型对待补全平面图像进行补全。
在一些实施例中,将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S,包括:根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像对应于待补全区域的像素点反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像;根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果;以及在第一坐标系S下,根据反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。
根据本发明的基于神经网络的全景图内容补全和修复的方法,可以依据全景图数据进行水印消除,前景遮挡物去除等图像补全操作。通过两次投影变换,将全景图的待补全区域映射到平面待补全图像,基于神经网络方法对平面图像进行补全后,再经两次反投影变换和特定的图像处理过程得到补全的全景图。由于投影变换后的平面待补全图像与人眼视角观察的图像非常接近,因此可得到失真度极小的补全图像,并且通过特殊设计的投影变换和反变换,使得反投影到全景图的补全图像也可以最大限度地避免形变和失真。从而克服了相关技术中直接在全景图的二维存储形态上进行图像补全的变形失真等问题,显著提升了全景内容的展现质量和内容分发过程中的用户体验。
此外,本发明创造性地提出了根据全景图生成神经网络训练数据的构思,并提供了通过视角采样构造训练数据的具体方式。利用全景图的数据冗余特性最小化了训练样本和测试样本之间的分布差异,有效地降低了数据覆盖因素对神经网络方法性能上的影响。和传统的训练样本集构造方式相比,目的性更强,效用更高,成本更低。
为达上述目的,本发明第二方面的实施例提供了一种基于神经网络的全景图内容补全和修复的装置,包括:待补全区域确定模块,用于确定全景图中的待补全区域,其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f;待补全平面图像生成模块,用于将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影;神经网络图像补全模块,用于在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像;以及图像反投影模块,用于将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S。
在一些实施例中,所述待补全区域确定模块将所述待补全区域以第二坐标系Q表示,第二坐标系为球坐标系;所述待补全平面图像生成模块将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素映射到第三坐标系R,包括:以第二坐标系Q的球心为观察点;以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
在一些实施例中,所述神经网络图像补全模块使用生成式对抗网络实现对待补全平面图像的补全。
在一些实施例中,所述神经网络图像补全模块包括:训练数据生成单元,用于根据全景内容生成训练数据;神经网络训练单元,用于对神经网络进行预先训练,将训练后的神经网络作为图像补全模型;以及平面图像补全单元,用于根据图像补全模型对所述待补全平面图像进行补全。
在一些实施例中,所述训练数据生成单元根据全景内容生成训练数据包括:根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据,其中,所述观察视角包括模拟观察点的方位,观察角度以及可视范围;所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影。
在一些实施例中,所述神经网络图像补全模块基于神经网络方法对待补全平面图像进行补全包括:调用所述训练数据生成单元,根据所述全景图生成新练数据;调用所述神经网络单元,根据所述新训练数据对图像补全模型进行训练,并对图像补全模型进行更新;以及调用平面图像补全单元,根据更新的图像补全模型对待补全平面图像进行补全。
在一些实施例中,所述图像反投影模块包括:第二反投影单元,根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像;第一反投影单元,根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果;以及像素填充单元,用于在第一坐标系S下,根据反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。
根据本发明的基于神经网络的全景图内容补全和修复的装置,可以依据全景图数据进行水印消除,前景遮挡物去除等图像补全操作。通过两次投影变换,将全景图的待补全区域映射到平面待补全图像,基于神经网络方法对平面图像进行补全后,再经两次反投影变换和特定的图像处理过程得到补全的全景图。由于投影变换后的平面待补全图像与人眼视角观察的图像非常接近,因此可得到失真度极小的补全图像,并且通过特殊设计的投影变换和反变换,使得反投影到全景图的补全图像也可以最大限度地避免形变和失真。从而克服了相关技术中直接在全景图的二维存储形态上进行图像补全的变形失真等问题,显著提升了全景内容的展现质量和内容分发过程中的用户体验。
此外,本发明创造性地提出了根据全景图生成神经网络训练数据的构思,并提供了通过视角采样构造训练数据的具体方式。利用全景图的数据冗余特性最小化了训练样本和测试样本之间的分布差异,有效地降低了数据覆盖因素对神经网络方法性能上的影响。和传统的训练样本集构造方式相比,目的性更强,效用更高,成本更低。
为了实现上述目的,本发明第三方面的实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本发明第一方面所述的基于神经网络的全景图内容补全和修复的方法。
为了实现上述目的,本发明第四方面的实施例提供了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现根据本发明第一方面所述的基于神经网络的全景图内容补全和修复的方法。
为了实现上述目的,本发明第五方面的实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现根据本发明第一方面所述的基于神经网络的全景图内容补全和修复的方法。
根据本发明第三到五方面的非临时性计算机可读存储介质,计算机程序产品和计算机设备具有与根据本发明第一和第二方面的方法和装置类似的有益效果,在此不再赘述。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了带有水印的全景图的局部图像;
图2是全景图的二维存储形态——球形投影的一个示例的示意图;
图3是全景图的二维存储形态——立方体投影的一个示例的示意图;
图4是根据本发明实施例的基于神经网络的全景图内容补全和修复的方法的流程示意图;
图5是根据本发明实施例的第二投影变换的局部平面投影示意图;
图6是根据本发明实施例的基于神经网络对待补全平面图像进行补全的流程示意图;
图7是根据本发明实施例的全景图视角采样示意图;
图8是根据本发明实施例的图形补全模型对待补全平面图像进行补全的流程示意图;
图9是根据本发明一个实施例的反投影过程流程示意图;
图10是根据本发明一个实施例的待补全全景图的局部图像;
图11是根据本发明一个实施例的投影变换后生成的待补全平面图像;
图12是根据本发明一个实施例的基于神经网络方法补全后的平面图像;
图13是根据本发明一个实施例的将待补全区域补全后,反投影到原始全景图生成的补全的全景图的局部图像;
图14是根据本发明实施例的基于神经网络的全景图内容补全和修复的装置的框图;
图15是根据本发明实施例的神经网络图像补全模块的结构框图;
图16是根据本发明实施例的图像反投影模块的结构框图;以及
图17是根据本发明实施例的计算机设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
相关技术中的图像补全和修复方法多为针对在平面投影下采集的二维平面图像(如普通相机拍摄的照片)而设计。在全景图中存在的各种问题中,对于前景遮挡物的去除,在制作全景图之前,或者可以先对用于合成全景图的二维的平面图像进行补全,再用补全的图像制作全景图。但是这需要专业的图像处理技术,对于普通用户来说一般不会去进行这样的操作。例如,大量的社交媒体上的三维全景图,通常是通过摄影设备拍摄后直接生成全景图,并将全景图上传到网络。而水印,特别是作者标识水印和广告水印则往往是故意添加的信息,无可避免。因此,实际情况下,绝大部分需要全景图补全的场景下,都是需要直接在已经生成的全景图数据的基础上进行水印去除,遮挡物去除景物还原,局部对象删除并补全背景等操作。
全景内容的特点,在于其展示/采集形态(三维球面)和存储形态(二维平面)不同。目前来说,业界主流的全景内容的展示和采集形态为三维全景球(panoramic sphere),而存储形态则为全景球的如下两种投影之一:球形投影(equirectangular projection)和立方体投影(cubic projection,有时也称为六面体投影)。例如,图2和图3分别是全景图的上述两种二维存储形态示意图。图2展示了球形投影的存储形态,球形投影的存储形态为一张宽高比2:1(即对应360°:180°)的矩形图片。图3展示了立方体投影的存储形态,其中包括6张正方形的图片,分别对应上下左右前后6个方向。
以上两种存储形态都是将三维球面内容投影到二维平面进行存储,以在现有计算机系统上实现方便的文件管理和文件交换。然而,降维的同时,二维存储也必然在信息完整和保真方面付出代价。事实上,在当前的理论框架内尚未发现任何一种从三维球面到二维平面的全局投影能够同时保持全部几何特性(共4种:尺寸、角度、距离、方向)不发生扭曲。亦即,三维全景内容的二维存储都会存在不可避免的失真。直接将相应的二维图像补全方法应用于全景内容的二维平面存储形态会由于投影变换带来的失真特性而极易导致补全的效果不佳,因此传统的二维图像补全和修复方法无法直接用于三维球面数据。
基于对以上技术问题的认知,本发明提出了一种基于神经网络的全景图内容补全和修复的方法,以期至少在一定程度上解决直接在全景图基础上进行图像补全所面对的问题。下面参考附图描述本发明实施例的基于神经网络的全景图内容补全和修复的方法和装置。
图4为本发明实施例的一种基于神经网络的全景图内容补全和修复的方法的流程示意图。其中,所述全景图内容补全和修复的方法可包括步骤S100到S400。
在步骤S100,确定全景图中的待补全区域。其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f。本步骤的输出可以是在第二坐标系Q下的一个封闭范围,第二坐标系Q用于描述待补全的区域,第二坐标系Q可以与第一坐标系S不一致或一致。
具体而言,全景图的第一坐标系S可以是当前常用的用于存储全景图的球形投影方式对应的坐标系或者是立方体投影方式对应的坐标系。从全景图中确定待补全区域,可以是根据用户的选择,对用户选择的区域进行补全。例如,用户在社交媒体发现了某处风景的全景图,但是图中有一处拍摄到了几个游人,此时用户可以手动标定需要补全的区域。或者,也可以由图像处理算法自动识别全景图中需要补全的区域,例如,对于大量的水印,特别是带有商号、电话、地址等的广告水印,可以基于图像理解方式自动识别。本发明中对于待补全区域的确定方式并无限制,任何自动或者手动标定的方式均可应用于此。
考虑到全景图的这两种存储形态相对于展示时视觉直接观察到的图像来说并不是直观对应的,从中确定待补全区域时,也不便于直接确定,无法得到与视觉直观相对应的描述。故而在一些实施例中,设置与第一坐标系S不同的第二坐标系Q来描述待补全区域和便于后续的处理。
一些场景下,可以将第一坐标系S下的全景图数据映射到第二坐标系Q,以使其与视觉直接观察到的图像对应方式更加直接,从而便于确定待补全区域和对待补全区域进行标定。例如,第二坐标系Q可以设置为三维球坐标系。确定的待补全区域可以是球坐标系下,球面经度和纬度范围表示的像素区域范围。
另一些场景下,待补全区域在选择上容许较大的自由度,即选择稍大于缺陷区域的范围也是可行的,对精确度的要求不高。因此,在一些实施例中,也可以直接在第一坐标系S下确定待补全区域。然后再将并将第一坐标系S下的待补全区域映射到第二坐标系Q,得到第二坐标系Q下的待补全区域,以便于后续的处理。
当然,第二坐标系也可以选择与第一坐标系相同,此时,第一投影变换f可以视为是单位投影,即:投影前后的坐标系保持不变。此时,对应的方案是在第一坐标系S下确定全景图中的待补全区域,将全景图中的待补全区域内的像素及其周缘预定义范围内的像素从第一坐标系S直接映射到第三坐标系R。此类的实施例中,虽然是直接将二维存储形态的全景图从第一坐标系S映射到平面坐标系R,但是参见步骤S200关于第三坐标系R的构建,从坐标系S到R的映射,可以是从第一坐标系S映射到一个过渡坐标系(例如球坐标系),然后再从过渡坐标系映射到第三坐标系R的两步映射的等价映射。
在步骤S200,将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影。
将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R,可以包括将全景图中的待补全区域内的像素及其周缘预定义范围内的像素从第一坐标系S映射到第二坐标系Q,再从第二坐标系S映射到第三坐标系R;或者是,使用第一投影变换f和第二投影变换g的组合的等价变换,将直接从第一坐标系S映射到第三坐标系R。也可以是将全景图从第一坐标系S映射到第二坐标系Q,再将第二坐标系Q下的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R。
为了使投影到第三坐标系R的平面图像尽量避免失真,便于基于平面图像补全方法补全和便于还原,所述第二投影变换g可以设置为满足保持特定几何特性的变换。例如,各种保角变换、保形变换,以及通过对特定目标函数进行优化所得到的能保持特定几何特性的变换等。
投影过程不可避免的会产生形变,为了尽量减少形变的程度和影响,第二投影变换g最好是能满足:待补全区域的几何中心在第二投影变换后,对应于待补全平面图像的几何中心或几何中心附近一定范围的邻域内。
作为一种可以用于实现本发明方法的具体的投影变换形式,在一些实施例中,所述待补全区域的第二坐标系Q为球坐标系,将全景图中的待补全区域内的像素及其周缘预定义范围内的像素按照第二投影变换g映射到第三坐标系R,包括:以第二坐标系Q的球心为观察点;以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
参见图5,其中O为球坐标系的原点。A为球面上待补全区域Q1的几何中心,P0为过A点与球面相切(即垂直于OA方向)的基本投影面。将待补全区域Q1及其周缘预定义范围内的像素点在X1,Y1,Z1轴的三维坐标(当然也可以用极坐标表示)映射到投影面P0上可采用计算机视觉领域的常用坐标映射算法,在此不再赘述。如此,得到的待补全平面图像基本等价于观察者在矩形窗口直接观察三维全景球上待补全区域及其周缘预定义范围所看到的图像,从用户体验角度来说形变最小。
关于将全景图中的待补全区域内的像素及其周缘预定义范围内的像素共同投影形成待补全平面图像,其中,所述周缘的预定义范围可以根据全景图的内容和补全方法的不同,以及补全的精确度要求进行综合选择。例如在待补全区域周缘以一定像素宽度向外延展,或者补齐到规则的矩形区域等。一般来说,当全景图为一致性较好的自然类图像时,凭借相对较小的周缘范围即可得到相对较好的补全效果。而对于全景图为人造环境时,则需要相对较大的周缘范围共同投影构成待补全平面图像,才能对待补全区域进行较好的补全。例如,对于一片乱石滩上的白色垃圾袋前景去除和补全,以及一栋别墅前方的广告牌的去除和补全来说,为达到类似的补全效果,前者需要的周缘预定义范围要远远小于后者。
在步骤S300,在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像。
相关技术中,对于平面图像的补全有一些成熟的神经网络方法,这些方法均可用于本发明中对待补全平面图像进行处理。其中,发表于2014年的生成式对抗网络(Generative Adversarial Nets,GAN),尤其适合本发明中实现对待补全平面图像的补全。关于生成式对抗网络的构建和使用的各种方法在相关技术中有很多论述,例如,可以参见原始的公开:Ian J.Goodfellow等的论文“Generative Adversarial Nets”,arXiv文献编号1406.26611v1。
GAN可以看作是使用强化学习来解决生成建模问题的一种方式。典型地,本发明中,用于图像补全的GAN的网络结构可设置为包括生成器(generator)网络和判别器(discriminator)网络,二者可以分别用多层感知器(MLP)或卷积神经网络(CNN)等来实现。相对来说,卷积神经网络(CNN)用于图像处理更可能获得相对好的效果。生成器用于生成尽可能接近真实的“非真”的补全图像,判别器用于以尽可能大的概率将生成器生成的“非真”图像判断为“假”。通过对训练样本的学习,最终生成器和判别器达到博弈平衡,从而获得生成模型。Goodfellow从理论上证明了该算法的收敛性,以及在模型收敛时,生成数据具有和训练数据相同的分布。然而,生成模型的效果好坏在很大程度上将受限于训练样本,在训练样本和测试样本的分布不同,训练样本集覆盖不足等情况下,生成模型的效果往往并不理想。在各种其它用于图像补全的神经网络中,训练样本的构造也同样具有重要的影响。
下面结合具体的实施方式,对步骤S300的具体实现形式进行详细说明。参见图6,步骤S300中,基于神经网络方法对待补全平面图像进行补全可以包括子步骤S310到S330。
在步骤S310,根据全景内容生成训练数据。
为了解决相关技术中由于训练样本不理想而影响模型效果的问题,本发明创造性地提出了根据全景内容生成训练数据的方法。全景内容的视觉信息冗余度较高、数据的时空连续性较强,为有效利用这些特性,本发明提供了一种基于视角采样的训练样本构造方式来获取在同一个三维场景内的大量训练样本。
具体而言,根据全景内容生成训练数据可以根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据。其中,所述观察视角包括模拟观察点的方位,观察角度以及可视范围等参数信息。视角采样所获得的图片相当于是相对模拟观察点将全景图进行平面投影所得。具体而言,所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影,得到二维平面图像。
参见图7,图7是根据本发明实施例的全景图视角采样示意图。其中S1是一幅二维存储状态的全景图,R1到Rn是根据S1进行视角采样得到的训练图像。
为了便于投影计算,可以将全景图的内容进行坐标变换到球坐标系下。在一些实施例中,当所述全景内容以球坐标系表示时,视角采样可以基于与结合图5所描述的第二投影变换类似的方式进行。即,所述根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行平面投影包括:将过所述可视范围内的几何中心,且与全景内容所在的球面相切的平面作为基本投影面;以及将可视区域内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到二维平面图像。如此,采用与第二投影变换类似的方式构造的视角采样图片,作为训练样本,与未来应用时的待补全平面图像在构造上具有更高的一致性,更有利于取得良好的训练效果。
视角采样所基于的观察方位、可视范围的采样间隔的选取可以根据计算量、存储空间与准确度,以及召回率等因素综合确定。对于包含动画内容的全景视频,则可进一步配合在时间轴上进行帧采样生成输出图片,采样时间间隔同样是可以根据计算量、存储空间与准确度、召回率等因素综合确定。典型的采样方式包括但不限于等间隔采样、随机采样、基于用户交互历史记录分布的采样等。
由于广告/水印等相对于全景内容背景的尺寸往往很小,基于以上采样方式(特别是配合合理的可视范围设定),在对全景内容库数据的采样中,甚至可以忽略已经存在的广告/水印,无需将这些数据排除在训练样本集合之外。且对于局部存在广告的全景内容,一定存在其他更多的局部不存在广告,且这些局部的背景像素信息统计几乎一致,用相同背景的数据进行训练,可以极大程度上避免因测试样本与训练样本来自完全不同的分布、训练集数据覆盖不足而导致最终图像补全效果的不自然。
以此方式构造的训练数据集,也可进一步叠加从外部数据源采集的二维图片进行扩充。即便没有外部数据,这种训练数据构造方式实质上利用数据冗余特性最小化了训练样本和测试样本之间的分布差异,因此能有效地降低数据覆盖因素对神经网络方法性能上的影响。
在步骤S320,根据训练数据,对神经网络进行预先训练,将训练后的神经网络作为图像补全模型。
针对采用的不同的神经网络模型,根据步骤S310构造的训练数据进行训练。通常,为了获得好的模型效果,神经网络的训练需要大量的训练数据样本,因此,可以在模型投入工作之前,预先进行离线训练,得到训练后的神经网络作为图像补全模型。
训练样本的标记可按现有基于神经网络的图像补全方法进行,即在二维图片上随机生成待补全区域,并以此区域内的像素取值作为真值来训练神经网络模型。
在步骤S330,根据图像补全模型对待补全平面图像进行补全。在本步骤,可以直接使用步骤S320得到的图像补全模型进行图像补全,也可以根据当前待补全的全景图再构造一组新的训练数据,对图像补全模型进一步训练后再进行图像补全。
具体地,参见图8,在一些实施例中,根据图像补全模型对待补全平面图像进行补全的步骤S330可进一步包括子步骤S331到S333。
在步骤S331,根据所述全景图生成新的训练数据。其中可采用与结合图7对步骤S310的描述中提供的方法来生成训练数据。具体细节不再赘述,可看见步骤S310的相关内容。
要说明的是,包含待补全区域的全景图内容同样可以用作训练数据而不必被排除在外。
在步骤S332,根据所述新的训练数据对图像补全模型进行训练,并对图像补全模型进行更新。
在步骤S333,根据更新的图像补全模型对待补全平面图像进行补全。
如此,由于训练数据包含了当前待补全全景图的相关信息,可以进一步减小训练样本和测试样本之间的分布差异,训练的目的性也更为明确。据此对图像补全模型进行更新后,经过针对性的学习,再用于图像补全时可以获得更具一致性的良好补全效果。
当前技术条件下的各种神经网络图像补全方法的效果严重依赖于训练数据的覆盖面,对训练数据集的要求很高,没有足够好的样本就无法得到好的效果。例如如果训练数据中不包括松树,则方法补全松树区域的效果会很差。本发明的使用全景图构建训练样本的思路提供了一种优于传统二维图像样本的全新思路。相比于传统二维图像,全景内容的特性是视觉信息“冗余度”较高。这是由于视觉数据存在极强的时空连续性,单张全景图包含了同一地点全方位各角度的视觉信息,特别是对于景物类的全景内容,其画面像素信息更容易满足“稳态”特性——即图像任意局部的统计量都相同。从而利用全景内容的这一特性来构造的神经网络训练数据,可使得训练样本和测试样本更容易满足机器学习所要求的独立同分布的假设,而无需过多依赖外部数据源收集海量训练样本。和传统的训练样本集构造方式相比,目的性更强,效用更高,成本更低。而整体神经网络的图像补全性能更好。
在步骤S400,将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S。可以基于第一投影变换f和第二投影变换g的逆变换f’和g’实现反投影。但是由于直接逆变换的过程中可能会出现不同程度的形变,为了获得更好的效果,可以采取进一步的优化措施。
参见图9,图9是根据本发明一个实施例的反投影过程流程示意图。在一些实施例中,将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S的反投影步骤S400可包括子步骤S410到S430。
在步骤S410,根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像中对应于待补全区域的像素反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像。其中,对于第三坐标系R下的补全图像,对应于待补全区域的部分的像素点,通过逆变换g’获取第二坐标系Q下时,通过坐标变化计算其在坐标系Q下的坐标,像素取值(例如RGB三通道数组)则保持不变。例如,当第二坐标系Q为三维球面坐标系时,此步骤将补全后图片的二维平面坐标映射回球面坐标。
在步骤S420,根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果。由于步骤410的反变换g'已经无法保证没有形变,本步骤中将第二坐标系Q下的补全图像进一步映射回存储形态的第一坐标系S后也可能出现像素密度的不均匀,而无法达到逐点像素值的映射。因此,在逆变换之后,需要对第一坐标系S下的反投影结果进行进一步的处理,执行步骤S430。
在步骤S430,在第一坐标系S下,根据步骤S420反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。步骤S420的反投影结果中,第二坐标系Q下的补全图像中的像素点反投影到第一坐标系S时,按照反投影变换f’计算的坐标值可能并不是整数,也可能存在其他形式的像素密度不均匀等情况,因此在步骤中,对待补全区域进行逐点填充。
例如,可根据第一坐标系S下的反投影结果中的像素取值和坐标位置,通过差值、采样、混合(blending)等图像处理技术,得到补全的全景图。
根据本发明的基于神经网络的全景图内容补全和修复的方法,可以依据全景图数据进行水印消除,前景遮挡物去除等图像补全操作。通过两次投影变换,将全景图的待补全区域映射到平面待补全图像,基于神经网络方法对平面图像进行补全后,再经两次反投影变换和特定的图像处理过程得到补全的全景图。由于投影变换后的平面待补全图像与人眼视角观察的图像非常接近,因此可得到失真度极小的补全图像,并且通过特殊设计的投影变换和反变换,使得反投影到全景图的补全图像也可以最大限度地避免形变和失真。从而克服了相关技术中直接在全景图的二维存储形态上进行图像补全的变形失真等问题,显著提升了全景内容的展现质量和内容分发过程中的用户体验。
此外,本发明创造性地提出了根据全景图生成神经网络训练数据的构思,并提供了通过视角采样构造训练数据的具体方式。利用全景图的数据冗余特性最小化了训练样本和测试样本之间的分布差异,有效地降低了数据覆盖因素对神经网络方法性能上的影响。和传统的训练样本集构造方式相比,目的性更强,效用更高,成本更低。
图10-图13是根据本发明一个实施例的全景图补全效果示意图。图10是待补全的全景图的局部图像。其中,所示图片左半部分为全景图的立方体投影存储形态,显示的是六面体其中之一的图像。从图中可见,存在有数字形式的水印标记,全景图补全的目的是去除这些水印。图片的右半部分以白色方框标示出了待补全区域。
图11是投影变换后生成的待补全平面图像。其中所示图片左半部分示出了使用局部平面投影方法获得的第三坐标系下的待补全平面图像,右半部分以白色方框标示出了待补全平面图像中的待补全区域。
图12是根据神经网络方法补全后的平面图像。可见,其中含有水印的待补全区域已经被移除,并且对待补全区域进行了良好的重建填充。
图13是将待补全区域补全后反投影回原始全景图生成的补全的全景图的局部图像。可见,将待补全区域部分返投影回立方体投影的六面视图之一后,沙漠的纹理,沙脊等细节都得以复现,取得了非常好的补全效果。
为了实现上述第一方面实施例中的方法,本发明第二方面的实施例提出了一种基于神经网络的全景图内容补全和修复的装置。图14是根据本发明实施例的基于神经网络的全景图内容补全和修复的装置的框图。
根据本发明的基全景图内容补全和修复的装置100可以包括待补全区域确定模块110,待补全平面图像生成模块120,神经网络图像补全模块130和图像反投影模块140。
需要说明的是,前述对本发明的基全景图内容补全和修复的方法实施例的解释说明也适用本实施例的本发明的基全景图内容补全和修复的装置,为避免冗余,在装置实施例中将不会对所有细节进行重复。未尽之处,本领域技术人员可以参见上述结合图4到图13对本发明方法实施例的相关描述。
待补全区域确定模块110用于确定全景图中的待补全区域。其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f。待补全区域确定模块110的具体实现可以参见方法实施例中对步骤S100的描述。
待补全平面图像生成模块120用于将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,从第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影。待补全平面图像生成模块120的具体实现可以参见方法实施例中对步骤S200的描述。
在一些实施例中,所述待补全区域确定模块将所述待补全区域以第二坐标系Q表示,第二坐标系为球坐标系。所述待补全平面图像生成模块将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素按照第二投影变换g映射到第三坐标系R,包括:以第二坐标系Q的球心为观察点;以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
神经网络图像补全模块130用于在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像。神经网络图像补全模块130的具体实现可以参见方法实施例中对步骤S300的描述。在一些实施例中,所述神经网络图像补全模块使用生成式对抗网络实现对待补全平面图像的补全。
进一步地,参见图15,图15是根据本发明实施例的神经网络图像补全模块的结构框图。所述神经网络图像补全模块130可包括训练数据生成单元131,神经网络训练单元132和平面图像补全单元133。
其中,训练数据生成单元131用于根据全景内容生成训练数据。在一些实施例中,所述训练数据生成单元根据全景内容生成训练数据可以包括:根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据。其中,所述观察视角包括模拟观察点的方位,观察角度以及可视范围;所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影。
神经网络训练单元132用于对神经网络进行预先训练,将训练后的神经网络作为图像补全模型。
平面图像补全单元133用于根据图像补全模型对所述待补全平面图像进行补全。
其中,平面图像补全单元133可以直接根据训练好的图像补全模型对所述待补全平面图像进行补全。也可以根据当前待补全全景图进行训练和更新后再进行补全。
例如,在一些实施例中,所述神经网络图像补全模块基于神经网络方法对待补全平面图像进行补全可以包括:调用所述训练数据生成单元131,根据所述全景图生成新练数据;调用所述神经网络单元132,根据所述新训练数据对图像补全模型进行训练,并对图像补全模型进行更新;调用平面图像补全单元133,根据更新的图像补全模型对待补全平面图像进行补全。
图像反投影模块140用于将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S。图像反投影模块140的具体实现可以参见方法实施例中对步骤S400的描述。
参见图16,图16是根据本发明实施例的图像反投影模块的结构框图。其中,所述图像反投影模块140包括第二反投影单元141,第一反投影单元142,以及像素填充单元143。
第二反投影单元141,用于根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像。
第一反投影单元142用于根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果。
像素填充单元143用于在第一坐标系S下,根据反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。
根据本发明的基于神经网络的全景图内容补全和修复的装置,可以依据全景图数据进行水印消除,前景遮挡物去除等图像补全操作。通过两次投影变换,将全景图的待补全区域映射到平面待补全图像,基于神经网络方法对平面图像进行补全后,再经两次反投影变换和特定的图像处理过程得到补全的全景图。由于投影变换后的平面待补全图像与人眼视角观察的图像非常接近,因此可得到失真度极小的补全图像,并且通过特殊设计的投影变换和反变换,使得反投影到全景图的补全图像也可以最大限度地避免形变和失真。从而克服了相关技术中直接在全景图的二维存储形态上进行图像补全的变形失真等问题,显著提升了全景内容的展现质量和内容分发过程中的用户体验。
此外,本发明创造性地提出了根据全景图生成神经网络训练数据的构思,并提供了通过视角采样构造训练数据的具体方式。利用全景图的数据冗余特性最小化了训练样本和测试样本之间的分布差异,有效地降低了数据覆盖因素对神经网络方法性能上的影响。和传统的训练样本集构造方式相比,目的性更强,效用更高,成本更低。
本发明第三方面的实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现根据本发明第一方面实施例所述的基于神经网络的全景图内容补全和修复的方法。
一般来说,用于实现本发明方法的计算机指令的可以采用一个或多个计算机可读的介质的任意组合来承载。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。所谓非临时性计算机可读介质可以包括任何计算机可读介质,除了临时性地传播中的信号本身。
计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本发明第四方面的实施例提供了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现根据本发明第一方面实施例所述的基于神经网络的全景图内容补全和修复的方法。
本发明第五方面的实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现根据本发明第一方面所述的基于神经网络的全景图内容补全和修复的方法。
根据本发明第三到五方面的非临时性计算机可读存储介质,计算机程序产品和计算机设备,可以参照根据本发明第一方面实施例具体描述的内容实现,并具有与根据本发明第一方面的基于神经网络的全景图内容补全和修复的方法类似的有益效果,在此不再赘述。
图17示出了适于用来实现本申请实施方式的示例性计算机设备的框图。图17显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图17所示,计算机设备12可以通用计算设备的形式实现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性的计算机可读存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图中未显示,通常称为“硬盘驱动器”)。尽管图17中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local AreaNetwork;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。要说明的是,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
尽管上面已经示出和描述了本发明的实施例,应当理解的是,上述实施例是示例性的,不能解释为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (21)

1.一种基于神经网络的全景图内容补全和修复的方法,其特征在于,包括:
确定全景图中的待补全区域,其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f;
将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,从第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影;
在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像;以及
将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S;
基于神经网络方法对待补全平面图像进行补全包括:
根据全景内容生成训练数据,对神经网络进行预先训练,将训练后的神经网络作为图像补全模型;以及
根据图像补全模型对所述待补全平面图像进行补全;
根据全景内容生成训练数据包括:根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据,其中,
所述观察视角包括模拟观察点的方位,观察角度以及可视范围;
所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影。
2.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述第二坐标系Q与第一坐标系S不同,确定全景图中的待补全区域包括:将全景图映射到第二坐标系Q,并在第二坐标系Q下确定待补全区域。
3.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述第二坐标系Q与第一坐标系S不同,确定全景图中的待补全区域包括:在第一坐标系S下确定待补全区域,并将第一坐标系S下的待补全区域映射到第二坐标系Q,得到第二坐标系Q下的待补全区域。
4.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,
所述第二坐标系Q与第一坐标系S相同,
确定全景图中的待补全区域包括在第一坐标系S下确定待补全区域;
将全景图中的待补全区域内的像素及其周缘预定义范围内的像素映射到第三坐标系R包括:将全景图中的待补全区域内的像素及其周缘预定义范围内的像素从第一坐标系S映射到第三坐标系R。
5.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述第二投影变换g为满足保持特定几何特性的变换。
6.根据权利要求5所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述满足保持特定几何特性的变换包括保角变换和/或保形变换。
7.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述第二投影变换g满足:待补全区域的几何中心在第二投影变换后,对应于待补全平面图像的几何中心或几何中心附近一定范围的邻域内。
8.根据权利要求1到7中任意一项所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述第二坐标系Q为球坐标系。
9.根据权利要求1到7中任意一项所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,将全景图中的待补全区域内的像素及其周缘预定义范围内的像素按照映射到第三坐标系R,包括:
将全景图映射到第二坐标系Q,第二坐标系Q为球坐标系;
以第二坐标系Q的球心为观察点;
以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及
将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
10.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,基于神经网络方法对待补全平面图像进行补全包括:使用生成式对抗网络实现对待补全平面图像的补全。
11.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,所述全景内容以球坐标系表示,所述根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行平面投影包括:
将过所述可视范围内的几何中心,且与全景内容所在的球面相切的平面作为基本投影面;以及
将可视区域内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到二维平面图像。
12.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,根据图像补全模型对待补全平面图像进行补全包括:
根据所述全景图生成新的训练数据;
根据所述新的训练数据对图像补全模型进行训练,并对图像补全模型进行更新;以及
根据更新的图像补全模型对待补全平面图像进行补全。
13.根据权利要求1所述的基于神经网络的全景图内容补全和修复的方法,其特征在于,将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S,包括:
根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像对应于待补全区域的像素点反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像;
根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果;以及
在第一坐标系S下,根据反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。
14.一种基于神经网络的全景图内容补全和修复的装置,其特征在于,包括:
待补全区域确定模块,用于确定全景图中的待补全区域,其中,全景图以第一坐标系S表示,待补全区域以第二坐标系Q表示,所述第一坐标系S到第二坐标系Q的映射为第一投影变换f;
待补全平面图像生成模块,用于将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素映射到第三坐标系R,得到第三坐标系R下的待补全平面图像,其中,所述第三坐标系R为平面坐标系,从第二坐标系Q到第三坐标系R的映射为第二投影变换g,所述第二投影变换g为局部平面投影;
神经网络图像补全模块,用于在第三坐标系R下基于神经网络方法对待补全平面图像进行补全,得到补全的平面图像;以及
图像反投影模块,用于将第三坐标系R下补全的平面图像中的对应于待补全区域的像素点反投影到全景图的第一坐标系S;
所述神经网络图像补全模块包括:
训练数据生成单元,用于根据全景内容生成训练数据;
神经网络训练单元,用于对神经网络进行预先训练,将训练后的神经网络作为图像补全模型;以及
平面图像补全单元,用于根据图像补全模型对所述待补全平面图像进行补全;
所述训练数据生成单元根据全景内容生成训练数据包括:
根据所述全景内容,以多个各异的观察视角在整个可视空间内对全景内容进行视角采样得到多幅二维平面图像,将所述二维平面图像作为训练数据,其中,
所述观察视角包括模拟观察点的方位,观察角度以及可视范围;
所述视角采样包括:根据观察视角对应的模拟观察点和观察角度,将可视范围内的全景内容进行局部平面投影。
15.根据权利要求14所述的基于神经网络的全景图内容补全和修复的装置,其特征在于,
所述待补全区域确定模块将所述待补全区域以第二坐标系Q表示,第二坐标系为球坐标系;
所述待补全平面图像生成模块将全景图中的待补全区域内的像素及其周缘的预定义范围内的像素映射到第三坐标系R,包括:
以第二坐标系Q的球心为观察点;
以过第二坐标系Q中待补全区域的几何中心与球坐标系的球面相切的平面为基本投影面;以及
将第二坐标系Q下全景图中的待补全区域内的像素及其周缘预定义范围内的像素投影到所述基本投影面或者与所述基本投影面平行的平面,得到待补全平面图像。
16.根据权利要求14所述的基于神经网络的全景图内容补全和修复的装置,其特征在于,所述神经网络图像补全模块使用生成式对抗网络实现对待补全平面图像的补全。
17.根据权利要求14所述的基于神经网络的全景图内容补全和修复的装置,其特征在于,所述神经网络图像补全模块基于神经网络方法对待补全平面图像进行补全包括:
调用所述训练数据生成单元,根据所述全景图生成新训练数据;
调用所述神经网络训练 单元,根据新训练数据对图像补全模型进行训练,并对图像补全模型进行更新;以及
调用平面图像补全单元,根据更新的图像补全模型对待补全平面图像进行补全。
18.根据权利要求14所述的基于神经网络的全景图内容补全和修复的装置,其特征在于,所述图像反投影模块包括:
第二反投影单元,根据第二投影变换g的逆变换g’将第三坐标系R下补全的平面图像反投影到第二坐标系Q中,得到第二坐标系Q下的补全图像;
第一反投影单元,根据第一投影变换f的逆变换f’将第二坐标系Q下的补全图像反投影到第一坐标系S中,得到第一坐标系S下的反投影结果;以及
像素填充单元,用于在第一坐标系S下,根据反投影结果对全景图的待补全区域的像素进行逐点填充,得到补全的全景图。
19.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时,实现根据权利要求1-13中任一项所述的基于神经网络的全景图内容补全和修复的方法。
20.一种计算机程序产品,其特征在于,当所述计算机程序产品中的指令由处理器执行时,实现根据权利要求1-13中任一项所述的基于神经网络的全景图内容补全和修复的方法。
21.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现根据权利要求1-13中任一项所述的基于神经网络的全景图内容补全和修复的方法。
CN201810296759.7A 2018-04-04 2018-04-04 基于神经网络的全景图内容补全和修复的方法及装置 Active CN108564527B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810296759.7A CN108564527B (zh) 2018-04-04 2018-04-04 基于神经网络的全景图内容补全和修复的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810296759.7A CN108564527B (zh) 2018-04-04 2018-04-04 基于神经网络的全景图内容补全和修复的方法及装置

Publications (2)

Publication Number Publication Date
CN108564527A CN108564527A (zh) 2018-09-21
CN108564527B true CN108564527B (zh) 2022-09-20

Family

ID=63534089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810296759.7A Active CN108564527B (zh) 2018-04-04 2018-04-04 基于神经网络的全景图内容补全和修复的方法及装置

Country Status (1)

Country Link
CN (1) CN108564527B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109272442B (zh) * 2018-09-27 2023-03-24 百度在线网络技术(北京)有限公司 全景球面图像的处理方法、装置、设备和存储介质
US10719920B2 (en) * 2018-10-12 2020-07-21 Adobe Inc. Environment map generation and hole filling
CN111131689B (zh) * 2018-10-31 2021-12-31 微景天下(北京)科技有限公司 全景图像修复方法和系统
CN109727209B (zh) * 2018-12-13 2021-03-02 北京爱奇艺科技有限公司 一种确定残缺文物完整图像的方法及装置
CN109859268B (zh) * 2019-01-30 2022-06-14 国网江苏省电力有限公司苏州供电分公司 基于生成查询网络的物体被遮挡部分成像方法
CN110009576B (zh) * 2019-02-28 2023-04-18 西北大学 一种壁画图像修复模型建立及修复方法
CN112529765A (zh) * 2019-09-02 2021-03-19 阿里巴巴集团控股有限公司 图像处理方法、设备及存储介质
CN110827202A (zh) * 2019-11-07 2020-02-21 上海眼控科技股份有限公司 目标检测方法、装置、计算机设备和存储介质
EP3971821A1 (en) * 2020-09-22 2022-03-23 Toyota Jidosha Kabushiki Kaisha Image completion using self-attention and uncertainty
CN112862670B (zh) * 2021-02-08 2023-12-05 中国科学院信息工程研究所 一种基于多视角融合的360°图像对抗样本生成方法
CN112967179B (zh) * 2021-03-12 2022-08-12 上海卫星工程研究所 大幅宽成像载荷图像重映射方法及系统
US20230360170A1 (en) * 2022-04-01 2023-11-09 Adobe Inc. Extrapolating panoramas from images using a generative model
CN114895796B (zh) * 2022-07-15 2022-11-11 杭州易绘科技有限公司 一种基于全景图的空间交互方法、装置及应用
CN117197003B (zh) * 2023-11-07 2024-02-27 杭州灵西机器人智能科技有限公司 一种多条件控制的纸箱样本生成方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3650578B2 (ja) * 2000-09-28 2005-05-18 株式会社立山アールアンドディ 画像の歪みを補正するためのニューラル・ネットワークを用いたパノラマ画像ナビゲーションシステム
US20120293613A1 (en) * 2011-05-17 2012-11-22 Occipital, Inc. System and method for capturing and editing panoramic images
CN103942754B (zh) * 2013-01-18 2017-07-04 深圳市腾讯计算机系统有限公司 全景图像补全方法及装置
CN107133934B (zh) * 2017-05-18 2020-03-17 北京小米移动软件有限公司 图像补全方法及装置

Also Published As

Publication number Publication date
CN108564527A (zh) 2018-09-21

Similar Documents

Publication Publication Date Title
CN108564527B (zh) 基于神经网络的全景图内容补全和修复的方法及装置
US11238644B2 (en) Image processing method and apparatus, storage medium, and computer device
US11721071B2 (en) Methods and systems for producing content in multiple reality environments
El-Hakim et al. A multi-sensor approach to creating accurate virtual environments
JP2022524891A (ja) 画像処理方法及び装置、電子機器並びにコンピュータプログラム
TW201915944A (zh) 圖像處理方法、裝置、系統和儲存介質
US8803880B2 (en) Image-based lighting simulation for objects
JP2006053694A (ja) 空間シミュレータ、空間シミュレート方法、空間シミュレートプログラム、記録媒体
US11887256B2 (en) Deferred neural rendering for view extrapolation
US9224233B2 (en) Blending 3D model textures by image projection
US10719920B2 (en) Environment map generation and hole filling
US11276150B2 (en) Environment map generation and hole filling
Jian et al. Augmented virtual environment: fusion of real-time video and 3D models in the digital earth system
CN116051747A (zh) 一种基于缺失点云数据的房屋三维模型重建方法及设备、介质
US20220375152A1 (en) Method for Efficiently Computing and Specifying Level Sets for Use in Computer Simulations, Computer Graphics and Other Purposes
Zhu et al. Spatially-varying outdoor lighting estimation from intrinsics
CN108268138A (zh) 增强现实的处理方法、装置及电子设备
CN112085855B (zh) 交互式图像编辑方法、装置、存储介质及计算机设备
Evers‐Senne et al. Image based interactive rendering with view dependent geometry
US20220392121A1 (en) Method for Improved Handling of Texture Data For Texturing and Other Image Processing Tasks
US11423618B2 (en) Image generation system and method
CN115409962A (zh) 虚幻引擎内构建坐标系统的方法、电子设备和存储介质
CN110853143B (zh) 场景实现方法、装置、计算机设备和存储介质
Conde et al. LiDAR Data Processing for Digitization of the Castro of Santa Trega and Integration in Unreal Engine 5
JPH1027268A (ja) 画像処理方法及び画像処理装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant