CN105279788A - Method for generating object space swept volume - Google Patents

Method for generating object space swept volume Download PDF

Info

Publication number
CN105279788A
CN105279788A CN201510705103.2A CN201510705103A CN105279788A CN 105279788 A CN105279788 A CN 105279788A CN 201510705103 A CN201510705103 A CN 201510705103A CN 105279788 A CN105279788 A CN 105279788A
Authority
CN
China
Prior art keywords
model
voxel
moment
dimensional
motion transform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510705103.2A
Other languages
Chinese (zh)
Other versions
CN105279788B (en
Inventor
田庆龙
费允锋
李吉
孙广毅
宋银灏
占金春
王聪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Engineering Design Inst Artillery Arms No2
Nankai University
Original Assignee
Engineering Design Inst Artillery Arms No2
Nankai University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Engineering Design Inst Artillery Arms No2, Nankai University filed Critical Engineering Design Inst Artillery Arms No2
Priority to CN201510705103.2A priority Critical patent/CN105279788B/en
Publication of CN105279788A publication Critical patent/CN105279788A/en
Application granted granted Critical
Publication of CN105279788B publication Critical patent/CN105279788B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The present invention discloses a method for generating an object space swept volume, relates to the fields of virtual simulation, computer aided manufacturing (CAM) and product lifecycle management (PLM), and in particular to a virtual model motion swept volume generation method. According to the method, a three-dimensional voxel method is adopted to obtain a swept volume, of an object, formed by motion transformation in a three-dimensional space, or called as an envelope volume, an envelope space, a swept space and a swept track. Compared with the current existing swept volume calculation method, the method provided by the present invention is applicable to rigid and nonrigid motion transformation of any complex three-dimensional shape, and can perform real-time three-dimensional display and surface reconstruction on a swept volume at each sampling moment during a motion transformation process. Besides, the method disclosed by the present invention further proposes accelerating a swept volume calculation process by adopting a massive parallel computing method, and the method is superior to the methods known in the art in the aspects of calculation efficiency, calculation accuracy and robustness of an algorithm.

Description

A kind of product body space scans the method for body
Technical field
The invention belongs to a kind of virtual emulation, computer-aided manufacturing (CAM) manages (PLM) field with production life cycle, particularly body generation method is scanned in a kind of dummy model motion.
Background technology
Floodlight scanning body, be also called space envelope body, the enveloping space, scan space, scan trajectory range, english nouns is SweptVolume, it refers to that any one object is along any one trajectory (or even a face), in some way (translation, rotation, convergent-divergent, distortion) carry out motion transform, finally produce the whole spatial summations comprising this object process in motion process in three dimensions.Scan body problem and contain a series of subproblems such as envelope Modelling and calculation, envelope, face delimitation and 3-D display.But wherein the most challenging problem is exactly scan the generation of body and visual.Floodlight scanning body technique has very important effect in the design of geometric modeling complex model, equipment assembling feasibility analysis, grand designs and robot motion's path planning etc., has outstanding value and significance in Aero-Space, boats and ships, automobile and other manufacturing industry.
To the research early start of floodlight scanning body last century 5, the sixties, although have passed through the development of over half a century, also there is a series of method of scanning body about generation, but because implementation algorithm is complicated, data calculated amount is too large, application in concrete actual production practice also exists huge obstacle all the time, and therefore this technology is considered to one of difficult problem of generally acknowledging in computer graphics, visual, field of virtual reality all the time.
In early days scan body conceptual phase, implementation method mainly based on the method for cartesian geometry, as based on motion morphology and the algorithm based on geometric shape.Based on the method for motion morphology based on family of curves's enveloping surface equation, utilize Enveloping theory, solved by the differential equation.Such as, Kim and Moon proposes one specially for algebraic curve and curved surface, generates the Algebraic Algorithm that body is scanned in pure rotation.What the method obtained scan, and body border is relevant by the border of planar object with convolution.Parida and Mudur scans body method for more general further, adds a series ofly to scan rule.After this, the method is expanded by some researchists further, proposes the method for scanning envelope, and the three-dimensional achieving object polygon scans body generation.Due to above-mentioned scan body generate relate to a large amount of equation solutions, counting yield is lower, and its algorithm complex is relevant to the summit quantity of polygon model.The core foundation of scanning body calculating in this period is that implicit function is theoretical: various layering and scanning envelope partial differential equation.Most work is by scanning the certain assumed condition in path, then characterizes the border scanning body.Have in this respect and intersect about how carrying out geometry entity moulding surface the research report calculated in a large number.Although the method calculated based on geometry achieves the generation of scanning body to a certain extent, but their general defects are only applicable to simple polygon or simply scan track, versatility is poor, the more important thing is that its computation process relates to a large amount of Solving Partial Differential Equations, expect and scan body accurately, the algebraically complexity that bottom calculates is very high.In addition, all there are the problems such as processing accuracy and robustness in all these algorithm realization intersecting calculating for surface.Therefore, these cannot accurately calculate arbitrary polygon based on methods that geometry calculates and scan body along a given smooth-path.
In recent years, along with the continuous lifting of computer hardware level and computing power, scan body technique again to be proposed, the body that scans that a kind of figure of novelty represents and the appearance of operative algorithm-voxel (Voxel) method makes any complex figure prolong any Comlex-locus is calculated to be in order to may.At present for the floodlight scanning body generation technique of any complex object, in the world Jin You U.S. Boeing (Boeing), France reaches rope (Dassault), three enterprises of Siemens (Siemens) are proposed actual product, they are respectively the VoxmapPointShell of Boeing tM(VPS), the CATIA of rope is reached, the KineoWrapping of Siemens.The VoxmapPointShell of Boeing tM(VPS) itself be a function library using voxel (Voxel) to solve space geometry problem.In VPS, scan body (SweptVolume) generation module and can generate the inswept spatial entities of object by user-defined subject movement locus, and complete sweep volume surface compensate function.In addition, the gridding function of VPS utilizes local voxel Space expanding to generate polygon model fast.The CATIA reaching rope is the important component part that PLM works in coordination with solution, the VoxmapPointShell of its floodlight scanning module implementation method and Boeing tM(VPS) different, which employs based on the calculation of geometry topological structure and level set (Level-set) method, while guarantee computational accuracy, also there is lower computation complexity.Siemens PLC M software Kineo Wrapping solution is the software library that body and encirclement are scanned in a general calculating.KineoWrapping can reserve by using the space of external definition, creates the floodlight scanning body of a moving-member in simulation process.In addition, the motion of this software also backer's body Model, robot or articulated system is scanned body and is generated.KineoWrapping is optimized by series of algorithms, makes user directly from scanning the grid model and enveloping surface that body is simplified, and can need not store other intermediate conversion.
Although more than to scan body generation technique be also method based on Voxel and respectively have feature, can be found by the workflow analyzing them, they all deposit following deficiency:
1, can only rigid motion be carried out, i.e. translation and rotation for generating the object model scanning body, to the non-rigid transformation such as bending in object itself, convergent-divergent, extruding and Free Surface random variation produce to scan body then helpless;
2, a final Static-state Space can only be generated and scan body, and the floodlight scanning body in each moment in object of which movement process can not be calculated real-time dynamicly and shows;
3, existing space scans that body computational algorithm complexity is high, counting yield is low, and is all the mode adopting calculated off-line, instead of dynamic calculation in real time.
Summary of the invention
The present invention seeks to scan during body calculates for existing space the deficiency existed, the object space based on three dimensions voxel proposing a kind of novelty scans body quick calculation method.The polygonal patch voxelization algorithm of the method by accelerating, the object model of motion transform is in three dimensions converted into voxel model in real time, by rapid voxel mathematical algorithm, not voxel model is in the same time merged again, thus generate the floodlight scanning body voxel model in each moment, and carry out real-time three-dimensional display.
The inventive method is realized by following concrete steps:
1st, the dummy object model scanned will be carried out mrepresent with the form on polygonal patch and summit, and record the coordinate information on each summit dand summit forms link information needed for polygonal patch p;
2nd, be dummy object model mgiving a time span is in three dimensions lcontinuous motion transform h;
3rd, by dummy object model mcontinuous motion transform in three dimensions hcarry out discrete sampling on a timeline, each sampled point represents a certain moment tmotion transform h (t), wherein ;
4th, sample in motion transform 0moment, by the dummy object model of polygonal patch and vertex representation mlocal coordinate system space residing for himself f local in convert three-dimensional voxel model to v 0 , and by this voxel model v 0 copy to object of which movement transformation space place world coordinate system f world in, initial as object of which movement conversion 0moment scan body voxel model sV (0)= v 0 ;
5th, sample in motion transform tmoment, wherein 1≤ tl, according to dummy object model mcurrent motion transform h (t), recalculate dummy object model mpolygonal patch vertex point coordinate information d, summit forms link information needed for polygonal patch p;
6th, by the 5th step through motion transform h (t)dummy object model mlocal coordinate system space residing for himself f local in again convert three-dimensional voxel model to v t , and by this voxel model v t copy to the world coordinate system at object of which movement transformation space place f world in;
7th, by the 6th step tthe three-dimensional voxel model of instance sample point v t with own before 0arrive t-1the three-dimensional voxel model of instance sample point and to gather union mode merge, be generated to tbody voxel model is scanned till moment sV (t)= , wherein 1≤ tl, and own before 0arrive t-1the three-dimensional voxel model of instance sample point and what in fact represent is t-1moment scan body voxel model, namely sV (t-1)= , so tmoment scan body three-dimensional voxel model sV (t)can be expressed as again sV (t)=V t sV (t-1);
8th, the 7th step is generated tmoment scans body voxel model sV (t)carry out 3-D display and preserved;
9th, the 7th step is generated tmoment scans body voxel model sV (t)carry out surface voxel extraction, generate tmoment scans body voxel surface point subset sS (t), carry out 3-D display and preserved;
10th, the 7th step is generated tmoment scans body voxel model sV (t)carry out surface three dimensional reconstruction, generate tmoment scans the polygonal patch model of surface sP (t), carry out 3-D display and preserved;
11st, to all motion transform sampling instants t, , repeat the 5 to the 10 step, product body Model min each sampling instant tscan body voxel model sV (t), scan body voxel surface point subset sS (t), scan the polygonal patch model of surface sP (t), and carry out real-time three-dimensional Dynamic Announce.
Wherein, the dummy object model described in the 1st step mcan be single body model, also can be the model combination that multiple object model is formed;
In the model combination be made up of multiple object model described in 1st step, can be sane level relation between object model also can be has father and son's inheritance that level connects;
Dummy object model described in 1st step mcan be expressed by Arbitrary 3 D model format, such as but not limited to implicit surface, grid surface, polygonal patch, Nurbs curved surface, face, batten district, entity solid etc.;
Continuous motion transform described in 2nd step hcomprise for model mrigid transformation, to comprise: translation, rotation, and for vertex point coordinate information dlink information needed for polygonal patch is formed with summit pthe non-rigid shape deformations amendment applied, such as but not limited to: convergent-divergent, bending, distortion, extruding, mistake is cut, top displacement freely converts, covering conversion etc.;
Described in 3rd step to continuous motion transform hcarry out the process of discrete sampling on a timeline, sample mode is not limited to uniform sampling at equal intervals, can be the nonuniform sampling of changing distance, and sampling interval and sampling precision can set arbitrarily;
4th step and the dummy object model described in the 6th step mlocal coordinate system space residing for himself f local in convert the process of three-dimensional voxel model to, adopt parallel computation to accelerate;
Described in 7th step tmoment scan body three-dimensional voxel model sV (t)computation process adopts parallel computation to accelerate;
Surface voxel described in 9th step is extracted and the 10th step surface three dimensional reconstruction adopts parallel computation to accelerate, and this two step is washability execution step, and nonessential execution step.
advantage of the present invention and beneficial effect:
Scan compared with body computing method with tradition based on computational geometry, the method calculated amount that the present invention proposes is little, complexity is low, strong robustness; Scan compared with body computing method with existing based on voxel, the method that the present invention proposes be not only applicable to rotate, the rigid motion of translation, be also applicable to bend, convergent-divergent, extruding and any non-rigid transformation of Free Surface the body that scans calculate.Further, than all body generation methods of scanning are more superior at present, the method can calculate the floodlight scanning body demonstrating any time in object of which movement conversion process in real time, and is not only that the static state in final moment scans body.In addition, the method that the present invention proposes additionally uses parallel computation to accelerate polygon voxelization and voxel operation process.The present invention has important practical value and good application prospect in fields such as the manufacturing, virtual reality, Military Simulation, human engineerings.
Accompanying drawing explanation
Fig. 1 is the model object calculated for floodlight scanning body;
Fig. 2 is that the model object calculated for floodlight scanning body is given a time span and is lcontinuous motion transform h;
Fig. 3 is for by time span to be lcontinuous motion transform hcarry out discrete sampling;
The model being used for the calculating of embodiment floodlight scanning body is carried out voxelization by Fig. 4;
Fig. 5 is will tthe three-dimensional voxel model of instance sample point with own before 0arrive t-1the three-dimensional voxel model of instance sample point and merge in the mode gathering union;
Fig. 6 is tinstance sample point calculates floodlight scanning body voxel model;
Fig. 7 is elapsed time length lmotion transform after the final floodlight scanning body voxel model that obtains;
Fig. 8 is a mechanical arm floodlight scanning body calculated examples;
Fig. 9 is that a human body space scans body calculated examples.
Wherein, 101 is original ball body Model, and 102 is primitive cylinder model, and 103 is spheroid polygon/vertex model, and 104 is right cylinder polygon/vertex model, and 105 is model object self local coordinate system; 106 for scanning body space world coordinate system; 107 is the voxel model of model object; 108 be position ( i, j, k) a non-NULL voxel; 109 is an empty voxel; 110 is sampled point tpolygon/the vertex model in moment; 111 is sampled point tmoment scan object pixel model; 112 are tthe floodlight scanning body voxel model in-1 moment; 113 are tthe floodlight scanning body voxel model in moment; 114 is final floodlight scanning body voxel model.
Embodiment
In order to make object of the present invention, technical scheme and advantage clearly understand, the specific embodiment provided below in conjunction with accompanying drawing is intended to the description as example of the present invention, is not intended to represent the unique forms that can build or use example of the present invention.Should be appreciated that specific embodiment described herein only in order to explain the present invention, set forth the function of example of the present invention, and for the sequence of the step that builds and operate example of the present invention, be not intended to limit the present invention.But, identical or equivalent function and sequence can be realized by different examples.
The object space that the present invention proposes scans body quick calculation method, and what it is characterized in that the method calculates that object formed through motion transform in three dimensions scans body, or claims enveloping solid, the enveloping space, scans space, scans track.The method core concept is the polygonal patch voxelization algorithm by accelerating, the object model of motion transform is in three dimensions converted into voxel model in real time, by rapid voxel mathematical algorithm, not voxel model is in the same time merged again, thus generate the floodlight scanning body voxel model in each moment, and carry out real-time three-dimensional display.
In a particular embodiment, the object calculated for scanning body is made up of a spheroid 101 and a right cylinder 102, as shown in Figure 1.In other embodiments, can be any complex three-dimensional object for calculating the object scanning body.Have father and son's inheritance that level is connected between spheroid 101 with right cylinder 102, wherein spheroid 101 is sub-object, and right cylinder 102 is father's object of spheroid 101.Namely, unless outside pre-set exclusiveness motion transform of only carrying out for right cylinder 102, other can by going down to spheroid 101 to the motion transform of right cylinder 102.Otherwise, then can not pass to right cylinder 102 to the motion transform of spheroid 101.
The dummy object model of spheroid 101 and right cylinder 102 can be generated by any three-dimensional design instrument, and model format is any form that can give expression to this object geometric properties information, as long as this model format can convert polygon/vertex model to further.Typical three-dimensional model form is including, but not limited to triangle surface, quad patch, parametric surface, solid model, implicit surface etc.
The representation 103 and 104 on the dummy object model polygon/summit of spheroid 101 and right cylinder 102 can be completed by computer-aided design (CAD) and any method can carrying out model format conversion, as long as the polygon/vertex model generated can be converted into voxel model further.
After completing polygon/vertex model conversion, the link information that the vertex point coordinate information of spheroid 103 and right cylinder 104 and summit form polygonal patch leaves array in respectively dand array pin.In an embodiment, dwith pwith following form store data:
D=(d 0 ,d 1 ,d 2 ,d 3 ,d 4 ,d 5 ,…,d i ,…,d n-1 ,d n )
P=(p 0 ,p 1 ,p 2 ,p 3 ,p 4 ,p 5 ,…,p j ,…,p m-1 ,p m )
d i for the tri-vector of in three dimensions, 0≤i≤n, nfor number of vertices; p j for being used in reference to array din the index value of certain element.Such as, when p j = itime, representative p j what point to is d i .In fact arrangement of elements order in array P constitutes the For Polygons Representation of model.In one embodiment, suppose that forming polygon is triangle, then array pin from first element, every three continuous print elements form a triangle, now mshould be the integral multiple of 3.
Array din the vertex point coordinate information value deposited be the displacement being defined as relative local coordinate system 105 true origin.Local coordinate system 105 adopts cartesian coordinate system, by a true origin and three orthogonal coordinate axis x, y, zform.Local coordinate system 105 directly can be inherited and come from original input model, also can reset in the process of carrying out polygonal patch and vertex model conversion.The coordinate axis that true origin is orthogonal with three x, y, zall can arrange arbitrarily.
For spheroid 103 and right cylinder 104 place three dimensions r d middle imparting time span is lcontinuous motion transform h.Three dimensions r d in coordinate system be called as world coordinate system 106, world coordinate system 106 true origin and three orthogonal axis u, v, wby user's sets itself, as shown in Figure 2.
In one embodiment, continuous motion transform hbe one for spheroid 103 and the translation of right cylinder 104 and the combination of rotation.In other embodiments, motion transform is including, but not limited to translation and rotation, and non-rigid shape deformations amendment is including, but not limited to for vertex point coordinate information dlink information needed for polygonal patch is formed with summit pthe convergent-divergent applied, bending, distortion, extruding, mistake is cut, top displacement freely converts, covering conversion etc.
Continuous motion transform hgeneral type be: wherein, rfor three-dimensional orthogonal rotation matrix, tfor D translation vector, sfor three-dimensional scale vectors, fMrepresent non-rigid shape deformations amendment conversion.
Definition m h for model mthrough transformation matrix hconversion, that is: along with object mmobile, its movement locus can be expressed as time dependent transformation matrix , t 0 -t l between each time point, qproduce a new position, towards, size and the conversion to model vertices.
And then, define along arbitrary motion track qscan object the body that scans formed is :
Motion change matrix change is continuous print in time, because the movement of any object can not be all discrete in real world.But in computer calculate, handling object is commonly discrete event, therefore need dummy object model at three dimensions in continuous motion transform hcarry out discrete sampling on a timeline, each sampled point represents a certain moment tmotion transform h (t), wherein tfor integer, and .
In the embodiment depicted in figure 2, the continuous motion transform of spheroid 103 and right cylinder 104 hthe discrete sampling process of carrying out on a timeline is uniform sampling at equal intervals, and sampling interval is 0.025s, and namely sample frequency is 40Hz, means and gathers 40 motion transform values p.s..In other embodiments, continuous motion transform hthe discrete sampling process of carrying out on a timeline can be changing distance nonuniform sampling, and the interval namely between every two sampling times point must be not the same.
After completing motion transform and discrete sampling thereof, initial in motion transform sampling 0in the moment, convert three-dimensional voxel model 107 to by the spheroid 103 of polygonal patch and vertex representation and the local coordinate system 105 of right cylinder 104 residing for himself, as shown in Figure 3.
A voxel (Voxel) represents three dimensions r d in a value on a regular grid.The coordinate of each voxel represents the displacement of its relative spatial co-ordinates system initial point in three dimensions.Such as, voxel 108 have coordinate ( i, j, k), then its relative to the position of coordinate system 105 initial point be ( i, j, k).The value of each voxel represents the occupying of the space occupied by this voxel location.Such as, voxel 108 value of constituting body prime model 107 is 1 represent space, voxel 108 place and be occupied, and all voxels except the voxel forming spheroid 103 and right cylinder 104, if voxel 109 value is 0 represent space, voxel 109 place and be not occupied.
Voxel represents a kind of volume data storage mode, by uniform subdivision is carried out along mutually orthogonal coordinate axis in space, forms the discrete grid space of even partition.Object in this voxel space is then the set expression be made up of voxel.
Interval structure between adjacent voxels determines the precision that changeable patch model is changed to voxel model, and can arrange arbitrarily.
Note, in alternative exemplary, voxel model can be expressed in the mode being different from the regular grid above described.Such as, the data structure such as such as Octree can be used for reducing storage space further and speed-up computation.
Polygonal patch can adopt any method that polygonal patch model conversion can be become voxel model to the transfer process of voxel, and is not limited to certain ad hoc approach.In one embodiment, adopt polygon scan transfer algorithm, voxelization is carried out to polygonal grid model.The method letter only needs to carry out three steps to each triangle surface in polygon model and judges test, just can obtain mathematically correct voxelization model, and can control voxelization precision by arranging switch condition.
Polygonal patch model can adopt any can the mode of highly-parallel acceleration, such as, but be not limited to multiprocessor, multithreading, the acceleration of GPU processor etc. to the conversion of voxel model.In parallelization process, the polygonal patch of spheroid 103 and right cylinder 104 pand vertex information dbe assigned in parallel processing pipeline and carry out voxelization.After voxelization process in all parallel pipelines all terminates, carry out the voxel data obtained in each pipeline to gather forming final voxel model.
When carrying out voxel model and scanning body calculating, first voxel model 107 is copied to object of which movement transformation space r d in place world coordinate system 106, initial as object of which movement conversion 0moment scan body voxel model.Reproduction process, in voxel model, the coordinate information of each voxel all transforms in the middle of world coordinate system 106.
Sample in motion transform tmoment, wherein 1≤ tl, according to spheroid 103 and the current motion transform of right cylinder 104 h (t), recalculate the polygonal patch vertex point coordinate information of spheroid 103 and right cylinder 104 d, summit form polygonal patch p, obtain sampling instant tmodel 110 after conversion.
Will tmoment is through motion transform h (t)spheroid 103 and the local coordinate system space 105 of right cylinder 104 residing for himself in again convert three-dimensional voxel model 111 to, and voxel model 111 is copied in the world coordinate system 106 at object of which movement transformation space place, as shown in Figure 4.
Convert the process of three-dimensional voxel model in spheroid 103 and right cylinder 104 local coordinate system 105 space residing for himself to, adopt parallel computation to accelerate, including, but not limited to multiprocessor, multithreading, the acceleration of GPU processor etc.
Will tthe three-dimensional voxel model 111 of instance sample point with own before 0arrive t-1the three-dimensional voxel model of instance sample point with 112 to gather union mode merge, be generated to tbody voxel model 103 is scanned till moment, wherein 1≤ tl, as shown in Figure 6.
In another embodiment, the set union between voxel model can also be realized by mathematical morphological operation dilation operation.Mathematical morphology represents to the mathematical tool that image is analyzed based on form, and its Fundamentals of Mathematics and language used are set theory.
Scanning body three-dimensional voxel model computation process adopts parallel computation to accelerate, including, but not limited to multiprocessor, multithreading, the acceleration of GPU processor etc.
Will tmoment scans body voxel model 113 and carries out 3-D display and preserve.In one embodiment, the 3 D displaying method of voxel comprises but does not limit to and draws with direct volume drawing and voxel cubes.Wherein, volume drawing is pel in the middle of graphical pointv, face, border etc. not, but directly by three-dimensional voxel data projection on computer screen.Different according to implementation, volume drawing can adopt based on ray cast or based on 3D chart pasting method.The principle of ray cast formula observes viewpoint for initial point to launch a ray to every bit on screen, when ray passes the volume data field in scene, from front to back (or from back to front) the RGB color of the volume elements dropped on ray and transparency Alpha value are superposed, final acquisition one width two dimensional image.Based on the method for 3D pinup picture, three-dimensional voxel tables of data being shown as the pinup picture at a series of plane place, obtaining final 3-D view by mixing pinup picture in particular directions.
Can add when showing voxel data and differentiate display technique (LevelofDetail), for improving display speed more.Many resolution displays allow the very large voxel data of interactively process, between display efficiency and display quality, namely seek a kind of balance.The basic thought of many resolutions display technique is the level of detail of the distance dynamic conditioning object according to the relatively observed object of current view point; The model of low resolution is selected when distant; Select high-resolution models when close together, and then observe more details.
Voxel model data can preserve into any standard or self-defined voxel data form in the mode of data stream, the forms such as such as vox, raw, kv6, binvox, HIPS, MIRA, VTK.The general data form exporting voxel file is described for binvox file.
Binvox form uses migration length coding to reduce file size.Each binvox file comprises an ASCII head and binary data below.
head:
#binvox1
dim128128128
translate-0.120158-0.481158-0.863158
scale7.24632
data
The version number that the first row #binvox1 represents.Next line dim128128128 represents the length, width and height of voxel data.The left side after two row give normalization below again converts and scalability information.Last column data represents the end of head.
Each voxel in Binvox voxel data can by relative to ( 0, 0, 0) initial point ( i, j, k) coordinate obtains.What Binvox adopted is that y-axis is the fastest, and secondly, the slowest mode of x-axis carries out index upgrade to z-axis.
binary data:
Binary data after ASCII head by a series of byte to forming.Corresponding two bytes of each voxel, first character joint represents that this voxel is empty or non-NULL, and second follow-up how many voxel of byte representation is identical with current voxel value, is namely all sky or non-NULL.
Scan body voxel model and can carry out surface voxel extraction, generate and scan body voxel surface point subset.The extraction of surface voxel can adopt any Boundary Extraction or surface profile extraction algorithm to be realized, as long as can reject voxel model to be closed in inner voxel, retains the voxel that be positioned at voxel model surface adjacent with empty voxel.The display of surface voxel can adopt point-rendering.Point-rendering will be put as drawing fundamental element, abandon traditional triangular plate method for expressing, the information of a measuring point, and these put the input pixel be different from again based on image technique, and contain additional geological information, and point sampling and viewpoint have nothing to do.In one embodiment, Stanford University is adopted qSplatalgorithm carries out scanning surface voxel and draws, qSplatuse a tree-shaped level encircle sphere data structure storing data, in tree, each node comprises: the position of ball and radius, often some normal vector, the width of normal cone, color value located.When drawing, hierarchical tree is by depth first method recursive traversal.To each intermediate node, first judge that whether this ball is complete outside screen or completely dorsad, carrying out observability selection.If this node has at least a part of child node to be visible, then the same threshold value of the projected size of this node on screen is compared, if be greater than threshold value, then continue downward recurrence; If be less than threshold value or arrived leaf node, then the position on the screen determined by ball position and the radius of this node and size draw a zonule.Wherein the large I of threshold value is determined by the Time dynamic of previous frame Image Rendering, to reach the requirement meeting the drafting frame number per second that user specifies.
Scanning the extraction of body Model surface voxel adopts parallel computation to accelerate, including, but not limited to multiprocessor, multithreading, the acceleration of GPU processor etc.
Scan body voxel model 113 and can carry out surface three dimensional reconstruction, generate the polygonal patch model scanning surface, carry out 3-D display and preserved.Surface three dimensional reconstruction can adopt any algorithm that discrete points data can be generated polygonal patch, including, but not limited to cube algorithm of advancing (marchingCubesalgorithm), Tetrahedrons algorithm of advancing (marchingtetrahedronsalgorithm), Bloomenthal polygonization device (Polygonizer), or the algorithm of other applicable polygonization.
Scanning surface three-dimensional reconstruction adopts parallel computation to accelerate, including, but not limited to multiprocessor, multithreading, the acceleration of GPU processor etc.
To all motion transform sampling instants t, , generation spheroid 103 and right cylinder 104 are in each sampling instant tthe polygonal patch model scanning body voxel model 114, scan body voxel surface point subset, scan surface, and carry out real-time three-dimensional Dynamic Announce.Wherein, scan body voxel surface point subset sums scan the polygonal patch model of surface calculating, display with preservation must not perform.
experimental result
Visual c++ under experiment employing Microsoft Windows platform is as scanning system development platform.Visual c++ is one of developing instrument under current Windows system, and it not only provides MFC class libraries, and program compilation is convenient, can effective trace routine implementation and find leak.In addition, visual c++ additionally provides various graphic interface, facilitates secondary development, the advantage also having execution efficiency high with the program code of visual c++ compiling.
Adopt the three-dimensional object model of 3DSmax software development for scanning of Autodesk.
Coin3d is adopted to realize scanning the three-dimensional visualization of body and enveloping surface thereof.
Scan in body example at first, the floodlight scanning body formed under demonstrating multi link mechanical arm compound movement situation, as shown in Figure 8.
Scan in body example at second, simulate the floodlight scanning body that movement human in the process of going upstairs produces, as shown in Figure 9.Calculating with other scans compared with body method, and the present embodiment can generate for more accurate Skeletal Skinned manikin scan body accordingly, and just for simple puppet link-type rigidity manikin.Therefore, calculate obtain to scan body precision higher.
The description of embodiment herein is just given as examples and those skilled in the art can make various amendment.More than illustrate, example and data provide structure to each exemplary embodiment of the present invention and comprehensive description of use.Although describe various embodiments of the present invention with certain level of detail or with reference to one or more single embodiment above, but, when not departing from the spirit or scope of the present invention, those skilled in the art can make a lot of amendment to the disclosed embodiments.

Claims (8)

1. product body space scans a method for body, it is characterized in that the concrete operations of the method comprise the following steps:
1st, the dummy object model scanned will be carried out mrepresent with the form on polygonal patch and summit, and record the coordinate information on each summit dand summit forms link information needed for polygonal patch p;
2nd, be dummy object model mgiving a time span is in three dimensions lcontinuous motion transform h;
3rd, by dummy object model mcontinuous motion transform in three dimensions hcarry out discrete sampling on a timeline, each sampled point represents a certain moment tmotion transform h (t), wherein ;
4th, sample in motion transform 0moment, by the dummy object model of polygonal patch and vertex representation mlocal coordinate system space residing for himself f local in convert three-dimensional voxel model to v 0 , and by this voxel model v 0 copy to object of which movement transformation space place world coordinate system f world in, initial as object of which movement conversion 0moment scan body voxel model sV (0)= v 0 ;
5th, sample in motion transform tmoment, wherein 1≤ tl, according to dummy object model mcurrent motion transform h (t), recalculate dummy object model mpolygonal patch vertex point coordinate information d, summit forms link information needed for polygonal patch p;
6th, by the 5th step through motion transform h (t)dummy object model mlocal coordinate system space residing for himself f local in again convert three-dimensional voxel model to v t , and by this voxel model v t copy to the world coordinate system at object of which movement transformation space place f world in;
7th, by the 6th step tthe three-dimensional voxel model of instance sample point v t with own before 0arrive t-1the three-dimensional voxel model of instance sample point and to gather union mode merge, be generated to tbody voxel model is scanned till moment sV (t)= , wherein 1≤ tl, and own before 0arrive t-1the three-dimensional voxel model of instance sample point and what in fact represent is t-1moment scan body voxel model, namely sV (t-1)= ,so tmoment scan body three-dimensional voxel model sV (t)can be expressed as again sV (t)=V t sV (t-1);
8th, the 7th step is generated tmoment scans body voxel model sV (t)carry out 3-D display and preserved;
9th, the 7th step is generated tmoment scans body voxel model sV (t)carry out surface voxel extraction, generate tmoment scans body voxel surface point subset sS (t), carry out 3-D display and preserved;
10th, the 7th step is generated tmoment scans body voxel model sV (t)carry out surface three dimensional reconstruction, generate tmoment scans the polygonal patch model of surface sP (t), carry out 3-D display and preserved;
11st, to all motion transform sampling instants t, , repeat the 5 to the 10 step, product body Model min each sampling instant tscan body voxel model sV (t), scan body voxel surface point subset sS (t), scan the polygonal patch model of surface sP (t), and carry out real-time three-dimensional Dynamic Announce.
2. method according to claim 1, is characterized in that the dummy object model described in the 1st step mfor the model combination that single body model or multiple object model are formed.
3. method according to claim 2, is characterized in that in the model combination be made up of multiple object model, is sane level relation or father and son's inheritance with level connection between object model.
4. method according to claim 1, is characterized in that the dummy object model described in the 1st step mcan be expressed with Arbitrary 3 D model format.
5. method as claimed in claim 4, is characterized in that described three-dimensional model form comprises implicit surface, grid surface, polygonal patch, nurbs surface, face, batten district, entity solid.
6. method according to claim 1, is characterized in that the continuous motion transform described in the 2nd step hcomprise for model mrigid transformation, and for vertex point coordinate information dlink information needed for polygonal patch is formed with summit pthe non-rigid shape deformations amendment applied.
7. method as claimed in claim 6, is characterized in that described rigid transformation comprises translation, rotation, and described non-rigid shape deformations amendment comprises: convergent-divergent, bending, distortion, extruding, mistake is cut, top displacement freely converts, covering converts.
8. method according to claim 1, it is characterized in that described in the 3rd step to continuous motion transform hcarry out the process of discrete sampling on a timeline, sample mode is uniform sampling or changing distance nonuniform sampling at equal intervals, and sampling interval and sampling precision can set arbitrarily.
CN201510705103.2A 2015-10-27 2015-10-27 A kind of method for generating object floodlight scanning body Active CN105279788B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510705103.2A CN105279788B (en) 2015-10-27 2015-10-27 A kind of method for generating object floodlight scanning body

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510705103.2A CN105279788B (en) 2015-10-27 2015-10-27 A kind of method for generating object floodlight scanning body

Publications (2)

Publication Number Publication Date
CN105279788A true CN105279788A (en) 2016-01-27
CN105279788B CN105279788B (en) 2017-10-17

Family

ID=55148738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510705103.2A Active CN105279788B (en) 2015-10-27 2015-10-27 A kind of method for generating object floodlight scanning body

Country Status (1)

Country Link
CN (1) CN105279788B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107092741A (en) * 2016-02-02 2017-08-25 达索系统公司 Designed using the B REP of face track
CN107358650A (en) * 2017-07-17 2017-11-17 湖北理工学院 A kind of mechanical structure basic body Morphogenesis method of restructural
CN108022275A (en) * 2017-12-12 2018-05-11 苏州蜗牛数字科技股份有限公司 A kind of bone instantiation method and device in illusory engine
CN110262389A (en) * 2019-07-02 2019-09-20 广东三维家信息科技有限公司 Simulate the method and device of gate process

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5542036A (en) * 1994-07-05 1996-07-30 General Electric Company Implicit modeling of swept volumes and swept surfaces
CN104658012A (en) * 2015-03-05 2015-05-27 第二炮兵工程设计研究院 Motion capture method based on inertia and optical measurement fusion

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5542036A (en) * 1994-07-05 1996-07-30 General Electric Company Implicit modeling of swept volumes and swept surfaces
CN104658012A (en) * 2015-03-05 2015-05-27 第二炮兵工程设计研究院 Motion capture method based on inertia and optical measurement fusion

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANDREAS VON DZIEGIELEWSKI 等: "High Precision Conservative Surface Mesh Generation for Swept Volumes", 《JOURNAL OF LATEX CLASS FILES》 *
J. ROSSIGNAC 等: "Boundary of the volume swept by a free-form solid in screw motion", 《COMPUTER-AIDED DESIGN》 *
吴凡: "基于机器视觉的虚拟雕刻刀具跟踪及扫掠体建模研究", 《中国优秀硕士学位论文全文数据库工程科技I辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107092741A (en) * 2016-02-02 2017-08-25 达索系统公司 Designed using the B REP of face track
CN107092741B (en) * 2016-02-02 2023-07-18 达索系统公司 B-REP design using face trajectories
CN107358650A (en) * 2017-07-17 2017-11-17 湖北理工学院 A kind of mechanical structure basic body Morphogenesis method of restructural
CN108022275A (en) * 2017-12-12 2018-05-11 苏州蜗牛数字科技股份有限公司 A kind of bone instantiation method and device in illusory engine
CN110262389A (en) * 2019-07-02 2019-09-20 广东三维家信息科技有限公司 Simulate the method and device of gate process

Also Published As

Publication number Publication date
CN105279788B (en) 2017-10-17

Similar Documents

Publication Publication Date Title
Gallagher et al. Computer visualization: graphics techniques for engineering and scientific analysis
Jones et al. 3D distance fields: A survey of techniques and applications
US4821214A (en) Computer graphics method for changing the shape of a geometric model using free-form deformation
Mukundan Advanced methods in computer graphics: with examples in OpenGL
JPH07120434B2 (en) Method and apparatus for volume rendering
CN102521869B (en) Three-dimensional model surface texture empty filling method guided by geometrical characteristic
CN105279788B (en) A kind of method for generating object floodlight scanning body
CN101604453A (en) Large-scale data field volume rendering method based on partition strategy
Anderson et al. Smooth, volume-accurate material interface reconstruction
Li et al. A GPU-based voxelization approach to 3D Minkowski sum computation
Kenwright Voxel free-form deformations
CN113593051A (en) Live-action visualization method, dam visualization method and computer equipment
Eyiyurekli et al. Interactive free-form level-set surface-editing operators
Moran et al. Visualization of AMR data with multi-level dual-mesh interpolation
Mirolo et al. A solid modelling system for robot action planning
CN101609565A (en) 3D solid boolean operation method based on the L-Rep model
Wang et al. Three-dimensional reconstruction based on improved marching cubes algorithm
Min et al. Accelerating probabilistic volumetric mapping using ray-tracing graphics hardware
CN114633850B (en) Virtual visual reconstruction method for finite element model of ship structure
CN106408644B (en) Three dimensions control cage arrangement method
Lopes Accuracy in scientific visualisation
Vyatkin et al. Optimized finite element method using free-form volume patches for deformation of three-dimensional objects
Wang et al. LVDIF: a framework for real-time interaction with large volume data
Stroila et al. Clip art rendering of smooth isosurfaces
Uchiki et al. SCOPE: solid and colored object projection environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant