Growing Grid-Evolutionary Algorithm for Surface ... - IEEE Xplore

1 downloads 28 Views 990KB Size Report
Abstract—This work primarily aims at introducing an algorithm for surface construction in conjunction with hybrid. Growing Grid network and Evolutionary ...
2013 10th International Conference Computer Graphics, Imaging and Visualization

Growing Grid-Evolutionary Algorithm for Surface Reconstruction Priza Pandunata, Fadni Forkan

Siti Mariyam Hj Shamsuddin

Soft Computing Research Group Universiti Teknologi Malaysia Skudai, Malaysia [email protected]

Soft Computing Research Group Universiti Teknologi Malaysia Skudai, Malaysia [email protected]

2007). Second, the extracted point data from the scanned image. These points are usually scattered and have noise. If these points are not fixed, it will cause the constructed surface appears differently from the original one. These data are often organized using mathematical approach, for instance distance formulation, and statistical theory (Cheng et al. 2004; Kazhdan et al. 2006; Mahmoud 2005; Jalba and Roerdink 2007). Hence, the issue in surface construction is to re-arrange the scattered point data to be more organized. Realising the importance of having organized data, many different techniques have been used by researchers (Hoppe, DeRose et al. 1992; Franke, Hagen et al. 1994; Fischer, Manor et al. 1999; Barhak and Fischer 2001; Azariadis 2004) but artificial intelligence (neural networks and genetic algorithms) and conventional surface generation techniques (NURBS and B-Spline) have extensively been used by (Iglesias, Echevarr et al. 2004; Junior, Neto et al. 2004; Peng and Shamsuddin 2004; Shamsuddin and Ahmed 2004; Yang, Wang et al. 2004; Wen, Shamsuddin et al. 2005; Bokhabrine, Fougerolle et al. 2007; Huang and Qian 2007; Lavoie, Ionescu et al. 2007; Gálvez and Iglesias 2010). This paper proposes a hybrid Growing Grid – Evolutionary Algorithm for surface construction by restructuring unorganized points. We propose growing grid network to generate mapping dimension that can be adapted to the given data accordingly using Differential Evolution (DE) to fit the surfaces by probing the optimized surfaces in the fitting process. The proposed algorithm is compared to the PSO and GA for benchmarking performance effectiveness. This paper is organized as follows: Section II explains briefly on the Differential Evolution. Section III describes the proposed growing grid–evolutionary algorithm. Section IV discusses the experimental setup and analysis, finally follows by the conclusions and future works.

Abstract—This work primarily aims at introducing an algorithm for surface construction in conjunction with hybrid Growing Grid network and Evolutionary Algorithm, called Growing Grid-Evolutionary network. The process of surface construction primarily consists of two main steps namely: parameterization and surface fitting. The application of growing grid network is implemented at the parameterization phase; meanwhile the evolutionary algorithm has been used to optimally fit the surfaces through the Non Uniform Relational B-Spline (NURBS) method. Various graphical data are used in the experiment including the free-form objects, parabola, and mask. In order to validate the proposed algorithm, we conduct an error analysis for each step of parameterization and surface fitting by comparing the surface images generated with the original surfaces. Experimental results show that the proposed growing grid-evolutionary network has successfully generated surfaces that resemble the original surfaces and enhance its performance Keywords-Surface construction, Differential Evolution, NURBS

I.

Growing

Grid

network,

INTRODUCTION

