A FAST ALGORITHM FOR N D POLYHEDRAL SCENE

PERCEPTION FROM A SINGLE 2D LINE DRAWING

Hongbo Li

Key Laboratory of Mathematics Mechanization

Chinese Academy of Sciences, Beijing 100080, China

Lei Huang

Key Laboratory of Mathematics Mechanization

Chinese Academy of Sciences, Beijing 100080, China

Keywords:

nD Perception, Polyhedral Scene, Structural Cognition, 2D Line Drawing, Face Identiﬁcation.

Abstract:

In this paper, we study the problem of reconstructing the polyhedral structures of a general nD polyhedral

scene from its single 2D line drawing. With the idea of local construction and propagation, we propose a

number of powerfultechniques for general face identiﬁcation. Our reconstruction algorithm, called “nDView”,

is tested by all the 3D examples we found in the literature, plus a number of 4D and 5D examples we devised.

Our algorithm does not prerequire the dimension n of the object nor the dimension m of its surrounding space

be given, and allows the object to be a non-manifold in which neighboring faces can be coplanar. Another

striking feature is its efﬁciency: our algorithm can handle 3D solids of over 10,000 faces, with a speed 100

times as fast as the fastest existing algorithms on 2D polyhedral manifold reconstruction.

1 INTRODUCTION

Representing and perceiving an nD object has been

a very fascinating problem in both science and art

(Miyazaki, 1983). For n = 3, the simplest represen-

tation is a line drawing which is the 2D projection of

the wireframe of the object, like drafting in geometric

design and mathematical diagram. To perceive an nD

object one needs to rebuild the nD structure from its

2D projection.

How can the n dimensions be recovered from a rep-

resentation in which almost all dimensions are lost?

To start with, let us analyze how a solid in 3D space

is perceived. No one can direct his eyesight to pierce

through the solid. The only perceived object is the

boundary of the solid, which is a 2D closed manifold.

It is the closedness that allows us to ﬁll the bound-

ary with solid content to achieve one more dimension.

When we watch a line drawing of the wireframe of a

solid, which is essentially one dimensional, we ex-

tract each cycle of edges, either ﬁll it by a plane or by

some other surface to improve its dimension by one.

Then we detect if any closed manifold is formed by

the planes and surfaces, and if so, gain one more di-

mension by ﬁlling the closed manifold with solid con-

tent. The closedness of a manifold and a pattern to ﬁll

it are the two essential things in our 3D perception

from low dimensional data. The following concept

generalizes this observation to nD object perception.

The wireframe model of an nD object consists of

(1) a set of edges connecting a ﬁnite set of points,

called vertices of the object, (2) a subset of rD cycles

for 0 < r < n, called boundary rD cycles, which are

the boundaries of the (r+1)D pieces of the object, (3)

a set of ﬁlling patterns, each for a boundary rD cycle.

The simplest ﬁllings are afﬁne ﬂats. The correspond-

ing wireframe models are called polyhedral scenes.

They can be used to approximate other shapes and

thus are among the most thoroughly studied models.

In this paper we consider only such models.

A transparent line drawing of a wireframe model

is the image of a perspective or parallel projection

from the surrounding mD afﬁne space of the wire-

frame model to the image plane, such that all the

edges and vertices are revealed, and if three vertices

are not collinear in the mD space, nor should their

images.

Figure 1 shows a (transparent) line drawing of a

torus in 3D space. It has 6 triangular cycles and 9

square cycles of edges. If all the 15 cycles of edges

are interpreted as polyhedral faces, then the 2D faces

form 6 cycles of faces which are the boundaries of 6

triangular columns. If the 6 cycles of faces are inter-

preted as triangular columns then they form a cycle of

3D faces, which is the boundary of a 4D ball, i.e., the

cycle of 3D faces forms a 3D sphere. So if the object

69

Li H. and Huang L. (2006).

A FAST ALGORITHM FOR N D POLYHEDRAL SCENE PERCEPTION FROM A SINGLE 2D LINE DRAWING.

In Proceedings of the First International Conference on Computer Vision Theory and Applications, pages 69-76

