www.fgks.org   »   [go: up one dir, main page]

Academia.eduAcademia.edu
Growth Simulation of Human Embryo Brain S. Czanner ∗, R. Ďurikovič and H. Inoue Software Department, The University of Aizu Aizu-Wakamatsu City, Japan czanner, roman@u-aizu.ac.jp Abstract The growth of the brain of human embryo is changing through a long time in the body of mother. So it is very difficult to observe and to understand that process. Therefore, the embryologists found the realistic human organ models and animations necessary for their studies. But to create the realistic human embryo brain models and to do the animations it requires an appropriate methodology. The aim of this paper is to present a developing methodology based on the functional representation and the convolution of the surfaces [4, 5, 6]. We employed this to create a growth simulation of the human embryo brain. The idea of this technique is the following. As a first step the 2D central skeleton is created from an artistic drawing and then the 3D skeleton is modeled by adding the thickness. As the next step, the skeletons representing key-frame models are used to create an animation. At the end the gap between the key-frame models is filled by the suitable interpolation techniques and finally the animation is composed. Keywords: human embryo, brain, convolution surfaces, F-rep, geometric modeling, blending, skeleton, morphing, animation. 1 Introduction To understand the development of the human organs, the realistic models are necessary. One of the significant organs during a human embryo development is the human brain. The shape of the brain is organic and has many folds that are hard to model with conventional techniques; it is therefore necessary to create a new methodology. In our research we have modified the techniques developed by Durikovic, Kaneda and Yamashita [1]. ∗ On leave from Department of Computer Graphics and Image Processing, Faculty of Mathematics, Physics and Computer Science, Comenius University, Bratislava, Slovakia There was developed a system in which multiple organs and the environment are separate processes, information from each of which is transmitted using communication modules. The methodology, which is based on algebraic L-systems with cycles, was demonstrated on a growth model of human embryo stomach. The proposed method is not well designed for use in the growth simulation of other organs, therefore we decided to use for our growth simulation theory of implicit surfaces. There is other semi-automatic reconstruction method based on implicit iso-surfaces generated by skeleton [11] that can be used on noisy scattered points of medical organs. The basis of the method is minimization of the energy that represents the distance between the data and the surface, during a series of skeleton refinements. In our approach, the skeleton consist several triangulated tubular shapes. To generate the models for growth simulation we used a convolution over the triangles. 2 Convolution Surfaces In the process of the drawing of special objects, computer graphics algorithms must perform a variety of geometrical calculations. The mathematical representation and manipulation of shapes is, therefore, crucial to the geometric modelling process. Various forms are used as geometrical primitives ranging from parametric surfaces through implicit surfaces to solids. A parametric surface is given by a special position function p(u, v) = [x1 (u, v), x2 (u, v), x3 (u, v)]. In practice, the functions are splines defined by pieces of polynomials, or ratios of polynomials. An implicit surface defined by function f is the set of points {p ∈ R3 : f (p) = 0}, p = p[x1 , x2 , x3 ] The function f is called an implicit function [4, 5]. The implicit surfaces are often used on convolution to round a solid model. Let us have the following modelling equation in an implicit form: h(r) N  Fi (p) − T = 0. 0.8 (1) i=1 0.6 The convolution surface defined by Eq. 1 is called an iso-surface, where Fi are the source potentials and T is the iso-potential threshold value. 0.4 0.2 2.1 Convolution Kernel r -3 To create a model of human embryo brain we used a convolution with piecewise planar skeleton. The skeleton, a standard geometric modeling representation, has become a popular construction for implicit design. It consists of an arbitrary number of elements and each element generates an associated implicit primitive (point, line, triangle, ). Let have function f be representing the geometry of an implicit primitive. Let h be a potential function that describes the field generated by a single point of that primitive. The total amount of field at point r, generated by the whole primitive is  f (p)h(r − p)dp. F (r) = -2 -1 0 1 2 3 Figure 1. The convolution kernel. where f is a real continuous function defined on En . The above inequality is called a function representation (F-rep) of a geometric object and function f is called the defining function. In three-dimensional case the boundary of such a geometric object is called implicit surface. The major requirement on the function is to have at least C 0 continuity. In our model the defining function is the function F (r) defined over a 3D skeleton, which has the C 1 continuity. The set of points Xi (x1 , x2 , ..., xn ), i = 0, ..., N in En associated with Eq. 2 can be classified as follow: R3 which is a convolution of two functions f and h. The convolution integral can be conveniently written as an integral of the potential function h(r) over the volume of the primitive:  h(r − v)dv. F (r) = V McCormack and Sherstyuk [2, 3] define a new kernel that allows analytical calculation of field equation simplified as:  dv F (r) = , 2 r2 (v))2 (1 + s V where r = |r − p| is the distance from the point p and coefficient s controls the width of the kernel, see Figure 1. The shape of a convolution surface can be varied in several ways: by changing the skeleton, the changing the convolution kernel, and by spatial deformation. 3 f (Xi ) > 0 if Xi is inside the object, f (Xi ) = 0 if Xi is on the boundary of the object, f (Xi ) < 0 if Xi is outside the object. 3.1 Set-theoretic operations Let binary operations on geometric objects represented by function be defined by F (f1 (X), f2 (X)) ≥ 0, where F is a continuous real function of two variables [5]. Such operations are closed on the set of function representations. The resulting object will have the descriptive function as follows: For object union  1 (f1 + f2 + f12 + f22 − 2af1 f2 ). f3 = f1 |f2 ≡ 1+a For object intersection Function representation f3 = f1 &f2 ≡ Let us consider closed subsets of n-dimensional Euclidian space En with the definition: f (x1 , x2 , ..., xn ) ≥ 0, (3) (2) 1 (f1 + f2 − 1+a  f12 + f22 − 2af1 f2 ). For object subtraction f3 = f1 \f2 ≡ f1 &(−f2 ). a) b) a) b) c) d) Figure 2. An example of using the settheoretic operation union. There are three line segments connected by operation union. a) In the middle of each line segment is rendered its skeleton. b) The line segments were rendered as solid objects. where f1 and f2 are descriptive functions of initial subjects, a = a(f1 , f2 ) is the arbitrary continuous function satisfying the following conditions: −1 < a(f1 , f2 ) ≤ 1 a(f1 , f2 ) = a(f2 , f1 ) = a(−f1 , f2 ) = a(f1 , −f2 ) and {|, &, \} are notations of so-called R-functions. There is an example of using the union operation on Figure 2. We connected three line segments with following parameters: horizontal line, T = 0.7, S = 0.5, vertical left line: T = 0.7, S = 0.7, vertical right line: T = 0.7, S = 0.5. The connection of the line segments is not smooth enough and there is not a possibility to correct or control the shape of connection, therefore we decided to use blending union operation. 3.2 Blending union operation The mathematical description of the blending union operation is as follow:  a0 F (f1 , f2 ) = f1 + f2 + f12 + f22 + , f1 2 1 + ( a1 ) + ( af22 )2 where f1 and f2 are defining functions of the objects which are blended. The absolute value a0 defines the total displacement of the blending surface from two initial surfaces. The values a1 > 0 and a2 > 0 are proportional to the distance between blending surface and the original surface defined by f1 and f2 respectively, see Figure 3. 4 Brain model creation The previous chapter discussed the theory of F-rep and convolution surfaces. As a next, we will show a Figure 3. Operation Blending union with several blend parameters. We connected three line segments with the same parameters as was showed on Figure 2. For blending we used the same parameters a0 , a1 and a2 a) a0 = a1 = a2 = 0.01 b) ai = 0.05 c) ai = 0.25 and d) ai = 0.5. method for modeling the organics shapes by F-rep. 4.1 Brain pictures First step in the model creation process is to obtain the size measurements of brain stages from embryological atlas. Embryological atlas contains hand-drawing pictures ordered by age. In the presented growth simulation we used the models from day 28 - 56 days old brain. There are several possibilities, how to obtain the brain measurements. In our case the brain on the pictures has been measured by ruler. Then upper and lower lines were created and the correspondent points from upper and lower lines were connected. At the end triangular patches were drawn over the pictures and photographs, see Figure 4. 4.2 Central skeleton The result of the measurements and the conversion made in previous section is 2D model containing the triangular patches. We call it the central skeleton. In order to be more detailed in the description of some brain models and also because of unwanted blending problems the central skeleton was divided to several parts. An example is shown on the Figure 5. Namely upper line central skeleton side skeletons lower line central line Figure 4. The conversion of drawing object to central skeleton. Figure 6. Adding the thickness by scaling and shifting the central skeleton. part I part II central skeleton part III a b c θ t Figure 5. Dividing the central skeleton to 3 parts. The line in the middle of the central skeleton is called central line. side skeleton y y x z z the part I described rhombencephalon, part II mesencephalon and part III prosencephalon. The next important step for generating a spatial brain model is to calculate a central line. Central line is the line through the center of each part of central skeleton. It is a base for defining the thickness of the model. The control points of central line were calculated as the middles of corresponding points from vertical segments. 4.3 Skeleton By adding the thickness to 2D model we obtained the 3D skeleton. Then we slightly scaled a multiple number of copies of central skeleton a shifted them to the left and right sides from the central skeleton, see Figure 6. Each of side skeletons is scaled to fit the ellipses whose center is on the central line. Ellipse has two radiuses a and b. Radius a is a distance to the central line from the border of the central skeleton. Radius b follows the equation: b = αa , where α is a ratio between a and b which is used to create enough thickness. As next step the side skeletons are translated by t, which has been obtained from t = c cos θ. The description of the variables c and θ is shown on Figure 7. Finally, side skeletons are connected with a central skeleton or with other side skeletons by a triangular mesh. After eras- Figure 7. A 3D skeleton for 36 days old human embryo brain. ing all interior triangular patches, which was done by triangular patches indexing we obtain multiple tubular shapes forming together the entire skeleton of the brain. The 3D skeleton model, shown on the Figure 7 is a 3D object created from union of three tubular shapes used for quick preview. 4.4 HyperFun modelling The last step in the model creation process is to create a smooth convolution surface defined over the skeleton. Final convolution surface is calculated by convolution operation between the kernel and the skeleton triangles for each tubular skeleton part. Geometric primitive corresponding to respective skeleton parts are given together by set theoretic or by arithmetic operations between defining functions. In order to create brain model with convolution surfaces, we use HyperFun [6, 7] as modelling software and POV-Ray [8] as rendering software. To generate a convolution surface over the triangles we used the HyperFun command hfConvTriangle. For Stages Stage1 Stage2 Stage3 Stage4 Stage5 Stage6 Stage7 Figure 8. The human embryo brain, age: 36 days. Left: 3D skeleton, right: entire brain model, which was de£ned by function representation. Age [days] 28 32 36 42 49 56 72 Size (mm) [mm] 3.5 5 9 11 15 27 56 Number of skeleton triangles 296 476 588 548 724 704 710 parts 1 1 3 3 4 4 4 Table 1. All stages of brain model data. 5.1 Key-framing The embryological atlas consists of 8 artistic drawings of the human embryo brain development. We have used first 7 images as key-frame models for the animation process. The key-frame models were named Stage1,..., Stage7. The base measurements and statistical information is collected in Table 1. 5.2 Figure 9. Composition of entire brain model (age: 28 days) with RTG image of human embryo. the entire brain model, which is shown on Figure 8 right, the convolution parameter S has been set to 0.5 and T to 0.6. We have set the brain thickness parameters to 1.0 at parts I and II ant to 1.2 at part III. To create the entire model all three parts are connected with blend-union operation using the HyperFun command hfBlendUni. In our example the blending parameters a1 , a2 and a3 are equal to 0.2. 5 Animation In order to make animation, the key-frame models and morphing interpolation between them are important. Morphing The shape transformations can be applied to the various types of graphical objects, such as 2D drawings, images, surfaces and volumes. Given a certain specification, there are various choices in implementing the transformation, not only in selecting the type of modeling, but also in deciding how the object data will be transformed. There does not exist a general morphing technique we could use in our case because the available techniques use strictly the shape and topology information but they neglect the known growth processes, movements and knowledge of embryologists. A work described in [10] proposed a skeleton feature vectors but they still use a blending technique to hide the topology errors that occur during their 3D morphing step. We decided to propose the featured-based 3D morphing technique with a simple user interaction to control the complicated growth process. Our technique uses both the global deformations to roughly match the global movements of the brain during the growth and the local morphing technique to correct the shape details. To generate the models between key-frame brain stages we used various types of interpolation. Between Stage1 and Stage2, Stage2, Stage4 and Stage4, Stage6 and Stage6, Stage7 the tricubic interpolation based on Catmull-Rom interpolating curves [9] was used. We used also this interpolation technique to produce a new temporary skeleton points in-between frame skeletons. Figure 10. A growing sequence of human embryo brain. The age of embryo is 56 to 72 days. The equation for Catmull-Rom splines for onedimensional case, can be expressed by the following matrix formula: C(u) = U M P T , (4) where U = [u3 , u2 , u, 1], P = [pi−1 , pi , pi+1 , pi+2 ], and  −0.5  1.0 M =  −0.5 0 1.5 −2.5 0 1 −1.5 2.0 0.5 0  0.5 −0.5  . 0  0 C(u) is the interpolated value, pi−1 , pi , pi+1 , pi+2 are four consecutive data points and u ∈ [0, 1] is a parameter that defines the fractional position between pi and pi+1 . Catmull-Rom interpolation is used to interpolate position between skeleton points, values of convolution filter parameters S and T and thickness parameters α, θ and last blending parameters a0 , a1 and a2 . This technique generates good in-between models. Some of them are shown on Figure 10. 5.3 Composition The visual result of modeling the human embryo brain using function representation is an animation. The number of in-between key-frame models depended on the age of key-frame models. We calculated 10 frames for 1 day of the growth. The speed of final animation corresponds to 12 frames per development day. A single frame from the final animation is on the Figure 10. Figure 11. Composition of entire brain model (age: 28 days) with RTG image of human embryo. 6 Conclusion We succeeded to model human embryo brain using convolution surfaces and to create growth animation between 28 days old human embryo brain and 56 days old human embryo brain. The same approaches can be used for other human organs. We have used and improved an idea to model the organic shapes by function representation and convolution surfaces. Some of the advantages of this approach are to avoid the topology artifacts during the animation of in-between shapes and easier key framing by a simple animation of the skeleton of convolution surface. In the future work we implement branches and details for brain models and create grown-up brain models and growth animation between older human embryos. Acknowledgements Authors wish to thank Mineo Yasuda from Medical School of Hiroshima University for sharing the knowledge as an embryologist. The images were rendered by the POVRay ray-tracing program programmed by POVRay Team. This research was sponsored by grants from the Fukushima Prefectural Foundation in Japan for the Advancement of Science and Education. References [1] R. Ďurikovič, K. Kaneda and H.Yamashita, Animation of biological organ growth based on L-systems. Computer Graphics Forum, vol. 17, no. 3, pp. 1-13, 1998. [2] J. McCormack and A. Sherstyuk, Creating and Rendering Convolution Surfaces, Computer Graphics Forum, vol. 17, no. 2, pp. 113-120, 1998. [3] A. Sherstyuk, Interactive Shape Design with Convolution surface, Proceeding of Shape Modeling and Applications, Aizu-Wakamatsu, Japan, pp. 56-65, 1999. [4] J. Boolmethal and K. Shoemake, Convolution Surfaces, Proceedings of SIGGRAPH 91 (Las Vegas, NV, July 4, 1991) In Computer Graphics Proceedings, Annual Conference Series, ACM SIGGRAPH, 1991. [5] A. Pasko, V. Adzhiev, A. Sourin and V, Savchenko, Function representation in geometric modelling: concepts, implementation and applications, The Visual Computer, vol. 11, no. 8, pp. 429-444, 1995. [6] V. Adzhiev, R. Cartwright, E. Fasett, A. Ossipov, A. Pasko, V. Savchenko, Hyper-Fun project: a framework for collaborative multidimensional Frep modelling, Proceedings of Implicit Surfaces 99, Workshop (Bordeaux, France, September 13-15,) pp. 59-69, 1999. [7] WEB page: Shape Modeling and Computer Graphics with Real Functions, http://wwwcis.k.hosei.ac.jp/ F-rep, 2001. [8] WEB page: POV-Ray, the Persistence of Vision ay-tracer, http://www.povray.org, 2001. [9] L. Arata, Graphics Gems V, AP Professional, Boston, pp. 107-110, 1995. [10] A. Lerios, Ch. D. Garfinkle, M. Levoy, FeatureBased Volume Meta-morphosis. Computer Graphics, Proceedings of SIGGRAPH 95 (Los Angeles, CA, August 6-11, 1995) In Computer Graphics Proceedings, Annual Conference Series, ACM SIGGRAPH, pp. 449-456, 1995. [11] N. Tsingos, E. Bittar and M. Gascuel, Implicit Surfaces for Semi-Automatic Medical Organ Reconstruction, Computer Graphics: Developments in Virtual Environments (Proceedings of Computer Graphics International 95, May 1995 UK), pp. 3-15, 1995.