Modeling method and apparatus

0Associated
Cases 
0Associated
Defendants 
0Accused
Products 
0Forward
Citations 
0
Petitions 
1
Assignment
First Claim
1. A modeling apparatus, comprising:
 a memory configured to store positional information of a plurality of points that represent an annular structure in an object; and
a processor coupled to the memory and configured to;
calculate a first function for generating data of a closed surface that contains the plurality of points, based on the positional information of the plurality of points;
generate data of first boundary points of the object, from data of a plurality of tomographic images in each of which a first area occupied by the object is designated, wherein the first boundary points correspond to the annular structure in the plurality of tomographic images, and the first boundary points include points which are included in the first area and are adjacent to a second area other than the first area, and points which are included in the second area and are adjacent to the first area;
detect, using the first function, second boundary points which are located inside the closed surface from among the first boundary points;
remove data of the detected second boundary points from the data of the first boundary points to generate data of third boundary points;
calculate a second function for generating data of a shape of the object, using the data of the third boundary points and the positional information of the plurality of points; and
store the data of the shape of the object, which is generated by using the second function, in the memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A disclosed modelling method includes: calculating a first function for generating data of a closed surface that contains plural points representing an annular structure in an object, based on positional information of the plural points; generating data of a first point set representing a boundary of the object, from tomographic image data; detecting data of points which are included in the first point set and located inside the closed surface by using the first function; removing the detected data of points from the data of the first point set to generate data of a second point set; calculating a second function for generating data of a shape of the object using the data of the second point set and data of the plural points; and storing data of the shape of the object, which is generated by using the second function, in the memory.
7 Citations
No References
Compositions and methods for enhancing structural and functional nervous system reorganization and recovery  
Patent #
US 20060104969A1
Filed 08/16/2005

Current Assignee
Massachusetts Institute of Technology

Sponsoring Entity
Brigham and Womens Hospital Incorporated

Method and system for distinguishing surfaces in 3D data sets (''dividing voxels'')  
Patent #
US 20050219245A1
Filed 11/29/2004

Current Assignee
Bracco Imaging S.p.A.

Sponsoring Entity
Bracco Imaging S.p.A.

Spectral polarizing tomographic dermatoscope  
Patent #
US 6,587,711 B1
Filed 04/14/2000

Current Assignee
City College of New York

Sponsoring Entity
The Research Foundation of State University of New York

Ultrasonic diagnostic system  
Patent #
US 5,469,850 A
Filed 03/16/1995

Current Assignee
Fukuda Denshi Company Limited

Sponsoring Entity
Fujitsu Limited

Device for obtaining three dimensional contour data and for operating on a patient and related method  
Patent #
US 5,343,391 A
Filed 02/12/1992

Current Assignee
David R. Mushabac

Sponsoring Entity
David R. Mushabac

SHAPE DATA GENERATION METHOD AND APPARATUS  
Patent #
US 20130002677A1
Filed 05/30/2012

Current Assignee
University of Tokyo, Fujitsu Limited

Sponsoring Entity
University of Tokyo, Fujitsu Limited

TECHNIQUE FOR PRESUMING POSITIONS OF ORGANS  
Patent #
US 20150193930A1
Filed 12/24/2014

Current Assignee
University of Tokyo, Fujitsu Limited

Sponsoring Entity
University of Tokyo, Fujitsu Limited

8 Claims
 1. A modeling apparatus, comprising:
a memory configured to store positional information of a plurality of points that represent an annular structure in an object; and a processor coupled to the memory and configured to; calculate a first function for generating data of a closed surface that contains the plurality of points, based on the positional information of the plurality of points; generate data of first boundary points of the object, from data of a plurality of tomographic images in each of which a first area occupied by the object is designated, wherein the first boundary points correspond to the annular structure in the plurality of tomographic images, and the first boundary points include points which are included in the first area and are adjacent to a second area other than the first area, and points which are included in the second area and are adjacent to the first area; detect, using the first function, second boundary points which are located inside the closed surface from among the first boundary points; remove data of the detected second boundary points from the data of the first boundary points to generate data of third boundary points; calculate a second function for generating data of a shape of the object, using the data of the third boundary points and the positional information of the plurality of points; and store the data of the shape of the object, which is generated by using the second function, in the memory.  View Dependent Claims (2, 3, 4, 5, 6)
 7. A modeling method using a computer including a memory configured to store positional information of a plurality of points and a processor coupled to the memory, the modeling method comprising:
calculating, by the processor, a first function for generating data of a closed surface that contains the plurality of points that represent an annular structure in an object, based on the positional information of the plurality of points; generating, by the processor, data of first boundary points of the object, from data of a plurality of tomographic images in each of which a first area occupied by the object is designated, wherein the first boundary points correspond to the annular structure in the plurality of tomographic images, and the first boundary points include points which are included in the first area and are adjacent to a second area other than the first area, and points which are included in the second area and are adjacent to the first area; detecting, by the processor using the first function, second boundary points which are located inside the closed surface from among the first boundary points; removing, by the processor, data of the detected second boundary points from the data of the first boundary points to generate data of third boundary points; calculating, by the processor, a second function for generating data of a shape of the object, using the data of the third boundary points and the position information of the plurality of points; and storing in the memory, by the processor, the data of the shape of the object, which is generated using the second function.
 8. A nontransitory computerreadable storage medium storing a program that causes a computer including a memory configured to store positional information of a plurality of points and a processor coupled to the memory to execute a modeling process, the modeling process comprising:
calculating, by the processor, a first function for generating data of a closed surface that contains the plurality of points that represent an annular structure in an object, based on the positional information of the plurality of points; generating, by the processor, data of first boundary points of the object, from data of a plurality of tomographic images in each of which a first area occupied by the object is designated, wherein the first boundary points correspond to the annular structure in the plurality of tomographic images, and the first boundary points include points which are included in the first area and are adjacent to a second area other than the first area, and points which are included in the second area and are adjacent to the first area; detecting, by the processor using the first function, second boundary points which are located inside the closed surface from among the first boundary points; removing, by the processor, data of the detected second boundary points from the data of the first boundary points to generate data of third boundary points; calculating, by the processor, a second function for generating data of a shape of the object, using the data of the third boundary points and the position information of the plurality of points; and storing in the memory, by the processor, the data of the shape of the object, which is generated using the second function.
1 Specification
This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2014233878, filed on Nov. 18, 2014, the entire contents of which are incorporated herein by reference.
This invention relates to a modeling apparatus, a modeling method, and a modeling program.
Organ simulators to simulate dynamics of organs have been developed, and it is expected that such organ simulators are used for diagnosis, determination of a treatment policy, prediction of postoperative condition and the like. It is favorable that an organ shape used for simulation is analogous to an actual organ shape to the extent possible, in order to make the reliability of the simulator higher.
An organ shape differs from patient to patient, and using a uniform shape is not allowed. Therefore, an organ shape used in simulation is generated for each patient. However, because organs exist in a human body and they are invisible and directly unmeasurable, they are generated based on patient'"'"'s medical images such as CT (Computed Tomography) images or MRI (Magnetic Resonance Imaging) images. A certain document discloses a technique to generate an organ shape of a patient by transforming a template representing a standard shape of an organ based on landmarks deployed on patient'"'"'s medical images.
However, a technique to generate an organ shape with attention to an annular structure in the organ is unknown. For example, a heart has a pulmonary valve, an aortic valve, a mitral valve and a tricuspid valve. And an edge of each valve is called a valve annulus. Because the valve annulus plays an important role when a heart serves as a pump, generating a highaccuracy shape in the vicinity of the valve annulus makes the reliability of the simulation higher.
 Patent Document 1: Japanese Laidopen Patent Publication No. 2013015945
 NonPatent Document 1: “A Multiscale Approach to 3D Scattered Data Interpolation with Compactly Supported Basis Functions”, Yutaka Ohtake, Alexander Belyaev, and HansPeter Seidel, Shape Modeling International 2003, Seoul, Korea, May 2003, pp 153161