DOI: 10.5220/0001363100690076

Copyright

c

SciTePress

F3"

F3

F2"

F2

F1"

F1’

F3’

F2’

F1

V1

V2

V3

V2"

V3"

V1’

V2’

V3’

V1"

Figure 1: A torus in 3D space.

is required to be a 3D manifold, then the line draw-

ing has a unique interpretation which is a 3D sphere.

On the other hand, if the object is required to be a 2D

manifold, then the line drawing has another unique in-

terpretation, which is a torus in which the 6 triangular

cycles are hollow instead of being ﬁlled.

This example shows that the problem of wireframe

reconstruction from a single line drawing is rather

“ill-posed”: without a priori knowledge on the shape

and dimension, any cycle can be either ﬁlled up or

hollow, and the result is always a solution. What is

the criterion for a “most plausible solution”?

There are three cases each with its own criterion.

The ﬁrst case is on a single 2D manifold in 3D space

(Liu et al., 2002). Most applications, e.g., the drafting

of machine parts, belong to this case. The criterion

is that all given vertices and edges must be included

in a 2D manifold such that the neighborhood of every

vertex and edge is homeomorphic to a disc. The sec-

ond case is on objects in 3D world in which no two

neighboring faces are coplanar. The criterion for an

optimal solution is that it should be most likely iden-

tiﬁed by a human being. Quantitatively this criterion

is described as follows (Shpitalni and Lipson, 1996):

There should be as many faces as possible passing

through as many edges as possible. The third case is

the most general one: we consider polyhedral scenes

of maximal dimension n in an mD surrounding space

in which neither m nor n is given, the objects need

not be a single manifold and two neighboring faces

can be coplanar. In Section 2 of this paper, a principle

of psychological selection is proposed as the criterion

for optimal solution in this case.

For several decades, the study of wireframe models

and their reconstructions has been an active research

topic in computer-aided design, computer graphics

and computer vision (Agarwel and Waggenspack,

1992), (Ganter and Uicker, 1983), (Courter and

Brewer, 1986), (Hanrahan, 1982), (Marill, 1991). In

the literature, all algorithms for 3D reconstruction

consist of two steps: searching for all the cycles in the

wireframe which are face candidates, and then iden-

tifying faces from the candidates. Each step has ex-

ponential complexity, so the reconstruction from 2D

to 3D has double exponential complexity. Since the

problem is NP-complete theoretically, most research

focuses on improving the practical efﬁciency by re-

ducing the number of potential faces produced in the

ﬁrst step, i.e., in cycle searching. However, all the al-

gorithms in the literature are global in that the search-

ing is within the whole wireframe. A consequence

is that the number of potential faces is usually much

larger than the number of real faces. There remains a

lot of room for further improvement in efﬁciency.

In this paper, we ﬁrst extend the study of polyhe-

dral scene reconstruction from 3D to nD, under the

most general assumption that neither the dimension

n of the object nor the dimension m of its surround-

ing space is given, and whether or not the object is a

manifold is unknown. We then propose several pow-

erful new techniques for face identiﬁcation, and de-

sign an algorithm for fast and general face identiﬁca-

tion. Among the new techniques, the most prominent

one is localization, i.e., the cycle searching and face

identiﬁcation are carried out locally and the results are

propagated locally. In the classical case m = n = 3,

our algorithm can handle complicated 3D objects of

over 10,000 faces, outperforming all other algorithms

in both speed and range of application. For the exam-

ples in (Liu and Lee, 2001), (Liu et al., 2002), (Sh-

pitalni and Lipson, 1996), our algorithm can generate

all the solutions for ambiguous wireframes, and pro-

duces much fewer redundant cycles which are not real

faces.

The study of general nD scene reconstruction from

a single line drawing is valuable at least in scien-

tiﬁc visualization and high-dimensional animation in

entertainment industry: scientists and artists may be

very much excited to ﬁnd that their conceptual and

spiritual nD object be readily embodied in, perceiv-

able and recognizable from a single 2D line drawing.

2 N D POLYHEDRAL SCENE

