CN115294276A - 散斑生成方法、装置、电子设备及计算机可读存储介质 - Google Patents
散斑生成方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115294276A CN115294276A CN202210940162.8A CN202210940162A CN115294276A CN 115294276 A CN115294276 A CN 115294276A CN 202210940162 A CN202210940162 A CN 202210940162A CN 115294276 A CN115294276 A CN 115294276A
- Authority
- CN
- China
- Prior art keywords
- projection
- edge
- speckle
- point
- random number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000000007 visual effect Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- DMSMPAJRVJJAGA-UHFFFAOYSA-N benzo[d]isothiazol-3-one Chemical compound C1=CC=C2C(=O)NSC2=C1 DMSMPAJRVJJAGA-UHFFFAOYSA-N 0.000 claims description 3
- 238000005192 partition Methods 0.000 claims description 2
- 238000005070 sampling Methods 0.000 description 57
- 238000010586 diagram Methods 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 12
- 238000003062 neural network model Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000003384 imaging method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/24—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
- G01B11/25—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
- G01B11/2513—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object with several lines being projected in more than one direction, e.g. grids, patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/30—Polynomial surface description
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/507—Depth or shape recovery from shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
Abstract
本申请实施例公开了一种散斑生成方法、装置、电子设备及计算机可读存储介质,该方法包括:将散斑投射器的投射区域划分为若干多边形,并根据若干多边形的顶点和边确定若干待选投影点和若干待选投影边;生成随机数,并根据随机数从若干待选投影点中选取目标投影点,以及从若干待选投影边中选取目标投影边;根据目标投影点和目标投影边,生成散斑图案。通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
Description
技术领域
本申请实施例涉及计算机技术领域,具体涉及一种散斑生成方法、装置、电子设备及计算机可读存储介质。
背景技术
随着计算机技术的快速发展,三维重建的应用越来越广泛,目前,可以通过在重建对象上投射散斑,利用散斑来实现三维对象模型的重建。
但是,目前主要还是以随机的方式来投射散斑,使得散斑的稀疏程度难以控制,不利于对重建对象纹理信息的获取。
发明内容
本申请实施例提供一种散斑生成方法、装置、电子设备及计算机可读存储介质,可以实现对散斑密度的控制,利于纹理信息的获取。
第一方面,本申请实施例提供了一种散斑生成方法,包括:
将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边;
生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边;
根据所述目标投影点和所述目标投影边,生成散斑图案。
第二方面,本申请实施例还提供了一种散斑生成装置,包括:
确定模块,用于将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边;
选取模块,用于生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边;
生成模块,用于根据所述目标投影点和所述目标投影边,生成散斑图案。
其中,在本申请的一些实施例中,选取模块包括:
密度确定单元,用于确定散斑密度值;
选取单元,用于生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影。
其中,在本申请的一些实施例中,密度确定单元包括:
密度确定子单元,用于根据输入的精度需求参数确定散斑密度值,和/或,根据待投射对象的纹理特征确定散斑密度值。
其中,在本申请的一些实施例中,选取单元包括:
生成子单元,用于生成针对每一所述待选投影点的点随机数,以及生成针对每一所述待选投影边的边随机数;
第一选取子单元,用于根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点;
第二选取子单元,用于根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边。
其中,在本申请的一些实施例中,散斑密度值包括点密度值,第一选取子单元具体用于:
针对每一所述待选投影点,根据所述待选投影点的点随机数和所述点密度值的比较结果,确定所述待选投影点的点选取状态;
根据每一所述待选投影点的点选取状态,从所述若干待选投影点中确定目标投影点。
其中,在本申请的一些实施例中,散斑密度值包括边密度值,第二选取子单元具体用于:
针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态;
根据每一所述待选投影边的边选取状态,从所述若干待选投影边中确定目标投影边。
其中,在本申请的一些实施例中,多边形包括矩形,确定模块包括:
点确定单元,用于针对每一所述矩形,将所述矩形的任一顶点作为待选投影点,且各个矩形对应的待选投影点的位置一致,其中,所述位置包括所述待选投影点相对于所述矩形的位置;
边确定单元,用于将所述矩形中与所述待选投影点连接的两条边分别作为待选投影边。
其中,在本申请的一些实施例中,两条边包括第一边和第二边,所述散斑密度值包括第一边对应的第一边密度值和第二边对应的第二边密度值,第二选取子单元还具体用于:
针对每一所述第一边,根据所述第一边对应的边随机数和所述第一边密度值的比较结果,确定所述第一边的边选取状态;
针对每一所述第二边,根据所述第二边对应的边随机数和所述第二边密度值的比较结果,确定所述第二边的边选取状态。
其中,在本申请的一些实施例中,确定模块包括:
尺寸确定单元,用于响应于针对散斑投射器的投射区域的散斑生成指令,确定划分尺寸;
划分单元,用于根据所述划分尺寸将散斑投射器的投射区域划分为若干多边形。
其中,在本申请的一些实施例中,该装置还包括深度计算模块,深度计算模块包括:
投射单元,用于在当前时刻的当前视角将所述散斑图案投射到待投影对象;
拍摄单元,用于通过双目相机对所述投射后的待投影对象进行拍摄,得到第一拍摄图像和第二拍摄图像;
计算单元,用于根据所述散斑图案在所述第一拍摄图像和所述第二拍摄图像中的视差,确定所述待投影对象在所述当前时刻的所述当前视角的深度信息。
其中,在本申请的一些实施例中,该装置还包括建模模块,建模模块包括:
获取单元,用于根据所述散斑图案,获取所述待投影对象在所述当前时刻的当前视角外的其它视角的深度信息;
建模单元,用于根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型。
其中,在本申请的一些实施例中,该装置还包括体积视频生成模块,体积视频生成模块包括:
多时刻建模单元:在所述当前时刻之外的其它时刻对所述待投影对象进行建模,得到所述待投影对象在所述其它时刻的三维对象模型;
体积视频生成单元,用于对已建模得到的三维对象模型按时序进行视频编码,得到所述待投影对象的体积视频。
第三方面,本申请实施例还提供了一种电子设备,电子设备包括存储器、处理器及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的散斑生成方法中的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的散斑生成方法中的步骤。
其中,本申请实施例将散斑投射器的投射区域划分为多个多边形,并根据多个多边形的顶点和边得到多个待选投影点和多个待选投影边,通过生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及根据随机数从多个待选投影边中选取目标投影边,然后,根据选取的目标投影点和目标投影边生成散斑图案。其中,通过点和边构建散斑图案,丰富了散斑图案纹理的多样性,相较于相关技术中随机点构成的散斑,本方案中点和边线构成的散斑更容易获取被投影物体表面的纹理。其中,根据随机数选取投影的点和边线,提升了散斑图案的随机性,而随机的方式在一定程度上也能使散斑更均匀。其中,通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的散斑生成方法的场景示意图;
图2是本申请实施例提供的散斑生成方法的流程示意图;
图3是本申请实施例提供的根据矩形对散斑投射器的投射区域进行划分的画面示意图;
图4是本申请实施例提供的基于矩形的散斑生成方法的流程示意图;
图5是本申请实施例提供的散斑图案的第一画面示意图;
图6是本申请实施例提供的散斑图案的第二画面示意图;
图7是本申请实施例提供的散斑图案的第三画面示意图;
图8是本申请实施例提供的散斑图案的第四画面示意图;
图9是相关技术中基于投影点的随机散斑的画面示意图;
图10是相关技术中基于投影点的另一随机散斑图案的画面示意图;
图11是本申请实施例提供的散斑图案应用的画面示意图;
图12是本申请实施例提供的散斑生成装置的结构示意图;
图13是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供一种散斑生成方法、装置、电子设备及计算机可读存储介质。具体地,本申请实施例提供适用于电子设备的散斑生成装置,其中,电子设备包括终端设备,其中,终端设备可以为计算机、光线发射器(如激光器或者激光发射器)等设备。
请参阅图1,以终端设备执行散斑生成方法为例,其中,散斑生成方法的具体执行过程如下:
终端设备10将自身投影范围对应的散斑投射器的投射区域划分为多个多边形,根据多个多边形的顶点和边确定多个待选投影点和待选投影边,随后,生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及从多个待选投影边中选取目标投影边,并根据目标投影点和目标投影边生成散斑图案。
其中,在本申请实施例将散斑投射器的投射区域划分为多个多边形,并根据多个多边形的顶点和边得到多个待选投影点和多个待选投影边,通过生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及根据随机数从多个待选投影边中选取目标投影边,然后,根据选取的目标投影点和目标投影边生成散斑图案。其中,通过点和边构建散斑图案,丰富了散斑图案纹理的多样性,相较于相关技术中随机点构成的散斑,本方案中点和边线构成的散斑更容易获取被投影物体表面的纹理。其中,根据随机数选取投影的点和边线,提升了散斑图案的随机性,而随机的方式在一定程度上也能使散斑更均匀。其中,通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优先顺序的限定。
请参阅图2,图2为本申请实施例提供的散斑生成方法的流程示意图。该散斑生成方法的具体流程可以如下:
101、将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边。
其中,在本申请实施例中,散斑投射器的投射区域为设备投射范围对应的区域,该设备投射光线后在投射范围对应的散斑投射器的投射区域中形成散斑,其中,该设备包括激光发射设备。
其中,在本申请实施例中,多边形包括多条边形成的几何图形,例如,三角形、长方形或者正方形等。其中,在本申请实施例中,多边形包括规则的图形,其中,规则的图形便于对散斑投射器的投射区域进行划分,例如,将散斑投射器的投射区域划分为矩形,则可以根据矩形将散斑投射器的投射区域进行等分。
其中,在本申请实施例中,可以将多边形的顶点作为待选投影点,将多边形的边作为待选投影边。其中,通过将多边形的顶点作为待选投影点以及将多边形的边作为待选投影边,可通过控制多边形的宽高来控制投影点的位置以及投影边的位置和长度,达到控制投影点和投影边密度的效果,进而实现对散斑图案稀疏程度的控制。其中,通过对散斑稀疏程度的控制,便于获取到被投射对象更丰富的纹理信息,而更丰富的纹理信息便于对投射对象深度信息的计算以及三维数据的计算。
其中,在将多边形的顶点作为投影点后,也可以通过调整顶点的大小调整投影点的大小,调整多边形边的长短和粗细来调整投影边的长短和粗细,实现对不同散斑图案的获取。
其中,在本申请实施例中,可以控制多边形的尺寸,通过控制多边形的尺寸来调节散斑的密度,即,可选的,在本申请的一些实施例中,步骤“将散斑投射器的投射区域划分为若干多边形”,包括:
响应于针对散斑投射器的投射区域的散斑生成指令,确定划分尺寸;
根据所述划分尺寸将散斑投射器的投射区域划分为若干多边形。
其中,在本申请实施例中,划分尺寸对应多边形的尺寸,用于控制划分的多边形的大小,其中,在本申请实施例中,可以通过对散斑生成指令的解析来得到多边形的尺寸数据,或者直接接收用户输入的划分数据来得到划分尺寸。
其中,在本申请实施例中,多边形可以为矩形,相应的,可以将矩形的顶点作为待选投影点,将矩形的边作为待选投影边,即,可选的,在本申请的一些实施例中,多边形包括矩形,步骤“根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边”,包括:
针对每一所述矩形,将所述矩形的任一顶点作为待选投影点,且各个矩形对应的待选投影点的位置一致,其中,所述位置包括所述待选投影点相对于所述矩形的位置;
将所述矩形中与所述待选投影点连接的两条边分别作为待选投影边。
其中,以矩形对散斑投射器的投射区域进行划分,可使散斑投射器的投射区域被划分的均匀和彻底,其中,以矩形对散斑投射器的投射区域进行划分,也可以使散斑更均匀。
其中,针对每个矩形,可以将该矩形中任一顶点作为待选投影点,而针对散斑投射器的投射区域中的每个待选投影点,该待选投影点可分别对应一个矩形,例如,该点待选投影点位于该矩形中四个顶点中的任一个。
其中,本申请实施例中,将各个待选投影点与矩形位置相同的设置,可使得每个待选投影点可对应一个矩形,建立该投影点与该矩形的对应关系,避免待选投影点的重复计算或选取。例如,相邻的矩形中有重复的顶点,而以矩形左上角对应的顶点作为该矩形对应的待选投影点,可使得每个矩形对应一个待选投影点,且各个待选投影点分别对应一个矩形,有效避免待选投影点的重复利用或者重复选取。
其中,在本申请实施例中,针对多边形,比如四边形(如矩形),每个顶点可对应连接有两条边,因此,在确定每个矩形与每个待选投影点的一一对应关系后,可以将该待选投影点连接的两条边分别作为待选投影边,例如,请参阅图3,以四边形中的矩形为例,同时,本申请实施例也适用于可平铺的其他形状,如三角形,六边形等,图3是本申请实施例提供的根据矩形对散斑投射器的投射区域进行划分的画面示意图,其中,a点为矩形A的顶点,也是矩形A对应的待选投影点,相应的,矩形A中与a点连接的边b1和b2为该矩形A对应的两个待选投影边。而与待选投影点连接的边作为待选投影边,也可以避免矩形边的重复选取和利用,避免待选投影边的重复使用。
102、生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边。
其中,通过随机数选取投影点和投影边,使得投影点和投影边的选取具备随机性,便于实现散斑的随机分布。
其中,在本申请实施例中,散斑图案还可以根据散斑的密度需求来控制,因此,在生成随机数后,还可以根据随机数与散斑密度值的比较结果来筛选投影点和投影边,即,可选的,在本申请的一些实施例中,步骤“生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边”,包括:
确定散斑密度值;
生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边。
其中,在本申请实施例中,散斑密度值指散斑在散斑投射器的投射区域中的密度,在本申请实施例中,可以将散斑密度值以0-1之间的小数来表示,根据不同的小数值表示不同的密度,例如,将散斑面积占散斑投射器的投射区域面积的比例(例如占空比)对应的小数值作为散斑密度值,也可以通过散斑对应的像素点的数量与散斑投射器的投射区域的像素点的数量的比值来计算。
其中,在本申请实施例中,散斑密度值可以基于用户的需求进行控制或者基于待投射的物体表面的纹理来确定,即,可选的,在本申请的一些实施例中,步骤“确定散斑密度值”,包括:
根据输入的精度需求参数确定散斑密度值,和/或,根据待投射对象的纹理特征确定散斑密度值。
其中,在本申请实施例中,精度需求参数由用户根据需求进行输入,基于该参数控制散斑的密度,即根据不同的精度需求参数得到不同的散斑密度值。
其中,在本申请实施例中,待投射对象的纹理特征反映待投射对象表面的复杂度,即,本申请实施例中,可以根据待投射对象表面的复杂度来确定散斑密度,例如,针对表面复杂度较高的物体,可以提升散斑的密度,以获取物体表面更多的纹理信息,而针对表面复杂度较低的物体,则可以降低散斑的密度,降低光线投射量,降低资源成本。
其中,通过随机数可控制投影点和投影边的随机选取,通过随机数与散斑密度值的比较,可实现根据散斑密度值选取投影点和投影边,实现对散斑密度的控制,其中,本申请实施例中,可以通过随机数与散斑密度值大小比较的方式来选取投影点或者投影边。例如,在本申请实施例中,可以将随机数和散斑密度值设置在同一数值区间中,根据随机数是否大于散斑密度值来选取投影点和投影边。
其中,在本申请实施例中,还可以生成针对每个待选投影点的随机数以及生成针对每个待选投影边的随机数,根据各个随机数与散斑密度值的比较来选取投影点和投影边,即,可选的,在本申请的一些实施例中,步骤“生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边”,包括:
生成针对每一所述待选投影点的点随机数,以及生成针对每一所述待选投影边的边随机数;
根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点;
根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边。
其中,通过生成针对每个待选投影点的点随机数和生成针对每个待选投影边的边随机数,可分别通过每个点随机数和每个边随机数与散斑密度值的比较来选取投影点和投影边。
其中,在本申请实施例中,针对每个待选投影点,可以根据该待选投影点与散斑密度值的比较结果来确定是否将该待选投影点作为目标投影点,即,可选的,在本申请的一些实施例中,散斑密度值包括点密度值,步骤“根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点”,包括:
针对每一所述待选投影点,根据所述待选投影点的点随机数和所述点密度值的比较结果,确定所述待选投影点的点选取状态;
根据每一所述待选投影点的点选取状态,从所述若干待选投影点中确定目标投影点。
其中,在本申请实施例中,点选取状态包括选取和不选取,通过待选投影点的点随机数与点密度值的比较,可以确定待选投影点的选取状态,例如,当待选投影点对应的点随机数小于或者等于点密度值时,则该待选投影点的点选取状态为选取,当该待选投影点对应的点随机数大于点密度值时,则该待选投影点的点选取为不选取,比如,以点密度值和点随机数均在0-1之间为例,当点密度值为0.7时,则表明期望的散斑密度中点的密度为0.7,则可以将点随机数为0.7及0.7以下的待选投影点作为目标投影点,其中,基于随机原理,点随机数为0.7及0.7以下的待选投影点占所有待选投影点的比值也接近控制在70%。因此,根据随机数与点密度值的比较,可实现对待选投影点的选取密度的控制,进而控制散斑的密度。
其中,在本申请实施例中,针对每个待选投影边,可以根据该待选投影边与散斑密度值的比较结果来确定是否将该待选投影边作为目标投影边,即,可选的,在本申请的一些实施例中,散斑密度值包括边密度值,步骤“根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边”,包括:
针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态;
根据每一所述待选投影边的边选取状态,从所述若干待选投影边中确定目标投影边。
其中,在本申请实施例中,边选取状态包括选取和不选取,通过待选投影边的边随机数与边密度值的比较,可以确定待选投影边的选取状态,例如,当待选投影边对应的边随机数小于或者等于边密度值时,则该待选投影边的边选取状态为选取,当该待选投影边对应的边随机数大于边密度值时,则该待选投影边的边选取为不选取,比如,以边密度值和边随机数均在0-1之间为例,当边密度值为0.6时,则表明期望的散斑密度中边的密度为0.6,则可以将边随机数为0.6及0.6以下的待选投影边作为目标投影边,其中,基于随机原理,边随机数为0.6及0.6以下的待选投影边占所有待选投影边的比值也接近控制在60%。因此,根据随机数与边密度值的比较,可实现对待选投影边的选取密度的控制,进而控制散斑的密度。
其中,在本申请实施例中,针对多边形为矩形,且每个矩形对应有与待选投影点连接的两条边时,则每条边可以根据每条边对应的密度值确定是否将该边作为待选投影边,即,可选的,在本申请的一些实施例中,两条边包括第一边和第二边,散斑密度值包括第一边对应的第一边密度值和第二边对应的第二边密度值,步骤“针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态”,包括:
针对每一所述第一边,根据所述第一边对应的边随机数和所述第一边密度值的比较结果,确定所述第一边的边选取状态;
针对每一所述第二边,根据所述第二边对应的边随机数和所述第二边密度值的比较结果,确定所述第二边的边选取状态。
其中,通过每条边各自边随机数与各自边密度值的比较,可实现对各个边对应的边选取状态的确定,例如,当第一边的边随机数为0.3,第一边密度值为0.5时,则可以将该第一边作为目标投影边,当第二边的边随机数为0.5,第一边密度值为0.4时,则不将该第二边作为目标投影边。
其中,第一边和第二边按照其对应的边密度值进行选取时,可提升各个边选取的灵活性,避免第一边对第二遍选取的干扰或者避免第二遍对第一边选取的干扰,提升边选取效率。
103、根据所述目标投影点和所述目标投影边,生成散斑图案。
其中,在确定目标投影点和目标投影边后,可实现对光线投影位置的定位,而目标投影点和目标投影边的位置则对应散斑的位置,因此,可以根据目标投影点和目标投影边生成散斑图案。
其中,在确定了投影的位置后,通过光线投射到投影的位置,则可以实现基于散斑图案在投影位置上的散斑投影。其中,在本申请实施例中,光线包括激光。
其中,在本申请实施例中,在得到散斑图案后,还可以根据散斑图案计算物体的深度信息,即,可选的,在本申请实施例中,步骤“根据所述目标投影点和所述目标投影边,生成散斑图案”,包括:
在当前时刻的当前视角将所述散斑图案投射到待投影对象;
通过双目相机对所述投射后的待投影对象进行拍摄,得到第一拍摄图像和第二拍摄图像;
根据所述散斑图案在所述第一拍摄图像和所述第二拍摄图像中的视差,确定所述待投影对象在所述当前时刻的所述当前视角的深度信息。
其中,在本申请实施例中,双目相机包括结构光双目深度摄像机,结构光双目深度摄像机通过一个或多个结构光发射器,和两个相机组成。两个相机拍摄到结构光打在物体上的图像,通过计算视差,来进行深度计算。
其中,散斑是结构光发射机投射的图案,为了提供强烈的纹理信息,并且纹理具有独特性,一般会用随机散斑作为图案。
其中,在散斑图案投射到待投影对象上后,可以根据散斑图案获取到待投影对象表面的粗糙程度,而通过第一拍摄图像和第二拍摄图像可以获取到待投射图像的视差信息,进而可以得到待投射对象的深度信息。
其中,在本申请实施例中,可以得到待投影对象不同视角的深度信息,基于不同视角的深度信息对待投影对象进行建模,即,可选的,在本申请的一些实施例中,该方法还包括:
根据所述散斑图案,获取所述待投影对象在所述当前时刻的当前视角外的其它视角的深度信息;
根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型。
其中,在本申请实施例中,在得到待投影对象同一时刻多个视角的深度信息后,可以通过点云重建的方式对待投影对象进行重建,得到待投影对象的三维对象模型。
其中,在本申请实施例中,在得到待投影对象的三维对象模型后,还可以根据三维对象模型生成体积视频,即,可选的,在本申请的一些实施例中,步骤“根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型”,包括:
在所述当前时刻之外的其它时刻对所述待投影对象进行建模,得到所述待投影对象在所述其它时刻的三维对象模型;
对已建模得到的三维对象模型按时序进行视频编码,得到所述待投影对象的体积视频。
其中,体积视频(Volumetric Video,又称容积视频、空间视频、体三维视频或6自由度视频等)是一种通过捕获三维空间中信息(如深度信息和色彩信息等)并生成三维模型序列的技术。相对于传统的视频,体积视频将空间的概念加入到视频中,用三维模型来更好的还原真实三维世界,而不是以二维的平面视频加上运镜来模拟真实三维世界的空间感。由于体积视频实质为三维模型序列,使得用户可以随自己喜好调整到任意视角进行观看,较二维平面视频具有更高的还原度和沉浸感。
可选地,在本申请中,用于构成体积视频的三维模型可以按照如下方式重建得到:
先获取拍摄对象的不同视角的彩色图像和深度图像,以及彩色图像对应的相机参数;然后根据获取到的彩色图像及其对应的深度图像和相机参数,训练隐式表达拍摄对象三维模型的神经网络模型,并基于训练的神经网络模型进行等值面提取,实现对拍摄对象的三维重建,得到拍摄对象的三维模型。
应当说明的是,本申请实施例中对采用何种架构的神经网络模型不作具体限制,可由本领域技术人员根据实际需要选取。比如,可以选取不带归一化层的多层感知机(MLP,Multilayer Perceptron)作为模型训练的基础模型。
下面将对本申请提供的三维模型重建方法进行详细描述。
首先,可以同步采用多个彩色相机和深度相机对需要进行三维重建的目标物体(该目标物体即为拍摄对象)进行多视角的拍摄,得到目标物体在多个不同视角的彩色图像及对应的深度图像,即在同一拍摄时刻(实际拍摄时刻的差值小于或等于时间阈值即认为拍摄时刻相同),各视角的彩色相机将拍摄得到目标物体在对应视角的彩色图像,相应的,各视角的深度相机将拍摄得到目标物体在对应视角的深度图像。需要说明的是,目标物体可以是任意物体,包括但不限于人物、动物以及植物等生命物体,或者机械、家具、玩偶等非生命物体。
以此,目标物体在不同视角的彩色图像均具备对应的深度图像,即在拍摄时,彩色相机和深度相机可以采用相机组的配置,同一视角的彩色相机配合深度相机同步对同一目标物体进行拍摄。比如,可以搭建一摄影棚,该摄影棚中心区域为拍摄区域,环绕该拍摄区域,在水平方向和垂直方向每间隔一定角度配对设置有多组彩色相机和深度相机。当目标物体处于这些彩色相机和深度相机所环绕的拍摄区域时,即可通过这些彩色相机和深度相机拍摄得到该目标物体在不同视角的彩色图像及对应的深度图像。
此外,进一步获取每一彩色图像对应的彩色相机的相机参数。其中,相机参数包括彩色相机的内外参,可以通过标定确定,相机内参为与彩色相机自身特性相关的参数,包括但不限于彩色相机的焦距、像素等数据,相机外参为彩色相机在世界坐标系中的参数,包括但不限于彩色相机的位置(坐标)和相机的旋转方向等数据。
如上,在获取到目标物体在同一拍摄时刻的多个不同视角的彩色图像及其对应的深度图像之后,即可根据这些彩色图像及其对应深度图像对目标物体进行三维重建。区别于相关技术中将深度信息转换为点云进行三维重建的方式,本申请训练一神经网络模型用以实现对目标物体的三维模型的隐式表达,从而基于该神经网络模型实现对目标物体的三维重建。
可选地,本申请选用一不包括归一化层的多层感知机(MLP,MultilayerPerceptron)作为基础模型,按照如下方式进行训练:
基于对应的相机参数将每一彩色图像中的像素点转化为射线;
在射线上采样多个采样点,并确定每一采样点的第一坐标信息以及每一采样点距离像素点的SDF值;
将采样点的第一坐标信息输入基础模型,得到基础模型输出的每一采样点的预测SDF值以及预测RGB颜色值;
基于预测SDF值与SDF值之间的第一差异,以及预测RGB颜色值与像素点的RGB颜色值之间的第二差异,对基础模型的参数进行调整,直至满足预设停止条件;
将满足预设停止条件的基础模型作为隐式表达目标物体的三维模型的神经网络模型。
首先,基于彩色图像对应的相机参数将彩色图像中的一像素点转化为一条射线,该射线可以为经过像素点且垂直于彩色图像面的射线;然后,在该射线上采样多个采样点,采样点的采样过程可以分两步执行,可以先均匀采样部分采样点,然后再在基于像素点的深度值在关键处进一步采样多个采样点,以保证在模型表面附近可以采样到尽量多的采样点;然后,根据相机参数和像素点的深度值计算出采样得到的每一采样点在世界坐标系中的第一坐标信息以及每一采样点的有向距离(SDF,Signed Distance Field)值,其中,SDF值可以为像素点的深度值与采样点距离相机成像面的距离之间的差值,该差值为有符号的值,当差值为正值时,表示采样点在三维模型的外部,当差值为负值时,表示采样点在三维模型的内部,当差值为零时,表示采样点在三维模型的表面;然后,在完成采样点的采样并计算得到每一采样点对应的SDF值之后,进一步将采样点在世界坐标系的第一坐标信息输入基础模型(该基础模型被配置为将输入的坐标信息映射为SDF值和RGB颜色值后输出),将基础模型输出的SDF值记为预测SDF值,将基础模型输出的RGB颜色值记为预测RGB颜色值;然后,基于预测SDF值与采样点对应的SDF值之间的第一差异,以及预测RGB颜色值与采样点所对应像素点的RGB颜色值之间的第二差异,对基础模型的参数进行调整。
此外,对于彩色图像中的其它像素点,同样按照上述方式进行采样点采样,然后将采样点在世界坐标系的坐标信息输入至基础模型以得到对应的预测SDF值和预测RGB颜色值,用于对基础模型的参数进行调整,直至满足预设停止条件,比如,可以配置预设停止条件为对基础模型的迭代次数达到预设次数,或者配置预设停止条件为基础模型收敛。在对基础模型的迭代满足预设停止条件时,即得到能够对拍摄对象的三维模型进行准确地隐式表达的神经网络模型。最后,可以采用等值面提取算法对该神经网络模型进行三维模型表面的提取,从而得到拍摄对象的三维模型。
可选地,在一些实施例中,根据相机参数确定彩色图像的成像面;确定经过彩色图像中像素点且垂直于成像面的射线为像素点对应的射线。
其中,可以根据彩色图像对应的彩色相机的相机参数,确定该彩色图像在世界坐标系中的坐标信息,即确定成像面。然后,可以确定经过彩色图像中像素点且垂直于该成像面的射线为该像素点对应的射线。
可选地,在一些实施例中,根据相机参数确定彩色相机在世界坐标系中的第二坐标信息及旋转角度;根据第二坐标信息和旋转角度确定彩色图像的成像面。
可选地,在一些实施例中,在射线上等间距采样第一数量个第一采样点;根据像素点的深度值确定多个关键采样点,并根据关键采样点采样第二数量个第二采样点;将第一数量个的第一采样点与第二数量个的第二采样点确定为在射线上采样得到的多个采样点。
其中,先在射线上均匀采样n(即第一数量)个第一采样点,n为大于2的正整数;然后,再根据前述像素点的深度值,从n个第一采样点中确定出距离前述像素点最近的预设数量个关键采样点,或者从n个第一采样点中确定出距离前述像素点小于距离阈值的关键采样点;然后,根据确定出的关键采样点再采样m个第二采样点,m为大于1的正整数;最后,将采样得到的n+m个采样点确定为在射线上采样得到的多个采样点。其中,在关键采样点处再多采样m个采样点,可以使得模型的训练效果在三维模型表面处更为精确,从而提升三维模型的重建精度。
可选地,在一些实施例中,根据彩色图像对应的深度图像确定像素点对应的深度值;基于深度值计算每一采样点距离像素点的SDF值;根据相机参数与深度值计算每一采样点的坐标信息。
其中,在每一像素点对应的射线上采样了多个采样点后,对于每一采样点,根据相机参数、像素点的深度值确定彩色相机的拍摄位置与目标物体上对应点之间的距离,然后基于该距离逐一计算每一采样点的SDF值以及计算出每一采样点的坐标信息。
需要说明的是,在完成对基础模型的训练之后,对于给定的任意一个点的坐标信息,即可由完成训练的基础模型预测其对应的SDF值,该预测的SDF值即表示了该点与目标物体的三维模型的位置关系(内部、外部或者表面),实现对目标物体的三维模型的隐式表达,得到用于隐式表达目标物体的三维模型的神经网络模型。
最后,对以上神经网络模型进行等值面提取,比如可以采用等值面提取算法(MC,Marching cubes)绘制出三维模型的表面,得到三维模型表面,进而根据该三维模型表面得到目标物体的三维模型。
本申请提供的三维重建方案,通过神经网络去隐式建模目标物体的三维模型,并加入深度信息提高模型训练的速度和精度。采用本申请提供的三维重建方案,在时序上持续的对拍摄对象进行三维重建,即可得到拍摄对象在不同时刻的三维模型,这些不同时刻的三维模型按时序构成的三维模型序列即为对拍摄对象所拍摄得到的体积视频。以此,可以针对任意拍摄对象进行“体积视频拍摄”,得到特定内容呈现的体积视频。比如,可以对跳舞的拍摄对象进行体积视频拍摄,得到可以在任意角度观看拍摄对象舞蹈的体积视频,可以对教学的拍摄对象进行体积视频拍摄,得到可以在任意角度观看拍摄对象教学的体积视频,等等。
其中,本申请实施例将散斑投射器的投射区域划分为多个多边形,并根据多个多边形的顶点和边得到多个待选投影点和多个待选投影边,通过生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及根据随机数从多个待选投影边中选取目标投影边,然后,根据选取的目标投影点和目标投影边生成散斑图案。其中,通过点和边构建散斑图案,丰富了散斑图案纹理的多样性,相较于相关技术中随机点构成的散斑,本方案中点和边线构成的散斑更容易获取被投影物体表面的纹理。其中,根据随机数选取投影的点和边线,提升了散斑图案的随机性,而随机的方式在一定程度上也能使散斑更均匀。其中,通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
请参阅图4,图4是本申请实施例提供的基于矩形的散斑生成方法的流程示意图,其中,该基于矩形的散斑生成方法的流程具体包括:
201、根据划分尺寸将激光器的发射范围划分为若干矩形格子;
202、针对每个矩形格子,将该矩形格子左上角的顶点作为待选投影点,将该矩形中与该待选投影点连接的横向边和纵向边作为待选投影边;
203、针对每个待选投影点,生成针对该待选投影点的点随机数,针对每个横向边,生成针对该横向边的横边随机数,针对每个纵向边,生成针对该纵向边的纵边随机数;
204、根据用户输入的精度需求参数确定散斑密度值,和/或,根据待投射对象的纹理特征确定散斑密度值,其中,该散斑密度值包括针对待选投影点的点密度值、针对横向边的横边密度值和针对纵向边的纵边密度值,其中,点随机数与点密度值的取值范围相同,横边随机数与横边密度值的取值范围相同,纵边随机数与纵边密度值的取值范围相同;
205、针对每个待选投影点,当该待选投影点的点随机数小于或者等于点密度值时,将该待选投影点作为目标投影点;
206、针对每个横向边,当该横向边的横边随机数小于或者等于横边密度值时,将该横向边作为目标投影边;
207、针对每个纵向边,当该纵向边的纵向随机数小于或者等于纵边密度值时,将该纵向边作为目标投影边;
208、将目标投影点和目标投影边形成的图案作为散斑图案。
其中,在本申请实施例中,当点密度值的取值范围为0-1时,且点密度值为0时,则激光器的发射范围中不包含目标投影点,当点密度值为1时,则将矩形的各个顶点作为目标投影点。
其中,在本申请实施例中,横向密度值和纵向密度值默认为0.5。
其中,在本申请实施例中,投影点、横向的投影边和纵向的投影边可以分别控制,例如,通过对点密度值、横边密度值和纵边密度值的分别调整,实现对不同类型或者不同密度需求的散斑图案的获取。
例如,在本申请实施例中,将横向的投影边对应的横边密度值设置为0,将纵向的投影边对应的纵边密度值设置为零,使得散斑图案仅由投影点构成,请参阅图5,图5是本申请实施例提供的散斑图案的第一画面示意图,其中,该散斑图案中仅包含有投影点,不包含投影边。
又例如,在本申请实施例中,还可以将投影点的点密度值设置为零,使得散斑图案仅由投影边构成,请参阅图6,图6是本申请实施例提供的散斑图案的第二画面示意图,其中,该散斑图案仅有投影边构成,不包含投影点。
再例如,在本申请实施例中,还可以将散斑图案设置为以横向边为主(调大横边密度值与纵边密度值之间的差距,并保证横边密度值大于纵边密度值),请参阅图7,图7是本申请实施例提供的散斑图案的第三画面示意图,其中,该散斑图案以横向边为主。
再例如,在本申请实施例中,还可以将散斑图案设置为以纵向边为主(调大纵边密度值与横边密度值之间的差距,并保证纵边密度值大于横边密度值),请参阅图8,图8是本申请实施例提供的散斑图案的第四画面示意图,其中,该散斑图案以纵向边为主。
其中,在本申请实施例中,通过将激光器的发射范围划分为多个矩形格子,从矩形格子的顶点和边线中确定投影点和投影边,并在激光投射到投影点和投影边后,实现散斑图案的生成,其中,由于投影点和投影边在矩形格子上,因此,在调整矩形格子的大小后,可实现对散斑密度的调整,因此,本申请实施例通过将激光器发射范围划分为多个矩形格子,可根据对格子尺寸的调整来调整案板图案的稀疏密度,而稀疏密度可控的散斑图案可便于对相应不同的物体对象进行表面纹理采集。
其中,请参阅图9,图9是相关技术中基于投影点的随机散斑的画面示意图,其中,该随机散斑中投影点是随机的,因此,难以控制投影点的密度和均匀程度,不利于对精细物体表面纹理信息的获取。
并且,基于投影点的随机散斑,在投影点增大后,仍未能获取到物体表面较为清晰或准确的纹理信息,请参阅图10,图10是相关技术中基于投影点的另一随机散斑图案的画面示意图,该图中获取的手部纹理信息有所提升,但是,仍不利于对手部深度信息的精细化计算。
然而,基于本申请实施例中散斑图案的生成方式,可实现对手部精细纹理的采集,例如,请参阅图11,图11是本申请实施例提供的散斑图案应用的画面示意图,其中,由于本申请实施例中投影点和投影边是基于矩形格子的大小进行控制的,因此,本申请实施例中可以根据矩形格子的尺寸的变换来调节投影点和投影边的密度以及投影点和投影边在投射范围画面中的均匀程度,因此,针对精细的物体,可以提升投影点和投影边的密度,进一步提升散斑的密度,以便于获取物体表面较为准确的纹理信息,即,通过精细化的散斑图案,点状散斑与短边状散斑的结合,以及密度和稀疏程度的提升,利于实现对手部精细纹理的采集,便于采集到更精确的手部深度信息。
其中,在本申请实施例中,在得到激光器的散斑图案后,可以将该散斑图案投影到待投影对象上,通过散斑图案对待投影对象表面的纹理信息进行采集和计算,进而配合双目相机的视差,以得到待投影对象更准确的深度信息。
其中,在本申请实施例中,在得到待投影对象的深度信息后,还可以根据不同视角的深度信息对待投影对象进行三维重建,得到待投影对象的三维对象模型,例如,基于待投影对象不同视角的深度信息,通过点云计算得到待投影对象的三维模型。
其中,在本申请实施例中,在得到待投影对象的三维模型后,可以根据三维模型生成体积视频,例如,将三维模型基于序列进行连接,得到对应的体积视频。
为便于更好的实施本申请的散斑生成方法,本申请还提供一种基于上述散斑生成方法的散斑生成装置。其中第三目标词语的含义与上述散斑生成方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图12,图12是本申请实施例提供的散斑生成装置的结构示意图,其中,该散斑生成装置可以包括:
确定模块301,用于将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边;
选取模块302,用于生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边;
生成模块303,用于根据所述目标投影点和所述目标投影边,生成散斑图案。
其中,在本申请的一些实施例中,选取模块302包括:
密度确定单元,用于确定散斑密度值;
选取单元,用于生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影。
其中,在本申请的一些实施例中,密度确定单元包括:
密度确定子单元,用于根据输入的精度需求参数确定散斑密度值,和/或,根据待投射对象的纹理特征确定散斑密度值。
其中,在本申请的一些实施例中,选取单元包括:
生成子单元,用于生成针对每一所述待选投影点的点随机数,以及生成针对每一所述待选投影边的边随机数;
第一选取子单元,用于根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点;
第二选取子单元,用于根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边。
其中,在本申请的一些实施例中,散斑密度值包括点密度值,第一选取子单元具体用于:
针对每一所述待选投影点,根据所述待选投影点的点随机数和所述点密度值的比较结果,确定所述待选投影点的点选取状态;
根据每一所述待选投影点的点选取状态,从所述若干待选投影点中确定目标投影点。
其中,在本申请的一些实施例中,散斑密度值包括边密度值,第二选取子单元具体用于:
针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态;
根据每一所述待选投影边的边选取状态,从所述若干待选投影边中确定目标投影边。
其中,在本申请的一些实施例中,多边形包括矩形,确定模块301包括:
点确定单元,用于针对每一所述矩形,将所述矩形的任一顶点作为待选投影点,且各个矩形对应的待选投影点的位置一致,其中,所述位置包括所述待选投影点相对于所述矩形的位置;
边确定单元,用于将所述矩形中与所述待选投影点连接的两条边分别作为待选投影边。
其中,在本申请的一些实施例中,两条边包括第一边和第二边,所述散斑密度值包括第一边对应的第一边密度值和第二边对应的第二边密度值,第二选取子单元还具体用于:
针对每一所述第一边,根据所述第一边对应的边随机数和所述第一边密度值的比较结果,确定所述第一边的边选取状态;
针对每一所述第二边,根据所述第二边对应的边随机数和所述第二边密度值的比较结果,确定所述第二边的边选取状态。
其中,在本申请的一些实施例中,确定模块301包括:
尺寸确定单元,用于响应于针对散斑投射器的投射区域的散斑生成指令,确定划分尺寸;
划分单元,用于根据所述划分尺寸将散斑投射器的投射区域划分为若干多边形。
其中,在本申请的一些实施例中,该装置还包括深度计算模块,深度计算模块包括:
投射单元,用于在当前时刻的当前视角将所述散斑图案投射到待投影对象;
拍摄单元,用于通过双目相机对所述投射后的待投影对象进行拍摄,得到第一拍摄图像和第二拍摄图像;
计算单元,用于根据所述散斑图案在所述第一拍摄图像和所述第二拍摄图像中的视差,确定所述待投影对象在所述当前时刻的所述当前视角的深度信息。
其中,在本申请的一些实施例中,该装置还包括建模模块,建模模块包括:
获取单元,用于根据所述散斑图案,获取所述待投影对象在所述当前时刻的当前视角外的其它视角的深度信息;
建模单元,用于根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型。
其中,在本申请的一些实施例中,该装置还包括体积视频生成模块,体积视频生成模块包括:
多时刻建模单元:在所述当前时刻之外的其它时刻对所述待投影对象进行建模,得到所述待投影对象在所述其它时刻的三维对象模型;
体积视频生成单元,用于对已建模得到的三维对象模型按时序进行视频编码,得到所述待投影对象的体积视频。
本申请实施例由确定模块301将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边,接着,由选取模块302生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边,然后,由生成模块303根据所述目标投影点和所述目标投影边,生成散斑图。
其中,本申请实施例将散斑投射器的投射区域划分为多个多边形,并根据多个多边形的顶点和边得到多个待选投影点和多个待选投影边,通过生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及根据随机数从多个待选投影边中选取目标投影边,然后,根据选取的目标投影点和目标投影边生成散斑图案。其中,通过点和边构建散斑图案,丰富了散斑图案纹理的多样性,相较于相关技术中随机点构成的散斑,本方案中点和边线构成的散斑更容易获取被投影物体表面的纹理。其中,根据随机数选取投影的点和边线,提升了散斑图案的随机性,而随机的方式在一定程度上也能使散斑更均匀。其中,通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
此外,本申请还提供一种电子设备,如图13所示,其示出了本申请所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图13中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、对象界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与对象设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现本申请所提供的任一种散斑生成方法中的步骤。
本申请实施例将散斑投射器的投射区域划分为多个多边形,并根据多个多边形的顶点和边得到多个待选投影点和多个待选投影边,通过生成随机数,根据随机数从多个待选投影点中选取目标投影点,以及根据随机数从多个待选投影边中选取目标投影边,然后,根据选取的目标投影点和目标投影边生成散斑图案。其中,通过点和边构建散斑图案,丰富了散斑图案纹理的多样性,相较于相关技术中随机点构成的散斑,本方案中点和边线构成的散斑更容易获取被投影物体表面的纹理。其中,根据随机数选取投影的点和边线,提升了散斑图案的随机性,而随机的方式在一定程度上也能使散斑更均匀。其中,通过将散斑投射器的投射区域划分为多个多边形,并将多边形的顶点和边作为待选的投影点和投影边,可通过对多边形大小的控制来实现对散斑密度的控制。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本申请所提供的任一种散斑生成方法中的步骤。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本申请所提供的任一种散斑生成方法中的步骤,因此,可以实现本申请所提供的任一种散斑生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请所提供的一种散斑生成方法、装置、电子设备及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种散斑生成方法,其特征在于,包括:
将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边;
生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边;
根据所述目标投影点和所述目标投影边,生成散斑图案。
2.根据权利要求1所述的方法,其特征在于,所述生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边,包括:
确定散斑密度值;
生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边。
3.根据权利要求2所述的方法,其特征在于,所述确定散斑密度值,包括:
根据输入的精度需求参数确定散斑密度值,
和/或,根据待投射对象的纹理特征确定散斑密度值。
4.根据权利要求2所述的方法,其特征在于,所述生成随机数,根据所述随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边,包括:
生成针对每一所述待选投影点的点随机数,以及生成针对每一所述待选投影边的边随机数;
根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点;
根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边。
5.根据权利要求4所述的方法,其特征在于,所述散斑密度值包括点密度值,所述根据每一所述待选投影点的点随机数和所述散斑密度值的比较结果,从所述若干待选投影点中选取目标投影点,包括:
针对每一所述待选投影点,根据所述待选投影点的点随机数和所述点密度值的比较结果,确定所述待选投影点的点选取状态;
根据每一所述待选投影点的点选取状态,从所述若干待选投影点中确定目标投影点。
6.根据权利要求4所述的方法,其特征在于,所述散斑密度值包括边密度值,所述根据每一所述待选投影边的边随机数和所述边密度值的比较结果,从所述若干待选投影边中选取目标投影边,包括:
针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态;
根据每一所述待选投影边的边选取状态,从所述若干待选投影边中确定目标投影边。
7.根据权利要求6所述的方法,其特征在于,所述多边形包括矩形,所述根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边,包括:
针对每一所述矩形,将所述矩形的任一顶点作为待选投影点,且各个矩形对应的待选投影点的位置一致,其中,所述位置包括所述待选投影点相对于所述矩形的位置;
将所述矩形中与所述待选投影点连接的两条边分别作为待选投影边。
8.根据权利要求7所述的方法,其特征在于,所述两条边包括第一边和第二边,所述散斑密度值包括第一边对应的第一边密度值和第二边对应的第二边密度值,所述针对每一所述待选投影边,根据所述待选投影边的边随机数和所述边密度值的比较结果,确定所述待选投影边的边选取状态,包括:
针对每一所述第一边,根据所述第一边对应的边随机数和所述第一边密度值的比较结果,确定所述第一边的边选取状态;
针对每一所述第二边,根据所述第二边对应的边随机数和所述第二边密度值的比较结果,确定所述第二边的边选取状态。
9.根据权利要求1所述的方法,其特征在于,所述将散斑投射器的投射区域划分为若干多边形,包括:
响应于针对散斑投射器的投射区域的散斑生成指令,确定划分尺寸;
根据所述划分尺寸将所述散斑投射器的投射区域划分为若干多边形。
10.根据权利要求1所述的方法,其特征在于,所述根据所述目标投影点和所述目标投影边,生成散斑图案之后,所述方法还包括:
在当前时刻的当前视角将所述散斑图案投射到待投影对象;
通过双目相机对所述投射后的待投影对象进行拍摄,得到第一拍摄图像和第二拍摄图像;
根据所述散斑图案在所述第一拍摄图像和所述第二拍摄图像中的视差,确定所述待投影对象在所述当前时刻的所述当前视角的深度信息。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
根据所述散斑图案,获取所述待投影对象在所述当前时刻的当前视角外的其它视角的深度信息;
根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型。
12.根据权利要求11所述的方法,其特征在于,所述根据已获取到的深度信息对所述待投影对象进行建模,得到当前时刻的三维对象模型之后,所述方法还包括:
在所述当前时刻之外的其它时刻对所述待投影对象进行建模,得到所述待投影对象在所述其它时刻的三维对象模型;
对已建模得到的三维对象模型按时序进行视频编码,得到所述待投影对象的体积视频。
13.一种散斑生成装置,其特征在于,包括:
确定模块,用于将散斑投射器的投射区域划分为若干多边形,并根据所述若干多边形的顶点和边确定若干待选投影点和若干待选投影边;
选取模块,用于生成随机数,并根据所述随机数从所述若干待选投影点中选取目标投影点,以及从所述若干待选投影边中选取目标投影边;
生成模块,用于根据所述目标投影点和所述目标投影边,生成散斑图案。
14.一种电子设备,其特征在于,所述电子设备包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-12任一项所述散斑生成方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-12任一项所述散斑生成方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210940162.8A CN115294276A (zh) | 2022-08-05 | 2022-08-05 | 散斑生成方法、装置、电子设备及计算机可读存储介质 |
US18/093,405 US20240044640A1 (en) | 2022-08-05 | 2023-01-05 | Speckle generation method, electronic device, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210940162.8A CN115294276A (zh) | 2022-08-05 | 2022-08-05 | 散斑生成方法、装置、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115294276A true CN115294276A (zh) | 2022-11-04 |
Family
ID=83827722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210940162.8A Pending CN115294276A (zh) | 2022-08-05 | 2022-08-05 | 散斑生成方法、装置、电子设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20240044640A1 (zh) |
CN (1) | CN115294276A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109141289B (zh) * | 2018-08-01 | 2020-12-29 | 先临三维科技股份有限公司 | 三维扫描方法和系统 |
-
2022
- 2022-08-05 CN CN202210940162.8A patent/CN115294276A/zh active Pending
-
2023
- 2023-01-05 US US18/093,405 patent/US20240044640A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240044640A1 (en) | 2024-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200057831A1 (en) | Real-time generation of synthetic data from multi-shot structured light sensors for three-dimensional object pose estimation | |
CN112755535B (zh) | 光照渲染方法、装置、存储介质及计算机设备 | |
CN114419240A (zh) | 光照渲染方法、装置、计算机设备和存储介质 | |
CN116977522A (zh) | 三维模型的渲染方法、装置、计算机设备和存储介质 | |
WO2019012632A1 (ja) | 認識処理装置、認識処理方法及びプログラム | |
US20240044640A1 (en) | Speckle generation method, electronic device, and computer readable storage medium | |
CN116664752B (zh) | 基于图案化光照实现全景显示的方法、系统及存储介质 | |
US20220392121A1 (en) | Method for Improved Handling of Texture Data For Texturing and Other Image Processing Tasks | |
Volino et al. | Light field compression using eigen textures | |
CN115546408A (zh) | 模型简化方法、装置、存储介质、电子设备及产品 | |
US11803998B2 (en) | Method for computation of local densities for virtual fibers | |
US11710270B2 (en) | Method for scattering points in a uniform arbitrary distribution across a target mesh for a computer animated creature | |
CN116485969A (zh) | 体素对象生成方法、装置和计算机可读存储介质 | |
CN111105489A (zh) | 数据合成方法和装置、存储介质和电子装置 | |
CN112002019B (zh) | 一种基于mr混合现实的模拟人物阴影的方法 | |
JP2010152870A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US11120606B1 (en) | Systems and methods for image texture uniformization for multiview object capture | |
DE112020003896T5 (de) | Raytracing für automatische belichtung | |
CN115035231A (zh) | 阴影烘焙方法、装置、电子设备和存储介质 | |
CN115953520B (zh) | 一种虚拟场景的记录回放方法、装置、电子设备及介质 | |
CN116958397A (zh) | 模型阴影的渲染方法、装置、设备及介质 | |
EP4176415A1 (en) | Method for computation of local densities for virtual fibers | |
US20220351427A1 (en) | Training using rendered images | |
CN115830227A (zh) | 三维建模方法、装置、存储介质、电子设备及产品 | |
CN116233395A (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 |