Surface construction plays an extremely important role in reverse engineering. It is process for generating a surface from a set of limited geometric values and unstructured (in many cases, point) while still maintaining the shape of the original object. More importantly, this will be relevant in recovering distorted surface and modeling objects. Surface construction consists of two main steps, i) parameterization and ii) surface fitting. In 3-dimensional surfaces, parameterization is a process of mapping the 3dimensional surfaces to 2-dimensional form and defines relationship among the surfaces points. In contrast, surface fitting is a procedure of fitting the surfaces through relationship and map that has been obtained from the parameterization procedure. There are many issues that have arisen in surface construction particularly in choosing the appropriate techniques and methods. There are two types of input that are obtained from the object which need to be reconstructed. First, the inputs that are obtained from the scanned image using scanners such as image mesh and graphic computerization (Hoppe et al. 1992; Amenta et al. 2001; Ivrissimtzis et al. 2003; Wu and Kobbelt 2004; Ivekovic and Trucco 2007; Lavoie et al. 2007; Nie et al.

978-0-7695-5051-0/13 $26.00 © 2013 IEEE DOI 10.1109/CGIV.2013.35

II.

DIFFERENTIAL EVOLUTION

Differential Evolution (DE) algorithm is an evolutionary algorithm, which was proposed by Rainer Storn in 1995. It is a small and simple mathematical model of a big and naturally complex process of evolution. According to [11], this algorithm is simple and one of the most powerful tools for global optimization. The intelligent usage of differences

68

between individuals realized in a simple and fast linear operator, so-called differentiation, makes differential evolution unique; hence, Differential Evolution (DE) is proclaimed. DE has been widely used in many problems such as Non-Imaging Optical Design, Optimization of an Industrial Compressor Supply System and Representation of Multi-Sensor Fusion. The performance of DE on different problems depend on population size, strategy and the associated parameter setting to generate trial vectors and also the replacement scheme. The overall algorithm can be described as in Figure 2. Initialisation

Mutation

Recombination

selection process will be repeated until some stopping criterion is reached. Commonly, stopping criteria are satisfied when a predefined small number of fitness value or a fixed number of generation have been reached. III.

In this study, we propose a hybridization of growing grid network and DE in surface construction. A growing grid algorithm in is exploited to organize the scattered point data (Fadni Forkan et. al., 2008), while DE algorithm is implemented for surface fitting. The procedures for the proposed reconstruction method are as follows (Figure 1): i. Organization of the unstructured data with growing grid network. ii. Construction of the initial surfaces framework from the newly organized points using NURBS. iii. Optimization of surfaces with DE by fitting procedure.

Selection

Figure 1. Basic Process on DE Algorithm.

DE starts from initialization of variables that will be used in algorithms such as size dimensions in accordance with the number N of parameters described in the notation below:

xi ,G

[ x1,i ,G , x2,i ,G ,..., xD,i ,G ]

i 1, 2,..., N

The data for the experiments are in unorganized format. Hence, we need to organize these data accordingly for surface construction. Subsequently, the generated output from the network learning becomes the input for DE surface fitting.

(1)

where X is the parameter vectors, D is dimension and G is the generation number. The process is continued with the Mutation process. In this process, for a given parameter vector Xig, randomly select three vectors Xr1,G, Xr2,G and Xr3,G such that indices I, r1, r2, and r3 are distinct. The process will continue by multiply mutation factor F with the difference of second (Xr2) and third (Xr3) vector, then added with first vector (Xr1) as in the equation below:

vi ,G 1

xr1 ,G  F ( xr2 ,G  xr3 ,G )

Data Collection (Unstructured data)

Data arrangement using Growing Grid Network

(2) Parameterization and Knot Vector generation of initial sketch

where the Mutation factor F is a constant, and vi,G+1 is called the donor vector. The Recombination procedure incorporates successful solution from previous generation where the trial vector Ui,G+1 is produced from the target element vector xi,G and elements of the donor vector vi,G+1 with the probability of CR. This process is illustrated as follows:

u j ,i ,G 1

­ v j ,i ,G 1 if ° ° ® °x j ,i ,G 1 if ° ¯

rand j ,i d CR or j

GROWING GRID – EVOLUTIONARY ALGORITHM

Optimization using DE algorithm

I rand

Final Model

(3)

rand j ,i ! CR or j z I rand Figure 1: A Framework of the Proposed Method

A. Implementation of Growing Grid Network Growing grid network can learn from a set of data without supervision and detail information of the data. In this study, growing grid network is created as a 3D map that consists of weight nodes. Each node has a position values of (x,y,z) that represent the coordinates of the surface. These

and randj,iU[0.1], Irand is a random integer from [1,2, ..., D]. Irand will ensure that if vi,G+1 is not equal to xi,G. The next process is to select the target vector xi,G that will be compared with the trial vector vi,G+1 and choose among them. The best (lowest) fitness value will be included in the next generation. Mutation process, recombination, and the

69

Euclidean distance. The win counter Winc for winning neuron is increased (Figure 4)

nodes are related to each other to form the topological properties for each surface. In this study, the proposed growing grid network is a rectangular map and being enhanced using growing grid method. NURBS is employed for surface representation purposes. Growing grid network is trained using random data sample and the nodes are growing according to the surface structure. The workflow of the proposed growing grid network is shown below (Figure 2).

Figure 4: Winning Neuron

d.

Determine whether winning neuron are the boundary neurons. Boundary neurons are the neurons N i, j where i = 0 or i = n or j = 0 or j = m. The weight W of sample point is increased if the boundary neuron is detected; else the weight is reset to 1. If the winning neuron is not a boundary neuron, the boundary neurons will not be included during the updating position later (Figure 5).

Figure 5: Detected Neuron Boundary

e.

Update the position of each active and mobile neuron in the neighbor hood of the winning neuron with respect to the sample point (Figure 6).

Figure 2: Workflow Proposed Growing Grid network

The value of the dimension (n and m) can be changed accordingly, and it is based on the data. The proposed algorithm for the growing grid network is given below: a. Initialize number of neuron and grid size. In this study, n = 2, m = 2 and number of neurons = n x m = 4. Initialize the position of all the neurons (x,y,z). Neuron coordinates are set to random numbers within the bounding box of the sampled points. All neurons are initialized as mobile and active (Figure 3).

Figure 6: Update Position If Boundary Neuron Not Detected

f. g.

B. Surface Fitting The results from the parameterization with growing grid network are an initial mapping framework of surfaces that need to be constructed. At the moment, the scattered data points have been rearranged to form an initial shape. However, the initial mapping framework needs to be upgraded to obtain better surfaces and shapes. Surface fitting is generated subsequent to parameterization process. In this study, DE is exploited to optimize the surfaces by finding the nearest points (generated by growing grid network) to the original surface. The workflow of the proposed DE algorithm is shown below (Figure 7).

Figure 3: Initialization and Positions of Neurons

b. c.

Determine whether the grid size should be increased or not (according to the grid size update). Increment time step s. If s is smaller than the run length L, go back to step (e), otherwise stop.

Initialize the weights W for all sample point to 1. Every neuron retains a win counter Winc (Figure 6) that accumulates the number of times it is chosen (winning neuron). Initially Winc = 0 . Find the closest active neuron (winning neuron) to the sample point Ps using

70

vi.

Start

Read input data

IV.

Initialize chromosome of population with random position

Evaluate fitness value for each chromosome in population Generate donor chromosome by perform mutation, recombination, and selection process Evaluate donor chromosome’s fitness value

Donor fitness value better than best fitness value?

Yes

EXPERIMENTAL SETUP AND ANALYSIS

The experiments are conducted in 2 phases. The first phase involves the organization of the surfaces by growing grid network in 2D mapping. The second phase involves surface fitting with DE where the number of dimension is based on the sample data. In this study, 3D form data have been used, and these include mask, semi-sphere, and free-form object (Table 1 and Figure 8 – 10).

Generate initial surface for each chromosome in population

Donor fitness value better than current fitness value?

Repeat the above steps until it meets the threshold. In this case, the threshold is set when the number of generations has reached a certain value.

Table 1: Sample Data for Surface Change current chromosome with donor chromosome

No

Data

Number of Data

Mask Semi-sphere

1470 1951

Free-form-1, Yes

y

x4  z 4

1600

Change best chromosome with donor chromosome

No

Reach all chromosome in population and maximum generation?

No Yes

END

Figure 7: The DE Process

The proposed DE algorithm in surface optimization is described as follows: i. Read the data in xyz coordinates ii. DE generates randomly several set of NURBS control point as chromosome in population with specified dimension. Each chromosome consists of the vector in the xyz coordinates at random. iii. Calculate fitness value of each set of NURBS control points (chromosome) using equation: m 1

f

¦|d k  P(uk ,vk )|

Point

Line Figure 8: Mask Data

2

k 1

iv.

v.

For each set of control point (chromosome), perform mutation operation with DE/best/1 scheme, recombination, and selection of generated trial chromosome:

Point Line Figure 9: Semi-sphere Data

Point

Recalculate fitness values of each chromosome by using same equation, and store the chromosome with the lowest fitness values

Figure 10: Free-form-1,

71

Line

y

x4  z 4

The specification of growing grid network and DE design are shown in Table 2 and Table 3.

The ability of an algorithm to converge shows that the algorithm has successfully trained and can produce the desired output. If the algorithm fails to converge, then it indicates the algorithm is not well-trained and fails to generate a good surface. From Table 6, we find that the growing grid network-differential evolution (GGN_DEA) has successfully organizing the points with minimum error surfaces.

Table 2:Growing grid network architecture Parameter

Value

Learning rate Num. of iteration Initial node Num. of weight node

0.25 30000 2x2 Depends on data

Table 6: Errors GGN-DEA

Table 3: DE architecture Parameter

Value

Num. of population Num. of iteration

40 250 4x4, 6x6, 8x8, 10x10, and 12x12 0.8 0.9

Num of dimension F CR

Table 7: Error for PSO Algorithm

For surface fitting phase, DE technique are compared with PSO and GA. These algorithm is chosen because these are evolutionary algorithm, commonly used to optimize various problems and applications. The specification of PSO and GA are shown in Table 4 and Table 5.

Table 8: Error for GA Algorithm

Table 4: PSO architecture Parameter

Value

Num. of iteration Num of particle

300 30 4x4, 6x6, 8x8, 10x10, and 12x12 0.8 2

Num of dimension Inertia Correction Factor

From the experiments, we can see that the exploitation of growing grid in growing grid network learning has conveyed better impact to the efficiency of initial surface mapping framework. This is due to the ability of the growing grid network to construct a dynamic grid that can grow based on the row or column of its mapping dimension automatically. We also propose the parallel identification of boundary process for each surface; hence all the points can be learned and preserved during surface reconstruction process. DEA successfully generates the smallest errors for the data: Sphere while for Mask and Free-form, the smallest error is obtained by using PSO.

Table 5: GA architecture Parameter

Value

Num. of iteration Num of population Mutation probability

250 40 0.9 4x4, 6x6, 8x8, 10x10, and 12x12 0.7

Num of dimension Crossover probability

V. Errors evaluation is important criteria when evaluating the performance of growing grid network and DE. The error is a difference between the results of the process and the original value. In this study, we use the distance between the generated surfaces (initial mapping framework) and the original surfaces.The error is calculated based on MeanSquare Error function as below: n

¦ a

i

MSE

i 1

 xi

CONCLUSIONS AND FUTURE WORK

A hybrid method for simplifying the process of surface construction has been presented in this study. Soft Computing techniques provide alternative solutions for surface reconstruction in computer graphics. Experimental results have shown that the proposed method has produced very convincing outcomes. In conclusion, the contributions of our study can be summarized as follows:

2

where

i.

n

ii.

ai is the generated value, xi is the original value, and n is the number of data.

72

The using of growing grid network for structuring unorganized points data. The development of new DE algorithm in surface reconstruction process.

iii.

[11] A.A. Mahmoud (2005). Development of Hybrid NURBS Skinning Surface Method for Ship Hull Design. Phd Thesis. Universiti Teknologi Malaysia. 2005. [12] J. Nie, T. Liu, L. Guo & S.T.C. Wong (2007). Reconstruction Of Central Cortical Surface From Brain Mri Images: Method And Application. In: 4th IEEE International Symposium on Biomedical Imaging: From Nano to Macro, 2007. pp. 213-216. [13] J. Wu & L. Kobbelt (2004). Optimized Sub-Sampling of Point Sets for Surface Splatting. In: Computer Graphics Forum. Vol. 23. Issue 3. pp. 643-652. [14] Azariadis, P. N. (2004). "Parameterization of clouds of unorganized points using dynamic base surfaces." Computer-Aided Design 36(7): 607-623. [15] Barhak, J. and A. Fischer (2001). "Parameterization and reconstruction from 3D scattered points based on neural network and PDE techniques." Visualization and Computer Graphics, IEEE Transactions on 7(1): 1-16. [16] Bokhabrine, Y., Y. D. Fougerolle, et al. (2007). Genetic Algorithms for Gielis Surface Recovery from 3D Data Sets. Image Processing, 2007. ICIP 2007. IEEE International Conference on. [17] Fischer, A., A. Manor, et al. (1999). Adaptive parameterization for reconstruction of 3D freeform objects from laser-scanned data. Computer Graphics and Applications, 1999. Proceedings. Seventh Pacific Conference on. [18] Franke, R., H. Hagen, et al. (1994). "Least squares surface approximation to scattered data using multiquadratic functions." Advances in Computational Mathematics 2(1): 81-99. [19] Gálvez, A. and A. Iglesias (2010). "Particle swarm optimization for non-uniform rational B-spline surface reconstruction from clouds of 3D data points." Information Sciences In Press, Corrected Proof. [20] Hoppe, H., T. DeRose, et al. (1992). Surface reconstruction from unorganized points. Proceedings of the 19th annual conference on Computer graphics and interactive techniques, ACM. [21] Huang, Y. and X. Qian (2007). "Dynamic B-spline surface reconstruction: Closing the sensing-and-modeling loop in 3D digitization." Computer-Aided Design 39(11): 987-1002. [22] Iglesias, A., G. Echevarr et al. (2004). "Functional networks for Bspline surface reconstruction." Future Gener. Comput. Syst. 20(8): 1337-1353. [23] Junior, A. M. B., A. D. D. Neto, et al. (2004). Surface reconstruction using neural networks and adaptive geometry meshes. Neural Networks, 2004. Proceedings. 2004 IEEE International Joint Conference on. [24] Kennedy, J., R. C. Eberhart, et al. (2001). The Particle Swarm. Swarm Intelligence. San Francisco, Morgan Kaufmann: 287-325. [25] Kohonen, T. (1998). "The self-organizing map." Neurocomputing 21(1-3): 1-6. [26] Lavoie, P., D. Ionescu, et al. (2007). Constructing 3D Virtual Reality Objects from 2D Images of Real Objects Using NURBS. Virtual Environments, Human-Computer Interfaces and Measurement Systems, 2007. VECIMS 2007. IEEE Symposium on. [27] Peng, L. W. and S. M. Shamsuddin (2004). 3D object reconstruction and representation using neural networks. Proceedings of the 2nd international conference on Computer graphics and interactive techniques in Australasia and South East Asia. Singapore, ACM. [28] Price, K. V., R. M. Storn, et al. (2005). [29] Shamsuddin, S. M. H. and M. A. Ahmed (2004). A Hybrid Parameterization Method for NURBS. Proceedings of the International Conference on Computer Graphics, Imaging and Visualization, IEEE Computer Society. [30] Wen, A. S., S. M. H. Shamsuddin, et al. (2005). Ship Hull Fitting Using NURBS. Proceedings of the International Conference on Computer Graphics, Imaging and Visualization, IEEE Computer Society.

The hybridization of growing grid network and DE to develop a complete and simplified Growing Grid – Evolutionary Algorithm for surface reconstruction in computer graphics.

However, further studies still need to be done so that proposed method is able to generate a closed surface, and also to reconstruct a surface with holes. The study of BSpline surfaces, NURBS surfaces and Nu-NURBS surfaces will be further conducted by exploiting our proposed hybridization algorithms to optimize the performance of the weights and knot parameters consequently. ACKNOWLEDGEMENT The authors would like to thank the Universiti Teknologi Malaysia (UTM) for its support on our Research and Development, and the Soft Computing Research Group (SCRG) for the inspiration for making this study a success. This work is supported by The Ministry of Higher Education (MOHE - LRGS/TD/2011/UTM/ICT/03 - VOT 4L805). REFERENCES [1]

N. Amenta, S. Choi & R.K. Kolluri (2001). The Power Crust. In: Proceeding of 6th ACM on Solid Modeling, Michigan, USA. Pp. 249266. [2] J. Barhak & A. Fischer (2001). Adaptive Reconstruction of Freeform Objects with 3D SOM Neural Netwrok Grids. In: Proceedings of 9th Pacific Conference on Computer Graphics and Applications, Tokyo, Japan. IEEE. pp. 97-105. [3] K.S.D. Cheng, W. Wang, H. Qin, K.Y.K. Wong, H. Yang & Y. Liu (2004). Fitting Subdivision Surfaces to Unorganized Point Data usin SDM. In: Proceedings of 12th Pacific Conference on Computer Graphics and Application. Pp. 16-24. [4] B. Fritzke(1996). Growing Grid – A Self-Organizing Network with Constant Neighborhood Range and Adaptation Strength. In: Neural Processing Letters (1995). Vol. 2. pp. 9-13. [5] H. Hope, T. DeRose, T. Duchamp, J. McDonald & W. Stuetzle (1992). Surface Reconstruction from Unorganized Points. In: Proceedings of SIGGRAPH’92. pp. 71-78. [6] S. Ivekovic & E. Trucco. Fitting Subdivision Surface Models to Noisy and Incomplete 3-D Data (2007). In: Computer Vision/Computer Graphics Collaboration Techniques. Springer Berlin/Heidelberg. Vol. 4418/2007. pp. 542-554. [7] I.V. Ivrissimtzis, W.K. Jeong & H.P. Seidel (2003). Using Growing Cell Structures for Surface Reconstruction. In: Shape Modeling International, 2003. Max-Plank-Inst. fur Informatik, Saarbrucken, Germany. Pp. 78-86. [8] A.C. Jalba & J.B.T. Roerdink (2007). Efficient Surface Reconstruction using Generalized Coulomb Potentials. In: Transactions on Visualization and Computer Graphics. Univ. of Groningen, Groningen. Vol. 13. Issue 6. pp. 1512-1519. [9] M. Kazhdan, M. Bolotho & H. Hoppe (2006). Poisson Surface Reconstruction. In: Proceedings Of The Fourth Eurographics Symposium On Geometry Processing. Pp. 61-70. [10] P. Lavoie, D. Ionescu & E. Petriu (2007). Constructing 3D Virtual Reality Objects from 2D Images of Real Objects using NURBS. In: IEEE International Conference on Virtual Environments, HumanComputer Interfaces, and Measurement Systems. Pp. 117-124.

73

[31] Yang, H., W. Wang, et al. (2004). "Control point adjustment for Bspline curve approximation." Computer-Aided Design 36(7): 639652. [32] Fadni Forkan and Siti Mariyam Hj. Shamsuddin., “Kohonen-Swarm Algorithm for Unstructure Data in Surface Reconstruction,” IEEE Proceeding on The Fifth International Conference on Computer Graphics, Imaging and Visualization, Springer (CGIV), 2008, pp. 511, doi: 10.1109/CGIV.2008.58.

74