COGNITION

2.1 Constraints on Line Drawings

A perspective projection from mD to 2D is the com-

position of m − 2 successive perspective projec-

tions whose projective centers are linearly indepen-

dent vectors, and at least one center is an afﬁne point.

A parallel projection from mD to 2D is the compo-

sition of m − 2 successive parallel projections whose

projective centers are linearly independent directions.

A naive way of visualizing such a projection is to

imagine watching a TV program, in which there is

VISAPP 2006 - IMAGE UNDERSTANDING

70

a guy watching another TV program, and in that TV

program there is still another guy watching still an-

other TV program, etc. If each TV program is ob-

tained by a pinhole camera through perspective pro-

jection, then the m − 2 successive perspective projec-

tions transforms the mD world into a 2D image.

The reconstruction is the inverse procedure of the

above sequence of projections: the input is the 0D

and 1D information displayed in a 2D space: vertices

and edges of the polyhedral scene; the reconstruction

from 2D to 3D is to identify the real 2D faces of the

scene; going this way, the reconstruction from (m −

1)D to mD is to identify the real (m − 1)D faces.

In a wireframe model, a 0D face is a vertex, a 0D

cycle is the two vertices of an edge, and a 1D face is an

edge. For r > 0, an rD cycle is a set of rD faces such

that (1) if two faces intersect, the intersection belongs

to their iD faces for 0 ≤ i < r, (2) any (r − 1)D face

of one rD face is shared by exactly one other rD face

in the set. For r > 1, an rD face is an (r − 1)D cycle

ﬁlled by the rD afﬁne ﬂat surrounded by it.

If two rD faces share at least two (r − 1)D faces

which are in different (r − 1)D planes, then the two

rD faces must be in the same rD afﬁne plane, i.e.,

coplanar. The union of a set of rD coplanar faces

is called an rD polyface, and the faces are said to be

merged together. An advantage of this concept is that

usually we do not need to decompose a polyface into

non-overlapping faces.

Some geometric constraints must be satisﬁed for

an (r − 1)D cycle to be eligible for being an rD face.

In previous work on face identiﬁcation, it is gener-

ally assumed that any two neighboring faces are not

coplanar. We feel that this is too strong a constraint to

include many interesting models, so we discard it.

A

B

C

D

E

F

G

H

I

J

K

Figure 2: Face adjacency constraint (left: if both ACDEB

and F CDEG are 2D faces then they must be coplanar);

Non-self-intersection constraint (right: since edges HI and

J K intersect not at a vertex, cycle H I JK cannot be the

projection of a 2D face).

The polyhedral setting imposes a strong constraint,

called the rD face adjacency constraint (Shpitalni and

Lipson, 1996): if two rD faces share two (r − 1)D

faces which are in different (r − 1)D afﬁne planes,

then the two rD faces must be in the same rD afﬁne

plane, i.e., are coplanar.

In a line drawing of an mD polyhedral scene, if two

edges are collinear, so are they in the mD scene; if

two edges cross not at a vertex, they do not intersect

in the mD scene. By a perspective projection, a 2D

face is projected onto a 2D region of the image plane

whose boundary does not intersect itself. The 2D non-

self-intersection constraint says that if two edges in-

tersect not at a vertex, then they cannot belong to the

same 1D cycle.

The 2D non-interior-intersection constraint (Liu

et al., 2002) says that if two 1D cycles intersect at

only two vertices and the line segment between the

two vertices intersects both the enclosed regions of

the 1D cycles in the image plane, then either the two

cycles form a polyface, i.e., are coplanar, or at most

one can be assigned as a face.

A

B

C

D

E

F

G

H

I

J

K

L

M

Figure 3: Non-interior-intersection constraint (left: If both

ABC DE and H GC F E are 2D faces then they must be

coplanar, otherwise their intersection CE must be a visible

edge); Chordless constraint (right: cycle IJ LM K contains

a chord J K, so it is not assigned as a face, instead, I JK

and J LM K can be assigned as faces).

If an rD face F does not belong to an rD cycle C

