CN115272604A - 立体图像获取方法及装置、电子设备、存储介质 - Google Patents

立体图像获取方法及装置、电子设备、存储介质 Download PDF

Info

Publication number
CN115272604A
CN115272604A CN202110473235.2A CN202110473235A CN115272604A CN 115272604 A CN115272604 A CN 115272604A CN 202110473235 A CN202110473235 A CN 202110473235A CN 115272604 A CN115272604 A CN 115272604A
Authority
CN
China
Prior art keywords
depth
pixel
node
edge
image
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
CN202110473235.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.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software 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 Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN202110473235.2A priority Critical patent/CN115272604A/zh
Priority to EP21218162.2A priority patent/EP4135317A3/en
Priority to US17/565,746 priority patent/US11908096B2/en
Publication of CN115272604A publication Critical patent/CN115272604A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T5/77
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/543Depth or shape recovery from line drawings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • 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
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • H04N13/279Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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/20072Graph-based image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes

Abstract

本公开是关于一种立体图像获取方法及装置、电子设备、存储介质。该方法包括:根据二维图像和深度图像获取所述二维图像对应的第一三维模型;获取所述第一三维模型对应的目标区域和待修复区域;根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。本实施例中通过获取目标区域和待修复区域,可以利用所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,可以适应于软硬件资源满足要求的电子设备,或者说,在电子设备的软硬件资源满足要求的情况下,上述方案可以获取相同的立体图像,具有良好的移植性。

Description

