US RE42366 E1 Abstract Polygonal data input in a first step is subjected to evaluation in which all edges of the polygon data are ranked in importance on the basis of a volume change caused by removal of that edge. The edges are sorted on the basis of an evaluation value in a third step. In a fourth step, the edge of a small evaluation value is determined to be an edge of a small influence on the general shape and is removed. In a fifth step, a new vertex is determined from the loss of vertex by the edge removal. In a sixth step, a movement of texture coordinates and a removal of the texture after the edge removal are executed on the basis of the area change of the texture due to the edge removal by a predetermined evaluating function. In a seventh step, by repeating the processes in the second to sixth steps, a polygon model approximated to a desired layer can be obtained.
Claims(338) 1. A method of approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said method comprising:
evaluating a degree of importance of each line segment of said framework;
removing at least one unnecessary line segment from said framework which is identified based on said evaluation of said degree of importance of each line segment; and
determining a position of a vertex after said unnecessary line segment is removed,
wherein said framework is drawn on a display apparatus. 2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
wherein said evaluating a degree of importance of each line segment further comprises calculating an importance of a particular line segment by (N·E)×A,
wherein E is said vector representing a particular line segment, A is said area of a polygon sided by said particular line segment, and N is said normal vector.
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. The method of
16. The method of
17. The method of
18. The method of
19. The method of
20. The method of
21. The method of
22. The method of
23. The method of
24. The method of
25. The method of
26. The method of
27. The method of
28. The method of
29. The method of
30. The method of
31. The method of
32. The method of
33. The method of
34. The method of
35. The method of
36. The method of
37. The method of
38. The method of
39. The method of
40. The method of
41. The method of
42. A method of approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework formed of polygons to which textures or pictures are applied, said polygons of said framework being composed of line segments connected between vertices, said method comprising:
evaluating a degree of importance of each line segment of said framework;
removing an unnecessary line segment identified by said step of evaluating a degree of importance of each line segment;
reconfiguring said framework to account for said removal of said line segment; and
reconfiguring said textures or pictures applied to said framework to account for said removal of said line segment,
wherein said framework is drawn on a display apparatus. 43. The method of
44. The method of
said reconfiguring of said framework comprises replacing two vertices of said framework, between which said unnecessary, removed line segment had been connected, with a single new vertex; and
said reconfiguring the textures or pictures applied to the framework comprises determining a new position on said textures or pictures corresponding to a position of said single new vertex in said framework.
45. The method of
46. The method of
47. The method of
48. The method of
49. The method of
50. The method of
51. The method of
52. The method of
53. The method of
54. The method of
wherein said evaluating a degree of importance of each line segment further comprises calculating an importance of a particular line segment by (N·E)×A,
wherein E is said vector representing a particular line segment, A is said area of a polygon sided by said particular line segment, and N is said normal vector.
55. The method of
56. The method of
57. The method of
58. The method of
59. The method of
60. The method of
61. The method of
62. The method of
63. The method of
64. The method of
65. The method of
66. The method of
67. The method of
68. The method of
69. The method of
70. The method of
71. The method of
72. The method of
73. The method of
74. The method of
75. The method of
76. The apparatusmethod of
77. An apparatus for use with a display device that approximates an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said deviceapparatus comprising:
a memory unit for storing said image data; and
a processor connected to said memory unit, wherein said processor is programmed to:
(a) assign an importance value to each line segment of said framework;
(b) remove from said framework that line segment having a lowest importance value; and
(c) reconfigure said framework to account for said removal of said line segment having said lowest importance value.
78. The apparatus of
79. The apparatus of
80. The apparatus of
81. The apparatus of
82. The apparatus of
83. The apparatus of
84. The apparatus of
85. The apparatus of
86. The apparatus of
87. The apparatus of
88. The apparatus of
89. The apparatus of
wherein said processor assigns an importance value to each line segment by calculating an importance of a particular line segment by (N·E)×A,
wherein E is said vector representing a particular line segment, A is said area of a polygon sided by said particular line segment, and N is said normal vector.
90. The apparatus of
91. The apparatus of
92. The apparatus of
93. The apparatus of
94. The apparatus of
95. The apparatus of
96. The apparatus of
97. The apparatus of
98. The apparatus of
99. The apparatus of
100. The apparatus of
101. The apparatus of
102. The apparatus of
103. The apparatus of
104. The apparatus of
105. A method of approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said method comprising:
assigning an importance value to each line segment of said framework;
removing from said framework that line segment having a lowest importance value; and
reconfiguring said framework to account for said removal of said line segment having said lowest importance value,
wherein said framework is drawn on a display apparatus. 106. The method of
107. The method of
108. The method of
109. The method of
110. The method of
111. The method of
wherein said assigning an importance value to each line segment further comprises calculating an importance of a particular line segment by (N·E)×A,
112. The method of
113. The method of
114. The method of
115. The method of
116. The method of
117. The method of
118. The method of
119. The method of
120. The method of
121. The method of
122. The method of
123. The method of
124. The method of
125. The method of
126. The method of
127. The method of
128. The method of
129. The method of
130. The method of
131. The method of
132. The method of
133. The method of
134. The method of
135. The method of
136. The method of
137. The method of
138. The method of
139. The method of
140. The method of
141. The method of
142. The method of
143. The method of
144. The method of
145. The method of
146. The method of
147. The method of
148. The method of
149. The method of
150. The method of
151. The method of
152. The method of
153. The method of
154. The method of
155. The method of
said determining of a position of vertex determines amount of shift the vertex which is constructing the unnecessary line segment and not removed on said removing of unnecessary line segment.
156. An apparatus for approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said apparatus comprising:
a memory unit configured to store said image data; and
a processing apparatus for:configured to:
evaluatingevaluate a degree of importance of each line segment of said framework;
removingremove at least one unnecessary line segment from said framework which is identified based on said evaluation of said degree of importance of each line segment; and
determiningdetermine a position of a vertex after said unnecessary line segment is removed.
157. The apparatus of
158. The apparatus of
159. The apparatus of
160. The apparatus of
161. The apparatus of
wherein said evaluating a degree of importance of each line segment further comprises calculating an importance of a particular line segment by (N·E)×A,
162. The apparatus of
163. The apparatus of
164. The apparatus of
165. The apparatus of
166. The apparatus of
167. The apparatus of
168. The apparatus of
169. The apparatus of
170. The apparatus of
171. The apparatus of
172. The apparatus of
173. The apparatus of
174. The apparatus of
175. The apparatus of
176. The apparatus of
177. The apparatus of
178. The apparatus of
179. The apparatus of
180. The apparatus of
181. The apparatus of
182. The apparatus of
183. The apparatus of
184. An apparatus for approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework formed of polygons to which textures or pictures are applied, said polygons of said framework being composed of line segments connected between vertices, said apparatus comprising:
a memory unit configured to store said image data; and
a processing apparatus for:configured to:
evaluatingevaluate a degree of importance of each line segment of said framework;
removingremove an unnecessary line segment identified by said step of evaluating a degree of importance of each line segment;
reconfiguringreconfigure said framework to account for said removal of said line segment; and
reconfiguringreconfigure said textures or pictures applied to said framework to account for said removal of said line segment.
185. The apparatus of
186. The apparatus of
said reconfiguring of said framework comprises replacing two vertices of said framework, between which said unnecessary, removed line segment had been connected, with a single new vertex; and
said reconfiguring the textures or pictures applied to the framework comprises determining a new position on said textures or pictures corresponding to a position of said single new vertex in said framework.
187. The apparatus of
188. The apparatus of
189. The apparatus of
190. The apparatus of
191. The apparatus of
192. The apparatus of
193. The apparatus of
194. The apparatus of
195. The apparatus of
196. The apparatus of
197. The apparatus of
198. The apparatus of
199. The apparatus of
200. The apparatus of
201. The apparatus of
202. The apparatus of
203. The apparatus of
204. The apparatus of
205. The apparatus of
206. The apparatus of
207. The apparatus of
208. The apparatus of
209. The apparatus of
210. The apparatus of
211. The apparatus of
212. The apparatus of
213. The apparatus of
214. The apparatus of
215. The apparatus of
216. A medium for storing image data for approximating an image by decreasing an amount of said image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said medium comprising:
a memory unit for storingconfigured to store said image data, wherein said image data stored onto said memory unit are generated by a processor that:
evaluatingevaluates a degree of importance of each line segment of said framework;
removingremoves at least one unnecessary line segment from said framework which is identified based on said evaluation of said degree of importance of each line segment; and
determiningdetermines a position of a vertex after said unnecessary line segment is removed.
217. The medium of
218. The medium of
219. The medium of
220. The medium of
221. The medium of
222. The medium of
223. The medium of
224. The medium of
225. The medium of
226. The medium of
227. The medium of
228. The medium of
229. The medium of
230. The medium of
231. The medium of
232. The medium of
233. The medium of
234. The medium of
235. The medium of
236. The medium of
237. The medium of
238. The medium of
239. The medium of
240. The medium of
241. The medium of
242. The medium of
243. The medium of
244. A medium for storing image data for approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said medium comprising:
a memory unit for storing said image data, wherein said image data stored onto said memory unit are generated by a processor that:
assigningassigns an importance value to each line segment of said framework;
removingremoves from said framework that line segment having a lowest importance value; and
reconfiguringreconfigures said framework to account for said removal of said line segment having said lowest importance value.
245. The medium of
246. The medium of
247. The medium of
248. The medium of
249. The medium of
250. The medium of
wherein said assigning an importance value to each line segment further comprises calculating an importance of a particular line segment by (N·E)×A,
251. The medium of
252. The medium of
253. The medium of
254. The medium of
255. The medium of
256. The medium of
257. The medium of
258. The medium of
259. The medium of
260. The medium of
261. The medium of
262. The medium of
263. The medium of
264. The medium of
265. The medium of
266. The medium of
267. The medium of
268. The medium of
269. The medium of
270. The medium of
271. The medium of
272. A medium for storing image data for approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework formed of polygons to which textures or pictures are applied, said polygons of said framework being composed of line segments connected between vertices, said medium comprising:
a memory unit for storing said image data, wherein said image data stored onto said memory unit are generated by a processor for:
evaluating a degree of importance of each line segment of said framework;
removing an unnecessary line segment identified by said evaluating a degree of importance of each line segment;
reconfiguring said framework to account for said removal of said line segment; and
reconfiguring said textures or pictures applied to said framework to account for said removal of said line segment.
273. The medium of
274. The medium of
said reconfiguring of said framework comprises replacing two vertices of said framework, between which said unnecessary, removed line segment had been connected, with a single new vertex; and
said reconfiguring the textures or pictures applied to the framework comprises determining a new position on said textures or pictures corresponding to a position of said single new vertex in said framework.
275. The medium of
276. The medium of
277. The medium of
278. The medium of
279. The medium of
280. The medium of
281. The medium of
282. The medium of
283. The medium of
284. The medium of
285. The medium of
286. The medium of
287. The medium of
288. The medium of
289. The medium of
290. The medium of
291. The medium of
292. The medium of
293. The medium of
294. The medium of
295. The medium of
296. The medium of
297. The medium of
298. The medium of
299. The medium of
300. The medium of
301. The medium of
302. The medium of
303. The medium of
304. The medium of
305. A method of approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said method comprising the steps of:
evaluating line segments of said framework; identifying at least one line segment from said framework which is identified based on said evaluation of the line segments; integrating vertices connected by the identified line segment to an integrated vertex, a position of the integrated vertex being determined based on at least location information of one of the vertices integrated to the integrated vertex; and assigning a weight which is considered in the evaluating step or the identifying step to reflect a user's intention in the approximated image, wherein said framework is drawn on a display apparatus. 306. The method of
storing data relating to said integrated vertices; and using the stored data for forming a model finer than the approximated image. 307. A method for creating data which comprises approximated image data formed by decreasing an amount of original image data, wherein said approximated and original image data define a polygonal framework, said framework being composed of line segments drawn between vertices, said method comprising the steps of:
causing a processor to form said approximated image data from said original image data, wherein the processor forms said approximated image data by executing the steps of: evaluating line segments of said framework; storing said approximated image data. 308. The method of
309. The method of
310. A method of forming a finer model from the data created by the method of
311. A method of forming finer model from image data created by an approximated image data creation, wherein:
( a) the image data created by said approximated image data creation comprising approximated image data formed by decreasing an amount of original image data, wherein said original image data defines a polygonal framework, said framework being composed of line segments drawn between vertices; and ( b) said approximated image data creation comprising:
(
b- ) 1 forming said approximated image data from said original image data, the step (b- ) 1 being executed by a processor, wherein the step (b- ) 1 of forming said approximated image data comprises:
(
b- -1 ) 1 evaluating line segments of said framework; (
b- -1 ) 2 identifying at least one line segment from said framework which is identified based on said evaluation of each line segments; (
b- -1 ) 3 integrating vertices connected by the identified at least one line segment to an integrated vertex, a position of the integrated vertex being determined based on at least location information of one of the vertices integrated to the integrated vertex; (
b- ) 2 storing said approximated image data; and (
b- ) 3 storing additional data relating integration of said vertices to said integrated vertex for use in forming a model finer than said approximated image data; said method comprising the steps of:
(
c) forming the finer model by using said approximated image data and said additional data, the step (c) of forming the finer model comprises:
(
c- ) 1 creating at least two vertices comprised in said finer model from said integrated vertex by using data included in said additional data. 312. A forming method of
said forming step (c) further comprising: ( c- ) 2 allotting a texture to a face created by said creating step (c- ) 1 of said two vertices. 313. A forming method of
said finer model having one or more vertices and two or more faces than does said approximated image data. 314. A forming method of
said polygonal framework being represented using triangle meshes. 315. A forming method of
said identifying step (b- -1 ) 2 and said integrating step (b- -1 ) 3 are repeated in said approximated image data creation so that said approximated data have a desired resolution. 316. A forming method of
said additional data comprises information of integration relations of said integrated vertex and deleted vertices in said original image data. 317. A forming method of
in said creating step (c- ),
1 one of said two vertices is created by modifying the position of said integrated vertex based on information comprised in said additional data, and the other is created by modifying the position of said integrated vertex based on information comprised in said additional data. 318. A forming method of
a plurality of said finer image data can be formed from said approximated image data, wherein one of the finer image data has resolution which is different from resolution of another of the finer image data. 319. A forming method of
in said forming step (c), the creating step (c- ) 1 for creating of said two vertices comprised in said finer model is repeated in order to be executed on a plurality of integrated vertices of said approximated image data. 320. A forming method of
b- -1 )3 , two vertices connected by the identified line segment are integrated to a single integrated vertex. 321. A forming method of
b- -1 )3 , the integration is performed by removing one of said vertices from and keeping the other one of said vertices in the model of said approximated image data. 322. A forming method of
b- -1 )1 , a numerical measure is used in the line segment evaluation. 323. A forming method of
b- -1 )1 , a value relating normal of plane is used in the line segment evaluation. 324. A forming method of
b- -1 )1 , a length of vector is used in each of the line segment evaluation. 325. A forming method of
c) further comprising steps of:
(
c- ) 2 receiving said approximated image data stored in an external storing device for utilizing the approximated image data in the vertices creating step (c- )1 , and (
c- ) 3 displaying the formed finer model on a local display. 326. A forming method of
c) further comprising steps of:
(
c- ) 4 receiving said additional data stored in an external storing device for utilizing the additional data in the vertices creating step (c- )1 , and (
c- ) 5 displaying the formed finer model on a local display. 327. A forming method of
c) further comprising steps of:
(
c- ) 6 receiving said approximated image data and said additional data stored in an external storing device for utilizing the approximated image data and the additional data in the vertices creating step (c- ); 1 (
c- ) 7 displaying the formed finer model on a local display. 328. A forming method of
b- -1 )3 , two vertices connected by the identified line segment are integrated to a single integrated vertex. 329. A forming method of
b- -1 )3 , the integration is performed by removing one of said vertices from and keeping the other one of said vertices in the model of said approximated image data. 330. A forming method of
b- -1 )1 , a numerical measure is used in the line segment evaluation. 331. A forming method of
b- -1 )1 , a value relating normal of plane is used in the line segment evaluation. 332. A forming method of
b- -1 )1 , a length of vector is used in each of the line segment evaluation. 333. A forming method of
c) further comprising steps of:
(
c- ) 2 receiving said approximated image data stored in an external storing device for utilizing the approximated image data in the vertices creating step (c- )1 ; and (
c- ) 3 displaying the formed finer model on a local display. 334. A forming method of
c) further comprising steps of:
(
c- ) 4 receiving said additional data stored in an external storing device for utilizing the additional data in the vertices creating step (c- )1 ; and (
c- ) 5 displaying the formed finer model on a local display. 335. A forming method of
c) further comprising steps of:
(
c- ) 6 receiving said approximated image data and said additional data stored in an external storing device for utilizing the approximated image data and the additional data in the vertices creating step (c- ); 1 (
c- ) 7 displaying the formed finer model on a local display. 336. An apparatus of approximating an image by decreasing an amount of image data used to create the image, wherein said image data defines a polygonal framework, said framework being composed of line segments drawn between vertices, said apparatus comprising a processor and storing instructions which when executed by the processor executes the steps of: evaluating line segments of said framework;
identifying at least one line segment from said framework which is identified based on said evaluation of line segment; integrating vertices connected by the identified line segment to an integrated vertex, wherein a position of the integrated vertex is determined based on at least location information of one of the vertices integrated to the integrated vertex; and assigning a weight which is considered in the evaluating step or the identifying step to reflect a user's intention in the approximated image. 337. An apparatus for creating data which comprises approximated image data formed by decreasing an amount of original image data, wherein said approximated and original image data define a polygonal framework, said framework being composed of line segments drawn between vertices, said apparatus comprising a processor and storing instructions which when executed by the processor executes the steps of:
forming said approximated image data from said original image data, wherein the forming step comprises: evaluating each line segment of said framework; identifying at least one line segment from said framework which is identified based on said evaluation of each line segment; and storing said approximated image data. 338. An apparatus of forming finer model from image data created by an approximated image data creation, wherein:
( a) the image data created by said approximated image data creation comprising approximated image data formed by decreasing an amount of original image data, wherein said original image data defines a polygonal framework, said framework being composed of line segments drawn between vertices; and ( b) said approximated image data creation comprising:
(
b- ) 1 forming said approximated image data from said original image data, wherein the step (b- ) 1 of forming said approximated image data comprises:
(
b- -1 ) 1 evaluating line segments of said framework; (
b- -1 ) 2 identifying at least one line segment from said framework which is identified based on said evaluation of line segments; (
b- -1 ) 3 integrating vertices connected by the identified at least one line segment to an integrated vertex, wherein a position of the integrated vertex is determined based on at least location information of one of the vertices integrated to the integrated vertex; (
b- ) 2 storing said approximated image data; and (
b- ) 3 storing additional data relating integration of said vertices to said integrated vertex for use in forming a model finer than said approximated image data; said apparatus comprising a processor, and instructions stored within memory of said apparatus which when executed perform the steps of: ( c) forming the finer model by using said approximated image data and said additional data, the step (c) of forming the finer model comprises:
(
c- ) 1 creating at least two vertices comprised in said finer model from said integrated vertex by using data included in said additional data. Description This application is a continuation of application Ser. No. 08/755,129, filed on Nov. 25, 1996, now U.S. Pat. No. 5,963,668. 1. Field of the Invention The present invention relates to a method and apparatus for hierarchically approximating shape data with an image, in which the data amount is reduced by reducing the complexity of the shape of a geometric model which is used in generating CG (Computer Graphics), thereby enabling the CG to be drawn at a high rate of speed. The invention also relates to a method and apparatus for hierarchically approximating shape data with an image, which is suitable for use in a game using CG, VR (Virtual Reality), designing, and the like since a shape which was approximated so as not to give a sense of incongruity is changed. 2. Description of the Prior Art When drawing using a model as part of computer graphics, the same model may be used repeatedly. For example, as shown in However, when the observer pays no attention to the model because the model is minimized and looks smaller on the picture plane or the model is out of a target point of the picture plane, it is not always necessary to draw by using the model having a high degree of detail. That is, by using a similar model in which a degree of detail is decreased to a certain extent by using a method of reducing the number of vertices of the model, reducing the number of planes of a polygon, or the like, it can appear as if the same model is used. Such an approximation of the model is useful for the drawing of the CG display as mentioned above. However, if the data amount of the model is simply reduced by approximating the details of the model, the observer feels incongruity when he sees the approximated model. If this sense of incongruity can be suppressed, requests for both of the drawing speed and the drawing quality can be satisfied. For this purpose, it is desirable to reduce the data amount in a manner such that a general characteristic portion of the model is left and the other portions are reduced. Hitherto, such an approximation of the model is often executed by the manual work of a designer, so that much expense and time are necessary for the above work. A method of obtaining a more realistic image by adhering a two-dimensional image to a plane of a model as a drawing target is generally used. This is called a texture mapping, The image that is adhered in this instance is called a texture. When the approximation of the shape as mentioned above is executed to the model which was subjected to the texture mapping, it is necessary to also pay attention to the texture adhered to the model plane. That is, it is necessary to prevent a deterioration in the appearance of the model due to a deformation of the texture shape at the time of approximation and to prevent the occurrence of a problem such that the amount of work is increased since the texture must be again adhered to the approximated model. In past studies, according to Francis J. M. Schmitt, Brian A. Barsky, and Wen-Hui Du, “An Adaptive Subdivision Method for Surface-Fitting from Sampled Data”, Computer Graphics, Vol. 20, No. 4, August, 1986, although the shape is approximated by adhering the Bezier patch to a three-dimensional shape, there is a problem in that a general polygon is not a target. According to Greg Turk, “Re-Tiling Polygonal Surface”, Computer Graphics, Vol. 26, No. 2, July, 1992, a trial of hierarchically approximating a polygon model is executed. There is, however, a problem in that although the algorithm in the above paper can be applied to a round shape, it is not suitable for a square shape and a general shape is not a target. Further, it is not considered to approximate the shape on the basis of characteristic points of the object shape. Further, according to Hugues Hoppe et al., “Mesh Optimization”, Computer Graphics Proceedings, Annual Conference Series, SIGGRAPH 1993, a model is approximated in a manner such that energy is introduced to an evaluation of the approximated model, and operations for removing the edge, dividing the patch, and swapping the edge are repeated so as to minimize the energy. According to the method of the paper, however, it is necessary to execute a long repetitive calculation until the minimum point of the energy is determined. In addition, a solving method such as a simulated annealing or the like is necessary in a manner similar to other energy minimizing problems so as not to reach a local minimum point. There is no guarantee that the energy minimum point is always visually the best point. Further, in those papers, no consideration is made up to the texture adhered to the model upon approximation. Consequently, the method of approximating the model according to the methods in the papers has a problem in that double processes are required in which the texture is newly adhered to the approximated model after the approximation. As mentioned above, the past studies have problems regarding the approximation of a model when a polygon is drawn. That is, the conventional method has problems such that application of the shape approximation is limited, a long calculation time is necessary for approximation, and the approximation in which required characteristic points are considered is not executed. The approximation of figure data to realize a switching of continuous layers, in which the sense of incongruity to be given to the observer at the time of the switching of the approximated model is considered, is not executed. When the approximation is executed to the geometric model to which the texture is adhered, there is a problem in that a measure to prevent a quality deterioration after the approximation, by keeping the shape of the texture adhered to the model, is not taken. There is also a problem in that a measure to eliminate the necessity to newly adhere the texture after the approximation is not taken. Further, there is a problem that the approximation in which the existence of the texture itself is considered is not executed. It is, therefore, an object of the invention to provide a method and apparatus for hierarchically approximating figure data with an image in the drawing of CG so that high-speed drawing is performed while maintaining a quality of the drawing. It is another object of the invention to provide a method and apparatus for hierarchically approximating figure data with an image as if the approximation of a geometric model is performed in consideration of the existence of a texture itself. According to the invention, in order to solve the above problems, there is provided a hierarchical approximating method of shape data for approximating shape data to data of a desired resolution, comprising the steps of: evaluating an importance of each of the edges which construct the shape data; removing an unnecessary edge on the basis of a result of the edge evaluation; and determining a vertex position after the unnecessary edge was removed. According to the invention, in order to solve the above problems, there is provided a hierarchical approximating method of shape data with an image for approximating shape data to which image data was adhered to data of a desired resolution, comprising the steps of: determining which edge in the shape data should be removed upon approximation; determining a new vertex position in the shape data after the edge removal performed on the basis of the edge removal determination; and removing an unnecessary vertex in the image data adhered to the shape data in accordance with outputs from the edge removal determining step and the vertex movement determining step and moving a vertex on the image data in accordance with the new vertex position in the shape data. According to the invention, in order to solve the above problems, there is provided an approximating apparatus for figure data for approximating shape data to that of a desired resolution, comprising: evaluating means for evaluating an importance of each of the edges which construct the shape data; edge removing means for removing an unnecessary edge on the basis of a result of the edge evaluation; and vertex position determining means for determining a vertex position after the unnecessary edge was removed. According to the invention, in order to solve the above problems, there is provided a hierarchical approximating apparatus for figure data with image data for approximating shape data to which image data is adhered to data of a desired resolution, comprising: edge removal determining means for determining which edge in the shape data is removed upon approximation; vertex movement determining means for determining a new vertex position in the shape data after the edge removal; and image data removal and movement determining means for removing an unnecessary vertex in the image data adhered to the shape data in accordance with outputs from the edge removal determining means and the vertex movement determining means and for moving the vertex on the image data in accordance with the new vertex position in the shape data. According to the invention as mentioned above, the importance of each of the edges of the shape data is evaluated, the unnecessary edge is removed on the basis of the evaluation, a new vertex after the edge removal is determined, and further, the vertex is moved on the image data in accordance with the new vertex position. Thus, the shape data can be approximated so that the change in shape is little while suppressing the deterioration of the image data adhered to the shape model. The above and other objects and features of the present invention will become apparent from the following detailed description and the appended claims with reference to the accompanying drawings. An embodiment of the invention will now be described hereinbelow with reference to the drawings. As shown in First, processes in the flowchart shown in In the first step S In step S When the edge is removed in step S Approximated polygon data that was approximated at a precision of one stage and was subjected to the texture mapping is obtained by the foregoing processes in steps S When the approximated polygon data that was subjected to the texture mapping at a desired precision in step S The processes in the above flowchart are executed mainly by the CPU Processes regarding a model approximation will now be described. As mentioned above, the approximation of the polygon model is executed by repeating the edge removal. In this instance, small convex and concave components which do not contribute to the general shape of the model are judged and edges which should be preferentially removed are determined on the basis of the judgementjudgment result. In order to select the edges which are preferentially removed, the extent to which the edges constructing the model contribute to the general shape, namely, the importance of each edge is evaluated and the removal is executed to remove the edge with the smallest evaluation value. In step S In order to select the edge which is suitable to be removed by obtaining the evaluation value, an evaluation function to evaluate the extent to which each of the edges constructing the polygon model contributes to the shape of the polygon model is introduced. The following equation (1) shows an example of the evaluation function. The equation (1) is constructed by two terms. The first term V The first term V The value of the equation (1) is calculated with respect to each of the edges constructing the polygon model and the evaluation value for each edge is obtained. In step S When the importance of the edge is evaluated in step S Although the local evaluation value in the polygon model is obtained by the equation (1), each edge can be also evaluated by a value obtained by adding the evaluation values of the peripheral edges to the evaluation value of a certain target edge. In this case, the evaluation can be performed not only with the peripheral shape of one edge but also with the shape or a wide range. When the area which the user wants to evaluate is wide as mentioned above, the calculation range of the equation (1) can be widened in accordance with such a wide area. In addition to the evaluation value simply derived by the calculation of the equation (1), the user can give the evaluation value or can operate the evaluation value. Therefore, when there is a portion which the user wants to leave intact without approximation or a portion which he, contrarily, wants to approximate, the intention of the designer or operator can be reflected in the approximating process by designating such a portion. In this case, the evaluation value is determined by executing a weighted addition by giving a weight coefficient to each of the value operated by the user and the calculated evaluation value. In this case, the approximation in which the intention of the designer is reflected can be performed by giving a weight coefficient, for example, by giving weight to the evaluation value designated by the user. On the contrary, when a large weight is given to the evaluation value obtained by the calculation of the equation (1), an accurate approximation can be performed by a quantitative evaluation of the volume change in shape. In this manner, the change in shape can be freely controlled by the weighting process. When the evaluation values for the edges of the polygon data are obtained in step S Although the case where the edge having the minimum evaluation value is simply removed has been described here, the removing order of the edges or the edge which is not removed can be also arbitrarily designated. When the edge is not removed, there is no change in shape of such a portion. For example, in the case where it is desirable that the shape is not changed, like a portion in which two models are in contact each other, it is sufficient to set a portion where no edge is removed. When the edge is removed in step S In this instance, the shape after the edge removal is changed depends on the position of the vertex v In Although the vertex v In consideration of the peripheral shape of the edge, when the shape has a concave or convex shape, the vertex v′ can be also arranged at a position where the volume change after the edge removal is the minimum. When the periphery has an S-character shape, the vertex v′ can be arranged at a position where the volume change amounts on both sides of the edge are equalized. In this case, the position of the vertex v′ is deviated to either one of the ends of the edge in the case of the concave or convex shape. In case of the S-character shape, the vertex v′ is arranged in the middle of the S character. Thus, both of an effect to suppress the volume change and an effect to absorb the continuous changes like an S character by the plane can be achieved. For example, an area having a small S-character shape like a saw tooth can be approximated by one plane in a general shape. A portion having a large change except the S-character shape can be approximated by a shape which is closer to the original shape. In the approximation in which the shape has a priority, such a setting is also possible. The approximating methods can be selectively used in accordance with the intention of the user. It is also possible not to change the vertex position remaining after the edge removal from the vertex position before the edge removal. That is, in the example shown in When the edge is evaluated and removed and the new vertex in association with the edge removal is determined in the steps up to step S The vertex V As shown by the texture in the diagram on the right side in In this example, the vertices v As mentioned above, the vertices v In this instance, when the position of the coordinates Vt With respect to an original polygon model shown in When the texture is adhered to the polygon model, there is a case where not only one texture but also a plurality of different textures are allocated to the model. In this case, a boundary in which the texture is switched from a certain texture to another texture exists. In case of adhering the texture to the polygon model, as mentioned above, the texture is allocated to each vertex of the model. Even in the boundary of the texture, therefore, the boundary is allocated to each vertex constructing the edge of the model. Further, as mentioned above, the approximation of the model is performed by repeating the edge removal only a desired number of times. In this instance, if the texture area allocated to the edge as a target of the removal is in the texture, as shown in However, when the area of the image allocated to the edge as a removal target exists just on the boundary of the image, the polygon model is approximated by the edge removal and since the vertex position is moved, a plurality of textures are mixed and the appearance of the texture is broken. To prevent this, it is necessary to make a discrimination so as not to break the image boundary at the time of the edge removal and to decide sizes of a change of the outline portion by the edge removal. As shown in In this case, since the outline portion of the face image has also been adhered to each of the vertices v To prevent this, a removal evaluating function of the edge as a boundary portion of the texture is introduced and when the shape of the texture boundary is largely changed by the edge removal, it is necessary to use any one of the following methods. Namely, as a first method, the relevant edge is not removed. As a second method, although the edge is removed, a movement amount of the vertex position after the removal is adjusted. The following equation (2) is used as a removal evaluating function of each edge in this instance. In the equation (2), E denotes the vector having the direction and length of the edge e, Ni indicates the normal vector of the edge, and Li the length of edge. A range of i corresponds to the whole edge of the boundary lines existing before and after the edge as a removal target. The equation (2) denotes an area change amount when the edge of the boundary portion is removed. Therefore, when the calculation value of the equation (2) is large, a change of the outline portion by the edge removal is large. Namely, when the calculation value of the equation (2) is large, the area change in the outline portion of the texture increases, so that there is a fear of occurrence of the breakage of the texture shape. To prevent this, there is a method whereby the relevant edge is not removed like the foregoing first method. However, like the foregoing second method, there is also a method whereby the texture coordinates after the edge removal are moved within a range where the value of the equation (2) is smaller than the designated value, thereby consequently decreasing the change amount of the outline portion. By using the second method, the breakage of the texture after the approximation can be suppressed. As mentioned above, the approximated polygon model to which the texture having a desired precision is adhered can be obtained. In this case, when the texture is adhered to the original model, there is no need to again adhere the texture to the model after completion of the approximation and the approximated model with the texture can be automatically obtained. As mentioned above, the approximated model obtained by repeating the processes in steps S Upon switching to the approximated model, if the model is suddenly switched to the model in which a degree of approximation largely differs, a sudden change occurs in the shape of the displayed model at a moment of the switching and a feeling of disorder is given to the observer. To prevent that feeling of disorder, it is sufficient that a number of models whose approximation degrees are slightly changed are prepared and stored into the external storing apparatus and the display is performed while sequentially switching those models. In this case, however, since an amount of models to be stored increases, it is not efficient. Therefore, to realize a smooth continuous conversion even with a small number of models, it is sufficient to interpolate the model among the discrete layers and to obtain the model of the middle layer. For example, in the example shown in Such a forming method of the approximated model in the middle layer between the discrete layers has already been described in detail in Japanese Patent Application No. 6-248602 regarding the proposition of the present inventors. In the example, the vertices v Although the case where the approximated model of the middle layer is formed and displayed in a real-time manner while displaying the model has been described here, the invention is not limited to such an example. For instance, it is also possible to practice the invention in a manner such that the approximated model of the middle layer is previously formed and stored in the external storing apparatus and the stored approximated model of the middle layer is read out at the time of the display. Although the case where one edge is removed has been mentioned as an example here, since the edge removal is repeated a plurality of number of times in the approximation of the actual model, one vertex of a certain layer corresponds to a plurality of vertices of another layer which is closer to the original model. By using the correspondence relation of the vertices in those two layers as mentioned above, the vertices of the model can be made to correspond among all of the layers. The model of the middle layer is obtained on the basis of the correspondence relation of the vertices derived as mentioned above. As mentioned above, since the coordinates of the image data in the texture are allocated to each vertex of each model, in a manner similar to the case of the vertices of such a model, the model to which the texture was adhered in the middle layer can be obtained by the interpolation of the texture coordinates vt By the above processes, the discrete hierarchical approximated model can be obtained and the model of the middle layer can be also obtained. The approximated model obtained and stored as mentioned above is switched in accordance with the size, position, speed, and attention point of the viewer of the apparent model on the picture plane in the display apparatus As specifically shown in Although the case where the texture image is adhered to the polygon model has been described above, the invention can be also obviously applied to the case where the texture image is not adhered. In this case, step S As described above, according to the invention, when image data (texture) is adhered to geometric data such as polygon data which is used in the CG, the model can be approximated to a desired degree of details while preventing the breakage of the texture shape or an apparent deterioration of the quality. According to the invention, therefore, there is an effect such that the geometric model which is used in the CG can be approximated in a state in which the texture is adhered. There is also an effect such that not only is the model approximated but also the breakage of the appearance of the texture in the approximation result can be suppressed. By using the geometric model approximated by the method based on the invention, in the drawing of the CG, there is an effect such that a request for drawing of at a high speed and at a high picture quality can both be satisfied. Further, according to the invention, an importance degree of each edge constructing the geometric model which is used for the CG can be evaluated by an evaluation value. There is an effect such that the geometric model can be approximated by preferentially removing the edge of a low evaluation value of the edge. According to the invention, the position of the vertex remaining after the edge was removed can be determined so as to suppress a change in general shape. Thus, there is an effect such that a feeling of disorder upon looking when drawing by using the approximated model can be suppressed. According to the invention, figure data which is used in the CG can be approximated by a plurality of resolutions. There is an effect such that by using the figure data derived by the invention, both of the goals of drawing at a high speed and drawing with a high quality can be satisfied. The present invention is not limited to the foregoing embodiments but many modifications and variations are possible within the spirit and scope of the appended claims of the invention. Patent Citations
Non-Patent Citations
Classifications
Rotate |