but its intersection with C is exactly the boundary of

F , then F is called a chord of C. A face with chord

can always be decomposed along its chord into two

coplanar faces, and can thus be replaced by the two

faces sharing the chord. However, the two faces need

not be coplanar any more. To gain more degree of

freedom in the reconstruction, an rD cycle with chord

is not assigned as a face. This is the rD chordless

constraint.

2.2 Principle of Psychological

Selection

For a general object in an unknown environment, a

human tends to choose a face identiﬁcation in which

there are as many edges as possible participating in

as many faces as possible, which is the guideline for

the algorithms in (Liu and Lee, 2001) and (Shpitalni

and Lipson, 1996). If the dimension is unknown, the

most important goal should be to ﬁnd the highest di-

mension n, for which the above guideline may not be

helpful.

Our principle of psychological selection is that for

r > 1, the rD face identiﬁcation should make as

many (r − 1)D faces as possible participating in as

many rD faces as possible, such that the sequence of

A FAST ALGORITHM FOR ND POLYHEDRAL SCENE PERCEPTION FROM A SINGLE 2D LINE DRAWING

71

numbers of non-coplanar iD faces is maximal lexico-

graphically, for i from n down to r.

For example, if a line drawing has two explana-

tions, one is two 3D faces together with ﬁfty 2D faces

not belonging to the 3D faces, the other is one 3D face

together with one hundred 2D faces not belonging to

the 3D face, such that any two faces of the same di-

mension are not coplanar, then it is the former expla-

nation that is chosen as the optimal solution. Thus,

our principle of psychological selection is different

from that in (Liu and Lee, 2001) and (Shpitalni and

Lipson, 1996). Its goal is to ﬁnd ﬁrst the highest di-

mension n, second as many as possible nD faces that

are non-coplanar.

2.3 Principle of Rigidity

To improve the speed for ﬁnding the ﬁrst optimal so-

lution, it is very important to arrange the face can-

didates in such an order that the most plausible ones

come ﬁrst. We classify the cycles according to their

rigidity so that they have different levels of priority in

face identiﬁcation.

By the deﬁnition of a cycle, the supporting afﬁne

plane of an (r − 1)D cycle has dimension at least r.

If in the geometric reconstruction from rD to (r +

1)D, for a given (r −1)D cycle in the rD afﬁne plane,

the dimension of the conﬁguration space of the lifted

cycle is k + r + 1, then the rigidity of the cycle is

deﬁned to be −k, and the ﬂexibility of the cycle is

deﬁned to be k. A cycle of rigidity 0, or −1, or < −1

is said to be rigid, or elastic, or plastic respectively.

For example, if r = 2, a 1D cycle of k + 3 non-

collinear vertices has rigidity −k, see Figure 4. How-

ever, most rigid cycles are not boundaries of sim-

plices. For example, the boundary of any column or

wedge is a 2D rigid cycle.

A

B

C

D

E F

G

H

I

J K

L

Figure 4: Rigidity of 1D cycles: rigid (left), elastic (middle)

and plastic (right).

Our principle of rigidity is that rigid cycles are al-

ways identiﬁed as faces, and elastic cycles are more

likely to be faces than plastic ones. The explanation

is as follows:

1. Rigid cycles are boundaries of either real or interior

faces of the object. If they are all assigned as faces,

they never force any two faces of different planes

to be coplanar. If the object is not assumed to be a

manifold, then taking all rigid cycles as real faces

conforms to the principle of psychological selec-

tion.

If the object is required to be a manifold, then tak-

ing all rigid cycles as real faces induce a decompo-

sition of the object into smaller ones of the same di-

mension, and by our manifold assembly algorithm

to be introduced in the next section, all interior

faces can be removed.

2. Elastic cycles are next to rigid ones in simplicity.

Experiments show that they are the next most plau-

sible face candidates.

3 NEW TECHNIQUES AND

ALGORITHM FOR

COGNITION

Below we propose several new techniques for struc-

tural reconstruction based on the above perception

principles. Without loss of generality, we only de-

scribe the classical case of ﬁnding 1D cycles in 2D