立体图像获取方法及装置、电子设备、存储介质
技术领域
本公开涉及图像处理技术领域,尤其涉及一种立体图像获取方法及装置、电子设备、存储介质。
背景技术
现有的电子设备通常设置有多个相机,利用该多个相机拍摄不同维度的照片,然后获得3D效果的图像。在获取3D效果图像时,相关技术通常采用深度学习网络来进行深度估计和被遮挡区域的修复。由于不同电子设备具有不同的软硬件资源,需要根据上述软硬件资源来调整深度学习网络的参数,或者说由于深度学习网络对软硬件资源的需求,限制了其在电子设备上的应用。
发明内容
本公开提供一种立体图像获取方法及装置、电子设备、存储介质,以解决相关技术的不足。
根据本公开实施例的第一方面,提供一种立体图像获取方法,包括:
根据二维图像和深度图像获取所述二维图像对应的第一三维模型;
获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;
根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;
根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
在一实施例中,根据二维图像和深度图像获取所述二维图像对应的第一三维模型,包括:
对所述二维图像和所述深度图像进行下采样获得第一二维图像和所述第一深度图像;
对所述第一深度图像进行预处理,获得预处理后的第一深度图像;
对所述第一二维图像和所述预处理后的第一深度图像进行扩充,获得第二二维图像和第二深度图像;
基于所述第二二维图像和所述第二深度图像的映射关系,获取所述第二二维图像中各像素的深度值,获得各像素对应的深度像素;
将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
在一实施例中,获取所述第一三维模型对应的目标区域和待修复区域,包括:
根据预设的深度阈值获取所述第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素;
根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中的每个深度像素均属于背景的深度边;
以所述背景深度边中的所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素的位置与对应起点像素位于同一深度层,则确定所述扩充像素属于纹理区域;若扩充像素的位置不与对应起点像素位于同一深度层,则确定所述扩充像素属于遮挡区域;
将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的所述待修复区域。
可选地,根据所述多个子图获取所述第一三维模型对应的多条深度边,包括:
针对所述多个子图中的每个子图,获取所述每个子图中各节点的度数;所述度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;所述每个子图中各节点是所述第一三维模型中与所述各节点对应的深度像素;
基于八联通域方向聚集度数小于预设度数值的节点,获得多个深度边节点聚集;所述深度边节点聚集是指位于同一深度层中边缘的深度像素的集合;
对每个深度边节点聚集中节点进行唯一性检测以确定每个节点属于背景像素或者前景像素,获得第一三维模型对应的多条深度边。
可选地,所述方法包括:
获取所述多条深度边中封闭的至少一条待处理深度边;
获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边;
将所述各待处理深度边合并到对应的最长深度边的深度层。
可选地,将所述各待处理深度边合并到对应的最长深度边的深度层之后,所述方法包括:
比对所述二维图像中各像素和所述第一三维模型中各节点;
当确定所述第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,在所述第一三维模型中填充所述缺失节点;所述缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
可选地,所述方法包括:
获取每条深度边的端点;
当所述端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,确定所述端点为对应深度边的端点;当所述端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将所述端点连接到距离其最近的其他深度边。
可选地,所述方法包括:
获取各条深度边包含的深度像素的数量;
当所述数量小于预设像素阈值时,删除所述深度边。
在一实施例中,根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型,包括:
获取所述目标区域和所述待修复区域相交位置处的边缘深度像素集合;
获取所述边缘深度像素集合内每个像素的优先级;
针对优先级最高的像素,在所述目标区域内搜索其邻域内的相似匹配块;
将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
可选地,所述相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。
可选地,将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素之前,所述方法包括:
当所述相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据;所述第一像素是指已经修复颜色值和深度值的像素;
基于邻域一致性判断是否更新第二像素的颜色值和深度值;所述第二像素是指最相似匹配块中邻域完整的邻域点。
在一实施例中,根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像,包括:
根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系;
从所述第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点;
基于所述三维映射关系获取各连接节点与所述起始节点在所述二维图像的相对位置,得到所述起始节点的右上或者右下节点,并将所述连接节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件;
根据所述指定文件和预设的视角变化路径生成待显示的立体图像。
根据本公开实施例的第二方面,提供一种立体图像获取装置,包括:
第一模型获取模块,用于根据二维图像和深度图像获取所述二维图像对应的第一三维模型;
待修复区域获取模块,用于获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;
第二模型获取模块,用于根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;
立体图像获取模块,用于根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
在一实施例中,所述第一模型获取模块包括:
下采样单元,用于对所述二维图像和所述深度图像进行下采样获得第一二维图像和所述第一深度图像;
第一图像获取单元,用于对所述第一深度图像进行预处理,获得预处理后的第一深度图像;
第二图像获取单元,用于对所述第一二维图像和所述预处理后的第一深度图像进行扩充,获得第二二维图像和第二深度图像;
深度像素获取单元,用于基于所述第二二维图像和所述第二深度图像的映射关系,获取所述第二二维图像中各像素的深度值,获得各像素对应的深度像素;
第一模型获取单元,用于将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
在一实施例中,所述待修复区域获取模块包括:
子图像获取单元,用于根据预设的深度阈值获取所述第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素;
深度边获取单元,用于根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中的每个深度像素均属于背景的深度边;
待修复区域获取单元,用于以所述背景深度边中的所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素的位置与对应起点像素位于同一深度层,则确定所述扩充像素属于纹理区域;若扩充像素的位置不与对应起点像素位于同一深度层,则确定所述扩充像素属于遮挡区域;将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的待修复区域。
可选地,所述深度边获取单元包括:
节点度数获取子单元,用于针对所述多个子图中的每个子图,获取所述每个子图中各节点的度数;所述度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;所述每个子图中各节点是所述第一三维模型中与所述各节点对应的深度像素;
节点聚集获取子单元,用于基于八联通域方向聚集度数小于预设度数值的节点,获得多个深度边节点聚集;所述深度边节点聚集是指位于同一深度层中边缘的深度像素的集合;
深度边获取子单元,用于对每个深度边节点聚集中节点进行唯一性检测以确定每个节点属于背景像素或者前景像素,获得第一三维模型对应的多条深度边。
可选地,所述深度边获取单元包括:
子图获取子单元,用于获取所述多条深度边中封闭的至少一条待处理深度边;
长度获取子单元,用于获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边;
子图合并子单元,用于将所述各待处理深度边合并到对应的最长深度边的深度层。
可选地,所述深度边获取单元包括:
节点对比子单元,用于比对所述二维图像中各像素和所述第一三维模型中各节点;
节点填充子单元,用于当确定所述第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,在所述第一三维模型中填充所述缺失节点;所述缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
可选地,所述深度边获取单元包括:
端点获取子单元,用于获取每条深度边的端点;
端点确定子单元,用于当所述端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,确定所述端点为对应深度边的端点;当所述端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将所述端点连接到距离其最近的其他深度边。
可选地,所述深度边获取单元包括:
像素数量获取子单元,用于获取各条深度边包含的深度像素的数量;
深度边删除子单元,用于当所述数量小于预设像素阈值时,删除所述深度边。
在一实施例中,所述第二模型获取模块包括:
像素集合获取单元,用于获取所述目标区域和所述待修复区域相交位置处的边缘深度像素集合;
优先级获取单元,用于获取所述边缘深度像素集合内每个像素的优先级;
匹配块搜索单元,用于针对优先级最高的像素,在所述目标区域内搜索其邻域内的相似匹配块;
第二模型获取单元,用于将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
可选地,所述相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。
可选地,所述第二模型获取模块包括:
候补数据获取单元,用于当所述相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据;所述第一像素是指已经修复颜色值和深度值的像素;
第一像素更新单元,用于基于邻域一致性判断是否更新第二像素的颜色值和深度值;其中,第二像素是指最相似匹配块中邻域完整的邻域点。
在一实施例中,所述立体图像获取模块包括:
关系获取单元,用于根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系;
节点遍历单元,用于从所述第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点;
顶点获取单元,用于基于所述三维映射关系获取各连接节点与所述起始节点在所述二维图像的相对位置,得到所述起始节点的右上或者右下节点,并将所述连接节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件;
图像生成单元,用于根据所述指定文件和预设的视角变化路径生成待显示的立体图像。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行的计算机程序的存储器;
其中,所述处理器被配置为执行所述存储器中的计算机程序,以实现如上述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述存储介质中的可执行的计算机程序由处理器执行时,以实现如上述的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
由上述实施例可知,本公开实施例提供的方案可以根据二维图像和深度图像获取所述二维图像对应的第一三维模型;然后,获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;之后,根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;最后,根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。这样,本实施例中通过获取目标区域和待修复区域,可以利用所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素;即像素修改步骤可以由电子设备中的软硬件资源来完成,可以适应于软硬件资源满足要求的电子设备,或者说,在电子设备的软硬件资源满足要求的情况下,上述方案可以获取相同的立体图像,具有良好的移植性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种立体图像获取方法的流程图。
图2是根据一示例性实施例示出的另一种立体图像获取方法的流程图。
图3是根据一示例性实施例示出的一种获取第一三维模型的示意图。
图4是根据一示例性实施例示出的分层深度图像的示意图。
图5是根据一示例性实施例示出的获取目标区域和待修复区域的流程图。
图6是根据一示例性实施例示出的获取目标区域和待修复区域的效果示意图;其中a图示出了初始的深度层的子图,b图示出了前景深度边和背景深度边,c图示出了纹理区域和遮挡区域,d图示出了填充后的深度层。
图7是根据一示例性实施例示出的获取第二三维图像的流程图。
图8是根据一示例性实施例示出的更新第二像素的颜色值和深度值的流程图。
图9是根据一示例性实施例示出的获取立体图像的流程图。
图10是根据一示例性实施例示出的一种立体图像获取装置的框图。
图11是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性所描述的实施例并不代表与本公开相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置例子。
为解决相关技术中存在的技术问题,本公开实施例提供了一种立体图像获取方法,可以应用于电子设备,如智能手机、个人电脑、平板电脑、服务器等设备,尤其是移动设备,图1是本公开实施例示出的一种立体图像获取方法的流程图,图2是本公开实施例示出的另一种立体图像获取方法的流程图。参见图1和图2,一种立体图像获取方法包括步骤11~步骤14:
在步骤11中,根据二维图像和深度图像获取所述二维图像对应的第一三维模型。
本实施例中,电子设备中可以设置有相机模组,该相机模组在启动后可以按照预设的工作模式或者之前一次的工作模式工作,例如工作模式可以包括拍照模式或者人像模式,其中拍照模式是指获得原始图像的模式,人像模式是指获得人像虚化图像的模式。
此时,电子设备中的触控屏或者控制按键可以实时或者周期性的检测用户的触发操作,并在检测到用户的触发操作时向处理器发送操作信号,处理器在接收到操作信号之后可以解析上述操作信号并生成与之对应的控制信号发送给相机模组。相机模组在接收到控制信号之后,可以响应于该控制信号进行拍照,并将获得的二维图像(如RGB图像或者灰度图像)发送给处理器或者存储至指定位置(如本地存储器、云端、与电子设备通信连接的外置存储器等)。
本实施例中,电子设备可以获取与上述二维图像相匹配的深度图像。例如,上述相机模组可以包括深度相机,在获得二维图像的同时可以由该深度相机获得同一场景下的深度图像。又如,上述相机模组可以包括两个相机,电子设备内存储两个相机的标定数据,如标定数据可以包括相机的位置、相机之间的间距、相机投影模型等数据,处理器可以标定数据计算出采用图像中每个像素的深度值,从而获得二维图像匹配的深度图像。
需要说明的是,上述利用相机实时获取二维图像和深度图像的方案可以适用于拍照场景。例如,电子设备内可以预先设置一个立体拍照选项,在该选项被触发后,电子设备可以实时拍照并生成二维图像,然后再基于二维图像和深度图像生成立体图像。
在另一实施例中,电子设备还可以从指定位置读取之前拍摄的二维图像和深度图像,同样可以实现本公开的方案。例如,电子设备内可以预先设置一个图像渲染选项,在该选项被触发后,电子设备可以将用户所选择的二维图像及其匹配的深度图像生成立体图像,然后显示立体图像并存储到指定位置。
本实施例中,电子设备可以根据深度图像和二维图像获得一个三维模型,后续称之为第一三维模型,参见图3,包括步骤31~步骤35:
在步骤31中,电子设备可以对二维图像进行下采样,获得下采样后的二维图像,后续称之为第一二维图像;同时,可以对深度图像进行下采样,获得下采样后的深度图像,后续称之为第一深度图像。本步骤中通过对二维图像和深度图像进行下采样,可以降低后续计算的数据量,适用于电子设备计算资源有限的场景,可以在保证电子设备正常工作的情况下在最短时间内完成图像处理工作。考虑到随着科技的发展,当电子设备的计算资源足够时,可以无需对图像进行下采样,即步骤31并非是一个必要的步骤。
在步骤32中,电子设备可以对第一深度图像进行预处理,预处理可以包括但不限于深度域转换和边缘锐化等,可以得到预处理后的第一深度图像。以预处理包括深度域转换为例,如从深度域[0,255]转化到深度域[0,10],可以减少深度图像边缘的深度等级数量,解决或者缓解由于深度渐变而引起的深度像素或者后续的深度边被划分到多个深度层的问题,有利于提高后续步骤获取深度边的准确性。以边缘锐化为例,可以滤除深度图像中的噪声,突出深度图像中的细节或者纹理,有利于后续步骤中获取深度边等特征,提高获取特征的准确性。可理解的是,其中,对第一深度图像的预处理可以根据具体场景进行设置,在有利于提升本方法性能的基础上,相应方案落入本公开的方案。
在步骤33中,电子设备可以对所述第一二维图像进行扩充,即在第一二维图像的周围增加像素,从而获得预设尺寸的第二二维图像;同时采用相同的扩充方法对预处理后的第一深度图像进行扩充,获得第二深度图像。可理解的是,第二二维图像和第二深度图像具有相同的尺度和分辨率,即两者中的像素为一一对应关系。本步骤中通过对图像进行扩充可以增大图像的尺寸,从而在后续视角变化即相机的视场角(FOV)变大时保证具有足够的图像信息。
在步骤34中,电子设备可以基于第二二维图像和第二深度图像的映射关系,获取第二二维图像中各像素的深度值,获得各像素对应的深度像素。
在步骤35中,电子设备可以将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
可理解的是,二维图像中各像素可以采用二维坐标(x,y)表示,而第一三维模型中各节点可以采用三维坐标(x,y,z)表示。其中,三维坐标中坐标z表示深度值。第一三维模型的表示方式可以包括以下一种:体像素(volume)、点云(point cloud)和三角网(mesh)。在一示例中,采用具有轻量、形状细节丰富的特点的三角网表示试,即本示例中采用无向图(Graph)数据结构来描述三角网(mesh),通过把每个具有深度信息的像素(后续称之为深度像素,depth pixel)看作无向图的节点,属于同一个深度层的深度像素之间用边连接起来。参见图4,相机C1、C2和C3可以各自拍照以获取单视图即二维图像,如相机C1拍摄的单视图P1。基于分层深度图像(Layered Depth Images,LDI)的定义,把单视图上的每个像素看作一条光线,在真实场景中该光线方向上存在多个深度层的物体(即深度像素a、b、c和d)。将深度像素a、b、c和d之间用边连接起来得到一个全连接的无向图,即本示例中三角图为一个初始化的全连接的无向图。可理解的是,深度像素a和单视图P1上的像素p在同一条光线上,因此深度像素a可以在相机C1的像素p处成像,单视图P1的像素p处采用灰色表示。
在步骤12中,获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域。
本实施例中,电子设备可以获取第一三维模型对应的目标区域和待修复区域,参见图5,包括步骤51~步骤53:
在步骤51中,电子设备可以根据预设的深度阈值获取第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素。本步骤中,电子设备内可以预先存储预设的深度阈值,该深度阈值可以根据具体场景进行设置,如步骤32中的深度域[0,10]时,该深度阈值可以设置为0.5、1.5、2.5、3.5、4.5、5.5、6.5、7.5、8.5和9.5;然后,利用四舍五入的方式确定深度像素的深度层。以深度像素的深度值为5.3为例,该深度值小于深度阈值5.5,此时可以将深度像素划分深度层5;以深度像素的深度值为5.6为例,该深度值大于深度阈值5.5,此时可以将深度像素划分深度层6。在将每个深度像素划分到每个深度层之后,可以获得表示每个深度层的子图,本步骤可以获得第一三维模型对应的多个子图,每个子图的节点为同一深度层的深度像素。
考虑到每个子图的节点的数量不同,如果节点数量过少则有可能是噪声,因此,在一示例中,电子设备可以对子图像进行筛选。电子设备可以获取每个子图中深度像素的个数,并删除个数小于或者等于预设个数的子图,其中预设个数可以根据具体场景如图像的清晰度等参数进行调整,如预设个数为20。这样,本示例中通过删除节点数量过少的子图,可以减少子图的数量以及消除部分噪声,有利于降低数据处理量,提升电子设备的处理效率。
在步骤52中,电子设备可以根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中的每个深度像素均属于背景的深度边。
本实施例中,针对上述多个子图中的每个子图,电子设备可以获取每个子图中各节点的度数。其中,度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;每个子图中各节点为第一三维模型中与其对应的深度像素。这是因为,当子图中的一个节点其在二维图像中的上下左右都是同一深度层的,那么该节点具有4条连接边,即度数为4;如度数小于4,则说明该节点的是深度层边缘位置。然后,电子设备可以基于八联通域方向聚集度数小于预设度数阈值的节点,获取多个深度边节点聚集,该深度边节点聚集是指位于同一深度层中边缘的深度像素的集合。即本步骤中通过连通域分析,可以提取出代表每个深度层的深度边节点聚集。之后,电子设备可以对每个深度边节点聚集中节点进行唯一性检测,即将该节点的深度值与预设深度值进行比较,小于该预设深度值的节点属于前景像素,大于或者等于该预设深度值的节点属于背景像素,从而可以确定每个节点是属于背景像素还是前景像素,这样可以获得第一三维模型对应的多条深度边。
其中,预设深度值可以根据经验值进行设置,例如在人像素模式下,人的位置通常距离相机为1~3米,那么可以将预设深度值设置有3米,并在深度域转换后将上述3米进行相应的转换,如转换到深度域[0,10]中的3。或者,预设深度值可以根据统计值进行设置,例如可以统计二维图像中全部像素的深度值的分布情况,人体对应像素的深度值占比较多,人体与背景之间空间内的像素的深度值占比较少,可以将人体与上述空间的连接位置的深度像素的深度值或者深度值平均值作为上述预设深度值,并转换到对应的深度域。技术人员可以根据具体场景选择合适的预设深度值,在能够区别出前景或者背景的情况下,相应方案落入本公开的保护范围。
考虑到上述实施例中可能删除子图,导致该子图对应区域区的深度边呈现封闭状态,或者说是一些孤立的小岛区域,即孤岛区域。孤岛区域的深度值可能受噪声等影响并不是很准确,会导致后续三角图的效果较差,且增加算法处理耗时。因此,在一示例中,电子设备可以对获取多条深度边中封闭的至少一条待处理深度边。
例如,电子设备可以先确定出封闭边,该封闭边内部的深度像素没有深度值,或者深度值是随机的且没有一个统一的深度层,则可以确定该封闭边为待处理深度边。然后,电子设备可以获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边。之后,电子设备可以将各待处理深度边合并到对应的最长深度边的深度层。
其中,合并是指将待处理深度边中各深度像素的深度值更新为最长深度边中深度像素的深度值,例如最长深度边中像素深度值的平均值或者迭代更新后的深度值;其中更新后的深度值是指计算待合并的深度像素的邻域内一个或者多个深度像素的深度值的平均值,将该平均值作为待合并的深度像素的深度值。
这样,本实施例中通过对孤岛区域的深度边进行合并,可以消除删除子图可能带来的部分噪声,保证后续获取深度边的准确性。可理解的是,上述合并待处理子图的过程是一个迭代过程,直至所有待处理深度边全部合并完成为止。
在将孤岛区域合并到最长深度边的深度层之后,第一三维模型中的节点可能会少于二维图像,其中二维图像可以包括原始二维图像或者上述第一二维图像,根据上述实施例中是否设置有步骤31来确定,后续以设置有步骤31为例描述各实施例的方案。此时,电子设备可以对比下采样后的二维图像(即第一二维图像)中各像素和第一三维模型中各节点。由于第一二维图像是一个二维图像,其像素包括二维坐标(x,y),第一三维模型中节点包括三维坐标(x,y,z),此时可以通过坐标对比的方式,确定出第一三维模型中未包含的(x,y)以及二维图像中未包含z值的像素,即获得第一三维模型中的缺点节点。当确定第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,电子设备可以在第一三维模型中填充缺失节点;缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
考虑到深度噪声的存在,上述实施例中获得的多条深度边中,可能存在部分深度边的端点出现不正确的节点,即理论上深度边的端点只有一条连接边并且在其4邻域内,至少有另一个深度层的深度边缘端点。为此,本示例中电子设备可以获取每条深度边的端点,并确定各端点是否只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点。当端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,电子设备可以确定该端点为对应深度边的端点;当该端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将该端点连接到距离其最近的其他深度边。这样,本示例中可以消除深度噪声,提高所获得深度边的准确度。
考虑到后续实施例中利用深度边获取遮挡区域,由于上述多条深度边中存在许多冗余值,尤其是可能属于同一深度层的深度边被划分为多个,或者从前景深度层到背景深度层被划分出了多个中间深度层,从而导致深度边的数量增多,过多消耗电子设备的资源,进而会影响到电子设备的性能。为此,本示例中,电子设备可以获取各条深度边包含的深度像素的数量,当数量小于预设像素阈值,如20像素,此时可以删除该深度边。这样,电子设备通过删除部分深度边,可以在不影响后续获取遮挡区域的准确度的情况下,提升处理效率。
需要说明的是,本公开中当包括删除子图、填充缺失节点、处理深度边的端点和删除部分深度边的至少一个实施方案时,每个实施方案均是一个迭代过程。在每次处理完成后,需要更新第一三维模型中节点的属性。可理解的是,由于第一三维模型中部分节点的深度值的变化,处于边缘的深度像素也随之变化,因此需要重新获取第一三维模型的深度边节点聚集以及重新获取第一三维模型对应的多条深度边。
在步骤53中,电子设备可以针对所述背景深度边中的每个深度像素,以所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素位置存在与对应起点像素位于同一深度层的深度像素,则确定所述深度像素属于纹理区域;若扩充像素位置不存在与对应起点像素位于同一深度层的深度像素,则确定所述深度像素属于遮挡区域。电子设备可以将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的所述待修复区域。
需要说明的是,目标区域是指像素的颜色值和深度值已知的区域,待修复区域是指像素的颜色值和深度值未知的区域;或者说,待修复区域是包含待修复像素的区域,而目标区域是修复待修复区域时颜色值和深度值的来源。
本实施例中,参见图6,电子设备可以获取到第一三维模型对应的分层深度图像,效果如图6的a图所示。并且,电子设备可以获得多条深度边;这些深度边中包括对应前景深度层的深度边和背景深度层的深度边,效果如图6的b图中的EG和ER。那么,被遮挡的区域主要是深度边ER所在的深度层。然后,电子设备可以对这条背景深度边ER进行交叉检测,如果存在交叉说明该背景深度层属于一个延展深度层,需要添加约束。本示例中,电子设备可以采用泛洪算法(Flood Fill),基于上述背景深度边ER上的每个深度像素作为起点像素向其周围迭代扩充,如果扩充的像素位置在同一深度层上,那么该像素上对应的节点属于纹理区域即目标区域,效果如图6的c图中ZB区域;反之,如果同一深度层上没有对应的节点,那么它属于遮挡区域即待修复区域,效果如图6的c图中ZR区域。最后,对车行道绿化我进行填充(inpainted)得到如图6的d图。
需要说明的是,本示例中,在泛洪算法中并不是朝四个方向无限制的迭代扩充。为减小电子设备中的消耗,本示例中,考虑深度边的形状对扩充方向进行约束,首先利用深度边的法向量方向去作参考方向,该法向量与深度边所在深度层平行。然后,在深度边节点的(平面上的)上下左右4个方向扩充出节点,依次迭代,直至达到设定尺寸为止。其中设定尺寸可以根据具体场景进行设置,如深度边向外扩充出20-40像素。
需要说明的,本示例中,考虑到纹理区域和扩充区域的交界区域即深度边的邻域,较难确定到底是前景和背景,因此,本示例中可以获取深度边的预设尺寸内深度像素作为其邻域。
需要说明的,本示例中,在步骤52中可以将获取的深度边单独存储成一个图,在后续过程中仅处理这个图的数据,直至获得该图的感兴趣区域(Region of Interest,ROI)。此时获得的是一个目标区域和待修复区域的图案,将该图案定位至第一二维图像上之后即可以将图案覆盖的区域作为目标区域和待修复区域。这样,电子设备可以减少数据处理量,提升处理效率。在步骤13中,根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型。
本实施例中,电子设备可以修复待修复区域的像素,参见图7,包括步骤71~步骤74:在步骤71中,电子设备可以获取目标区域和待修复区域相交位置处的边缘深度像素集合。该边缘深度像素集合即上述深度边预设尺寸的邻域。在步骤72中,电子设备可以获取所述边缘深度像素集合内每个像素的优先级。本步骤中,像素优先级的计算方法包括但不限于像素邻域的纹理复杂度和离散度等。以纹理复杂度为例,计算每个像素邻域的纹理复杂度,纹理复杂度越大,则优先级越高;否则,优先级越低。其中,像素邻域的形状包括但不限于方形、十字形和米字形等。在步骤73中,针对优先级最高的像素,电子设备可以在目标区域内搜索其邻域内的相似匹配块。其中,相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。在步骤74中,电子设备可以将相似匹配块中像素的颜色值和深度值赋予待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
随着图像修复的进行,步骤73中邻域内的已知像素的颜色值和深度值可能是之前修复得到的,后续将这些已经修复颜色值和深度值的像素为第一像素。本示例中,参见图8,在步骤81中,电子设备可以判断相似匹配块中是否包括第一像素,当相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据。在步骤82中,电子设备可以基于邻域一致性判断是否更新第二像素的颜色值和深度值。其中,第二像素是指最相似匹配块中邻域完整的邻域点。本步骤中,邻域一致性可以计算邻域内特征值(颜色值和深度值)的方差,表示邻域内的特征值的离散程度,离散程度越小表示邻域内值分布越集中;离散程度越在表示邻域内值分布越离散。在方差越大(超过方差阈值)时,确定更新第一像素的颜色值和深度值。这样,本示例中,通过邻域一致性判断再修复像素的方案可以增加本公开方案的鲁棒性。
在步骤14中,根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
本实施例中,电子设备可以基于第二三维模型获取立体图像,参见图9,包括步骤91~步骤94:
在步骤91中,电子设备可以根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系。其中,相机投影模型可以从电子设备内存储的标定数据内获取。另外,在二维图像、第二三维模型和相机投影模型均已知的情况下,可以采用相关技术来确定两者之间的三维映射关系。
在步骤92中,电子设备可以从第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点。
在步骤93中,电子设备可以基于上述三维映射关系获取各连接节点与起始节点在二维图像的相对位置,得到该起始节点的右上或者右下节点,并将该起始节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件。其中用于描述图形结构的指定文件可以是ply文件,ply文件格式是一套三维mesh模型数据格式,作为一种多边形模型数据格式,只用于描述一个多边形模型对象(Object),该模型对象可以通过诸如顶点、面等数据进行描述。
在步骤94中,电子设备内可以根据所述指定文件和预设的视角变化路径生成待显示的立体图像。本示例中,电子设备内可以设置有视频变化路径选项,用户可以触发操作该选项,视角变化路径可以包括但不限于:前后变化、左右变化、上下变化、顺时针变化和逆时针变化等,可以根据具体场景进行设置。或者说,电子设备可以根据视角变化路径从指定文件中读取像素数据,并渲染出立体图像的效果。
至此,本公开实施例提供的方案通过获取目标区域和待修复区域,可以利用所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素;即像素修改步骤可以由电子设备中的软硬件资源来完成,可以适应于软硬件资源满足要求的电子设备,或者说,在电子设备的软硬件资源满足要求的情况下,上述方案可以获取相同的立体图像,具有良好的移植性。
图10是根据一示例性实施例示出的一种立体图像获取装置的框图,参见图10,一种立体图像获取装置,包括:
第一模型获取模块101,用于根据二维图像和深度图像获取所述二维图像对应的第一三维模型;
待修复区域获取模块102,用于获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;
第二模型获取模块103,用于根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;
立体图像获取模块104,用于根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
在一实施例中,所述第一模型获取模块包括:
下采样单元,用于对所述二维图像和所述深度图像进行下采样获得第一二维图像和所述第一深度图像;
第一图像获取单元,用于对所述第一深度图像进行预处理,获得预处理后的第一深度图像;
第二图像获取单元,用于对所述第一二维图像和所述预处理后的第一深度图像进行扩充,获得第二二维图像和第二深度图像;
深度像素获取单元,用于基于所述第二二维图像和所述第二深度图像的映射关系,获取所述第二二维图像中各像素的深度值,获得各像素对应的深度像素;
第一模型获取单元,用于将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
在一实施例中,所述待修复区域获取模块包括:
子图像获取单元,用于根据预设的深度阈值获取所述第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素;
深度边获取单元,用于根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中各深度像素均属于背景的深度边;
待修复区域获取单元,用于以所述背景深度边中的所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素的位置与对应起点像素位于同一深度层,则确定所述扩充像素属于纹理区域;若扩充像素的位置不与对应起点像素位于同一深度层,则确定所述扩充像素属于遮挡区域;将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的待修复区域。
在一实施例中,所述深度边获取单元包括:
节点度数获取子单元,用于针对所述多个子图中的每个子图,获取所述每个子图中各节点的度数;所述度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;所述每个子图中各节点是所述第一三维模型中与所述各节点对应的深度像素;
节点聚集获取子单元,用于基于八联通域方向聚集度数小于预设度数值的节点,获得多个深度边节点聚集;所述深度边节点聚集是指位于同一深度层中边缘的深度像素的集合;
深度边获取子单元,用于对每个深度边节点聚集中节点进行唯一性检测以确定每个节点属于背景像素或者前景像素,获得第一三维模型对应的多条深度边。
在一实施例中,所述深度边获取单元包括:
子图获取子单元,用于获取所述多条深度边中封闭的至少一条待处理深度边;
长度获取子单元,用于获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边;
子图合并子单元,用于将所述各待处理深度边合并到对应的最长深度边的深度层。
在一实施例中,所述深度边获取单元包括:
节点对比子单元,用于比对所述二维图像中各像素和所述第一三维模型中各节点;
节点填充子单元,用于当确定所述第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,在所述第一三维模型中填充所述缺失节点;所述缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
在一实施例中,所述深度边获取单元包括:
端点获取子单元,用于获取每条深度边的端点;
端点确定子单元,用于当所述端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,确定所述端点为对应深度边的端点;当所述端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将所述端点连接到距离其最近的其他深度边。
在一实施例中,所述深度边获取单元包括:
像素数量获取子单元,用于获取各条深度边包含的深度像素的数量;
深度边删除子单元,用于当所述数量小于预设像素阈值时,删除所述深度边。
在一实施例中,所述第二模型获取模块包括:
像素集合获取单元,用于获取所述目标区域和所述待修复区域相交位置处的边缘深度像素集合;
优先级获取单元,用于获取所述边缘深度像素集合内每个像素的优先级;
匹配块搜索单元,用于针对优先级最高的像素,在所述目标区域内搜索其邻域内的相似匹配块;
第二模型获取单元,用于将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
在一实施例中,所述相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。
在一实施例中,所述第二模型获取模块包括:
候补数据获取单元,用于当所述相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据;所述第一像素是指已经修复颜色值和深度值的像素;
第一像素更新单元,用于基于邻域一致性判断是否更新第二像素的颜色值和深度值;其中,第二像素是指最相似匹配块中邻域完整的邻域点。
在一实施例中,所述立体图像获取模块包括:
关系获取单元,用于根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系;
节点遍历单元,用于从所述第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点;
顶点获取单元,用于基于所述三维映射关系获取各连接节点与所述起始节点在所述二维图像的相对位置,得到所述起始节点的右上或者右下节点,并将所述连接节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件;
图像生成单元,用于根据所述指定文件和预设的视角变化路径生成待显示的立体图像。
可理解的是,本公开实施例提供的装置与上述图1所示方法相对应,具体内容可以参考方法各实施例的内容,在此不再赘述。
图11是根据一示例性实施例示出的一种电子设备的框图。例如,电子设备1100可以是智能手机,计算机,数字广播终端,平板设备,医疗设备,健身设备,个人数字助理等。
参照图11,电子设备1100可以包括以下一个或多个组件:处理组件1102,存储器1104,电源组件1106,多媒体组件1108,音频组件1110,输入/输出(I/O)的接口1112,传感器组件1114,通信组件1116,以及图像采集组件1118。
处理组件1102通常控制电子设备1100的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1102可以包括一个或多个处理器1120来执行计算机程序。此外,处理组件1102可以包括一个或多个模块,便于处理组件1102和其他组件之间的交互。例如,处理组件1102可以包括多媒体模块,以方便多媒体组件1108和处理组件1102之间的交互。
存储器1104被配置为存储各种类型的数据以支持在电子设备1100的操作。这些数据的示例包括用于在电子设备1100上操作的任何应用程序或方法的计算机程序,联系人数据,电话簿数据,消息,图片,视频等。存储器1104可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1106为电子设备1100的各种组件提供电力。电源组件1106可以包括电源管理系统,一个或多个电源,及其他与为电子设备1100生成、管理和分配电力相关联的组件。电源组件1106可以包括电源芯片,控制器可以电源芯片通信,从而控制电源芯片导通或者断开开关器件,使电池向主板电路供电或者不供电。
多媒体组件1108包括在电子设备1100和目标对象之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示屏(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自目标对象的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
音频组件1110被配置为输出和/或输入音频信号。例如,音频组件1110包括一个麦克风(MIC),当电子设备1100处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1104或经由通信组件1116发送。在一些实施例中,音频组件1110包括一个扬声器,用于输出音频信号。
I/O接口1112为处理组件1102和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。
传感器组件1114包括一个或多个传感器,用于为电子设备1100提供各个方面的状态评估。例如,传感器组件1114可以检测到电子设备1100的打开/关闭状态,组件的相对定位,例如组件为电子设备1100的显示屏和小键盘,传感器组件1114还可以检测电子设备1100或一个组件的位置改变,目标对象与电子设备1100接触的存在或不存在,电子设备1100方位或加速/减速和电子设备1100的温度变化。本示例中,传感器组件1114可以包括磁力传感器、陀螺仪和磁场传感器,其中磁场传感器包括以下至少一种:霍尔传感器、薄膜磁致电阻传感器、磁性液体加速度传感器。
通信组件1116被配置为便于电子设备1100和其他设备之间有线或无线方式的通信。电子设备1100可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G、5G,或它们的组合。在一个示例性实施例中,通信组件1116经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件1116包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备1100可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现。在一实施例中,所述处理器包括数字信号处理器DSP;利用所述DSP对模糊核形状内同一行像素中相同模糊核半径的像素进行并行处理,以实现单指令多数据流处理。
在示例性实施例中,还提供了一种包括可执行的计算机程序的非临时性可读存储介质,例如包括指令的存储器1104,上述可执行的计算机程序可由处理器执行。其中,可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (26)

1.一种立体图像获取方法,其特征在于,包括:
根据二维图像和深度图像获取所述二维图像对应的第一三维模型;
获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;
根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;
根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
2.根据权利要求1所述的方法,其特征在于,根据二维图像和深度图像获取所述二维图像对应的第一三维模型,包括:
对所述二维图像和所述深度图像进行下采样获得第一二维图像和所述第一深度图像;
对所述第一深度图像进行预处理,获得预处理后的第一深度图像;
对所述第一二维图像和所述预处理后的第一深度图像进行扩充,获得第二二维图像和第二深度图像;
基于所述第二二维图像和所述第二深度图像的映射关系,获取所述第二二维图像中各像素的深度值,获得各像素对应的深度像素;
将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
3.根据权利要求1所述的方法,其特征在于,获取所述第一三维模型对应的目标区域和待修复区域,包括:
根据预设的深度阈值获取所述第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素;
根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中的每个深度像素均属于背景的深度边;
以所述背景深度边中的所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素的位置与对应起点像素位于同一深度层,则确定所述扩充像素属于纹理区域;若扩充像素的位置不与对应起点像素位于同一深度层,则确定所述扩充像素属于遮挡区域;
将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的所述待修复区域。
4.根据权利要求3所述的方法,其特征在于,根据所述多个子图获取所述第一三维模型对应的多条深度边,包括:
针对所述多个子图中的每个子图,获取所述每个子图中各节点的度数;所述度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;所述每个子图中各节点是所述第一三维模型中与所述各节点对应的深度像素;
基于八联通域方向聚集度数小于预设度数值的节点,获得多个深度边节点聚集;所述深度边节点聚集是指位于同一深度层中边缘的深度像素的集合;
对每个深度边节点聚集中节点进行唯一性检测以确定每个节点属于背景像素或者前景像素,获得第一三维模型对应的多条深度边。
5.根据权利要求3所述的方法,其特征在于,所述方法包括:
获取所述多条深度边中封闭的至少一条待处理深度边;
获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边;
将所述各待处理深度边合并到对应的最长深度边的深度层。
6.根据权利要求5所述的方法,其特征在于,将所述各待处理深度边合并到对应的最长深度边的深度层之后,所述方法包括:
比对所述二维图像中各像素和所述第一三维模型中各节点;
当确定所述第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,在所述第一三维模型中填充所述缺失节点;所述缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
7.根据权利要求5所述的方法,其特征在于,所述方法包括:
获取每条深度边的端点;
当所述端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,确定所述端点为对应深度边的端点;当所述端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将所述端点连接到距离其最近的其他深度边。
8.根据权利要求5所述的方法,其特征在于,所述方法包括:
获取各条深度边包含的深度像素的数量;
当所述数量小于预设像素阈值时,删除所述深度边。
9.根据权利要求1所述的方法,其特征在于,根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型,包括:
获取所述目标区域和所述待修复区域相交位置处的边缘深度像素集合;
获取所述边缘深度像素集合内每个像素的优先级;
针对优先级最高的像素,在所述目标区域内搜索其邻域内的相似匹配块;
将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
10.根据权利要求9所述的方法,其特征在于,所述相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。
11.根据权利要求9所述的方法,其特征在于,将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素之前,所述方法包括:
当所述相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据;所述第一像素是指已经修复颜色值和深度值的像素;
基于邻域一致性判断是否更新第二像素的颜色值和深度值;所述第二像素是指最相似匹配块中邻域完整的邻域点。
12.根据权利要求1所述的方法,其特征在于,根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像,包括:
根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系;
从所述第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点;
基于所述三维映射关系获取各连接节点与所述起始节点在所述二维图像的相对位置,得到所述起始节点的右上或者右下节点,并将所述连接节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件;
根据所述指定文件和预设的视角变化路径生成待显示的立体图像。
13.一种立体图像获取装置,其特征在于,包括:
第一模型获取模块,用于根据二维图像和深度图像获取所述二维图像对应的第一三维模型;
待修复区域获取模块,用于获取所述第一三维模型对应的目标区域和待修复区域;其中待修复区域是指被前景物体遮挡且在视角变化时需要显示的区域,所述目标区域是指为所述待修复区域提供颜色值和深度值的区域;
第二模型获取模块,用于根据所述目标区域内像素的颜色值和深度值修复所述待修复区域内的像素,获得第二三维模型;
立体图像获取模块,用于根据预设的视角变化路径和所述第二三维模型获取待显示的立体图像。
14.根据权利要求13所述的装置,其特征在于,所述第一模型获取模块包括:
下采样单元,用于对所述二维图像和所述深度图像进行下采样获得第一二维图像和所述第一深度图像;
第一图像获取单元,用于对所述第一深度图像进行预处理,获得预处理后的第一深度图像;
第二图像获取单元,用于对所述第一二维图像和所述预处理后的第一深度图像进行扩充,获得第二二维图像和第二深度图像;
深度像素获取单元,用于基于所述第二二维图像和所述第二深度图像的映射关系,获取所述第二二维图像中各像素的深度值,获得各像素对应的深度像素;
第一模型获取单元,用于将各深度像素依次连接获得全连接的无向图,所述无向图作为所述第一三维模型。
15.根据权利要求13所述的装置,其特征在于,所述待修复区域获取模块包括:
子图像获取单元,用于根据预设的深度阈值获取所述第一三维模型对应的多个子图;每个子图的节点为同一深度层的深度像素;
深度边获取单元,用于根据所述多个子图获取所述第一三维模型对应的多条深度边;所述多条深度边包括背景深度边,所述背景深度边是指该深度边中的每个深度像素均属于背景的深度边;
待修复区域获取单元,用于以所述背景深度边中的所述每个深度像素作为起点像素向其周围迭代扩充,若扩充像素的位置与对应起点像素位于同一深度层,则确定所述扩充像素属于纹理区域;若扩充像素的位置不与对应起点像素位于同一深度层,则确定所述扩充像素属于遮挡区域;将所述纹理区域作为所述第一三维模型对应的所述目标区域且将所述遮挡区域作为所述第一三维模型对应的待修复区域。
16.根据权利要求15所述的装置,其特征在于,所述深度边获取单元包括:
节点度数获取子单元,用于针对所述多个子图中的每个子图,获取所述每个子图中各节点的度数;所述度数是指该节点与其他节点之间的连接边的条数,并且该节点与其同一深度层的节点之间具有一条连接边;所述每个子图中各节点是所述第一三维模型中与所述各节点对应的深度像素;
节点聚集获取子单元,用于基于八联通域方向聚集度数小于预设度数值的节点,获得多个深度边节点聚集;所述深度边节点聚集是指位于同一深度层中边缘的深度像素的集合;
深度边获取子单元,用于对每个深度边节点聚集中节点进行唯一性检测以确定每个节点属于背景像素或者前景像素,获得第一三维模型对应的多条深度边。
17.根据权利要求15所述的装置,其特征在于,所述深度边获取单元包括:
子图获取子单元,用于获取所述多条深度边中封闭的至少一条待处理深度边;
长度获取子单元,用于获取各待处理深度边邻域内各深度边的长度,得到各待处理深度边对应的最长的深度边;
子图合并子单元,用于将所述各待处理深度边合并到对应的最长深度边的深度层。
18.根据权利要求15所述的装置,其特征在于,所述深度边获取单元包括:
节点对比子单元,用于比对所述二维图像中各像素和所述第一三维模型中各节点;
节点填充子单元,用于当确定所述第一三维模型中与下采样后的二维图像中各像素对应的缺失节点时,在所述第一三维模型中填充所述缺失节点;所述缺失节点的深度值为其附近的最长深度边中各深度像素的平均深度值。
19.根据权利要求17所述的装置,其特征在于,所述深度边获取单元包括:
端点获取子单元,用于获取每条深度边的端点;
端点确定子单元,用于当所述端点只有一条连接边且其邻域内包括至少一个另一深度层的深度边的端点时,确定所述端点为对应深度边的端点;当所述端点只有一条连接边且其邻域内没有另一深度层的深度边的端点时,将所述端点连接到距离其最近的其他深度边。
20.根据权利要求17所述的装置,其特征在于,所述深度边获取单元包括:
像素数量获取子单元,用于获取各条深度边包含的深度像素的数量;
深度边删除子单元,用于当所述数量小于预设像素阈值时,删除所述深度边。
21.根据权利要求13所述的装置,其特征在于,所述第二模型获取模块包括:
像素集合获取单元,用于获取所述目标区域和所述待修复区域相交位置处的边缘深度像素集合;
优先级获取单元,用于获取所述边缘深度像素集合内每个像素的优先级;
匹配块搜索单元,用于针对优先级最高的像素,在所述目标区域内搜索其邻域内的相似匹配块;
第二模型获取单元,用于将所述相似匹配块中像素的颜色值和深度值赋予所述待修复区域内对应的像素以修复所述待修复区域内的像素,获得第二三维模型。
22.根据权利要求21所述的装置,其特征在于,所述相似匹配块的搜索方法包括以下至少一种:基于特征的匹配方法、基于灰度的匹配方法和基于关系的匹配方法。
23.根据权利要求21所述的装置,其特征在于,所述第二模型获取模块包括:
候补数据获取单元,用于当所述相似匹配块中包括第一像素时,将所述相似匹配块中对应像素的颜色值和深度值作为候补数据;所述第一像素是指已经修复颜色值和深度值的像素;
第一像素更新单元,用于基于邻域一致性判断是否更新第二像素的颜色值和深度值;其中,第二像素是指最相似匹配块中邻域完整的邻域点。
24.根据权利要求13所述的装置,其特征在于,所述立体图像获取模块包括:
关系获取单元,用于根据预设的相机投影模型确定所述二维图像和所述第二三维模型之间的三维映射关系;
节点遍历单元,用于从所述第二三维模型中的每个深度像素为起始节点,遍历其所连接的节点;
顶点获取单元,用于基于所述三维映射关系获取各连接节点与所述起始节点在所述二维图像的相对位置,得到所述起始节点的右上或者右下节点,并将所述连接节点、右上节点和右下节点作为三角面的顶点保存到用于描述图形结构的指定文件;
图像生成单元,用于根据所述指定文件和预设的视角变化路径生成待显示的立体图像。
25.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行的计算机程序的存储器;
其中,所述处理器被配置为执行所述存储器中的计算机程序,以实现如权利要求1~12任一项所述的方法。
26.一种计算机可读存储介质,其特征在于,当所述存储介质中的可执行的计算机程序由处理器执行时,能够实现如权利要求1~12任一项所述的方法。
CN202110473235.2A 2021-04-29 2021-04-29 立体图像获取方法及装置、电子设备、存储介质 Pending CN115272604A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110473235.2A CN115272604A (zh) 2021-04-29 2021-04-29 立体图像获取方法及装置、电子设备、存储介质
EP21218162.2A EP4135317A3 (en) 2021-04-29 2021-12-29 Stereoscopic image acquisition method, electronic device and storage medium
US17/565,746 US11908096B2 (en) 2021-04-29 2021-12-30 Stereoscopic image acquisition method, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110473235.2A CN115272604A (zh) 2021-04-29 2021-04-29 立体图像获取方法及装置、电子设备、存储介质

Publications (1)

Publication Number Publication Date
CN115272604A true CN115272604A (zh) 2022-11-01

Family

ID=79730249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110473235.2A Pending CN115272604A (zh) 2021-04-29 2021-04-29 立体图像获取方法及装置、电子设备、存储介质

Country Status (3)

Country Link
US (1) US11908096B2 (zh)
EP (1) EP4135317A3 (zh)
CN (1) CN115272604A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11557054B1 (en) * 2021-06-24 2023-01-17 Himax Technologies Limited Method for performing region-of-interest-based depth detection with aid of pattern-adjustable projector, and associated apparatus

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778491B2 (en) * 2006-04-10 2010-08-17 Microsoft Corporation Oblique image stitching
KR101697184B1 (ko) * 2010-04-20 2017-01-17 삼성전자주식회사 메쉬 생성 장치 및 그 방법, 그리고, 영상 처리 장치 및 그 방법
KR101828805B1 (ko) * 2011-07-07 2018-03-29 삼성전자주식회사 스테레오 카메라의 3차원 줌 영상 생성 방법 및 장치
US9514522B2 (en) * 2012-08-24 2016-12-06 Microsoft Technology Licensing, Llc Depth data processing and compression
KR102156402B1 (ko) * 2013-11-05 2020-09-16 삼성전자주식회사 영상 처리 방법 및 장치
US11645835B2 (en) * 2017-08-30 2023-05-09 Board Of Regents, The University Of Texas System Hypercomplex deep learning methods, architectures, and apparatus for multimodal small, medium, and large-scale data representation, analysis, and applications
US11801114B2 (en) * 2017-09-11 2023-10-31 Philipp K. Lang Augmented reality display for vascular and other interventions, compensation for cardiac and respiratory motion
US11017586B2 (en) * 2019-04-18 2021-05-25 Adobe Inc. 3D motion effect from a 2D image

Also Published As

Publication number Publication date
US11908096B2 (en) 2024-02-20
US20220351478A1 (en) 2022-11-03
EP4135317A2 (en) 2023-02-15
EP4135317A3 (en) 2023-06-07

Similar Documents

Publication Publication Date Title
KR102597385B1 (ko) 이미지 세그먼트화 방법 및 장치, 컴퓨터 디바이스 및 저장 매체
CN109683699B (zh) 基于深度学习实现增强现实的方法、装置及移动终端
US9269003B2 (en) Diminished and mediated reality effects from reconstruction
EP3779883A1 (en) Method and device for repositioning in camera orientation tracking process, and storage medium
US20190082118A1 (en) Augmented reality self-portraits
CN110097576B (zh) 图像特征点的运动信息确定方法、任务执行方法和设备
CN110148178B (zh) 相机定位方法、装置、终端及存储介质
CN111062981B (zh) 图像处理方法、装置及存储介质
US20140126769A1 (en) Fast initialization for monocular visual slam
CN112287852B (zh) 人脸图像的处理方法、显示方法、装置及设备
CN109886208B (zh) 物体检测的方法、装置、计算机设备及存储介质
CN110599593A (zh) 数据合成的方法、装置、设备及存储介质
CN114170349A (zh) 图像生成方法、装置、电子设备及存储介质
CN110570460A (zh) 目标跟踪方法、装置、计算机设备及计算机可读存储介质
CN112749613A (zh) 视频数据处理方法、装置、计算机设备及存储介质
CN114125320A (zh) 一种图像特效的生成方法及装置
CN112308103B (zh) 生成训练样本的方法和装置
US11908096B2 (en) Stereoscopic image acquisition method, electronic device and storage medium
CN113870413A (zh) 三维重建方法、装置、电子设备及存储介质
US20190066366A1 (en) Methods and Apparatus for Decorating User Interface Elements with Environmental Lighting
CN111784841A (zh) 重建三维图像的方法、装置、电子设备及介质
US10339702B2 (en) Method for improving occluded edge quality in augmented reality based on depth camera
CN108550170B (zh) 虚拟角色驱动方法及装置
CN114093020A (zh) 动作捕捉方法、装置、电子设备及存储介质
CN112308766A (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