Imageware12之点云对齐.doc

上传人:scccc 文档编号:12486576 上传时间:2021-12-04 格式:DOC 页数:21 大小:903KB
返回 下载 相关 举报
Imageware12之点云对齐.doc_第1页
第1页 / 共21页
Imageware12之点云对齐.doc_第2页
第2页 / 共21页
Imageware12之点云对齐.doc_第3页
第3页 / 共21页
Imageware12之点云对齐.doc_第4页
第4页 / 共21页
Imageware12之点云对齐.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《Imageware12之点云对齐.doc》由会员分享,可在线阅读,更多相关《Imageware12之点云对齐.doc(21页珍藏版)》请在三一文库上搜索。

1、多曲面体的逆向过程(全面修正版) 作者:或请尊重作者的劳动,如有转载,请写明出处和作者 如有不明问题可与作者联系。Emial:wenzikingsina .comQQ:46402947现在开始转入icem surf的学习,很想同学习icem surf的兄弟一起讨论。谢谢!修正目的:修正当初学习中的错误认识,尽力去覆盖逆向工程的基本知识,并深给出当前 逆向建模最佳的技术路线,并对逆向建模过程进行深化!该文档包括以下主要步骤:1点云评估。2:点云精简,多边形网格化3:点云对齐。/ 前三个步骤为点云处理。4:特征提取。5:多边形网格的编辑。6:曲线的创建及编辑 7:曲面的创建及编辑。由上可知,ima

2、geware的逆向过程是很严格的遵循点线面的流程,这个过程恰恰是模拟了正向设计,只有通过样件点云揣测该样件原设计者的设计意图,才能够精确的进行模型 重建,模型重建的过程也就是设计人员再学习的过程,在这个基础上才可以进行再创新, 这就是逆向工程的真正意义。在下面的示例过程中,从头到尾SDRC公司也没有采用直接由点云拟合曲面的方式,它宁愿很严格的按照点-线 面的思路!我会给出由点云直接拟合面的做法,形成对照。可以体会一下。另外还有一种曲面重建的方式,它的过程是点云多边形网格 曲面模型。这种曲面重建通常用在艺术,动画,文物模型修复等领域,不适合工业设计,它无法体现设计者的设计 意图,只能是仿造!另外