face identiﬁcation.

3.1 Localization

To speed up the ﬁnding of the highest dimension, we

propose to search for the cycles locally in the wire-

frame, then propagate the result to construct more cy-

cles. This technique proves to be effective also in re-

ducing the number of redundant cycles.

Let C be a wireframe model. A local wireframe

model of C is a subset of the vertices of C together

with all the higher dimensional faces formed by the

subset of vertices. A localization ﬁlter, or localiza-

tion, of C is a sequence of local wireframe models

S

1

⊂ S

2

⊂ . . . ⊂ S

k

= C in which each successor

introduces more vertices than its predecessor. With

the introduction of new vertices, all the edges among

them and the existing vertices are introduced.

Localization is often realized by propagation

through edges. Starting from a vertex called the ori-

gin, we localize the wireframe by considering only

the subgraph of the origin and its neighboring ver-

tices. Within the local wireframe we identify the

faces. Then we set the origin to be the current local

wireframe, and repeat the localization and identiﬁca-

tion procedure. By introducing new vertices accord-

ing to the closeness of their relations with the existing

ones and the rigidity of the cycles formed by them,

the complexity of cycle searching can be reduced.

In Figure 5(a), a localization goes as follows:

{1} ⊂ {1, 2, 3, 4} ⊂ {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}

⊂ {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, a, b, c}.

VISAPP 2006 - IMAGE UNDERSTANDING

72

2

6

b 7

3

1

8

c

94

5

a

0

(a)

2

6

b 7

3

8

c

94

5

a

0

(b)

Figure 5: Localization, deletion and blocking.

3.2 Deletion

To further control the number of face candidates,

we propose two techniques deletion and blocking, to

reduce the scope of cycle searching by deleting or

blocking the branches that do not produce any new

face candidates.

For a general object, the criterion for an edge to be

deletable is that the deletion does not inﬂuence the ﬁ-

nal identiﬁcation of 2D faces and polyfaces. By our

principle of psychological selection, an edge E in the

procedure of localization can be deleted if by assign-

ing any new cycle through it as a face, (1) the num-

ber of non-coplanar faces does not increase, (2) if any

new vertex V is to be added into the polyface con-

taining the face, there is always a cycle of edges in

the polyface that passes through V but not E, i.e.,

deleting E does not prevent V from joining the poly-

face via a cycle of edges. The following theorem can

be proved within graph theory.

Deletion Theorem. In cycle searching, if for an

edge E not collinear with any other edge, all its

neighboring edges are already in faces containing

edge E, then E can be deleted. Such an edge is said

to be saturated.

In Figure 5(a), if three cycles 125a04, 138c94

and 126b73 are already assigned as faces, then edges

12, 13, 14 are saturated and can be deleted. Then ver-

tex 1 is no longer connected to any other vertex and

can be deleted. See Figure 5(b).

3.3 Path Blocking

In Figure 5(b), the vertices in the localization form

a big cycle 25a049c837b6. This cycle cannot be a

face, otherwise all three constructed faces have to

be merged. In searching for more face candidates

passing through a ﬁxed vertex, those faces having

been identiﬁed can block off some search branches

by avoiding identiﬁed faces to merge, according to

our principle of psychological selection. This tech-

nique is extremely useful in reducing the number of

branches in cycle searching.

For a general object, if a branch of edges intersects

a face at least at three vertices which are not collinear,

then the branch is blocked by the face. The block is

called a face block. If a branch meets two different

face blocks, then it is blocked permanently. If along a

branch there is only one face block, then the branch of

edges can be merged with the face to form a polyface.

In Figure 5(b), suppose we want to ﬁnd a new cy-

cle passing through vertex 2. From 2 to 6, the path

is blocked by face 62137b. From 2 to 5, the path

is blocked by face 04125a. The two different face

blocks permanently block any new cycle from pass-

ing through branch 625.

In (Liu et al., 2002), the models are 2D manifolds in

which no two neighboring faces are coplanar. If a cy-

cle is identiﬁed as a face then no other branch passing

