• Aucun résultat trouvé

Second, the proposed algorithmdoes not establish all possible surfaces in the process of generating 3D faces

N/A
N/A
Protected

Academic year: 2022

Partager "Second, the proposed algorithmdoes not establish all possible surfaces in the process of generating 3D faces"

Copied!
7
0
0

Texte intégral

(1)

Two Accelerating Techniques for 3D Reconstruction

LIUShixia(),HUShimin()andSUNJiaguang ( )

Department ofComputerScienceandTechnology,Tsinghua University,Beijing100084,P.R.China

E-mail: liusx@ncc.cs.tsinghua.edu.cn;fshimin,sunjgg@tsinghua.edu.cn

ReceivedMarch15,2001; revisedAugust7,2001.

Abstract Automaticreconstructionof3Dobjectsfrom2Dorthographicviewshasbeen

amajorresearchissue inCAD/CAM.In thispaper, two acceleratingtechniques toimprove

the eÆciency of reconstruction arepresented. First, some pseudo elements areremoved by

depthand topology informationassoonas the wire-frame is constructed, whichreducesthe

searching space. Second, the proposed algorithmdoes not establish all possible surfaces in

the process of generating 3D faces. Thesurfaces and edge loops aregenerated by usingthe

relationshipbetweentheboundariesof3D facesandtheirprojections.Thisavoidsthegrowth

incombinationalcomplexity ofpreviousmethods that haveto check allpossiblepairsof 3D

candidateedges.

Keywords engineeringdrawing,wire-frame,reconstruction

1 Introduction

Reconstructing3Dobjectsfromorthographicviewshasbeenstudiedforthepasttwodecades [1;2]

.

AlgorithmsattemptingtosolveautomaticreconstructioncanbedividedintoCSGorientedandB-rep

orientedapproachesaccordingtohowtheyconstructandrepresentthenalsolidobjects.

TheCSG oriented approachassumes that each 3Dobjectcanbe builtfrom certainprimitives in

a hierarchicalmanner. It selects a 2D loop as a base and generates the3D primitives by matching

theircorresponding2Dpatternsineachview,thenassembles theprimitivesto formthenalobject.

ReconstructionworkproposedbyChenetal.

[3]

,Meeranetal.

[4]

,Masudaetal.

[5]

andShumetal.

[6;7]

was basedonthisapproach. However,thismethod couldonlyhandleobjectsofuniformthicknessor

rotationalobjects,whichrestricts theirdomain ofapplicability.

The B-rep oriented approach is a bottom-up approach, which uses the constraint propagation

technique. In this method, a wire-frame which is composed of 3D vertices and 3D edges is rst

recognized from the input orthographic views. Then, candidate faces are found from all these 3D

edges. Finally,pseudoelementsaredeletedbycertaincriteriaandalltruefacesareassembledtoform

thenalsolidobject.

Idesawa [8]

proposedanalgorithmwhichcouldonlyconstructverylimitedpolyhedralobjectsfrom

threeviews. Markowsky andWesley [9]

provideda comprehensivealgorithmforsearchingallpossible

solutions of polyhedral objects from the given wire-frame, which was then extended to reconstruct

polyhedral objects from three orthographic views [10]

. Sakurai et al.

[11]

extended the approach of

Wesley andMarkowsky to includeplanar,cylindrical,conical, sphericaland toroidalsurfaces,whose

projections are straight lines and circles (arcs). Kuo [12]

proposed a ve-point method to generate

3D conic edgesand used a decision-chaining method to detect and delete thepseudo elements. Oh

et al.

[13]

presented an algorithm for reconstructing curvilinear 3D objects from two-view drawings.

Theyrstconstructedthepartialobjects,andthenobtainedthecompleteobjectsfromthepartially

constructedobjectsbyaddingperpendicularfaceswithgeometricvalidity. Inapreviouspaper,we [14]

proposeda geometricmethodtoreconstruct3Dobjectsfrom three-viewengineeringdrawings,which

placednorestrictions ontheaxis ofsymmetricsurfaces andthecenterlinesofconics.