3、采用这种方式重建的曲面通常无法在通用CAD中进行加厚等实体处理,无法对其进行后续加工。它仅适合RP (快速原型)。一:数据评估拿岀一些时间来对项目进行一番规划是项目成功的关键,可以避免犯错,节省时间。在本指南的开始,应该在你的Imgaeware中打开"start.imw "文件,然后数据就会显示在你眼前。注意:来自激光测量机的点云数据应该是密集和光滑的。在本例中,为了节省时间,扫描数据已经被平滑处 理和修整过了。在对该产品逆向工程之前,你应该清楚以下问题:1. 这些扫描数据从哪里来?这是一个摇臂开关的点云,来自激光测量机。2. 这种数据具有什么特征?数据点非常密集(点数为2

4、10,109 ),并且测量时样件的位置没有被摆正,导致在imageware中点云的坐标和imageware的世界坐标系不统一。3. 最终产品要用来做什么?最终模型用来校验样品的精度(他要来校验最初的模型,应该是要求很高的精度)4. 最终反求的模型要达到怎样的精度?最终做岀的曲面必须相当精确,精度要求0.10mm (该偏差指最后的曲面模型与点云的偏差)逆向建模的整个过程不能脱离两个相互矛盾的准则,精度和光顺性。实际操作过程中,二 者不可得兼,取其中庸。数据简化和点云多边形化(Data reduction and polygonization处理海量数据时,典型的处理方式是采用定义点距大小的方式简

5、化数据,降低计算量,便于多 边形网格化等操作。简化要以保形为原则。二:Data reduction数据简化简化数据比较通俗的做法就是使用Space Sampling (空间取样)命令。这个命令会在指定的邻域空间中简化点云,也能去处重叠点。注意:确认示例文件"start.imw "是否被打开。简化数据:1. 空间采样(Space Sampling):从 Modify 工具条找到 Restructure,选择 Space Sampling或菜单 Modify|Data Reduction| Space Sampling。或在点云上击鼠标右键选择2. 选择要处理的点云3. 设定

6、distanee toleranee 为 0.15mm.提示:distanee toleranee的确定方法:将点云放大至能分清点距,由点距探测和欲去掉几成的点来确定distanee toleranee值。如果欲将点云点数去半。可依下面步骤进行:(1) 菜单 MesureDistaneeBetween points(2) 任取一点,探测与该点最近点的点距,如图所示,最近点点距为0.0781,然后取该点距的 2倍为distanee toleranee值,即为 0.15mm。处理之后,点云被 均匀精简了 75% (原来是210109个点,现在是51616),但它依然具有 足够的数据信息提给下面的各

7、步处理。也可以直接指定欲保留的点数来对点云进行采样(前提是必须知道点云的点数)。如下图:4. 保存一下文件,以"original_reduced.imw."为文件名Scan polygonization多边形化处理为了更清楚的表达点云的形状或者为了快速原型(RP),要对点云进行多边形网格化处理注意:确认"origi nal_reduced.imw"被打开扫描数据的多边形化处理1. 从 Construct 工具条中找到 Create Polygon Mesh ,选择 Polygonize Cloud,或从菜单选择 Construct|Polygon mes

8、h|Polygonize Cloud。或击鼠标右键选2. 设定 the Max. Similar distanee 为 0,设定 neighborhood size(邻域尺寸)为 0.5mm,而后点击Apply。(这两个参数的设定同前面sample cloud时设定的参数是有联系的,参数the Max. Similar distanee为底限,如果在这个范围内有多个点,那么只保留一个作为三 角网格的顶点,因为前面我们对点云进行空间抽样时的抽样距离为0.15,所以这个值设为0.15也可以。参数 neighborhood size是顶限,算法中与当前点的距离超岀这个范围的 点不列入当前点的计算范围

9、)三角网格化示意图如下:藍圏与绿岡之间区域为算法中与点俏可能构威最优的网错顶点 的揍索空KU釆阳尺寸醍制,是为了養免族长三角形的出现, 也是为了凍小计算量。提示:邻域尺寸值通常近似取space sampling中设定的距离公差值的3倍(也有文档说是4倍,我觉得3倍最好),这样可以得到均匀的高质量的网格。完成之后,在菜单中找渲染指令 Display|Point|Gouraud-Shaded,效果如下图所示:四: Alignment data creation数据对齐这一节讲述了通过简单的数据对齐把点云的位置调整好。之所以要对齐点云,是因为输入计算机的初始的点云坐标系是三坐标测量机的赋予它的局部坐

10、标系,这个局部坐标系与Imageware系统坐标系通常不一致, 这就导致了点云缺乏合适位置信息,处理起来十分不便。 所以要进行点云对齐,可以更容易地进行建模操作。(你可以摁一下 F1键,将点云摆在 TOP视图位置上,发现点云的位置不正了吧!)对齐的概念:概念1在建模操作之前,需要把点云的位置调整好,这就是对齐之概念一。概念2:已有设计模型,基于该设计模型制造出来的样件需要检测其精度时,可使用三坐标测量机获取样件点云,将点云导入imageware中,然后需要将点云与原设计模型进行对齐, 最终可使用IMAGEWARE 提供的检测工具求出样件的CAD模型与样件的点云之间的偏差,对齐方法是321对齐。

11、这就是对齐之概念二。关于321对齐,请参另一份文档。这里所谓的对齐调整就是把局部坐标系和世界坐标系的方位统一起来。之所以要把点云的 坐标系与世界坐标系进行对齐是为了下一步更便于拟订截面线的位置或其他的建模操作。点云对齐的基本操作:先在点云上找出可供定位的线和面特征,通过各种方式来制作对齐 特征(直线,圆,球面,平面等),然后在世界坐标系中做出这些线和面的相似形,最后 使用Imageware中的stepwise对齐工具,进行对齐。对齐是逆向建模的基本操作。下文使用了漫长的篇幅来讲概念1中提到的对齐,对于该例点云是没有必要这么麻烦的。Imageware11 中一个自动对齐指令(菜单: Modify

12、 Align-Auto Align Clouds )就可以解 决这个问题。但下文内容并非无用,对于复杂点云在IMAGEWARE 中对齐只能使用下文阐述的方法。另外 321对齐的机理也是如此。使用自动对齐(Auto Align Clouds )效果如下:Auto Align Scan L?|xCloud(s)厂 List呂el若亡土冉111+-Applv L自动对齐对齐之百点云的TOP视图对齐是基于特征的对齐!创建对齐参考特征(在 WCS坐标系中)在创建参考特征之前,对点云的轮廓进行分析是必需的。如下图所示,我们可以构思出图示特征。观瘵点云轮廓特征。可以构造出两个轮廓圆,圆心,圆心 连线,圜所在

13、的平血皆可芮对齐特征分祈出这些特征, 在世界坐标系中构造参考特征,然后在点云中拟合出相应 特征,最石将这些特征一一对齐即町!在创建参考特征前,首先要在视图中将打开WCS坐标系(因为默认状态是不显示的)菜单EditLayer Manager。下图展示层管理器的界面。?:XNoneUl:-l 1E Hi-FlIters::* All LayersC&ardlnate Systems jWortlane'Views一Entities二1JI J-Hold space bar to drag entitiesfromNameShx Color:加系其删勾 h系 坐的右标 理菴以坐 处与

14、和tk 此示标但 /的他臨袪011 册 Layer Manager建立直线:1.在Create工具条中找到Lines选择Line,或选择Create|curve primitive |Line.2. 设定 start point 为 X = 0, Y = 0, Z = 0 ,设定 end point 为 X= 0, Y = 100 , Z = 0.3. 点击 Apply.建立圆:Create|Circle1.在Create工具条中找到Arc/Circle,选择 Circle,或者选择Primitive|Circle.2. 设定 center为0,0,0,设定 direction 为Z.即在XY

15、面上作一个圆3. 随便输入一个半径值,比如20mm4. 点击 Apply.建立一个平面1. 从 Create 工具条中找到 Plane,选择 Planar Surface ,或选择 Create|Surface Primitive|Plane.2. 在 Creat plane Options 栏指定 By Center Point,设定 Center of plane 为(0, 0, 0)3. 在plane Normal栏选择Z方向作为平面法线4. 输入U向和V向的宽度(Extent),这个值不作要求,我们使用20。5. 点击 Apply.6. 使用TOP视图(默认摁 F1键)观察,如下图所示

16、:到此为止,对齐的参考特征建立完毕,参考特征的建立只求形似就可以了。 如果有读者至此还不太清楚为什么要搞这些东东,请继续向下看吧。既然做了,肯定是要用到的,所以不要着急!建立相应的对齐特征下一步,我们必须要在模型中建立相应的对齐特征,然后将所建特征与点云绑定,对齐点云只需要将点云中对齐特征与世界坐标系中的参考特征对齐即可。这种对齐的原理很简单,懂得一些计算机图形学的朋友应该知道图形变换通常是通过变换矩阵来实现的,变换矩阵即旋转矩阵和平移矩阵!我们所做的无论哪种点云的对齐,都是由软件通过数据的源位置和目的位置的信息计算岀变换矩阵来实现对齐的。 感兴趣的朋友可以翻翻滥滥的计算机图形学的书吧,多学点

17、东西是好事情。在下面的步骤中,我们要拟合两个圆和一条直线组成对齐特征,现在可以再回头看一看前面咱们所做的工作,想一想为什么要这么搞,现在应该心里有数了。对齐视图:(To align view )90因为下面要使用截面工具来截点云,以获取截面线点云,然后才可以拟合曲线得到对齐特征。使用截面工具之前,很有必要将显示点云的视图摆成合适的方位。这就叫对齐视图。1. 在菜单中选择 View Align View To|Cloud.2. 选择要对齐的点云,击Apply .3. 在视图空区右击鼠标,选择旋转菜单,然后拖动又侧滚动条将点云从当前位置翻转度。(如果看不到右侧滚动条,那么点击右上角的小标,把滚动条

18、显示岀来,可以拖动 工具条来转精确的 90度。)还有其他旋转视图方式,如下图:Rotate Vert22:184咛PI (jjlrTiagew.,.创建截面:.一个截面必须水平地切过网格化之后的点云,稍微切过主侧面之下。一旦截面创建完毕,必须 进行修整,把截面分成直线部分和圆。1. 从 Construct 工具条中找到 Create Cross Section,选择 Interactive Cross Section 或在菜单中寻找 Construct|Cross section|Cloud Interactive2. 设定采样间隔 sampling distanee to 为 0.25mm.

19、3. 使用鼠标左键建立一条穿过点云的水平直线,记住在画线时要摁着Ctrl键。(在画水平线和垂直线的时候都要摁着Ctrl)APPLY。如下图所示:鼠标左键将此处点亮,放可 以在屏幕上选点!后面类似 操作邓再赘述!4. 把多边形网格点云隐藏,并对齐截面点云的视图(菜单中选择View Align ViewTo|Cloud.)。5. 从Modify工具条找到 Trim,或菜单 Modify-Extract,或鼠标右击截面点云, 选择Circle_ F bJ :Select Points -6. 使用鼠标圈选一端弯曲部分,设定keep points项为Both。该工具为圈选点云。然后APPLY 。7.

20、重复画另外弯曲的部分,如下图所示。(圈选部分与未圈选部分被分割开来!)创建对应的几何图形:1. 菜单中 Construct|Curve from Cloud |Fit Circle.2. 选择点云 ('Original Sean InteractPolySectCId in2')拟合圆。然后 Apply .3. 再对另一端的点云拟合成圆。4. 菜单中找到 Create|3D Curve| Line .(这也是第 10版的做法,第11版的在 Create|Curve Primitive|Line5. 设定起始点为一圆的圆心,终点为另一圆的圆心。(具体做法如下图所示)6. Appl

21、y.7. 打开层管理器,删除截面线点云,只留下两圆和其圆心连线。层管理器的用法,可自行 摸索,很简单。搞不定,在后面有介绍!绑定对齐特征前面费了一番周折创建的对齐特征,需要将其与欲对齐的点云绑定,使它们同点云成为一体样在后续的对齐时,移动对齐特征的同时也就可以移动点云至正确的位置!Imageware称这种绑定为创建组合(Create Group).注意:一旦物体被组合了,这组实体就呈现岀另一颜色颜色以示区别。选择组合实体:1. 选择Organize|Create Group.(这是老版本的做法,在第 11版中从Edit菜单中 Creat Group )2. 选择两个圆,直线,和点云。3. Ap

22、ply.4. 保存为文件"ready_for_alig nmen t.imw."5. 如下图所示:"Top对齐.一旦对齐特征被创建了,你就准备把点云与全局坐标系进行对齐了,我们将使用逐步对齐命令(Stepwise Alignment ),该命令允许我们堆叠对齐的配对数据和观察对齐的结果。注意:确定"ready_for_alignment.imw" 被打开。对齐数据:(要把所有的数据都显示出来,不然Stepwise Alignment'-是灰色的不可点,为什么会这样,自己想!)_* t1. 从Modify工具条中找到 Alignment,

23、选择 Stepwise Alignment '-,或在菜单中选择 Modify|Align|Stepwise.2. 指定使用点(point)作为匹配操作类型3. 选择颇象大拇指摁下去的那个部位的圆(FitCircle )作为源元素(source element).4. 从目的元素列表中选择circle5. 摁下Add,创建第一对特征与参考特征匹配。.你可以看到点云组从原位置移到了新位置。你知道它们移哪去了吗? ?回想一下一开始咱不是在世界坐标系中画了 一条线,一个圆和一个平面吗?就是在点云的多边形网格化之后,在数据对齐的一开始那儿做的。现在点云组中的那个 FitCirle的圆心被移到了

24、那个辅助圆的圆心了! 自己仔细看一看。现在就该明白了为什么一开始要从(0,0,0)点画一条直线,画一个圆(法线为Z轴)和一个平面了吧。6. 把视图放大,如下所示:7. 然后指定使用Plane作为第二个匹配类型8. 选择另外一个圆作为源元素9. 选择plane作为目的元素10. 摁Add创建第二对匹配,你可以看到原来圆所在的平面和你在数据对齐一开始创建的 那个plane重合起来。11. 指定使用line作为最后的匹配类型。这样就可以把点云的位置摆正12. 选择扫描线作为源元素,指定直线( Line)作为目的元素13. 摁Add完成第三次配对。你应该可以看到扫描数据可以围绕它自己进行转动,并把它

25、自身与丫+方向对齐了(两直线重合)。14. 在所有可能的匹配都被输入之后,不再有其他对齐特征了,那么你现在唯一要干的就是APPLY !然后Stepwise对话框会报告对齐处理的精确度,达到的公差是多少修改对齐 Modifying the alignment解散点云组,删掉所有被用来辅助对齐操作的参照几何形。由于所选位置的原因,点云侧面部 分有一部分落在了 Z轴负半轴区了为了纠正这种现象,我们将要再一次使用对齐操作,把使点 云的全部数据点的 Z坐标皆为正。(这是为了后续的操作在位置选择上更方便) 你可能会纳闷,为什么不采用点云平移的工具来实现上文所说的?如果采用点云平移工具来移动 点云,那么以后

26、你万一想再恢复点云的原位置,就没戏了!原指南中没有说如何解散点云组。在 Edit菜单中找到Ung roup,然后选择你要解散的组即可。 解散完毕之后,要把那些在前面参与对齐工作的辅助图形都删掉。删除的方法是在你要删除的 图形处右键,然后找到Cut Entity.一旦对齐操作完成了,你可以得到所有对齐操作的信息。在菜单中选择Evaluate|lnformation|Alignment去看一看你把数据怎么样移动,移到哪去了的历史记录。 更有意义的是,如果你需要重新装入初始数据到你已经清除它们的地方去,此时你可以使 用Modify|Align|Reapply的命令。这个操作允许你重新对齐数据。To

27、establish the distance to move the data:确定移动数据的距离:1.在 Ma in 工具条中找到 File Management,然后选择 Object Information2.选择要重新找回原信息的点云组。xx.xxxx你可以看到最小的 Z值(也就是点云的侧面部分的最小值)的值是移动数据(To move the data:)1. 在菜单中选择 ConstructPoints (这也是老版本中的做法,在11版中选择的路径是Create|Points)2. 设定要建立的点坐标为(0, 0, 0),(此处输入点坐标时,是在工具条栏中找到前面在创建直线,圆什么的

28、凡是坐标输入的功能几乎都在那儿找),然后APPLY3.设定第二个点的坐标为(0,0,xx.xxxx),这里的xx.xxxx即刚才我们在查看点云信息的 时候看到的那个 Z坐标最小值。然后 Apply。4. 在Edit菜单中找到 Create Group,把上面设定的第二个点与点云成组。5. Apply.注意建立的点坐标与点云的颜色不同以示区别。6. 从Modify工具条中找到 Alignment,选择 Stepwise Alignment '-, 或在菜单中选择 Modify|Align|Stepwise。7. 指定使用点作为匹配类型。8. 选择点云组中的点作为源元素,选择第一个被创建的

29、点( Cld)作为目的元素,即 对齐点。9. 先Add,然后Apply.在菜单中选择 Modify|Orient|Reset Home或在工具条中 Modify|Orient|Reset Object Axis 重置坐标,把世界坐标系定到新位置。这将会防止你意外的把数据返回到原来的位置,不让上面的辛苦浪费了。别忘了把方才构造的两个点删除!11.以文件名 "aligned.imw."保存文件。数据对齐的经验 要记住你为对齐操作而建立的所有对齐特征和参考特征的名字,有时要被用到,比如在 删除时,或决定要显示哪个,不显示哪个时。还有在做StepWise操作时选择匹配类型时也需要用到辅助形的名字。*及时清除不再需要的对齐特征和参考特征,尽量保证数据的可管理性。只要你觉得你的 对齐操作已经完成了,那么就可以把它们删除,要保证你的数据一直很干净,这个和手 工绘图的道理是一样的。辅助线太多会使图纸混乱。 在对齐完成之后,要重置一次坐标系,防止意外地回退到原坐标系中,那样就不好再重新对齐了。也就是说要保证坐标系的唯一性。至此,对齐操作完全结束, 点云已经具有比较合适的坐标系位置了。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1