through two edges of it can generate a face. Here one

face sufﬁces to block off the branch permanently. For

a general object, this single blocking does not work.

There are other types of blocks. The 2D non-self-

intersection constraint can block some branches per-

manently. The blocks are called intersection blocks.

The 2D non-interior-intersection constraint can block

some branches from including the interior of an exist-

ing face. The blocks are called interior blocks. The

2D chordless constraint can permanently block some

branches from generating cycles with chords. The

blocks are called chord blocks.

3.4 Manifold Assembly

In many applications it is required that the object be a

2D manifold. For this special purpose, there are two

alternatives to revise our general-purposed structural

reconstruction algorithm:

Anterior Approach: Employ the a priori constraints

of a 2D manifold in the general algorithm from

the start, by revising the localization, deletion and

blocking techniques accordingly (Liu et al., 2002).

Posterior Approach: Use the general algorithm to

produce a set of 3D faces which are themselves 2D

manifolds. Assemble the 3D faces into a single 2D

manifold. This approach, called manifold assem-

bly, appears to be more efﬁcient than the previous

one.

Our manifold assembly algorithm follows a local

propagation approach, and employs the following 2D

manifold assembly principles:

Principle 1. (Face assembly) If two 3D faces inter-

sect at a 2D face whose edges are of degree greater

than two, then the 3D faces can be assembled at the

2D face by removing it; if one edge has degree two,

then one 3D face must be deleted.

Remark: For a set of rD faces, the degree of an

(r − 1)D face with respect to the set is the number

A FAST ALGORITHM FOR ND POLYHEDRAL SCENE PERCEPTION FROM A SINGLE 2D LINE DRAWING

73

1

2

3

4

6

7

8

5

A

B

C

D

H

E

F

G

a

b

c

(a)

A

B

C

D

E

F

G

H

I

J

K

L

N

O

P

Q

R

S

(b)

Figure 6: Manifold assembly principles.

of elements in the set passing through the (r − 1)D

face.

For example, in Figure 1 we can assemble columns

F

1

F

1

′

F

1

′′

and F

1

′′

F

2

′′

F

3

′′

, and denote the result by

O. Then face F

1

′′

is deleted, and its neighbors

F

1

, F

1

′

, F

2

′′

, F

3

′′

each have a degree-2 edge. The

four neighbors disallow the other four columns to be

annexed to O. As a result, vertex V

1

′′

is absent from

O. Although O itself is a 2D manifold, it does not

provide the whole line drawing with such an explana-

tion.

Principle 2. (Edge assembly) If two 3D faces inter-

sect at an edge E but not at any 2D face, then they

can be assembled at the edge if and only if within

the line drawing, a 2D face F

1

at E in one 3D face

is within the 2D region of a 2D face F

2

at E in

the other 3D face. If no such two 2D faces then

one 3D face must be deleted; else the assembling

is realized by replacing the two 2D faces by their

difference in the polyface generated by them.

For example, in Figure 6(b) cube ABCDEF GH

and tetrahedron IJ KL share a common edge IJ.

Face IJK can be merged into either face BCEG or

face ABGH. On the other hand, face IJL can only

be merged into face BCEG. As a result, face IJK

can only be merged into face ABGH.

Principle 3. (Vertex assembly) If two 3D faces in-

tersect at a vertex V but not at any 2D face or edge,

then they can be assembled at the vertex if and only

if within the line drawing, a 2D face F

1

at V in

one 3D face is within the 2D region of a 2D face

F

2

at V in the other 3D face. If no such two 2D

faces then one 3D face must be deleted; else the

assembling is realized by replacing the pair of 2D

faces by their difference in the polyface generated

by them.

For example, in Figure 6(a) cube 12345678 and

tetrahedron 3abc intersect at vertex 3. Face 2376 can

be merged with either face 3ab, or face 3ac, or face

3bc, leading to three different manifold structures.

Principle 4. (Empty assembly) If two 3D faces do

not intersect, then they can be assembled at two 2D

faces if and only if one 2D face is within the 2D

region of the other 2D face. To assemble the two