In other words, there is no technique to generate a highaccuracy shape of an object including an annular structure.
A modelling apparatus relating to this invention includes: a memory; and a processor configured to use the memory and execute a process. And the process includes: first calculating a first function for generating data of a closed surface that contains plural points that represent an annular structure in an object, based on positional information of the plural points; generating data of a first point set that represents a boundary of the object, from data of plural tomographic images in each of which a first area occupied by the object is designated; detecting data of points which are included in the first point set and located inside the closed surface by using the first function; removing the detected data of points from the data of the first point set to generate data of a second point set; second calculating a second function for generating data of a shape of the object using the data of the second point set and data of the plural points; and storing data of the shape of the object, which is generated by using the second function, in the memory.
The object and advantages of the embodiment will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the embodiment, as claimed.
In the first embodiment, an example in which a shape of an object is divided by a surface that passes through landmarks deployed annularly is explained.
The first calculator 103 performs processing based on data stored in the landmark storage unit 101, and stores a result of the processing in the first function storage unit 105. The second calculator 109 performs processing based on data stored in the segment data storage unit 107, and stores a result of the processing in the second function storage unit 111. The division unit 113 performs processing based on data stored in the first function storage unit 105 and data stored in the second function storage unit 111, and stores a result of the processing in the data storage unit 115. The output unit 117 outputs data stored in the data storage unit 115.
Segment data stored in the segment data storage unit 107 is data of the threedimensional structured grid. The threedimensional structured grid is a uniform grid of rectangular prisms. A label value “1” is given to a grid point that is located in the inside of a boundary surface of an object, and a label value “0” is given to a grid point that is located in the outside of the boundary surface of the object. Segment data is generated from medical images as illustrated in
Next, by using
Firstly, the first calculator 103 of the information processing apparatus 1 performs division surface generation processing (
The first calculator 103 calculates, based on positional information of landmarks x_{1}, x_{2}, . . . , x_{i}, . . . , x_{N }stored in the landmark storage unit 101, a principal unit normal vector n_{i }and a unit binormal vector b_{i }at each of the landmark (
The following is the detail of the calculation in the step S1. First, x_{cl }is calculated as follows:
Next, s_{i }are calculated based on x_{i }as follows:
Next, n_{i }tilde are calculated based on s_{i }as follows:
This calculation is performed in order to make directions of the principal normals the same. Next, n_{i }hat are calculated based on n_{i }tilde as follows:
This calculation is performed in order to suppress fluctuation of the principal normal vectors. Next, principal unit normal vectors n_{i }are calculated based on n_{i }hat as follows:
Next, unit binormal vectors b_{i }are calculated based on principal unit normal vectors n_{i }as follows:
Then, the first calculator 103 generates a point set p_{1}, p_{2}, . . . , p_{j}, . . . , p_{M }(step S13). In the step S13, the following point set is generated assuming that M=3N.
In other words, the generated point set includes the landmarks, points that correspond to the landmarks shifted in a positive direction of the binormals by ε_{b}, and points that correspond to the landmarks shifted in a negative direction of the binormals by ε_{b}. ε_{b }is a constant number, and a number sufficiently less than a distance between the landmarks is employed. In this embodiment, assume ε_{b}=1.0.
The first calculator 103 sets a function value of an implicit function g (step S15). More specifically, the function value is set as follows. By this setting, it becomes possible to suppress occurrence of concavity and convexity on a surface formed by a point set that makes the value of the implicit function g equal to 0.
The first calculator 103 finds the implicit function g so that the function value becomes the value set in the step S15 (step S17), and stores data of the implicit function g in the first function storage unit 105. Then the processing returns to the callingsource processing.
In the step S17, by using TPS (Thin Plate Spline), α_{j}, β_{0}, β_{1}, β_{2}, and β_{3 }are determined so that the following expressions are satisfied. Here, a basis function is φ_{j}(x)=−x−p_{j}.
Here, simultaneous linear equations including expression (1), expression (2), and expression (3) are solved by a common solution (for example, Gaussian elimination or LU decomposition) to determine α_{j}, β_{0}, β_{1}, β_{2}, and β_{3}. And assume x=(x, y, z) and p_{j}=(p_{j,x}, p_{j,y}, p_{j,z}).
Returning to the explanation of
Firstly, the second calculator 109 generates a point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }from the segment data stored in the segment data storage unit 107 (
In the step S21, the point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }is generated as follows. Subscript v represents that the point set corresponds to a boundary of the object.
At first, of grid points that are located inside the boundary surface (in other words, grid points whose label values are 0), grid points whose at least one of adjacent grid points is located outside the boundary surface (in other words, grid points whose label value are 1) are set as inner boundary points. Here, “adjacent grid points” are 6 points that include 2 points separated from a target grid point by 1d_{x }(d_{x }is a distance between grid points in the xaxis direction) in the xdirection, 2 points separated from the target grid point by 1d_{y }(d_{y }is a distance between grid points in the yaxis direction) in the ydirection, and 2 points separated from the target grid point by 1d_{z }(d_{z }is a distance between grid points in the zaxis direction) in the zdirection. However, the number of the adjacent grid points is less than 6 if the target grid point is located on an edge of a space.
For example, segment data in a certain xyplane is in a state as illustrated in
Next, of the grid points located outside the boundary surface, grid points whose at least one of adjacent grid points is an inner boundary point are set as outer boundary points. For example, in a state as illustrated in
Next, values of the inner boundary points are set to −1, and values of the outer boundary points are set to +1. For example, in a state as illustrated in
Namely, points included in the point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }correspond to inner boundary points or outer boundary points.
Returning to the explanation of
The first calculator 103 finds the implicit function f so that the function value becomes the value set in the step S23 (step S25), and stores data of the implicit function f in the second function storage unit 111. Then the processing returns to the callingsource processing.
In the step S23, the implicit function f is found using TPS. When it takes time to find the implicit function f using TPS, the implicit function f may be found by a method, for example, described in the nonpatent document 1. The disclosure of the nonpatent document 1 is incorporated herein by reference.
Returning to the explanation of
The division processing is processing to divide a shape represented by the 0 isosurface of the implicit function f by a 0 isosurface of the implicit function g. For example, a point set that satisfies the implicit function f=0 and the implicit function g>0 is found in the division processing, and volume data for the point set is stored in the data storage unit 115.
When the volume data is generated by the same structured grid as the segment data, firstly, a structured grid is generated using the number of grid points, voxel sizes, and origin coordinates of the segment data. Then, for each grid point, the value is set to −1 when the grid point satisfies the implicit function g>0 and the implicit function f>0, and the value is set to +1 when the grid point satisfies the implicit function g>0 and does not satisfy the implicit function f>0. Thus, twovalued volume data is generated. Moreover, mesh data may be generated by attaching mesh to the volume data by marching cubes method for example.
The output unit 117 outputs the volume data stored in the data storage unit 115 to a display device (step S7).
When a basis function of the implicit function g, and a basis function of the implicit function f, α_{j}, β_{0}, β_{1}, β_{2}, β_{3 }and a composition method of the implicit function g and the implicit function f are outputted, a user himself can reproduce a display illustrated in
By performing processing described above, it becomes possible to divide an object in a part that has an annular structure. And, when this embodiment is applied to valve annulus, a boundary surface that divides a ventricle and a part other than the ventricle can be generated, and it becomes easy to extract only the ventricle or the part other than the ventricle. Thus, it becomes easy to separately set parameters for the ventricle and parameters for the part other than the ventricle. Moreover, when compared to a method to generate the ventricle or the part other than the ventricle separately and combine them, the reliability of the simulator becomes higher because a shape of combining site is analogous to an actual shape.
In the second embodiment, an example in which a shape of an object is modified according to landmarks deployed annularly is explained.
The first calculator 103 performs processing based on data stored in the landmark storage unit 101, and stores a result of the processing in the first function storage unit 105. The second calculator 109 performs processing based on data stored in the segment data storage unit 107, and stores a result of the processing in the point set storage unit 110. The third calculator 119 performs processing based on data stored in the landmark storage unit 101, and stores a result of the processing in the third function storage unit 121. The fourth calculator 123 performs processing based on data stored in the point set storage unit 110 and data stored in the third function storage unit 121, and stores a result of the processing in the fourth function storage unit 125. The division unit 113 performs processing based on data stored in the first function storage unit 105 and data stored in the fourth function storage unit 125, and stores a result of the processing in the data storage unit 115. The output unit 117 outputs data stored in the data storage unit 115.
Next, by using
Firstly, the third calculator 119 performs closed surface generation processing (
The third calculator 119 calculates, based on positional information of landmarks x_{1}, x_{2}, . . . , x_{i}, . . . , x_{N }stored in the landmark storage unit 101, a principal unit normal vector n_{i }and a unit binormal vector b_{i }at each of the landmark (
Then, the third calculator 119 generates a point set p_{1}, p_{2}, . . . , p_{j}, . . . , p_{M }(step S43). In the step S43, the following point set is generated assuming that M=5N.
In other words, the generated point set includes points that correspond to the landmarks shifted in a positive direction of the normals by D, points that correspond to the landmarks shifted in a positive direction of the normals by (D+ε_{b}), points that correspond to the landmarks shifted in a positive direction of the normals by (D−ε_{b}), points that correspond to the landmarks shifted in a positive direction of the normals by D and shifted in a positive direction of the binormals by 7ε_{b}, and points that correspond to the landmarks shifted in a positive direction of the normals by D and shifted in a negative direction of the binormals by 7ε_{b}. ε_{b }is a constant number, and a number sufficiently less than a distance between the landmarks is employed. In this embodiment, assume ε_{b}=1.0. It is favorable that D is set so that a closed surface contains the landmarks and a boundary on a surface that passes through the landmarks. In this embodiment, assume D=5ε_{b}.
The third calculator 119 sets a function value of an implicit function h (step S45). More specifically, the function value is set as follows. By this setting, a point set that satisfies h=0 forms the closed surface that contains the landmarks deployed annularly.
The third calculator 119 finds the implicit function h so that the function value becomes the value set in the step S45 (step S47), and stores data of the implicit function h in the third function storage unit 121. Then the processing returns to the callingsource processing. Also in the step S47, the implicit function h is found using TPS. The basic idea is the same as the processing in the step S17, the explanation is omitted.
Returning to the explanation of
Firstly, the second calculator 109 generates a point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }from the segment data stored in the segment data storage unit 107 (
The point set generated in the step S51 is the same as the point set generated in the step S21. In other words, points included in the point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }correspond to inner boundary points or outer boundary points.
The fourth calculator 123 removes, of the points included in the point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }points that satisfy h<0, and generates a point set p(bar)_{v,1}, p(bar)_{v,2}, . . . , p(bar)_{v,j}, . . . , p(bar)_{v,Mv(bar) }(step S53). The points that satisfy h<0 correspond to points that exist inside the 0 isosurface of the implicit function h. p(bar) represents a bar “” is attached to p. Moreover, _{v,Mv(bar) }represents a bar “” is attached to a subscript M and v.
The fourth calculator 123 adds the landmarks x_{1}, x_{2}, . . . , x_{i}, . . . , x_{N }and the point set x_{1}±ε_{b}n_{1}, x_{2}±ε_{b}n_{2}, . . . , x_{i}±ε_{b}n_{i}, . . . , x_{N}±ε_{b}n_{N }to the generated point set p(bar)_{v,1}, p(bar)_{v,2}, . . . , p(bar)_{v,j}, . . . , p(bar)_{v,Mv(bar) }(step S55).
The fourth calculator 123 sets a function value of the implicit function f (step S57). More specifically, the function value is set as follows:
The fourth calculator 123 finds the implicit function f so that the function value becomes the value set in the step S57 (step S59), and stores data of the implicit function f in the fourth function storage unit 125. Then the processing returns to the callingsource processing.
In the step S59, as well as the first embodiment, the implicit function f is found by using TPS. When it takes time to find the implicit function f using TPS, the implicit function f may be found by a method, for example, described in the nonpatent document 1. The disclosure of the nonpatent document 1 is incorporated herein by reference.
Returning to the explanation of
The division unit 113 performs the division processing based on data of the implicit function g stored in the first function storage unit 105 and data of the implicit function f stored in the fourth function storage unit 125 (step S37), and stores volume data representing a divided shape in the data storage unit 115. The division processing in the step S37 corresponds to the division processing explained in the step S5, and the explanation is omitted.
The output unit 117 outputs the volume data stored in the data storage unit 115 to the display device (step S39).
By performing the processing as described above, the object shape becomes analogous to the actual shape because a shape of a part that has an annular structure is corrected according to the landmarks.
In the third embodiment, an example in which a shape of a ventricle is modified based on the technique explained in the first embodiment and the technique explained in the second embodiment is explained.
The second calculator 109 performs processing based on data stored in the segment data storage unit 107, and stores a result of the processing in the point set storage unit 110. The third calculator 119 performs processing based on data stored in the landmark storage unit 101, and stores a result of the processing in the third function storage unit 121. The fourth calculator 123 performs processing based on data stored in the point set storage unit 110 and data stored in the third function storage unit 121, and stores a result of the processing in the fourth function storage unit 125. The deletion unit 127 performs processing based on data stored in the fourth function storage unit 125 and data stored in the third function storage unit 121, and stores a result of the processing in the data storage unit 115. The output unit 117 outputs data stored in the data storage unit 115 to a display device or the like.
Next, by using
Firstly, the third calculator 119 performs the closed surface generation processing (
Then, the second calculator 109 and the fourth calculator 123 perform shape generation processing in the third embodiment (
The second calculator 109 generates a point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, p_{v,Mv }from the segment data stored in the segment data storage unit 107 (
The fourth calculator 123 removes, of the points included in the point set p_{v,1}, p_{v,2}, . . . , p_{v,j}, . . . , p_{v,Mv }points that satisfy h_{1}<0, and generates a point set p(bar)_{v,1}, p(bar)_{v,2}, . . . , p(bar)_{v,j}, . . . , p(bar)_{v,Mv(bar) }(step S73). The points that satisfy h<0 correspond to points that exist inside the 0 isosurface of the implicit function h_{1}. p(bar) represents a bar “” is attached to p. Moreover, _{v,Mv(bar) }represents a bar “” is attached to a subscript M and v.
The fourth calculator 123 adds the landmarks x_{1}, x_{2}, . . . , x_{i}, . . . , x_{N }to the generated point set p(bar)_{v,1}, p(bar)_{v,2}, . . . , p(bar)_{v,j}, . . . , p(bar)_{v,Mv(bar) }(step S75).
In the third embodiment, x_{1}±ε_{b}n_{1}, x_{2}±ε_{b}n_{2}, . . . , x_{i}±ε_{b}n_{i}, . . . , x_{N}±ε_{b}n_{N }are not added to the point set. This is because there are points in the vicinity of the landmarks.
The fourth calculator 123 sets a function value of the implicit function f (step S77). More specifically, the function value is set as follows:
The fourth calculator 123 finds the implicit function f so that the function value becomes the value set in the step S77 (step S79), and stores data of the implicit function f in the fourth function storage unit 125. Then the processing returns to the callingsource processing.
In the step S79, as well as the first and second embodiments, the implicit function f is found by using TPS. When it takes time to find the implicit function f using TPS, the implicit function f may be found by a method, for example, described in the nonpatent document 1. The disclosure of the nonpatent document 1 is incorporated herein by reference.
Returning to the explanation of
Then, the deletion unit 127 performs deletion processing based on data of the implicit function h_{2 }stored in the third function storage unit 121 and data of the implicit function f stored in the fourth function storage unit 125 (step S67), and stores volume data representing the shape after the deletion processing in the data storage unit 115.
The deletion processing is processing to remove, of the shape represented by the 0 isosurface of the implicit function f, a portion inside the 0 isosurface of the implicit function h_{2}. For example, a point set that satisfies the implicit function f=0 and the implicit function h_{2}>0 is found in the deletion processing, and volume data for the point set is stored in the data storage unit 115.
The output unit 117 outputs the volume data stored in the data storage unit 115 to the display device or the like (step S69).
Although the embodiments of this invention were explained above, this invention is not limited to those. For example, the functional block configuration of the information processing apparatus 1 which is explained above, do not always correspond to actual program module configuration.
Moreover, the configurations of the respective data storages are mere example, and may be changed. Furthermore, as for the processing flow, as long as the processing results do not change, the turns of the steps may be exchanged or the steps may be executed in parallel.
For example, in the first embodiment, the turn of the division surface generation processing and the turn of the shape generation processing may be exchanged.
Even if landmarks are not deployed annularly, these embodiments may be applied if a division surface and a closed surface that pass through the landmarks can be generated.
In addition, the aforementioned the information processing apparatus 1 is computer device as shown in
The aforementioned embodiments are summarized as follows:
A modelling apparatus relating to a first aspect of these embodiments includes: a memory; and a processor configured to use the memory and execute a process. And the process includes: (A) first calculating a first function for generating a closed surface that contains plural points that represent an annular structure in an object, based on positional information of the plural points; (B) generating a first point set that represents a boundary of the object, from plural tomographic images in each of which a first area occupied by the object is designated; (C) detecting points which are included in the first point set and located inside the closed surface by using the first function; (D) removing the detected points from the first point set to generate a second point set; and (E) second calculating a second function for generating a shape of the object using the second point set and the plural points.
By performing processing described above, it becomes possible to generate a highaccuracy object shape including an annular structure, because unwanted substances when generating the annular structure are removed.
Moreover, the aforementioned modelling apparatus may further include: (F) third calculating a third function for generating a surface that passes through the plural points; and (G) dividing the shape of the object, which is generated by using the second function, by the surface generated by using the third function. By performing the processing described above, it becomes possible to separate the object at a part that has an annular structure.
Moreover, the first calculating may include: (a1) first identifying, for each of the plural points, a third point set that includes a first point separated from the point in a positive direction of a normal for the point by a first distance, a second point separated from the point in the positive direction of the normal by a second distance, a third point separated from the point in the negative direction of the normal by the second distance, a fourth point separated from the point in a positive direction of a binormal for the point by a third distance, and a fifth point separated from the point in a negative direction of the binormal by the third distance; and (a2) first setting a function value for each point included in the identified third point set to calculate the first function based on the set function values. By performing the processing as described above, it becomes possible to properly remove unwanted substances when generating the annular structure, because an ellipsoidal closed surface is generated.
Moreover, the second calculating may include: (e1) second identifying, for each of the plural points, a fourth point set that includes a sixth point separated from the point in a positive direction of a normal for the point by a fourth distance, and a seventh point separated from the point in a negative direction of the normal by the fourth distance; and (e2) second setting a function value for each point included in the fourth point set, a function value for each of the plural points, and a function value for each point included in the second point set to calculate the second function based on the set function values. By performing the processing as described above, it becomes possible to properly generate a shape in the vicinity of the annular structure.
Moreover, the third calculating may include: (f1) third identifying, for each of the plural points, a fifth point set that includes an eighth point separated from the point in a positive direction of a binormal for the point by a fifth distance, and a ninth point separated from the point in a negative direction of the binormal by the fifth distance; and (f2) third setting a function value for each point included in the fifth point set and a function value for each of the plural points to calculate the third function based on the set function values. By performing the processing as described above, it becomes possible to suppress occurrence of concavity and convexity on the surface.
Moreover, the detecting comprises: (c1) detecting points which are included in the first point set and located inside the closed surface, based on whether or not values of the first function are greater than a predetermined value. By performing the processing as described above, it becomes possible to easily detect points located inside the closed surface.
Moreover, the first point set may include points which are included in the first area and adjacent to an area other than the first area, and points which are included in the area other than the first area and adjacent to the first area. By doing this, it becomes possible to generate the point set that represents the boundary of the object.
A modelling method relating to a second aspect of these embodiments includes: (H) first calculating a first function for generating a closed surface that contains plural points that represent an annular structure in an object, based on positional information of the plural points; (I) generating a first point set that represents a boundary of the object, from plural tomographic images in each of which a first area occupied by the object is designated; (J) detecting points which are included in the first point set and located inside the closed surface by using the first function; (K) removing the detected points from the first point set to generate a second point set; (L) and second calculating a second function for generating a shape of the object using the second point set and the plural points.
A modelling apparatus relating to a third aspect of these embodiments includes circuitry or a processor configured to: (M) calculate a first function for generating a closed surface that contains plural points that represent an annular structure in an object, based on positional information of the plural points; (N) generate a first point set that represents a boundary of the object, from plural tomographic images in each of which a first area occupied by the object is designated; (O) detect points which are included in the first point set and located inside the closed surface by using the first function; (P) remove the detected points from the first point set to generate a second point set; and (Q) calculate a second function for generating a shape of the object using the second point set and the plural points.
A modelling apparatus relating to a fourth aspect of these embodiments includes: (R) a first calculator that calculates a first function for generating a closed surface that contains plural points that represent an annular structure in an object, based on positional information of the plural points; (S) a generator that generates a first point set that represents a boundary of the object, from plural tomographic images in each of which a first area occupied by the object is designated; (T) a detector that detects points which are included in the first point set and located inside the closed surface by using the first function; (U) a removing unit that removes the detected points from the first point set to generate a second point set; and (V) a second calculator that calculates a second function for generating a shape of the object using the second point set and the plural points.
Incidentally, it is possible to create a program causing a computer to execute the aforementioned processing, and such a program is stored in a computer readable storage medium or storage device such as a flexible disk, CDROM, DVDROM, magnetooptic disk, a semiconductor memory, and hard disk. In addition, the intermediate processing result is temporarily stored in a storage device such as a main memory or the like.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.