《ALGORITHM OF PRETREATMENT ON AUTOMOBILE BODY POINT CLOUD.doc》由会员分享,可在线阅读,更多相关《ALGORITHM OF PRETREATMENT ON AUTOMOBILE BODY POINT CLOUD.doc(4页珍藏版)》请在三一办公上搜索。
1、CHINESE JOURNAL OF MECHANICAL ENGINEERING Vol. 20, No. 4, 200771GAO FengZHOUYuDU FarongQU Weiwei XIONGYonghuaDepartment of Automobile Engineering,Beihang University,Beijing 100083, ChinaALGORITHM OF PRETREATMENT ON AUTOMOBILE BODY POINT CLOUD*Abstract: As point cloud of one whole vehicle body has th
2、e traits of large geometric dimension, huge data and rigorous reverse precision, one pretreatment algorithm on automobile body point cloud is put forward. The basic idea of the registration algorithm based on the skeleton points is to construct the skeleton points of the whole vehicle model and the
3、mark points of the separate point cloud, to search the mapped relationship between skeleton points and mark points using congruence triangle method and to match the whole vehicle point cloud using the improved iterative closed point (ICP) algorithm. The data reduction algorithm, based on average squ
4、are root of distance, condenses data by three steps, computing datasets average square root of distance in iw.pling: cube rd, sorting order according to the value computed from the first stop, choosing sampling percentage. Tfe accuracy of the two algorithms above is proved by a registration and redu
5、ction exiuvple of whole vehicle point cloud of a certain light truck.Key voros: Reverst; engineering Paint cloud registration Skeleton point iterative closed point(ICP) Data reduction0INTRODUCTIONIn reverse engineering system, the point cloud registration and the data reduction are two crucial cruxe
6、s of the point cloud pretreatment. The precision of registration and quality of reduction can affect the outcome of surface reconstruction significantly.The hypostasis of point cloud registration is to find proper mapping relation among several preparative registration point clouds and achieve itera
7、tive solution by coordinate transforming. The traditional registration algorithm is mainly divided into two categories: the geometry matching algorithm and the pinpoint registration algorithm. Geometry matching algorithm, such as label matching algorithm11 and maximum likelihood registration algorit
8、hm21, constructs the mapping relation among point cloud by using the topology geometry character of point cloud or triangles. Pinpoint registration algorithm mainly depends on numerical analysis such as interative closed point(ICP) algorithm13 to realize. The precision of geometry matching algorithm
9、 is not very well while pinpoint registration algorithm has disadvantage in nailing down mapping relation of free-form point clouds. Contraposing the advantage and disadvantage of the two algorithms above, this article proposes one algorithm for the whole vehicle body point cloud registration. This
10、new algorithm searches mapping relation using congruence triangle principle to orient geometrically, and then completes precise registration by using improved accelerated iterative ICP algorithm.In the aspect of the point cloud reduction, classical algorithms such as uniformity pane algorithm4 and d
11、elaminated sampling algorithm5 need to be improved. This article ameliorates the two algorithms above and puts forward point cloud reduction algorithm based on average square root of distance.1ALGORITHM OF POINT CLOUDREGISTRATIONMark pointthe mark points. After saving each mark points serial number
12、and corresponding coordinate the whole vehicle mark point set is formed. We call it skeleton point cloud information G. We then scan the whole clay model by Camega to get body partial point cloud Wk including 4-5 mark points (I k 0(x00,z0).We can translate this problem into two-dimension issue by co
13、ordinate transform. Now we assume the best-fit plane of the black circle is Z On the Z plane, let the center of the black circleis /(*, ji), radius is r, so we can get the circles equation(x-x;f+(y-ysf=S(1)The fitting point list is A ,(xy,)i = 1.2,- -,N. Note Eq. (I), which implies1.1 Definition of
14、mark point and skeleton pointAt the very beginning, we should paste all the circular sign points showed in Fig. 1 on the clay model uniformly (the centre of the circle of the sign points is called mark point). Try best to avoid any three mark points forming into isosceles triangle. In the body refer
15、ence frame, we can use coordinates measure machine(CMM) to measure each mark points coordinate exactly and number all This project is supported by Provincial Technology Cooperation Program of Yunnan, China (No. 2003EAAAAO0DO43). Received June 13, 2006; received in revised form March 9,2007; accepted
16、 May 28,2007f(x,y) = (x- V)2 + (y-yj)2 -r2 = 0(2)Putting A,(x,), i = ,2,-,N, into Eq. (2), we get/(w/) = (*/ - O2+(x - y*f r2 = R,(3)where /?,Difference valueIf making XH,#,2 minimum, we can get pxn,y0). Then,PiW-Vo) should be translated into p0(x0,y0,z0) which is exact coordinate of mark point by c
17、oordinate reverse transform. 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved, 72*GAO Feng, et al: Algorithm of pretreatment on automobile body point cloud(4)1.3 Projection of mark pointsIt needs to ascertain the projection plane L in order to project the mark point
18、from section 1.2 on the partial point cloud Wk.The approach of fitting for plane L adopts point-normal mode as follows.Ascertain the point: We take /0(x0,.)0,20) as sphere center and choose radius in order that 4-5 points are included in the sphere (The miscellaneous points and noise points are leac
19、hed). We get_ 1 p=Zpj j, which is nearest to p .Ascertain the normal vector:(1)We need to construct triangle net71 of the data point hPf(2)After choosing ps and vicintl triangle ne*. we assumethere being , sides in the ft/angie net. Then, we can calculateunit direction vector of each side as follows
20、!/,/_ P,P.PiPUuUi /+iUnit direction vector of one sideThe plane normal vector decided by the contiguous sides* = f,*fM KH(7)Then we can get the normal vector of p,a = ltTi KH|(8)h.(9)#=*,!/rGingruenxSeiioi numberSerial numberoftrianiJbiggie slignof sideof acmei01,4,51,2,3201,2,101,2,51002,4,62,3,5We
21、 take five points as examples. As Fig. 2 shows, five points could compose 10 triangles and 10 sides.Fig. 2 Triangle netThe approach of congruence triangle searching algorithm is as follows:(1) We should scan S* triangle table in order to judge whether this triangle is isosceles triangle. Since isosc
22、eles triangle has two equal sides, it will bring indeterminacy in the searching process and it need to be excluded.(2) We need to scan the sides of triangles in G and 5* separately and calculate the side difference S. If S is less than the fixed limited Sa (Sa is usually 0.02 mm), two sides are cons
23、ideredequivalent. Here, we should record the serial number of the two sides in the G and Sk and add one congruence triangles sign number on the triangle that contains this side in G. The triangle whose congruence triangle sign number is three is the triangle that equates one triangle in Sk. By the r
24、ecorded serial number, we can find this triangle 5*. By the above method, we can search all congruence triangles pairs in G and Sk.(3) If searching out many pairs of triangles that are equivalent, the mean of S should be calculated. We should choose the pair of triangles whose average S is the least
25、 as the mapping triangle pair of G and S*.(4) Reset the record, add one on the k and return (1). The cycle will continue until all pairs of triangles are searched out.l.S Improved ICP algorithm1CP algorithm generates iterative answer by transforming matrix to resolve multi-view matching problem. The
26、 basic idea of this algorithm is giving certain object point set P (The object required coordinated transformation) and reference point set Q and making them aligned. We need first to find one point in Q that is the nearest to the point in P and establish the mapping relation of the pair. Through le
27、ast square method, we can calculate one best coordinate transform (marked M) and make P=M (P). This process of iterative solution will continue until the precision is meeted. 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved, CHINESE JOURNAL OF MECHANICAL ENGINEERING7
28、3*(10)The final coordinate transform is the composing of each transform.For two point clouds which have ten thousands or hundreds of thousands of points, each iterative needs to calculate each points corresponding point of reference point set in the aim point set. Therefore, ICP algorithm has the di
29、sadvantage of the low calculating speed. The calculating speed will be improved significantly if we choose the subset of the conjunct point set only and search all the points in the subset by ICP algorithm.There are various ways to construct subsets, such as the character searching algorithm18 and t
30、he triangles impendent algorithm1. Contraposing the particularity of body point cloud, this article establishes definite corresponding relation and improves ICP algorithm by using the mapping triangle pairs in Sk and G to construct subsets. The processing details are as follows.(1) Construct aim sub
31、set. Let the triangle formed by three points s,s2,si of the projected point set Sk equate with the triangle constructed by three points gggi of skeleton point set G. We take up A points which are the nearest to Si,s2,s t0 mt0 three planes. Based on the three planes, vie can get three columnar distri
32、cts according to the designed semiiiameter and height. The point set qa,qb,qc of the columnar districts is the aim subset corresponded with g1,g2,g, Let the number of the three piont sets is a,b,c separately.(2) Choose qt,qj,qk from point set qa,qh,qc separately (1ia,Kjb,KkSa, we should go back to (
33、1) and transform qi,qj,qk (5)Seek out the transform matrix T from point qqj,qk toggig) using least square method.(6)For each point set qu = (qt,qj,qk), there exits2 ALGORITHM OF POINT CLOUD REDUCTIONThe aim of the point cloud data reduction is not only to reduce the density of point cloud but also t
34、o guarantee the local uniformity of the point cloud reduction result. The higher the density of point cloud is, the smaller the average square root of the distance among points is. This algorithm firstly calculates the average square root of the distance between any points of finite space U and othe
35、r points in U. Secondly, arrange the average square root of each point by the order from small to large. Finally, according to the defined sampling percent 8, the 8 percents points with the least average square root are deleted. Consequently the point cloud reduction is accomplished. The algorithm i
36、s as following.(1) At the beginning we need to define sampling cube side length d and sampling percent ft Then, the point cloud data is divided using the sampling cube with d length side as Fig. 3 shows. Make sure that there are an amount of data points in each sampling cube.i /i i i I I J-L_Fig. 3
37、Sampling cube(2) Let PiPjtPytP,) is one random point in cube, point set (?,(* .yz,X = 1,2,- -,n) is the point set except P in the cube. We can calculate the distance between P(px,py,pt) and any pointinfi(W,-z,)where rexp(u) = minfc - v-Transform matrix(11)PQ = /(J -x,)2 +(Py-ytf+(Pi-zf(14)lal=Vw xJ+
38、(py -y2)2+(p,-y (is)v = (vv2,v3)vi - v2. v3Coordinates of g, g2, g3(7) Determine the convergence condition|exp( + l)-exp()|Ne(12)pq=V - *)2+(py - yJ+(1 -z-)2 d6)(3) Then we can calculate the average square root DJPQ2+PQf + - + PQ2(17)(13)where N is the actual iterative times for q. If the equation i
39、s not true, we should constantly repeat ()(6). If the equation is true, it satisfies the demand for precision.e = exp(u) = min|7i. -v|It means the holistic registration error comes up to minimization. Finally, we need to complete the match process from partial point cloud to skeleton point using coordinate transform M=TG.It decreases operating quantity and increases matching speed using improved ICP algorithm which can searches datasets of subsets perfectly. Moreover, since the co