3D faces is to replace the pair of 2D faces by their

difference in the polyface generated by them.

For example, in Figure 6(a) cube 12345678 and

cube ABCDEF GH can be assembled at either the

pair of faces (1234, ABCD), or the pair of faces

(1584, ABCD), leading to two different manifolds.

Principle 5. (Orientation assembly) If two 3D

faces are assembled then their orientations must be

compatible at their common 2D faces.

For example, in Figure 6(b) cube ABCDEF GH

and column NOP QRS can be assembled in four dif-

ferent ways:

(1) (ABCD, N OP ) and (EF GH, QRS),

(2) (ADF H, NOP ) and (EF GH, QRS),

(3) (ABCD, N OP ) and (BCEG, QRS),

(4) (ADF H, NOP ) and (BCEG, QRS).

In assemblings (2) and (3) the orientations of the

cube and the column are incompatible at their com-

mon faces, so only assemblings (1) and (4) are al-

lowed.

3.5 The Main Algorithm – nDView

Input: (1) a 2D line drawing composed of vertices

and edges. A vertex is represented by its 2D coor-

dinates, an edge by two vertices.

(2) A set of lines. A line is represented by a se-

quence of collinear edges.

(3) A vertex as the origin of localization.

Output: Objects of dimension > 1: faces and poly-

faces.

Initialization: Find all pairs of edges intersecting not

at a vertex.

Step 1. Localization start: Start from the origin,

use localization to generate a set of new vertices.

Step 2. Cycle searching: Generate faces by the

depth-ﬁrst cycle searching strategy, together with

the deletion and blocking techniques.

Step 3. Dimension upgrading: Start from the 2D

local wireframe constructed so far, construct higher

dimensional faces in a hierarchical order, following

a procedure similar to Steps 1 to 3.

Step 4. Assembling: It occurs if the result is re-

quired to be a manifold of given dimension. The

assembling is also local.

Step 5. Localization end: Go back to Step 1 for an-

other round of localization. Terminate after all ver-

tices are included.

Step 6. More solutions and completeness: Explore

the state-space trees to get more (or all) solutions.

The vertices of the rD state-space tree are rD

VISAPP 2006 - IMAGE UNDERSTANDING

74

non-rigid cycles with their states. A vertex here

has two states: either the cycle is identiﬁed as a

face, or not allowed to be a face. A descendent

of a vertex in the tree is a cycle found after the

vertex (cycle with a state) has been found in the

localization.

Remark. (1) Although a speciﬁc set of 2D co-

ordinates are given in the input, they are used

only to test the inequalities occurring in the 2D

non-self-intersection constraint, the 2D non-interior-

intersection constraint and the 3D assembly. A solu-

tion based on these coordinates is acceptable as long

as the polyhedral structures are compatible, no matter

if the coordinates satisfy the realizability conditions

for nD geometric reconstruction. This is true for all

face identiﬁcation algorithms in the literature.

(2) The main algorithm above improves the practi-

cal efﬁciency but not the theoretical one. Step 6 is a

procedure having double exponential complexity for

a ﬁxed dimension r. For the examples tested in our

experiments, the algorithm can always ﬁnd a solution

reaching the maximal dimension without resorting to

Step 6. if a different solution is needed, then chang-

ing the origin of localization in the imput is usually a

better option than carrying out Step 6.

3.6 Experiments

We have implemented nDView in VC++ 6.0,

have tested all the examples in (Agarwel and

Waggenspack, 1992), (Liu and Lee, 2001), (Liu et al.,

2002), (Shpitalni and Lipson, 1996), etc., in addition

to a dozen higher dimensional ones designed by our-

selves, e.g. the line drawings in Figure 7.

(a)

1

2

4

3

6

7

8

5

(b)

1

2

4

3

6

7

8

5

(c)

1

6

2

3

4 7

8

5

(d)

Figure 7: 4D cube (a); 5D polytope (b); 4D polytope (c);

5D polytope (d).

For the classical case m = n = 3, we make com-

parison between our algorithm and the existing fastest

