CN107481319B - 一种隐式曲面随机点云生成器 - Google Patents
一种隐式曲面随机点云生成器 Download PDFInfo
- Publication number
- CN107481319B CN107481319B CN201710723944.5A CN201710723944A CN107481319B CN 107481319 B CN107481319 B CN 107481319B CN 201710723944 A CN201710723944 A CN 201710723944A CN 107481319 B CN107481319 B CN 107481319B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- function
- implicit
- curved surface
- point
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000009826 distribution Methods 0.000 claims abstract description 7
- 238000007667 floating Methods 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 42
- 238000012545 processing Methods 0.000 description 7
- 238000011160 research Methods 0.000 description 6
- 238000000265 homogenisation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010146 3D printing Methods 0.000 description 1
- 101100278332 Dictyostelium discoideum dotA gene Proteins 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000280 densification Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
- 101150116173 ver-1 gene Proteins 0.000 description 1
Images
Classifications
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明涉及一种隐式曲面随机点云生成方法,生成沿隐式方式描述的曲面分布的随机点云,并能保证点云在曲面上处处同等稠密,且在法线方向呈标准差一致的正态分布。具体步骤是:输入隐式曲面及其偏导函数、三维区域和点云规格参数,反复地在指定三维区域均匀地生成随机点,然后根据隐函数值和梯度模计算点到隐式曲面的近似距离,对不同距离的点按不同的概率加入点云或丢弃重取。一方面,在三维区域内随机取的点均匀分布,能使点云在曲面上处处同等稠密。另一方面,不同距离的点加入点云的概率依据正态分布密度函数确定,能使点云在曲面法向呈正态分布。
Description
技术领域
本发明涉及电子数据处理领域,具体地说是一种为电子计算机提供隐式曲面点云数据生成的方法。
背景技术
随机点云生成器(Random Point Cloud Generator)是一种数据处理软件,它以特定的曲面描述为输入,输出一定规格的曲面随机点云,要求生成的点云沿曲面均匀分布。
随机点云生成器的主要应用领域有科学研究、动画设计和教学。在以点云为处理对象的科学研究中,点云的处理算法(如曲线拟合、图像矢量化、曲面重建、障碍物识别、距离计算、模式识别、形状分类)往往是研究的关键。由于点云的处理在计算机视觉、机器人、医学影像处理、3D打印建模、遥感、天文观测等工程、科学领域应用广泛,其处理算法的研究非常活跃。一种新的算法设计出来,需要有大量的模拟点云和实际点云数据来检验算法的性能,测试点云处理算法的精度、运算速度、鲁棒性、稳定性、保拓扑性。实际点云数据可以由3D扫描仪等设备得到,而模拟点云数据则不能由设备产生,只能手工创建,其创建工作是一项非常繁重的劳动,于是科研人员希望有一个自动工具,能根据曲线、曲面的数学描述生成相应的点云数据。随机点云生成器正可满足这种需求,能够自动创建科研所需的点云数据。在广告、动漫、创意影视产业中,经常需要创作变化的物体视频。动态随机点云是动画设计的一种重要形式,点云数据为动画制作系统提供重要素材。借助随机点云可以生成多种变化形式的2D和3D物体视频。例如:将没有白噪声的空间曲面随机点云动态逐点播放,得到一幅颇具创意的由疏渐密,最后形成一个清晰的几何形状的动画。借助本软件的点云数据,还可以制作出清晰化/模糊化、稠密化/稀疏化、完整化/细碎化、点云雨、点云雾、形状挥发、形状凝结等动画视频。利用随机点云制作课件,给学生演示随机变量、白噪声、高斯分布、均匀分布等概念模型,形象生动,提升教学效果。
随机点云生成器的关键技术是点云分布均匀化技术,其使点云沿曲面处处同等稠密,同时在曲面法向方向呈正态分布。如果均匀化技术不过关,生成的点云存在许多弊端,比如弯曲处稠密平坦处稀疏、各向异性(与坐标系方向选择相关)、法向标准差不统一。
曲面的描述形式有多种,经常使用的描述形式是隐式曲面。隐式描述是将曲面S视为一个三元函数的零点集,即有如下描述:
S={(x,y,z)|G(x,y,z)=0}
其中函数G(x,y,z)称为隐函数,除隐函数之外,本发明需要用到隐函数的三个偏导函数:
无论隐函数,还是它的偏导函数,作为计算机的输入数据,都是一种函数指针,其实就是一个内存地址,指向函数的入口,函数的具体实现对函数指针的访问者来说是一个黑盒,访问者无需知道也不能知道其具体实现。隐函数及其偏导函数作为输入数据对计算机处理程序来讲,都是具体的、量化的外部对象。
例如:描述旋转抛物面的隐函数是
G(x,y,z)=x2+y2-z
三个偏导函数是
发明内容
本发明的目的在于提供一种根据输入的隐函数、梯度函数、有界区域及点云规格参数生成随机点云的点云生成器。
为了在一个有界区域内生成沿隐式曲面分布的符合均匀化要求的随机点云,本发明的技术方案是:一种隐式曲面随机点云生成器,其特征在于,所述点云生成器的点云生成方法包含如下步骤:
(1)输入隐式曲面的隐函数G(x,y,z)、隐函数的梯度函数 和有界区域Ω=[a1,a2]×[b1,b2]×[c1,c2],即隐函数的输入形式是一个函数指针,梯度函数的输入形式是三个函数指针,有界区域的输入形式是六个浮点数;同时输入点云的两个规格参数:厚度标准差σ和点数N;
(2)估算隐函数G(x,y,z)在有界区域Ω上的最大梯度模M;
(3)在有界区域Ω=[a1,a2]×[b1,b2]×[c1,c2]内取随机点P=(xP,yP,zP);
(5)若|G(xP,yP,zP)|>λMσ,回到步骤(3),λ为截尾倍数;
(7)若点云的点数不足N,回到步骤(3)继续,否则结束。
其中步骤(4)首先计算G(x,y,z),此时若G(x,y,z)=0,说明点(x,y,z)在曲面上,若G(x,y,z) 不为0,但其绝对值足够小,说明点(x,y,z)在曲面附近,真正的偏离距离用Sampson代数距离 d估计:
其中梯度向量是
梯度向量的模是
步骤(5)是对偏离曲面太远(远于标准差的λ倍)的点予以舍弃,λ值可取2.5以上的实数。
步骤(6)中的正态分布密度函数是
保证点P以概率φ0,1(d/σ)被选中。
进一步地,步骤(2)中最大梯度模M的估算方法是:
步骤(2.1)的采样点总数为(k+1)3。k值取10~25之间的整数。
进一步地,步骤(3)中随机点P=(xP,yP,zP)的取法是:
(3.1)计算L=max(a2-a1,b2-b1,c2-c1);
(3.2)取[a1,a1+L]内均匀分布随机变量的一个浮点数值作为xP;
(3.3)取[b1,b1+L]内均匀分布随机变量的一个浮点数值作为yP;
(3.4)取[c1,c1+L]内均匀分布随机变量的一个浮点数值作为zP;
(3.5)若xP>a2或yP>b2或zP>c2,返回步骤(3.2)重取。
步骤(3)使每一维都按照同等密度的均匀分布随机变量取随机数,从而在整个三维长方体中按照均匀分布密度取到随机点,保证点云在曲面上均匀分布且各向同性。
根据本发明的技术方案,能带来如下技术效果:生成的随机点云在给定曲面上处处同等稠密,即按面积均匀分布,各向同性;生成的随机点云在曲面的法线方向呈正态分布,法向标准差统一;不限定曲面是否封闭;生成结果能以数字形式保存,可供应用软件或系统方便地使用和继续处理。从而本发明的隐式曲面随机点云生成器能很好地生成点云,满足科研、动画、教学等应用领域对点云均匀性、逼真性、易得性的需求,并且具有低成本、可定制的特点,在点云采集上代替3D扫描仪。
附图说明
图1是本发明的隐式曲面随机点云生成器的点云生成总流程图。
图2是图1中最大梯度模估算方法流程图。
具体实施方式
如附图1所示,是本发明一种隐式曲面随机点云生成器的具体实施例的点云生成方法总流程图,包含如下步骤:
步骤(1),首先执行部件101,输入隐式曲面、长方体区域和点云参数,其中隐函数的输入形式是1个函数指针,梯度函数的输入形式是3个函数指针。函数指针是一种外部数据,由外部用户提供,它其实就是一个指针类型的内存地址,指向某个三元函数。无论隐函数还是梯度函数,其函数指针的类型都是如下C语言定义的类型FPOINTER:
typedef double(*FPOINTER)(double,double,double);
有界区域是一个长方体区域Ω=[a1,a2]×[b1,b2]×[c1,c2],其输入形式是6个浮点数,分别界出长方体区域的起止X坐标、起止Y坐标和起止Z坐标。点云参数包括厚度标准差σ和点数 N。
步骤(2),执行部件102,估算最大梯度模M,即如下函数
在区域Ω达到的最大值。对解析性较好的隐函数,最大梯度模可以直接由外部用户提供。对一般的隐函数,最大梯度模不便估算,本发明提供一种易于实施的估算方法,参见附图2。
附图2示出了本发明较佳实施例中的最大梯度模估算方法流程图。首先执行部件201、 202和203,分别沿X方向、Y方向和Z方向在起止坐标范围内均匀取k+1个点作为采样坐标,以X方向为例,起始坐标为a1,终止坐标为a2,采样坐标为即为步骤(2.1)。这样在有界区域Ω内共采样(k+1)3个点,采样常数k的优选取值为20。然后执行部件204,即步骤(2.2),计算所有采样点的梯度模,最后执行部件205,即步骤(2.3),取上述梯度模的最大值作为最大梯度模M的估算值。
在部件102执行之后,进入点云生成主循环。步骤(3),先执行部件103,随机生成有界区域Ω=[a1,a2]×[b1,b2]×[c1,c2]中的一点P。具体生成办法是,步骤(3.1),先计算长方体三度最大值L=max(a2-a1,b2-b1,c2-c1),然后在以(a1,b1,c1)为基点的正方体中随机生成一个点(xP,yP, zP),即步骤(3.2)、步骤(3.3)、步骤(3.4),分别取[a1,a1+L]内均匀分布随机变量的一个浮点数值作为xP,取[b1,b1+L]内均匀分布随机变量的一个浮点数值作为yP,取[c1,c1+L]内均匀分布随机变量的一个浮点数值作为zP。步骤(3.5),最后判断该点是否落在长方体中,即判断(xP≤a2且yP≤b2且zP≤c2),若不是,重取。由于三个分量均来自均匀分布、密度相同的随机变量,故取到的三维点亦在区域Ω内均匀分布,且各向同性。
步骤(4),随机点生成之后再执行部件104,计算点P的函数值G(P)和Sampson距离d。接着执行部件105,即步骤(5),判断点P是否偏离曲面太远,并舍去偏离太远的点。具体办法是判断
|G(P)|<λMσ
其中:λ为截尾倍数,M为最大梯度模,σ为点云厚度标准差。
根据统计学的65-95-99原则,当截尾倍数取3时,舍去的点不足1%。优选的截尾倍数λ取值3。
接着执行部件106,即步骤(6),取[0,1]中随机数v,再执行部件107,判断
v≤φ0,1(d/σ)
φ0,1(x)是正态分布密度函数的指数函数部分,若上式成立,则点P被选中,选中概率是φ0,1(d/σ)。由于在中取随机数v然后判断与在[0,1]中取随机数v然后判断的随机效果一样,所以部件106和107可行且简单地产生随机点云,对不同距离的点以不同的概率加入点云或丢弃,能够产生曲面周围依Sampson距离d呈正态分布的点云。
最后执行部件108和109,即步骤(7),当加入的点数达到N,结束,否则继续循环。
Claims (2)
1.一种隐式曲面随机点云生成器,其特征在于,所述点云生成器的点云生成方法包含如下步骤:
(1)输入隐式曲面的隐函数G(x,y,z)、隐函数的梯度函数 和有界区域Ω=[a1,a2]×[b1,b2]×[c1,c2],即隐函数的输入形式是一个函数指针,梯度函数的输入形式是三个函数指针,有界区域的输入形式是六个浮点数;同时输入点云的两个规格参数:厚度标准差σ和点数N;
(2)估算隐函数G(x,y,z)在有界区域Ω上的最大梯度模M;
(3)在有界区域Ω=[a1,a2]×[b1,b2]×[c1,c2]内取随机点P=(xP,yP,zP);
(5)若|G(xP,yP,zP)|>λMσ,回到步骤(3),λ为截尾倍数;
(7)若点云的点数不足N,回到步骤(3)继续,否则结束,
步骤(2)中最大梯度模M的估算包括以下步骤:
2.根据权利要求1所述的点云生成器,其特征在于,步骤(3)中随机点P=(xP,yP,zP)的取法是:
(3.1)计算L=max(a2-a1,b2-b1,c2-c1);
(3.2)取[a1,a1+L]内均匀分布随机变量的一个浮点数值作为xP;
(3.3)取[b1,b1+L]内均匀分布随机变量的一个浮点数值作为yP;
(3.4)取[c1,c1+L]内均匀分布随机变量的一个浮点数值作为zP;
(3.5)若xP>a2或yP>b2或zP>c2,返回步骤(3.2)重取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710723944.5A CN107481319B (zh) | 2017-08-22 | 2017-08-22 | 一种隐式曲面随机点云生成器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710723944.5A CN107481319B (zh) | 2017-08-22 | 2017-08-22 | 一种隐式曲面随机点云生成器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107481319A CN107481319A (zh) | 2017-12-15 |
CN107481319B true CN107481319B (zh) | 2021-02-09 |
Family
ID=60602206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710723944.5A Active CN107481319B (zh) | 2017-08-22 | 2017-08-22 | 一种隐式曲面随机点云生成器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107481319B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109145409B (zh) * | 2018-08-01 | 2020-06-26 | 浙江大学 | 一种隐式曲面多孔结构的优化方法 |
CN111402393A (zh) * | 2019-12-06 | 2020-07-10 | 温州大学 | 参数曲面模拟点云生成方法 |
CN112541264B (zh) * | 2020-12-08 | 2023-07-04 | 石河子大学 | 一种基于隐式建模的高效曲面增厚方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385332B1 (en) * | 1999-02-19 | 2002-05-07 | The John P. Roberts Research Institute | Automated segmentation method for 3-dimensional ultrasound |
CN101025831A (zh) * | 2006-02-24 | 2007-08-29 | 山东理工大学 | 复杂曲面产品的快速精确构建与成型方法 |
CN102881047A (zh) * | 2012-08-01 | 2013-01-16 | 桂林电子科技大学 | 一种自动的非封闭隐式曲面重建方法 |
CN103559169A (zh) * | 2013-10-30 | 2014-02-05 | 温州大学 | 点到隐式曲线距离数值计算的圆倍扩-二分算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106690A (zh) * | 2011-11-14 | 2013-05-15 | 鸿富锦精密工业(深圳)有限公司 | 曲面处理系统及方法 |
-
2017
- 2017-08-22 CN CN201710723944.5A patent/CN107481319B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385332B1 (en) * | 1999-02-19 | 2002-05-07 | The John P. Roberts Research Institute | Automated segmentation method for 3-dimensional ultrasound |
CN101025831A (zh) * | 2006-02-24 | 2007-08-29 | 山东理工大学 | 复杂曲面产品的快速精确构建与成型方法 |
CN102881047A (zh) * | 2012-08-01 | 2013-01-16 | 桂林电子科技大学 | 一种自动的非封闭隐式曲面重建方法 |
CN103559169A (zh) * | 2013-10-30 | 2014-02-05 | 温州大学 | 点到隐式曲线距离数值计算的圆倍扩-二分算法 |
Non-Patent Citations (3)
Title |
---|
Simplification of point cloud data based on Gaussian curvature;Kai Liu et al;《IET International Conference on Smart and Sustainable City 2013 (ICSSC 2013)》;20131231;第84-87页 * |
三维激光扫描数据处理与曲面重建方法研究;马晓泉;《中国优秀硕士学位论文全文数据库 基础科学辑》;20140215;第A008-100页 * |
隐式B-样条曲线重建的直接Greville 纵标法;胡明晓 等;《计算机工程与应用》;20141231;第50卷(第1期);第175-179页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107481319A (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Psarakis et al. | An enhanced correlation-based method for stereo correspondence with subpixel accuracy | |
US20130127847A1 (en) | System and Method for Interactive Image-based Modeling of Curved Surfaces Using Single-view and Multi-view Feature Curves | |
CN112819962B (zh) | 数字图像相关中非均匀网格划分及局部网格疏密方法 | |
CN102750704B (zh) | 一种摄像机分步自标定方法 | |
CN111724481A (zh) | 对二维图像进行三维重构的方法、装置、设备及存储介质 | |
CN107481319B (zh) | 一种隐式曲面随机点云生成器 | |
US20090052767A1 (en) | Modelling | |
CN113361365B (zh) | 定位方法和装置、设备及存储介质 | |
CN112991424B (zh) | 一种基于八叉树算法的分形维数计算方法及装置 | |
CN113168729A (zh) | 一种基于局部参考坐标系的3d形状匹配方法及装置 | |
CN117132737B (zh) | 一种三维建筑模型构建方法、系统及设备 | |
Huang et al. | Dynamic B-spline surface reconstruction: Closing the sensing-and-modeling loop in 3D digitization | |
JP2021033682A (ja) | 画像処理装置、方法及びプログラム | |
CN112991445B (zh) | 模型训练方法、姿态预测方法、装置、设备及存储介质 | |
CN111402393A (zh) | 参数曲面模拟点云生成方法 | |
Jirka et al. | Gradient vector estimation and vertex normal computation | |
CN116993924B (zh) | 三维场景建模方法及装置、存储介质、计算机设备 | |
CN112614046B (zh) | 一种二维平面上绘制三维模型的方法及装置 | |
Karami et al. | Camera Arrangement in Visual 3D Systems using Iso-disparity Model to Enhance Depth Estimation Accuracy | |
Li et al. | An Improved RANSAC Surface Reconstruction Study | |
Nel et al. | Markerless monocular vision-based localisation for autonomous inspection drones | |
CN110019982B (zh) | 节点坐标的确定方法以及装置 | |
Mijakovska et al. | Generating 3D model from Video | |
CN116309737A (zh) | 图像配准方法、装置、设备及存储介质 | |
Lixin et al. | Measurement of Absolute Depth of the Objects in Images Based on SURF Feature |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20171215 Assignee: Wenzhou little orange Education Technology Co.,Ltd. Assignor: Wenzhou University Contract record no.: X2024330000217 Denomination of invention: An implicit surface random point cloud generator Granted publication date: 20210209 License type: Common License Record date: 20240723 |