ThispaperpresentstwoacceleratingtechniquestoimprovetheeÆciencyoftheB-reporientedre-

ThisworkissupportedbytheNationalNaturalScienceFoundationof ChinaundergrantNo.69902004and the

(2)

construction algorithm. By removing some pseudo edges directly in the wire-frame and using the

relationship between3Delementsanditsprojections, ouralgorithm reducesthesearchingspaceand

thenumberofexaminations.

2 Solid Model Reconstruction

Inthissection,weintroducethemain procedureof3Dreconstruction. Moredetails canbefound

in[12, 15].

Weuse aB-rep orientedapproach toreconstruct 3Dobjects from threeorthographic views. The

proposedmethodconstructs3Dcandidatevertices,edges,andfacesfromtheinputengineeringdraw-

inginorder. Forbrevity,wewrite3Dcandidatevertices,edgesandfacesasc-vertices,c-edges,c-faces,

respectively. Thereconstructionalgorithmcan bedividedintothefollowingstages.

Checkinputdata

In this stage, we process the input data and remove certain redundancies to prepare for 3D

reconstruction. The preprocessing performs the following operations. First, separate each view in

the engineeringdrawing. Then, removeall duplicate 2Dvertices and conics. Next, check each pair

of conics,if theyintersect internally, addtheintersection point anddivide each of theconics at the

intersectionpoint. Finally,combinetheconicswiththesame equation.

Reconstructwire-frame

Thisstage constructsallc-verticesandc-edges thatconstitutethewire-frame modelbycertain

correspondencesamongthreeorthographicviews. Wegenerateallc-vertices byselectinga2Dvertex

fromoneview andthencompareitwiththevertices intheothertwo views. Toreconstruct3Dconic

edges,weusetheconjugatediameter method [14]

or thematrixmethod [15]

.

Trace c-facesinthewire-frame

The main task ofthis stepis to nd theset of allpossible edge loopsin the wire-frame, from

which subsets can be selected to form the boundary of the faces. First, we nd the surfaces that

containthefaces. Then,alltheedgeloopsareconstructedbyusingtherelationship between the3D

faceanditsprojectionsin the2Dviews. This technique willbe explainedlater.

Search for3Dsolids

Amongallthec-facesgeneratedinthepreviousstep,somereallylieontheboundary ofasolid.

These arereal faces, and theothers arecalled pseudo faces. Hence, weshould nd a group offaces

that makeupa realsolidobject. Weusethesame methodas in ourpreviouspaper [15]

to search all

3D objects within the reconstructed wire-frame. Initially, we use the depth information to remove

some falsefaces. Then,theremainingpseudofaces in thewire-frame modelare completelyremoved

byadivide-and-conquer approachbased onthedenition ofmanifold.

3 Two Accelerating Techniques

3.1 RemovingPseudo Elementsfrom Wire-Frame

Thepseudo elementsin the wire-frame will extend thesearching space ofthe subsequent stages.

Toreduce theprocessingtimelater,weremovesome redundant c-edgesbythedepth informationin

theengineeringdrawingandtopologyinformationin the2-manifold object.

Ifavisiblec-edgeisgeneratedfromadashedlineinaviewwhoseprojectiondirectionisthesame

as the viewing direction, then the c-edge is pseudo and should be eliminated from the wire-frame.

Thiscanbecheckedbythecoordinatevalues alongtheprojection direction. Forexample,ifa c-edge

has a dashed projection in the top view and its projection on the side view has a local maximum

z-coordinate, thenthisedgeis pseudosince itwould bevisible fromthenegativedirection ofz-axis,