algorithm for face identiﬁcation of 2D manifolds (Liu

et al., 2002), using the steam box model shown in

Figure 8(a) and a sequence of N steam boxes con-

nected by cubes as typical 2D manifolds of genus N.

The reason for this choice is that Figure 8(a) is the

most complicated example in (Liu et al., 2002) and

about half of the cycles constructed there are redun-

dant ones, in sharp contrast to all other examples in

that paper.

4

1

3

2

5

8

7

6

a b

9

0

c

f

e

d

g

j

h

i

(a)

(b)

Figure 8: Face identiﬁcation.

The following table collects some data from our ex-

periment. In the table, by “global search” we mean

the algorithm in (Liu et al., 2002), by “local search”

we mean our algorithm nDView. The table reveals

that for very small N our algorithm runs a little bit

slower, but very soon with the growth of N, our algo-

rithm runs much faster. For n = 100 our algorithm

runs more than 100 times faster than the algorithm in

(Liu et al., 2002). Figure 9 in the next page shows the

comparison of the computing time graphically. The

tests are made on an HP Desktop PC of Intel 3.40GHz

CPU and 1GB RAM.

N Global search Local search G : L

time G (sec.) time L (sec.)

1 0.006 0.025 0.24

10 6.172 1.890 3.26

20 23.796 7.094 3.35

30 189.589 16.687 11.36

40 450.031 31.687 14.20

50 1165.547 53.077 21.96

60 1745.013 81.578 21.39

70 2383.511 118.328 20.14

80 4513.983 165.358 27.29

90 16148.985 230.562 70.04

100 41327.325 320.765 128.83

A FAST ALGORITHM FOR ND POLYHEDRAL SCENE PERCEPTION FROM A SINGLE 2D LINE DRAWING

75

4 CONCLUSION

In this paper, we study the problem of machine per-

ception of nD polyhedral scenes from a single 2D line

drawing. We propose a number of efﬁcient techniques

for the structural reconstruction. By testing them with

classical 3D examples, we ﬁnd their superiority over

existing ones. The work should prove to be valuable

for high-dimensional scientiﬁc and artistic visualiza-

tions.

N: number of steam boxes

10080

time

(minutes)

60

30

40

25

20

20

15

0

5

10

0

Local Search

Global Search

N: number of steam boxes

100806040200

time

(minutes)

500

300

400

200

100

0

Local Search

Global Search

Figure 9: Comparison of computing time: local search

(solid line) vs global search (dashed line).

REFERENCES

Agarwel, S. and Waggenspack, C. (1992). Decomposition

method for extracting face topologies from wireframe

models. In Computer Aided Design. 24(3): 123–140.

Courter, S. and Brewer, J. (1986). Automated conversion

of curvilinear wireframe models to surface boundary

models. In Comput. Graph. 20(4): 171–178.

Ganter, M. and Uicker, J. (1983). From wireframe to solid

geometric: Automated conversion of data representa-

tions. In Computer in Mechanical Eng. 2(2): 40–45.

Hanrahan, P. (1982). Creating volume models from edge-

vertex graphs. In Computer Graphics. 16(3): 77–84.

Liu, J. and Lee, Y. (2001). A graph-based method for face

identiﬁcation from a single 2d line drawing. In IEEE

Trans. on PAMI. 23(10): 1106–1119.

Liu, J., Lee, Y., and Cham, C. (2002). Identifying faces in

a 2d line drawing representing a manifold object. In

IEEE Trans. on PAMI. 24(12): 1579–1593.

Marill, T. (1991). Emulation the human interpretation of

line drawings as 3d objects. In International J. of

Computer Vision. 6(2): 147–161.

Miyazaki, K. (1983). An Adventure in Multidimensional

Space: The Art and Geometry of Polygons, Polyhedra,

and Polytopes. Wileyinterscience Publ.

Shpitalni, M. and Lipson, H. (1996). Identiﬁcation of faces

in a 2d line drawing projection of a wireframe object.

In IEEE Trans. on PAMI. 18(10): 1000–1012.

VISAPP 2006 - IMAGE UNDERSTANDING

76