1. Field of the Invention
The present invention relates to a mesh generating apparatus that generates a mesh of an arbitrary-region of an image, and more particularly, to an apparatus and method that generate a mesh by transforming surface nodes of an initial mesh so as to conform to a shape of an arbitrary region.
2. Description of the Related Art
When forces acting on an object and transformation thereof are simulated using a finite element method, it is necessary to represent the object with a mesh made up of a finite number of elements. Particularly, in the medical field, in order to simulate an incision and transformation of the breasts or a soft organ with high accuracy, there is demand to generate a mesh without significant distortion in such regions of a medical image. Examples of three-dimensional meshes generated include a tetrahedral mesh made up of tetrahedral elements and a hexahedral mesh made up of hexahedral elements. It is known that in the finite element method, hexahedral mesh generally has higher analysis accuracy and requires a shorter analysis time than, a tetrahedral mesh. Methods for generating hexahedral meshes include a mapping method disclosed in Japanese Patent Application Laid-open No. 2002-251415 and an element filling method disclosed in Japanese Patent Application Laid-Open No. 2004-110212. The mapping method involves transforming nodes (surface nodes) located on a surface of an initial mesh so as to conform to a boundary shape and thereby generating a mesh of a region. The initial mesh is obtained by dividing an outer frame model which includes the region by plural elements. The element filling method involves filling a region with elements, filling up gaps between the elements and boundary with new elements, and thereby generating a mesh.
However, in the conventional example described in Japanese Patent Application Laid-open No. 2002-251415, i.e., the example which uses the mapping method, it is necessary to create plural outer frame models which include a region in the case of a complex shape containing a concave shape. In order to combine the outer frame models appropriately, user intervention is needed., requiring a great deal of time and making automation difficult. Also, the conventional example disclosed in Japanese Patent Application Laid-open No. 2004-110212, i.e., the example which uses the element, filling method, has a problem in that distorted mesh elements are generated around region boundaries.
The present invention has been made in view of the above problems and has an object to provide a processing mechanism for automatically dividing an arbitrary region into a mesh free of significant distortion.
In order to solve the above problems, the present invention provides a mesh generating apparatus comprising: a first mesh generating unit configured to generate a first mesh having a plurality of grid cells for a region corresponding to a target object in an image of. the target object a distance determining unit configured to determine distances among a plurality of corresponding points which correspond to points on the plurality of grid cells on a boundary of the region based on a length of the boundary and based on the number of points on the plurality of grid cells on an outer frame of the first mesh; a corresponding point determining unit configured to determine the plurality of corresponding points based on the distances and based on a part of the points on the plurality of grid cells, wherein the part of the points are located on the boundary of the region; and a second mesh generating unit configured to generate a second mesh from the first, mesh based on the plurality of corresponding points and based on the points on the plurality of grid cells,, the second mesh corresponding to the region.
The present invention provides a mechanism for determining locations of plural corresponding points for each of nodes located on a surface of an initial mesh which approximates a target region, where the locations are determined on a boundary of the region according to distances between the node and corresponding points. By transforming the initial mesh based on the corresponding points, a mesh of an arbitrary region can be generated without generating significantly distorted mesh elements even around a region boundary.
Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
Preferred embodiments of the present invention will now be described in detail in accordance, with the accompanying drawings.
Exemplary embodiments of a mesh generating apparatus according to the present invention will be described in detail below with reference to the accompanying drawings. However, the scope of the present invention is not limited to the illustrated embodiments.
According to the present embodiment, the mesh generating apparatus is intended to generate a mesh of a region corresponding to a target object in an image (e.g., a volume image) of the target object. The mesh is a grid made up of plural elements (cells) substantially equal in size. Therefore, first the mesh generating apparatus prepares a coarse mesh for a region in the image as with the method described in Japanese Patent Application Laid-Open No. 2002-251415. Hereinafter the coarse mesh will also be referred to as an initial mesh (first mesh). Also, on a boundary of the region in the image, the mesh generating apparatus determines plural corresponding points which correspond to points (surface nodes) of the grid on an outer frame of the initial mesh. Then, the mesh generating apparatus transforms the initial mesh such that the surface nodes in the initial mesh will substantially coincide with the plural corresponding points. Consequently, a mesh (second mesh) which approximates the region can be generated.
The apparatus according to the present embodiment determines locations of adjacent corresponding points based on distances, along the boundary of the region, from the grid points on the boundary of the region (points which substantially fail on the boundary) out of the grid points on the outer frame of the initial mesh. The distance is referred to as a geodesic distance and is obtained by dividing the length of the boundary by the number of grid cells. Consequently, a mesh can be generated without significant distortion even around the region boundary.
When there is an uneven boundary shape, if corresponding points are established on the boundary at the shortest distance from surface nodes as with the method described in Japanese Patent Application Laid-Open No. 2002-251415, corresponding points n2′ and m2′ of surface nodes n2 and m2 are set at locations close to n1′ and m1′, respectively, as shown in
A configuration of the mesh generating apparatus 2 according to the present embodiment is shown in
Next, operation of various parts and processing procedures of the mesh generating apparatus 2 according to the present embodiment will be described with reference to a flowchart in
<Step S401>
In Step S401, the region acquisition section 21 acquires a volume image from the tomographic imaging apparatus 1 or data server 3. Then, the region acquisition section 21 acquires region information about a target object from the volume image and outputs the region information to the initial mesh acquisition section 22 and boundary point generating section 23.
The region acquisition section 21 may acquire the region information using any known method. For example, locations of voxels making up a surface of the object may be acquired as a region boundary from the individual tomographic images of the volume image and designated as the region information. A concrete example of this process will be described with reference to
<Step S402>
In Step S402, the initial mesh acquisition section 22 (first mesh generating unit) receives boundary information about the region from the region acquisition section 21 and generates an initial mesh. Then, the initial mesh acquisition section 22 outputs the generated initial mesh to the corresponding point setting section 24 and mesh transformation section 25 (second mesh generating unit).
Generally, a mesh is represented by a set of nodes and mesh elements. The nodes have coordinates and are managed based on node IDs. When a node ID is specified, a node is determined uniquely. The mesh element has four-node IDs in the case of a tetrahedron, and eight node IDs in the case of a hexahedron and are managed based on a mesh element ID. When a mesh element ID is specified, a mesh element is determined uniquely. According to the present embodiment, each of the nodes (surface nodes) located on the surface of the initial mesh also contains information which indicates that the node is a surface node.
A concrete example of the process of generating an initial mesh will be described with reference to
<Step S403>
In Step S403, the boundary point generating section 23 receives the boundary information about the region from the region acquisition section 21 and generates a boundary point list to store coordinates of boundary points along the boundary for each of the tomographic images of the volume image. Then, the boundary point generating section 23 outputs the generated list to the corresponding point setting section 24.
A concrete example of generating a boundary point list will be described. First, in relation to one tomographic image, one voxel is selected from the boundary information acquired in Step S401 and set at the top of the boundary point list. Then, coordinates of the last element, in the boundary point list is selected as starting coordinates. Then, the boundary information, is searched for a voxel which minimizes inter-coordinate distance from the starting coordinates, and the location of the retrieved voxel is set to a next element in the boundary point list. A similar process is repeated until all the voxels are set, thereby generating a boundary point list in which the elements are arranged along the boundary. The process is repeated for all the tomographic images, thereby generating a boundary point list, of voxels located on the boundary.
<Step S404>
In Step S404, the corresponding point setting section 24 calculates a location on the region boundary to which each surface node of the initial mesh is to be moved as a result of mesh transformation and designates the location as a corresponding point of the node. Then, the corresponding point setting section 24 generates a corresponding point list storing corresponding points which correspond to the surface nodes and outputs the list to the mesh transformation section 25.
In the present embodiment, description will be given of a method, for setting corresponding points so as to equalize geodesic distances between adjacent corresponding points in order to generate a mesh without any significant distortion around a boundary. Incidentally, in the present embodiment, description will be given of a case in which the surface nodes of an initial mesh are grouped (surface node groups in two-dimensional planes are organized) per plane parallel to the tomographic images of a volume image, and a corresponding point setting process is performed for each of the surface node groups.
First, in relation to one surface node group, a tomographic image located in a same plane as the surface node group is selected, and a boundary point list of the tomographic image is acquired from the boundary point generating section 23. Then, the geodesic distance around an entire circumference of the boundary are calculated. The geodesic distance can be found as the sum total of distances between the coordinates of adjacent elements in the boundary point list. Then, the geodesic distance is divided by the number of surface nodes to calculate a corresponding-point distance d. Then, one of the boundary points is selected for one surface node as a corresponding point and set in the corresponding point list. For example, a combination of a surface node and boundary point with the smallest distance therebetween is found and the boundary point is selected as a corresponding point of the surface node. Then, based on the corresponding-point distance d found above and geodesic distance between boundary points, the coordinates of the corresponding points of all the remaining surface nodes are calculated.
How, a method for calculating the coordinates of the corresponding points based on the corresponding-point distance d and the geodesic distance between boundary points will be described with reference to
subtracting the distance d12 from the corresponding-point distance d. On the other hand, if d is longer than the sum of d12 and d23, the distances to the next element in the boundary point list are added in sequence (i.e., the geodesic distance from q1 is calculated). When the sum exceeds the corresponding-point distance, a linear interpolation process similar to the one described above is performed, thereby calculating the coordinates of the corresponding point q2 (such that the geodesic distance from q1 will coincide with the corresponding-point distance). Then, the calculated coordinates are set in the corresponding point list as a corresponding point of the second surface node. Furthermore, the next corresponding point (q3) is similarly set to a location whose geodesic distance from q2 is equal to the corresponding-point distance d. By repeating this process, the corresponding points of all the surface nodes are set in sequence. As a result of the above process, corresponding points are set for the surface node group in one plane such that their geodesic distances on the region boundary will be equal in the plane. The term “equal” means not only cases in which intervals are strictly equal, but also cases in which intervals are substantially equal (with some deviations).
When the above process is repeated for all the surface node groups, corresponding points are set for all the surface nodes in the initial, mesh.
<Step S405>
In Step S405, the mesh transformation section 25 receives the initial mesh and the corresponding point list and transforms the initial mesh such that the surface nodes in the Initial mesh will coincide with the corresponding points. The mesh which has undergone the transformation process is designated, as a mesh of an arbitrary region. The process of transforming the initial mesh such that the coordinates of the surface nodes in the initial mesh will match the coordinates of the corresponding points thereafter can be implemented by an existing transformation simulation technique based on, for example, the finite element method.
With the configuration described above, corresponding points of the surface nodes in the initial mesh are set at equal intervals on the boundary based on the geodesic distances along the boundary shape of an arbitrary region. Consequently, node locations on the mesh of an arbitrary region generated by transforming the initial mesh are also arranged at equal intervals. Thus, a mesh can be generated without significant distortion of mesh elements even around the region boundary.
In Step S404 according to the first embodiment, the corresponding point setting section 24 determines the locations of corresponding points using the geodesic distances between boundary points. However, the method for determining the locations of corresponding points is not limited to the methods which use the geodesic distances between boundary points, and the distances between boundary points defined by another method may be used. For example, the locations of corresponding points may be determined using linear distances between boundary points. According to the present embodiment, the corresponding point setting section 24 determines the coordinates of corresponding points using the linear distances between boundary points.
A configuration and process flowchart of the mesh generating apparatus 2 according to the present embodiment is similar to the first embodiment except for the following points. That is, part of the process (the process of setting corresponding points for each surface node group) performed by the corresponding point setting section 24 in Step S404 is different from the first embodiment. The difference will be described below with reference to
Incidentally, when linear distance is used, there may be cases in which a linear distance d1 between the last corresponding point and first corresponding point does not match d. Thus, if d is longer than d1, the locations of corresponding points may be recalculated beginning with the corresponding point q2 as follows: the difference between d1 and d is divided by the number of surface nodes, the quotient is added to d, and the distance thus obtained is used as a new corresponding-point distance d for use in the recalculation. Similarly, if d is shorter than d1, the locations of corresponding points may be recalculated beginning with the corresponding point q2 as follows: the difference between d1 and d is divided by the number of surface nodes, the quotient is subtracted from d, and the distance thus obtained is used as a new corresponding-point distance d for use in the recalculation. If the calculations are repeated until d1 matches d, corresponding points can be set so as to approximate the boundary by equal linear distances.
A mesh generating apparatus according to the present embodiment sets corresponding points of the surface nodes in the initial mesh by taking into consideration locations of feature points in a target region as a condition other than the distances between boundary points and generates a mesh based on the cox-responding points set in this way. In the present embodiment, description will be given by citing as an example a medical mesh generating apparatus which uses a volume image of the breasts of an examinee as a process object, acquires both left and right nipple locations and outer end locations of the breasts as feature points, and generates a mesh of a breast region by taking these locations into consideration.
A configuration of the mesh generating apparatus 2 according to the present embodiment is similar to the first embodiment. Operation of various parts and processing procedures of the mesh generating apparatus 2 according to the present embodiment will be described below with reference to a flowchart in
<Step S901>
Step S901 is a process similar to Step S401 according to the first embodiment. That is, in Step S901, the region acquisition section 21 acquires a volume image of the breasts and acquires a breast region 1002 and boundary 1003 from a tomographic image 1001 of the breasts as shown in the schematic diagram of
<Step S902>
In Step S902, the region acquisition section 21 extracts predetermined feature points in the breast region from the volume image of the breasts. Then, the region acquisition section 21 outputs information about the acquired feature points to a boundary point generating section 23. As shown in the. schematic diagram of
First, the process of extracting the left and right nipples from an entire volume image will be described. First, the breast region extracted in Step S901 is divided into left and right regions. Since the breasts are almost bilaterally symmetrical, a center line 1110 which divides a side of an outer frame model 1109 along an X axis into two parts is calculated, and a breast region to the left of the. center line is designated as a left region and a breast region to the right of the center line is designated as a right region. Next, regarding the entire volume image of the breasts, coordinates with the largest Y coordinate are extracted from each of the left and right regions. Then, the coordinates extracted from the left region are determined to be those of the left nipple 1101 and the coordinates extracted from the right region are determined to be those of the right nipple 1102.
Next, Z coordinates of the left and right nipple locations are compared, and if the difference thus found is smaller than a predetermined value, a plane which contains both nipple locations and is parallel to a Y axis is found and information thereon is held as information about a nipple cross section. As the predetermined value used in the above determination, for example, division intervals used in generation of an initial mesh in Step S903 next may be adopted.
Each of the left and right nipples is contained only in a single tomographic image. Regarding other tomographic images, a boundary point which has the same X coordinate as a given nipple and has the largest Y coordinate is extracted as a provisional nipple location in a given tomographic image.
Finally, breast outer ends are extracted from each tomographic image. In the left region, coordinates of a voxel which has the smallest X coordinate and the smallest Y coordinate are determined to correspond to the left breast outer end 1103. In the. right region, coordinates of a voxel which has the largest X coordinate and the smallest Y coordinate are determined to correspond to the right breast outer end 1104. This process is repeated for each tomographic image to extract the breast outer ends from every tomographic image. Incidentally, any other appropriate process may be used to extract the nipples and breast outer ends. p <Step S903>
In Step S903, the initial mesh acquisition section 22 generates an initial mesh of the region from an outer frame model 1004 as in the case of Step S402 according to the first embodiment. However, according to the present embodiment, an initial mesh is generated using the method of Step S402 and then node locations in the initial mesh are adjusted based on the nipple locations found in Step S902.
First, nodes in the initial mesh generated using the method of Step S402 are grouped per plane parallel to the tomographic images. Then, if a nipple cross section has been set in Step S902 (if the difference between the Z coordinates of the left and right nipple locations is smaller than the predetermined value), the process described below is performed. First, the node group nearest to the nipple cross section is selected from among the node groups resulting from the grouping, as a node group which represents the nipple cross section. For example, the node group in the plane closest to the Z-coordinate average value of the left and right nipples is selected. Then, the Z coordinate of each node contained in the selected node group is corrected so as to be located in the nipple cross section.
On the other hand, if a nipple cross section has not been set in Step S902 (if the difference between the Z coordinates of the left and right nipple locations is larger than the predetermined value), the process described below is performed. First, the node group in the plane nearest to the Z coordinate of the right nipple location is selected from among the node groups resulting from the grouping, as a node group which represents a tomographic image of the right nipple. Then, the Z coordinate of each node contained in the selected node group is corrected to the Z coordinate of the right nipple location. A similar process is performed with respect to the left nipple (by selecting another node group).
As a result of the above process, the initial mesh is assigned to the same plane as the tomographic images (or nipple cross section) containing the nipple locations. Consequently, nodes in a region mesh generated finally are assigned to the nipple locations.
<Step S904>
In Step S904, the boundary point generating section 23 generates a boundary point list storing the coordinates of boundary points along the boundaries of the breasts for each tomographic image of the volume image. The method for generating the boundary point list is similar to the process of Step S403, but the present embodiment differs in that the voxel of the left nipple location (or provisional left nipple location) is set at the top of the boundary point list. After the voxel of the left nipple location is set at the top of the boundary point list, the rest of the process is similar to Step S403. If the nipple cross section of the initial mesh has been corrected in Step S903, the boundary point list of the nipple cross section is generated similarly.
<Step S905>
In Step S905, the corresponding point setting section 24 generates a list of corresponding points on the region boundary to move the surface nodes, in the initial mesh to, and outputs the list to the mesh transformation section 25. The corresponding point setting section 24 according to the present embodiment sets corresponding points not only by giving consideration to uniformity of distances among boundary points, but also by using information about the locations of feature points. According to the present embodiment, the process of setting corresponding points is performed with respect to each surface node group set up by extracting surface nodes from the node groups established as a result of grouping in Step S903.
First, as in the case of Step S404, a boundary point list of the tomographic image located on the same plane as a surface node group of interest, is acquired. However, if the surface node group represents a nipple cross section, a boundary point list of the nipple cross section is acquired. Then, as shown in
Next, as shown in
When the above process is repeated for all the surface node groups, corresponding points are set for all the surface nodes in the initial mesh. p <Step S906>
In Step S906, the mesh transformation section 25 operates in a manner similar to Step S405.
This mode of implementation allows a mesh to be generated such that the node locations on boundaries will be spaced equidistantly wherever practicable and that nodes will foe set at locations of feature points of the breasts, such as the nipples and breast outer ends. This is suitable for estimating distortion of a region using feature point locations because mesh nodes are set at feature point locations as well as because of reduced distortion around region boundaries.
Although in the present embodiment, a mesh generating process for a breast region has been described as an example, a similar mesh generating process can be performed even when another region (a volume image of another organ or object) is handled.
In the embodiments described above, the initial mesh acquisition section 22 generates an initial mesh using an outer frame model circumscribed on an acquired region. However, the shapes of initial meshes are not limited to this. In the present embodiment, description will be given of a case in which a mesh of an average geometric model of the breasts is used as an initial mesh.
A configuration and process flowchart of the mesh generating apparatus 2 according to the present embodiment is similar to the third embodiment except for the following points. That is, the process performed by the initial mesh acquisition section 22 in Step S903 and part of the process performed by the corresponding point setting section 24 in Step S905 are different from the third, embodiment. Only the differences will be described below.
In Step S903, the initial mesh acquisition section 22 acquires an average geometric model of the breasts from the data server 3 and establishes the model as an initial mesh. The average geometric model is obtained by extracting feature points from breast regions, nipples and breast outer ends of plural persons, aligning and matching the feature points, and calculating an average. The method for generating an average geometric model is not limited to this, and any appropriate existing method may be used.
In Step S905, the corresponding point setting section 24 brings the nodes of the nipples and breast outer ends in the average geometric model, which, is an initial mesh, into correspondence with those in the boundary point list, and establishes correspondence of the remaining surface nodes such that geodesic distances will be equal to one another.
This mode, of implementation allows the shape of an initial mesh to be brought close to the shape of an arbitrary region, thereby reducing the time required for transformation simulations.
Exemplary embodiments have been described in detail above. Besides, the present invention can be embodied as a system, apparatus, or method. Specifically, the present invention may be applied to a system made up of two or more apparatus or to equipment made up of a single apparatus.
The present invention can also be realized by executing the following process. That is, a process of providing software (a program) which realizes the functions of the above-described embodiments to a system or apparatus via a network or various types of storage media, and a computer (or CPU, MPU or the like) of the system or the apparatus reading out and executing the program code.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2012-038429, filed Feb. 24, 2012, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2012-038429 | Feb 2012 | JP | national |