i.e., it corresponds to a solid line in the top view illustrated in Figs.1(a){(c). The projection of c-

edge E(V

A

;V

B

) (see Fig.1(b)) onto the topview is a dashed line (see C(t

A

;t

B

) in Fig.1(a)), while

itsprojection ontothesideview(C(s

A

;s

B

)inFig.1(a))hasa localmaximumz-value (nootherlines

(3)

occludeitfromthenegativedirectionofthez-axis). Therefore,E(V

A

;V

B

)isapseudoedgeandshould

beremovedfromthewire-frame(seeFig.1(c)).

Fig.1.Removepseudoc-edgesbydepthinformation.

Furthermore,weremoveotherpseudoelementsbythetopologyinformationdenedin2-manifold

objects. Several rulesaregivento eliminatethepseudoelements inthewire-frame, whichare based

onthetopologyinformation. Forbrevity,weintroducethedenitionofdegree. Thedegreeofavertex

v isdenedas thenumber ofthec-edgesconnectedtoit. Wedenoteitasdegree (v).

(1)Ifdegree (v)<2,removevertexv andthec-edgeconnectedto it.

(2)Ifdegree (v)=2 andthetwoc-edges connectedtoitarecollinear,mergethetwo c-edgesand

removevertexv.

(3) If degree (v)=2 and thetwo c-edges connectedto itare notcollinear, remove vertex v and

thec-edges.

(4) If degree (v) =3 and two of these c-edges connectedto it are collinear, merge thecollinear

c-edges,removevertexv andtheotherc-edge.

(5) Ifdegree (v)3 andallthese c-edges connectedtoitare coplanarandnotcollinear,remove

vertexv andallthesec-edges.

Referring toFig.1(c),thec-vertexV

B

satisescase (4),sowemergethetwocollinearc-edgesand

removec-edgeE(V

B

;V

C

)asshownin Fig.1(d). Now,c-vertexV

C

satisestheconditiondescribedby

case (3),soc-vertexV

C

,c-edges E(V

C

;V

D

)andE(V

C

;V

E

)aredeletedas inFig.1(e).

3.2 Generating Surfaces andFaces

To generateallc-faces,theprevious method (such as themethod usedbyKuo) ndsallpossible

surfaces that contain thefaces of the3D object. These surfaces can be constructedfrom the infor-

mation of two edges sharing a common vertex. The type of these two edges and the relationship

between them determine the type and the features of the surface to be generated. For example, a

planar surface can be built from two coplanaredges sharing a c-vertex. A line (conic) and a conic

that are not coplanar with each other constitute a quadric or toroidal surface. Then, the previous

methodhastotestallthec-edgesinthewire-frametondthec-edgeswhichbelongtothegenerated

surface. Thiswillcauseasteepincreasedintheprocessingtimeforcomplexobjects. Here,wereduce

thesearching timebyusingtherelationship betweenthe3Dfaceanditsprojectionsin the2Dviews.

Oh et al.

[13]

used a special projection technique to simplify the process of searching the c-edges

in a surface. They assumed that the edges on the original plane and the projection plane have a

one-to-onerelationship under such a special projection. The c-facesarethenobtained byextracting

thearray of edgesonthe projection plane. Here, theirmethod is improvedand extended to handle

threeorthographicviews. Thenewmethodhasnorestrictionsontheprojection technique.

Denition 1(2DLoop). A2D loop inaview consistsofan orderedcycleof 2Dedgesand2D

vertices.

Denition 2 (Generalized Cylindrical Face). A generalized cylindrical face is dened by

(4)

Denition 3(Non-Degenerate Line). A linethatisnot perpendiculartotheprojectionplane

isdenedas anon-degeneratelinetothisprojectionplane.

Property 1. Under theparallel projection, if each lineedge ina connectedcycleof 3D edges is

notperpendiculartotheprojectionplane,thentheprojectionoftheclosedcycleof 3Dedgesontothis

viewisa2D loop. Thecorrespondencebetweenthe3D edgesintheedgeloopandthe2Dedgesinthe

2D loop isone-to-one.

Proof. Theprojection oftheconicedgeontoeachofthethreeorthographicviewsiseitheraconic

edge or a 2D line edge, so line edges are mainly considered in this property since theirprojections

may degenerateinto2Dpoints. Theprojection ofa conic(line)edgeontoa projection planecan be

regardedastheintersectionoftheprojectionplaneanda generalizedcylindricalface. Thecontourof

thegeneralizedcylindricalfaceistheconic(line)edge. The3Draylineisformed bymovingapoint

ontheconic(line)alongtheprojection direction. Since theprojection planeintersectsa generalized

cylindrical face which is not parallel to the projection plane only at a conic (line), therefore each

3D conic (non-degenerate line) corresponds to a 2D conic (line) in that projection. The extruding

directionsof thesegeneralized cylindricalfacesarethe samefora givenprojection plane,so theydo

notintersectexceptatthecommonline. Thecommonlineisformedbymovingthecommon3Dpoint

alongtheprojectiondirection. Itsprojectionontotheprojection planeisa 2Dpoint. Thus,dierent

3Dconic(non-degenerate line)edgescorrespondtodierent2Dconic(line)edgesin theview. 2

Weusethefollowingtheorem toreducethenumber ofexaminations,whichstates thecorrespon-

dence betweenthe3Dedgeloopandthe2Dloopin theorthographic views.

Theorem 1. Each edge loop of a3D objectcorrespondstoatleasta 2Dloop inone ofthethree

orthographic views, and thecorrespondencebetween the edgesin the3D edge loop andthe 2D edges

inthe2D loopisone-to-one.

Proof. Edgeloopsareboundaries of3Dfaces. Theycanbe dividedintotwo classes accordingto

thetypes of thefaces: theedgeloop inthe planar faceand theedge loopin thequadric or toroidal

surface.

A plane cannot be perpendicular to three coordinate planes which are perpendicular to each

other simultaneously, thereforeeach line edgein an edge loopwhich belongs to a planar face is not

perpendicularto three coordinate planessimultaneously. ByProperty1, itsprojection isa 2D loop

in atleastone viewand thecorrespondence between theedgesin theedge loopandthe2Dedgesin

the2Dloopis one-to-one.

The projection ofthe conic edge onto each view is a 2Dedge, so weonly consider theline edge

in the quadric surface (the boundaries of a toroidalface are all conic edges). Theline edgesin the

quadricsurface areeitherparalleltoeach other(cylindricalsurface)orintersectionalatone common

3Dpointandtheanglebetweentwo ofthemisless than90 Æ

(conicalsurface). Thus,at mostin one

projection plane, there will exist some edges which are perpendicularto this plane. That is to say,

their projections are 2D edges in at least two of the three views. Therefore, for an edge loop in a

quadric ortoroidalface,atleasttwoofitsprojectionsontotheorthographicviewscorrespondto2D

loops. From Property1, it follows that the correspondence between the 3D edges in the edge loop

andthe2Dedgesinthe2Dloopisone-to-one. 2

The method we useto automatically trace edgeloops in thewire-frame iscalled theprojection-

orientedmethod, whichisbased onTheorem1. Inthismethod,werstndoutall2Dloopsin each

view usingthemaximumturningangle(MTA) method [14]

. Thebasic ideaof theMTAmethod isto

choosea convexvertexas thestartingvertex,andtoselectanedgethatisnotreferredtoorreferred

toonlyonceasthestartingedge,thensearchthenextedgebyadjacencyrelationships. Whenthereis

morethanoneedgethatsatisesthesurfaceequation,wechoosetheedgewiththemaximumturning

angle. The turningangle isthe anglebywhich thetangent vector of a curvededge isto be rotated

atthecommonvertextogofromthetangentvector ofthecurrentcurvededgetothetangentvector

ofitsadjacent curvededge. Then, foreach 2Dloopidentied, two 2Dedgeswhichshare a common

2D vertex are chosen. Next, we select two c-edges that are generated from these two 2D edges,

respectively,andmakesurethattheselectedtwoc-edgesalsosharea commonc-vertex. Thetypesof

(5)

these twoedges andtheir relationship willdeterminethe typeofthesurface to be generated(If the

surface hasbeen generated, the newedgeloopwill be addedto this surface). Inourreconstruction

algorithm, for each 2D edge, theindices of the c-edges that are generated from it are stored as an

attribute ofthat 2Dedge. This greatly reducesthe searching space. Finally, thealgorithmsearches

fortheotheredgesoftheedgeloopfromthe3Dedgesgeneratedfromthe2Dloop. Thisexploration

isa depthrstsearch, which begins withthevertices onthesurface. Foreach vertexonthesurface,

only the edgesconnected to this vertex and generated from the 2D loop are checked. All theedge

loopsthatlieinthesamesurfacearelinkedtogethertomakethenalfaces. Beforeconstructingthe

3Dc-faces,theedgeloopswithinner edgessubdividingthemareremovedfromthesurfaces.

Fig.2 illustrates the generation of edge loops from the 2D loop. Fig.2(a) shows a 2D loop

C(f

A f

B

)!C(f

B f

C

)!C(f

C f

D

)!C(f

D f

A

)in thefrontview. Vertices V

A (V

0

A ),V

B (V

0

B ),V

C (V

0

C ),

and V

D (V

0

D

) are generated from f

A , f

B , f

C

, and f

D

, respectively (see Fig.2(b)). For 2D edges

C(f

A f

B

)and C(f

B f

C

)whichsharea common2Dvertexf

B

, weselecttwo c-edgeswhicharegener-

atedfrom thosetwo 2Dedges,respectively;moreover,thetwo3D edgessharea common3Dvertex.

Forexample,c-edges E(V

A V

B

)andE(V

B V

C

)arechosen,thedirectionofthetwo edgesarethesame

as their projections, i.e., the current travel direction is V

A

! V

B

! V

C

, where V

A

! V

B means

from V

A to V

B

. Then, we search forthe nextedge which is adjacentto the vertex V

C

from the3D

edgesgenerated from the2Dloop. Asshownin Fig.2(b), 3DedgeE(V

C V

D

) satisesthis condition.

Next,3D edgeE(V

D V

A

)isselected andanedge loopistraced. Similarly, wecannd 3Dedge loop

E(V 0

A V

0

B

)!E(V 0

B V

0

C

)!E(V 0

C V

0

D

)!E(V 0

D V

0

A

)(seeFig.2(c)).

Fig.2.Traceedgeloopsinthewire-frame.

Inthe previous method, thecombination of c-edges isperformedn(n 1)=2 timesin generating

allthesurfaces,wherenisthenumberofc-edgesin thewire-frame. Thenumberoftimesfortracing

c-edgeswhichbelongtoasurfaceisn. Whilein ourmethod,thecombinationofc-edgesisperformed

~ c 2

m times, where ~c is the average number of c-edges generated from a 2D edge, m is the number

of 2D edge loops in the views. Since m n

v , n

v

is the number of 2D edges in the views, and

~

cm ~cn

v

1 = n 1, ~c < n=9 < n=2 (each view consists of at least three 2D edges), therefore

~ c 2

mn(n 1)=2. Thenumber oftimesfortracingc-edges ina surfaceiscm~

l ,m

l

isthenumberof

2D edgesin the2D loop. Since m

l

n

v

, it follows that ~cm

l

n. Therefore, theprocessing time

requiredforgenerating c-facesisreducednoticeably.

4 Implementation

Afterdevelopingthemethod,itisnecessarytocheckitbysomerealmechanicalpartsandconsider

theirreconstructionfromorthographicviews.

Fig.3 showsamechanicalpart withplanar,conical, toroidal,andcylindricalfaces. Fig.4 showsa

unique solution constructedfrom a three-viewengineeringdrawing withstraightlines, circulararcs,

(6)

and elliptical arcs. The axesof the cylindrical surfaces that intersect with the top planar face (see

fromthepositivedirection ofz-axis) arenotparallelto anyofthethreecoordinateaxes.

Fig.3.Engineeringdrawingsandreconstructedmodelforobject1.

Fig.4.Engineeringdrawingsandreconstructedmodelforobject2.

5 Conclusion

Reconstructing 3Dobjects fromorthographic viewsrequires a considerablyamountofprocessing

time. Inthispaper,wedescribetwoacceleratingtechniquestoimprovetheeÆciencyofreconstruction.

Onereduces thesearching spacebyremovingsomepseudoelementsin thewire-frame directly;while

theotheracceleratesthegenerationof3Dfacesbyusingthecorrespondencebetweenthe3Dfaceand

itsprojections.

(7)

domainofobjectsto bereconstructed.

Acknowledgements We would liketo thank Professor Chen Yujian for her constant encour-

agementandadvice.

References

[1] Nagendra IV,GujarUG.3-D objectsfrom2-Dorthographicviews|Asurvey. Computer andGraphics,1988,

12(1): 111{114.

[2] WangW,GrinsteinGG.Asurveyof3Dsolidreconstructionfrom2Dprojectionlinedrawings.ComputerGraphics

Forum,1993,12(2): 137{158.

[3] ChenZ,PerngDB.Automaticreconstructionof3Dsolidobjectsfrom2Dorthographicviews.PatternRecognition,

1988,21(5): 439{449.

[4] Meeran S,Pratt MJ.Automated feature recognitionfrom 2Ddrawings. Computer-AidedDesign, 1993, 25(1):

7{17.

[5] MasudaHiroshi,NumaoMasayuki.Acell-basedapproachforgeneratingsolidobjectsfromorthographicprojections,

Computer-AidedDesign,1997,29(3): 177{187.

[6] ShumSP,LauWS,YuenMF,YuKM.Solidreconstructionfromorthographicopaqueviewsusingincremental

extrusion. ComputerandGraphics,1997,29(6): 787{800.

[7] Shum SP,Lau W S, Yuen MF, Yu K M. Solidreconstruction fromorthographic opaque views using2-stage

extrusion. Computer-AidedDesign,2001,33(1): 91{102.

[8] IdesawaM.Asystemtogenerateasolidgurefromthreeviews.BulletinoftheJSME,1973,16(92):216{225.

[9] MarkowskyG,WesleyMA.Fleshingoutwireframes. IBMJ.RES.DEVELOP,1980,24(5): 582{597.

[10] WesleyMA,MarkowskyG.Fleshingoutprojection.IBMJ.RES.DEVELOP,1981,25(6): 934{954.

[11] Sakurai H,Gossard DC.Solidmodel inputthroughorthographicviews. In SIGGRAPH'83Proceedings,1983,

pp.243{252.

[12] KuoMH.Reconstructionofquadricsurfacesolidsfromthree-viewengineeringdrawings.ComputerAidedDesign,

1998,30(7): 517{527.

[13] Oh BS,Kim C H.Systematic reconstruction of3D curvilinear objectsfrom two-viewdrawings. Computers&

Graphics,1999,23(3): 343{352.

[14] LiuSX,HuSM,ChenYJ,SunJG.Reconstructionofcurvedsolidsfromengineeringdrawings.Computer-Aided

Design,2001,33(14): 1059{1072.

[15] LiuSX,HuSM,TaiCL,SunJG.Amatrix-basedapproachtoreconstructionof3Dobjectsfromthreeorthographic

views. InProceedingsofthe Eighth Pacic Conference onComputer Graphics and Applications,Barsky BA,

ShinagawaY,WangW(eds.),HongKong: IEEEComputerSociety,2000,pp.254{261.

Références

Documents relatifs

arnong collective polymer variables con be expressed in terras of correlation and response func- tions For a collection of noninteracting Rouse polymers, and with no externat

Unité de recherche INRIA Rennes : IRISA, Campus universitaire de Beaulieu - 35042 Rennes Cedex (France) Unité de recherche INRIA Rhône-Alpes : 655, avenue de l’Europe - 38330

Re- call that, in Section 1.3.2 , we discussed the symbolic methods for isolating the singularities of plane curves in the context of solving zero-dimensional systems of

Our study further showed that across pairs of countries with different languages, Schwartz’s human values instrument exhibited partial scalar equiva- lence for significantly less

In this paper, we have presented stochastic plex grammars as a generic framework for representing the paintings and murals of Keith Haring and we have used that

The 3d spectra from normal RE oxides like La203 and Gd203 show features i n the scattering spectra whose positions are coincident w i t h those appearing In thelr

tracking approach to match the deforming coronary model to the images of the cineangiogram sequence using a global 3D rigid body transformation, a global 3D affine transformation, and

Key Words: Zeros of Entire Functions, Exponential Polynomials, Almost- Periodic Functions, Partial Sums of the Riemann Zeta Function..