RESEA R CH R EP OR T Geometry of Two

CENTER FOR
MACHINE PERCEPTION
Geometry of Two-Slit Camera
CZECH TECHNICAL
UNIVERSITY
Tomáš Pajdla
[email protected]
CTU–CMP–2002–02
Available at
ftp://cmp.felk.cvut.cz/pub/cmp/articles/pajdla/Pajdla-TR-2002-02.pdf
This research was supported by the grants GACR 102/01/0971,
MSMT J04/98:212300013, MSMT KONTAT KT2001/09, and
ME 412.
Research Reports of CMP, Czech Technical University in Prague, No. 2, 2002
ISSN 1213-2365
RESEARCH REPORT
March 6, 2002, v.1.7
Published by
Center for Machine Perception, Department of Cybernetics
Faculty of Electrical Engineering, Czech Technical University
Technická 2, 166 27 Prague 6, Czech Republic
fax +420 2 2435 7385, phone +420 2 2435 7637, www: http://cmp.felk.cvut.cz
Abstract
We analyze the geometry of the two-slit camera and come to two conclusions.
First, we show that the definition given by et al. [9] makes sense only if the two
slits are not intersecting. Secondly, we prove that the complete image from a
two-slit camera cannot be obtained as an intersection of the rays of the two-slit
camera with a plane in space. Motivated by the quest for a unified representation
of various cameras by simple geometrical objects, we give a new definition of
linear oblique cameras as those which comprise all real lines incident with some
non-real line and show that it is equivalent with the definition we gave earlier.
We also show that no single line neither in the real projective space nor in its
coplexification, can be used to define analogously a two-slit camera.
1
Introduction
The two-slit camera was proposed by Peleg et al. [8] and Weinshall et al. [9] to
facilitate light field rendering. They have pointed out that the rays can be often
selected from the light-field to form a two-slit camera and demonstrated that
images constructed by letting the rays of a two-slit camera to intersect a plane
are very similar to central projection images. This observation has far-reaching
consequences for light-field rendering because two-slit images can be generated
from much smaller light-fields. From the practical point of view, this is a very
important observation.
In [8], the authors also wanted to show that the the two-slit camera could
be understand as a geometrical generalization of central and orthographic projections. However, the definition they gave is not absolutely satisfactory. Let
us see why and, being inspired by their quest for a unified representation, let
us propose models that would correctly describe central, orthographic, two-slit,
and oblique projections [6].
Before coming to the analysis, let us just remark that two-slit cameras are
non-central cameras [4]. The special case, when one slit is at infinity, has been
already known as pushbroom camera [1].
2
Notation and concepts
We work in the three-dimensional real projective space P3 = (P, L, ◦). The
symbols P, L, and ◦ denote points, lines, and the incidence, respectively.
Real projective space can be represented by the lattice of subspaces of the
four dimensional real linear space. Points, lines, and planes correspond to one,
two, and three dimensional subspaces respectively. The meet ∧ corresponds to
the lattice infimum, i.e. to the set theoretical intersection, whereas the join join
is represented by the lattice supremum, i.e. by the linear hull.
Let X, Y be distinct points. Then by X ∨ Y we mean the line from L that
if incident with X and Y . If X is a point not incident with a line l then X ∨ l
means the plane containing X and l. Similarly, if k, l are lines that intersect,
then by k ∨ l we understand the plane that contain both k and l. The symbol
∧ is dual to ∨.
The lattice of linear subspaces of the four-dimensional complex vector space
C4 over complex numbers will represent the coplexification of P3 [2], which we
1
denoted by P3C . A vector from C4 will be further called real if all its coordinates are real with respect to the standard real basis (1, 0, 0, 0)T , (0, 1, 0, 0)T ,
(0, 0, 1, 0)T , (0, 0, 0, 1)T of R4 , canonically embedded in C4 .
The canonical embedding of the P3 into P3C is induced by associating P3 with
the set of all real vectors from C4 taken as a linear space over real numbers.
Abusing slightly the language, a set of real vectors from P3C forming a linear
space of dimension one over real numbers will be called a real point in P3C .
Reader will understand that by saying that a point, let say P , is a real point
of P3C we do not mean that P is a genuine point of P3C . We mean that it is a
point of P3 that is canonically embedded into P3C . Real lines and planes would
be defined analogically. By adding the adjective real to the elements from P3C
we will always jump into the P3 that is represented by real vectors of C4 over
R.
We shall often write a representative of a point P ∈ P3C as P = X + Yi with
X, Y ∈ R4 . All further unspecified vectors will be considered to be real. Also,
when plainly saying that vectors are linearly dependent, we mean that they are
linearly dependent in a real linear space, i.e. with respect to real coefficients. If
not specified otherwise, by the null space of a matrix A we will understand the
right null space and denote it nullA.
Let us remind that two lines (also complex lines) intersect if and only if there
is exactly one common point incident with both lines. We shall say that they
intersect at a real point if the point is real.
We use the notion of projective equivalence in the following sense. We say
that two sets of points, say X , Y in a projective line, plane, or space are projectively equivalent if there is a collineation σ which maps X to Y.
3
Analysis of the two-slit camera as defined by
Peleg et. al
Let us reformulate the definition of the two-slit camera from [8].
Definition 1 (Two-slit camera as defined in [8]) Let l1 , l2 ∈ L be two distinct lines. The two-slit camera is the set o lines
C(l1 , l2 ) = {k ∈ L | k = X ∨ Y, X ◦ l1 , Y ◦ l2 } .
(1)
We say that the two-slit camera C(l1 , l2 ) is generated by lines l1 , l2 .
According to Definition 1, lines l1 and l2 may intersect.
Observation 1 Let the lines l1 , l2 intersect at a point C. Then C(l1 , l2 ) consists
of the star of lines from L incident with C and all lines contained in the plane
l1 ∨ l2 . See Figure 1
We see that the set C(l1 , l2 ) contains lines in the plane l1 ∨ l2 that are not in
any central camera. The following observation is evident.
Observation 2 Every point in P is incident with at least one line from C(l1 , l2 ).
Through every point P of the plane l1 ∨ l2 passes a pencil of lines from C(l1 , l2 ).
The other points in P are incident with exactly one line from C(l1 , l2 ).
2
l1
l1 v l2
l2
Figure 1: A two-slit camera generated by an intersecting pair of lines.
The situation with intersecting l1 , l2 is not very appealing because all points in
one whole plane from P3 are seen infinitely many times by C(l1 , l2 ). Therefore,
we shall further restrict ourselves only to the situation when lines l1 , l2 do not
intersect.
Observation 3 Let the lines l1 , l2 be oblique. Then C(l1 , l2 ) consists of planar
line pencils. Two systems of line pencils can be found. The first system contains
planar pencils of lines incident to every point, let say C1 , from l1 and spanning
planes C1 ∨ l2 . The second system contains planar pencils of lines incident to
every point, let say C2 , from l2 and spanning planes C2 ∨l1 . The totality of lines
in the first system is identical with the totality of lines in the second system. See
Figure 2.
Analogically to Observation 2 we have the following observation.
Observation 4 Let the lines l1 , l2 be oblique. Every point in P is incident with
at least one line from C(l1 , l2 ). Points on lines l1 , l2 are incident with pencils
of lines from C(l1 , l2 ). The other points are incident with exactly one line from
C(l1 , l2 ).
Proof. It follows from Observation 3 that points on lines l1 , l2 are incident with
pencils of lines from C(l1 , l2 ). Let X ∈ P, X ∈
/ li , i = 1, 2. Then there is exactly
one plane π = X ∨ l1 . Plane π intersects line l2 in exactly one point Y = π ∧ l2 .
There is exactly one line l = X ∨ Y that lies in the plane π and thus intersects
line l1 in exactly one point Z. See Figure 3.
In [9], two-slit images were constructed by intersecting the rays of a two-slit
camera with a plane. Let us see how lines of a two-slit camera intersect a plane.
First of all, let us see that not all points of a general plane are intersected by
distinct lines from C(l1 , l2 ).
3
C2
C2 v l1
C1
l1
l1
C1 v l2
l2
l2
Figure 2: A two-slit camera generated by an oblique pair of lines.
l2
l1
Z
X
pi
Y
Figure 3: Every point X, which is not on l1 or l2 , is on exactly one line from
C(l1 , l2 ).
4
l2
l1
X
l
pi
Y
Figure 4: Every plane that does not contain l1 or l2 contains exactly one line
from C(l1 , l2 ).
Theorem 1 Let lines l1 , l2 be oblique. Then every plane in P3 contains at
least one line from the two-slit camera C(l1 , l2 ). Every plane containing l1 or l2
contains a pencil of lines from C(l1 , l2 ). The other planes contain exactly one
line from C(l1 , l2 ).
Proof. It follows from Observation 3 that every plane containing l1 or l2 contains
a pencil of lines from C(l1 , l2 ). Let π be a plane that contains neither l1 nor l2 .
Plane π intersects l1 in exactly one point X = π ∧ l1 and l2 in exactly one point
Y = π ∧ l2 . Points X, Y are distinct since l1 , l2 are oblique and thus there is
exactly one line X ∨ Y from C(l1 , l2 ) in π. See Figure 4.
Secondly, let us see that there are always many lines in C(l1 , l2 ) that intersect a
general plane in space in one point.
Theorem 2 Let lines l1 , l2 be oblique. Then, there is a one-to-one correspondence between the lines of the two-slit camera C(l1 , l2 ) and a
{real projective plane} ∪ {real affine line} .
Proof. See Figure 5. Let π be a plane that does not contain l1 , l2 . Lines l1 , l2
intersect π in points X, Y , respectively. There is exactly one line l = X ∧Y from
C(l1 , l2 ) contained in π. Lines of C(l1 , l2 ) can be grouped into planar pencils of
lines. Each pencil l(P ) has the center at a different point P ◦ l1 and all lines of
every l(P ) intersect l2 .
Let us construct a one-to-one correspondence between a subset of C(l1 , l2 )
and points of π. Each pencil l(P ) lies in a plane σ(P ) that intersects π in a
line k(P ). Lines k(P ) pass through Y and form a pencil that spans π. There
is a one-to-one correspondence between the lines of each pencil l(P ) and the
corresponding projective line k(P ). If P 6= X, then the correspondence is given
by assigning to each line m from l(P ) the point m ∧ k(P ). If P = X, then there
exists a one-to-one correspondence between the lines of the pencil l(P ) and the
projective line k(P ). All points P of π other than Y are on exactly one k(P )
and thus get assigned exactly one line from C(l1 , l2 ). All lines k(P ) intersect at
Y . Thus, the point Y gets assigned one line from each pencil l(P ). Since there
5
s(P)
l1
l1
l2
pi
X
l2
Y
k(P)
pi
X
l1
l2
Y
l
pi
Figure 5: Illustration for the proof of Theorem 2
are as many pencils as there are points on the projective line l1 , the point Y gets
assigned the whole pencil of lines, call it l(Y ), with the center at Y and lines
passing through l1 . We have to assign one line from l(Y ), for instance l, to Y
in order to get a one-to-one correspondence between a subset of lines in C(l1 , l2 )
and π, which is a real projective plane. What remains is a set of lines that are
in one-to-one correspondence to l1 without X, in other words to a projective
line without one point, which is an affine line.
We clearly see that points X and Y of π are intersected by complete pencils
of rays from C(l1 , l2 ), line l = X ∨ Y is in C(l1 , l2 ), and all other points of π
are intersected by exactly one line from C(l1 , l2 ). Thus, the set of all lines of
C(l1 , l2 ) for oblique l1 , l2 cannot be mapped one-to-one onto a projective plane
by assigning each line from C(l1 , l2 ) to its intersection point with a plane in
space.
However, in many practical situations we do not need to image the whole
space and then the image may be formed by intersecting lines from C(l1 , l2 ) with
a plane in space. Consider, for instance, perpendicular oblique lines l1 , l2 and
a plane π parallel to both l1 , l2 and not containing them. In such a case, the
points X = l1 ∧ π and Y = l2 ∧ π as well as the line l = X ∨ Y will be at the
plane at infinity. All finite points of π will thus be intersected by exactly one
line from C(l1 , l2 ).
By reason of clarity and beauty we shall further in this work call C(l1 , l2 )
the two-slit camera only when l1 , l2 are oblique.
4
Two-slit camera is generalization of pushbroom camera
Figure 6(a) shows the geometry of a pushbroom camera. A planar pencil of rays
with center C is swept along a line l1 . All planes with the pencils are parallel
and hence lines in the pencils intersect line l2 , which is in the plane at infinity.
Figure 6(b) shows the geometry of a general two-slit camera. In this case
both lines are finite. Again, there are planar pencils but now all the planes
intersect in a finite line.
A pushbroom camera is usually realized by taking a line camera (or one line
from a normal camera) and translating it perpendicularly to the line of pixels.
6
piinfty
piinfty
C
C
l1
l2
l1
l2
Figure 6: (a) Pushbroom camera has l2 in the plane at infinity, (b) two-slit
camera has a finite l2 .
A two-slit camera can be realized so that a line camera is translated and rotated
simultaneously such that all planes with pencils pass through l2 . The amount
of rotation is given by the shortest distance between l1 and l2 . We can also say
that the planes of pencils rotate around l2 and then interpret the translation of
the pushbroom camera as a rotation around l2 that is in the plane at infinity.
5
The “center” line of oblique cameras
We have shown above that the Definition 1 does not lead to the desired description of central cameras. Therefore, in the following we shall use a slightly
modified definition below. We also define other cameras we shall work with.
Definition 2 We say that the set S of all lines in L, such that
(i) there is exactly one point C ∈ P incident to all lines from S, is the central
camera with center C;
(ii) each line from S intersects two oblique lines l1 , l2 , is the two-slit camera;
(iii) every point in P is on exactly one line from S, is the oblique camera.
The above definition is consistent with the usual definition of the central
camera as well as with the definition of the oblique cameras from [7].
On our level of abstraction, cameras are purely geometrical objects, subsets
of lines in L. Not all sets of lines represent cameras though and those which
do may represent different cameras. It is useful and interesting to give a simple
characterization of various cameras. We see that in Definition 2 the central as
well as the two-slit camera is defined by taking a geometrical object, a point
and a pair of oblique lines respectively, and selecting the lines of the respective
camera from the totality of all lines in L as those which intersect the object.
Thus the question is whether we can find a similarly convenient characterization of the oblique camera. We have to ask: (i) “Can we find a simple
7
geometrical object, e.g. a line or a set of lines, such that the set of all lines incident with the object would form the oblique camera?” and (ii) “Is the oblique
camera uniquely represented by its geometrical object?”, which means that two
cameras are different if and only if their corresponding objects are different.
It is clear that two central cameras are different if and only if their respective
centers are different. The following theorem shows that two two-slit cameras are
different if and only if at least three from the four generating lines are pairwise
distinct.
Theorem 3 Two two-slit cameras C(l1 , l2 ), C(l3 , l4 ) are different if and only if
three of l1 , l2 , l3 , l4 are pairwise distinct.
Proof. The backward implication is clear. Different couples of oblique lines define two different two-slit cameras. To see the forward implication assume two
different couples of oblique lines that define the same two-slit camera. Since
couples are not same, they differ in at least one line. Thus, there are three lines,
let say l1 , l2 , l10 , intersecting all lines from the two-slit camera. Line l10 either
does or does not intersect at least one of l1 , l2 . If l10 intersects any of the lines
l1 , l2 , then there is only one line in common to all three of them. On the other
hand, if l1 , l2 , l10 are pairwise oblique, then, due the a classical geometrical theorem restated in [7], the set of all lines intersecting l1 , l2 , l10 is one double ruled
quadric.
When considering linear oblique cameras, we encounter quite a different situation. We have shown [5] that the smallest set of points over which an oblique
camera can be generated by a collineation is as large as an affine plane augmented with an extra point. Therefore, any geometrical object in P3 incident
with all lines of a linear oblique camera would have to be as large. A projective
plane in P3 would be a natural choice of the object. It is a projective subspace
and thus would fall nicely into the line of the objects chosen for central and
two-slit cameras. Unfortunately, there are very many line sets intersecting an
affine plane, which, altogether with the line at infinity, do not form a spread. We
thus would need an additional constraint, which would restrict the sets of lines
only to those that are spreads. It is possible to formulate such a constraint. For
instance, in the theory of translation planes [3], spreads are constructed with
the help of transversal mappings over affine planes. Though, such a characterization, however it is important elsewhere, does not fulfill our desire to obtain
a characterization of the oblique camera as the set of all lines intersecting some
nice geometrical object.
In what follows we shall show that linear oblique cameras can be characterized as sets of all lines from L intersecting certain non-real lines from LC . We
will see that a simple characterization, not available in P3 , can be in readily
obtained in the complexification of P3 .
Let us remind that linear oblique cameras are, in mathematical parlance,
spreads generated by a collineation over P [5, 7]. We shall use the language of
spreads and prove some lemmas and theorems about them.
8
Spreads were defined in [5] and it was shown that the set of two dimensional
subspaces of R4



  

x −y
x




y
  y 

x
4




span 
∈
R
\
0
(2)

z −w   z 





w
z
w
form a spread. We will further call this spread constructed w.r.t the standard
real basis the standard spread.
Lemma 1 A set S of lines in L is the standard spread if and only if line


1 0
i 0

c = span 
0 1
0 i
(3)
intersects in P3C all lines from S.
Proof. In this proof, naturally, linear dependence is meant with respect to
complex coefficients.
Let us show that all lines form S intersect c. In order for a lines from S,
defined by (2), to intersect c, the following complex matrix


x −y 1 0
 y
x i 0

(4)
B=
 z −w 0 1 
w
z 0 i
must have rank equal to three. It is easy to verify that


−i

1

B
 y + xi  = 0,
w + zi
(5)
by which rankB ≤ 3. Denote the columns of B by a, a× , b, c. Vectors a, a×
are independent. Vectors a, a× , b are dependent only for z = w = 0 but then
a, a× , c are independent. Similarly, vectors a, a× , c are dependent only for x =
y = 0 but then a, a× , b are independent. Thus rankB = 3 and therefore every
line from S intersects c in a non-real point that can be written as


y + xi
 −x + yi 


(6)
 w + zi  .
−z + wi
Let us show that the set of all real lines, which are contained in all complex lines intersecting c, is the standard spread. Every line intersecting c must
contain a point

 

a
s − ti
 ai   t + si 

 

(7)
 b  =  u − vi  = s + s× i
bi
v + ui
9
for some a = s − ti and b = u − vi, s, t, u, v ∈ R. Every line l intersecting c can
be written as
l = span s + s× i p + qi .
(8)
Inasmuch as l is assumed to contain a real line, l can be, according to Theorem 10, written as
l = span s + s× i αs + βs× + (γs + δs× )i
(9)
with α, β, γ, δ ∈ R. We need to show that the real line contained in l is an
element o the standard spread. Point
P = (m + ni)(s + s× i) + (o + pi)(αs + βs× + (γs + δs× )i))
(10)
on l, for m, n, o, p ∈ R, is real if and only if
(n + αp + γo)s + (m + βp + δo)s× = 0,
(11)
which is, due to independence of s and s× , equivalent to
n + αp + γo = 0
m + βp + δo = 0.
The above equations have two independent solutions


 

 

−β
m
−δ
m
 n   −α 
 n   −β 


 


 
 o  =  0  and  o  =  1  .
p
1
p
0
(12)
(13)
(14)
Thus, by substituting
(14) into (10), the real line contained in l is generated as
span X Y with
X
Y
=
=
(−β − γ)s + (α − δ)s× ,
(α − δ)s + (β + γ)s×
(15)
(16)
(17)
and since
X× = ((−β − γ)s)× + ((α − δ)s× )× = (−β − γ)s× + (α − δ)(−s) = −Y
we see that the real line contained in l is a member of the standard spread. It is clear from the proof of the backward implication that all real lines
intersecting c in P3C are in the standard spread and thus c cannot intersect a line
of any other spread. The next theorem will show that if a line is intersecting all
lines of the standard spread in P3C , then it already must be the line c. It is an
interesting result because it leads to the conclusion that there is a one-to-one
mapping between spreads generated by collineations over P and certain set of
lines in LC .
Theorem 4 Let S be the standard spread. Then the line c given by (3) is the
only line from LC intersecting all lines in S.
10
Proof. Assume line

o
p
d = span 
q
r

s
t 
 , o, p, q, r, s, t, u, v ∈ C
u
v
(18)
be intersecting all lines in S. Then


x −y o s
 y
x p t

A=
 z −w q u 
w
z r v
(19)
must have rank equal to three for all x, y, z, w ∈ R, at least one not zero. Let
us compute
|A| = (q v − u r) x2 + (q v − u r) y 2 + (o t − s p) z 2 + (o t − s p) w2
+ ((p v − s q + o u − t r) w + (−o v + p u + s r − t q) z) x
+ ((−o v + p u + s r − t q) w + (−o u + s q − p v + t r) z) y
q u 2
o s 2
2
(z + w2 )
(x + y ) + = r v
p t
p t o s
p t o s
+
r v + q u (x w − y z) + q u − r v (x z + y w) .
Determinant |A| must be zero for for all x, y, z, w ∈ R, at least one not zero.
Therefore
q u o s
=
0 = (20)
r v p t
p t o s p t o s
+
=
−
.
0 = (21)
r v q u q u r v
q u
o s
We see that r1 = rank
≤ 1 and r2 = rank
≤ 1. Both
r v
p t
r1 , r2 cannot be zero because then vectors from (18) would be zero vectors. Let
WLOG r1 = 0. Then for x = y = 0 holds true rankA = 2, and therefore r1 ≥ 1
and r2 ≥ 1. Considering that vectors in (18) must be linearly independent, all
lines d can be generated as


o 0
p 0 

d = span 
(22)
 0 u .
0 v
It follows from linear independence of vectors generating d that (o 6= 0 or
p 6= 0) and (u 6= 0 or v 6= 0). If u = 0 then, when considering (22) altogether
with the previous observation, we conclude that (21) does not hold. Thus none
of o, p, u, v may be zero.
Substituting (22) into (21) gives
ou + pv
pu − ov
11
= 0
= 0,
(23)
(24)
which is, in our situation, equivalent to
u2 + v 2
o2 + p2
= 0
= 0.
(25)
(26)
All non-trivial solutions of (25) resp. (26) can be written in the form u = a,
v = ai, a ∈ C \ {0} resp. u = b, v = bi, b ∈ C \ {0}. Hence we may for all
a, b ∈ C \ {0} write




a 0
1 0
 ai 0 
i 0



d = span 
(27)
 0 b  = span  0 1 
0 bi
0 i
and conclude that line c given by (3) is the only line in LC that intersects all
lines on S.
We are now in the position to prove the following theorem.
Theorem 5 A set T of lines in L is a spread generated by a collineation over
P if and only if there is a real collineation σ such that all lines of T intersect
line σ(c) with


1 0
i 0

c = span 
(28)
0 1
0 i
in P3C .
Proof. Since every spread generated by a collineation over P is projectively
equivalent with spread S given by (2) [5, 7], we may find a collineation that
relates S to T and denote it by σ. According to Lemma 1, S is the standard
spread if and only if c intersects all lines in S. Collineation σ is also a collineation
in P3C . It brings c to σ(c), and therefore all lines form S intersect c if and only
if all lines form T intersect σ(c).
Finally, let us observe that the spreads generated by a collineation over P can
be represented by lines such that two different lines correspond to two different
spreads and vice versa.
Theorem 6 There is a set isomorphism between the set of spreads generated
by a collineation over P and the set of lines
 



1 0




 

 i 0 
3




M = σ span 
;
σ
collineation
in
P
.
(29)
0 1 






0 i
Proof. Denote the set of all spreads generated by a collineation over P as S.
Every spread T ⊂ L is related to the standard spread S by a collineation σ [5] as
T = σ(S). We clearly see that the mapping λ : S −→ M given as λ(T ) = σ(c)
12
is one-to-one and onto.
Having a geometrical object characterizing spreads generated by a collineation
over P, we can give the following nice definition of linear oblique cameras
Definition 3 (Linear oblique camera) We say that the set C of lines in L is the
linear oblique camera if it holds that there is a collineation σ in P3 such that all
lines from S intersect in P3C line c given by (3).
6
There is no “center” line of the two-slit camera
Another, and more ambitious, program would be to find some unifying geometrical object, maybe in P3C , that could serve to characterize central, two-slit,
as well as oblique cameras. Having such an object, different cameras could be
characterized solely in terms of parameters of that object. Peleg et. al [8, 9]
considered two lines in P3 to be such an object for central and two-slit cameras.
They propose to represent two-slit cameras by pairs of oblique lines and central
cameras by pairs of intersecting lines. However, as we have seen above, their
idea did not quite work. The reason is that there is not enough “freedom” in
bare P3 to construct one object, which would suit to represent all cameras.
We could define the central cameras as the set of all real lines intersecting a
non-real line with one real point. However, such a representation would not be
anyhow interesting as it would be merely and artificial construction. Nothing
new seems to be gained from it. Nevertheless, we could accept it if it was
possible to represent the two-slit camera by a single line from LC . Actually, the
representation consisting of a single line is the one we are looking for because
we already have a nice representation given by two oblique lines. Unfortunately,
it follows from the next theorem that it is not possible.
Let us first see that all two-slit cameras are projectively equivalent.
Lemma 2 All two-slit cameras are projectively equivalent.
Proof. A two-slit camera is uniquely determined by its generating lines, Theorem 3. It is hence enough to show that any two oblique lines, k1 , k2 , can be
mapped on another pair of oblique lines, l1 , l2 by a collineation. The reason is
that if we take four distinct points such that there are two points on either line
k1 , k2 and similarly four distinct points on l1 , l2 , there is always a collineation
mapping the first four points to the second four points.
We can now set to proving the following theorem.
Theorem 7 Let C(l1 , l2 ) be the two-slit camera. Then lines l1 , l2 are the only
lines in P3C which intersect all lines of C(l1 , l2 ).
Proof. Since all two-slit cameras are projectively equivalent, Lemma 2, we shall
13
prove the theorem for the two-slit camera C(l1 , l2 ) with



1 0
0
0 1
0


l1 = span 
 0 0  , l2 = span  1
0 0
0
Assume line

o
p

d = span 
q
r

0
0
.
0
1
(30)

s
t 
 , o, p, q, r, s, t, u, v ∈ C
u
v
(31)
be interacting all lines in C(l1 , l2 ). Then

x 0 o s
y 0 p t
A=
 0 z q u
0 w r v




(32)
must have rank three for all x, y, z, w ∈ R where (x 6= 0 or y 6= 0) and (z =
6 0 or
w 6= 0). Determinant
p t p t o s
o s
(33)
|A| = −x z + xw
−yz
+yw
r v
q u
r v
q u
must be zero for for all x, y, z, w ∈ R satisfying (x 6= 0 or y =
6 0) and (z 6= 0 or
w 6= 0). Therefore
p t p t o s o s
0 = =
=
=
(34)
r v q u r v q u
and at least one of the remaining two minors
o s
q u
m1 = , m2 = (35)
p t
r v
q u
o s
is not zero. Assume m1 6= 0. Then
= 0, since if it was not,
r v
p t
could not be rank two due to (34). The analogical result is obtained when
assuming m2 6= 0. We have just found that the only lines in P3C , which satisfy
|A| = 0, are




o s
0 0
p t 
0 0 


k1 = 
(36)
k2 = 
 0 0 ,
 q u .
0 0
r v
However, k1 , k2 equal l1 , l2 , respectively. There are no other lines in P3C than
l1 , l2 , intersecting all lines in C(l1 , l2 ) and therefore there is no single line that
could be used to define C(l1 , l2 ) as the set of real lines incident with it.
14
7
Conclusions
It is clear that two-slit camera is an important example of a non-central camera
since it allows to unleash image based rendering. We have made clear that it
make sense to speak of a two-slit camera generated by two oblique lines. If lines
intersect, the set of lines incident simultaneously with both of them contains a
central camera with the center at the intersection point but also all other line
contained in the plane spanned by the lines. Even though that there seems not
to be an easy geometrical model unifying the central and two-slit cameras (not
even in the complexification of the real three-dimensional projective space), it
poses no problem in any application. Simply, when working with a two-slit
camera, we shall use two lines whereas when a central camera should be used,
one point will do.
The quest for a common model of different cameras lead us to rising a question whether an oblique camera can be described as a set of all real lines incident
of some geometrical object. We have found that, indeed, all lines in an oblique
cameras intersect certain complex line and moreover that complex line defines
the oblique camera as nicely and uniquely as a projection center defines the
central camera.
A
Notes on P3C
The main idea behind proposing a simple geometrical model of the oblique
camera is to construct a special line in the complexification of P3 . In order
to proceed, we will start with the analysis of points and lines in P3C . We are
interested in seeing when real points and lines are contained in points and lines
of P3C . Such a question has some sense only if we fix the representation of P3C by
choosing, for instance, the standard real basis of C4 to be the real basis there.
With such a choice, the real vectors will be those with real coordinates.
Before we can proceed to analysis of real points and lines in P3C , we have to
make a few observations about the linear independence of two complex vectors
from C4 .
A.1
Linear independence of two complex vectors in C4
Let for the rest of this work X = S + Ti and Y = U + Vi with S, T, U, V ∈ R4
denote two complex vectors.
Lemma 3 Let X, Y be linearly dependent w.r.t complex coefficients. Then
rank S T U V ≤ 2.
Proof. Assuming X, Y linearly dependent w.r.t complex coefficients , there exist
α, β, γ, δ ∈ R, at least one not zero, such that
0 = (α + βi)X + (γ + δi)Y = αS − βT + γU − δV + (αT + βS + γV + δU)i (37)
or equivalently
αS − βT + γU − δV = 0
αT + βS + γV + δU = 0 .
15
(38)
(39)
The above equations can be rewritten

α
 −β

(S, T, U, V) 
γ
−δ
in a matrix form as

β
α
 = AΛ = (0, 0) .
δ
γ
(40)
It can be verified that the matrix Λ has rank two as soon as it is not zero matrix
which it is not due to the assumption of linear dependence of X and Y. Thus
Λ has at least two dimensional null space, which concludes the proof.
The following lemma is the immediate consequence of the previous result.
Lemma 4 Let rank (S, T, U, V) ≥ 3. Then X, Y are linearly independent
w.r.t complex coefficients.
Proof. The proof follows trivially from Lemma 3.
Lemma 5 Let rank (S, T) < 1 or rank (U, V) < 1. Then X, Y are linearly
dependent.
Proof. Trivial.
Lemma 6 Let rank (S, T, U, V) ≤ 1. Then X, Y are linearly dependent w.r.t
complex coefficients.
Proof. If rank (S, T, U, V) < 1 then S, T, U, V = 0 and the assertion is clearly
true. Otherwise at least one of the vectors is not zero. Let it be WLOG S.
Then there exist β, γ, δ ∈ R such that
(S, T, U, V) = (S, βS, γS, δS) .
Compose the following 8 × 4 matrix
S βS γS
δS
A=
,
βS −S δS −γS
which has rank two as is seen due to the fact that
S βS
S 0
= span
.
span
βS −S
0 S
(41)
(42)
(43)
Therefore A has a nontrivial null space. It can be shown that if a non-zero vector
(x, y, z, w)T in in the null space, then (−y, x, −w, z)T is there also. Thus, the
lemma follows from the proof of Lemma 3.
It is interesting that the linear independence of two vectors in C4 can be
characterized in terms of the standard spread in R4 .
Theorem 8 Two complex vectors X, Y are linearly independent w.r.t complex
coefficients if and only if
16
U V ≥ 2, and
(b) null S T U V is not an element of the standard spread.
Proof. Denote matrix S T U V as A.
The forward implication. Assume X, Y linearly independent. Then (a) follows from Lemma 6. Clearly, only one of the following occurs rankA = 4,
rankA = 3, or rankA = 2. If rankA > 2, dim nullA < 2 and thus nullA
is not an element of the standard spread because that one contains only twodimensional subspaces. If rankA = 2, then dim nullA = 2. It follows from (40)
in the proof of Lemma 3 that the null space of A resulting from linearly dependent X, Y is an element of the standard spread. Let us conclude the proof of
the forward implication by the following example of a two dimensional subspace


1 0
0 0

span 
(44)
0 0 ,
0 1
(a) rank S
T
which is not an element of the standard spread.
The backward implication. Assume X, Y so that (a), (b) holds. Again, one
of the following occurs rankA = 4, rankA = 3, or rankA = 2. If rankA ≥ 3,
then X, Y are independent by Lemma 4. Let rankA = 2 and (b) hold true.
Then nullA is two dimensional. The condition (b) means that there is no basis
of nullA of the form as in (2) and thus there is only the trivial combination so
that (38) and (39) hold, which makes X, Y independent.
A.2
Real points and lines in P3C
Let us now study when a point X ∈ P3C represented by X ∈ C4 \ 0 contains a
real point.
Theorem 9 A point X of P3C represented by X = S + Ti contains a real point
if and only if S, T are linearly dependent.
Proof. Let us first appreciate that a subspace of C4 , which contains a real
vector, contains the whole real subspace generated by the real vector. It follows
from the fact that R is a subfield of C. Let us write the vectors from the one
dimensional complex subspace generated by X as
Z = (α + βi)X = αS − βT + (αT + βS)i
(45)
with α, β ∈ R. The vector X represents a point in P3C and therefore at least one
from S, T is not zero. Thus, Z is a non-zero real vector if and only if there are
α, β ∈ R, at least one not zero, so that αT + βS = 0. Let us see why it suffices
that one of the coefficients is not zero. Both zero coefficient would make Z = 0.
If both S, T are not zero, then both coefficients are not zero and αS − βT 6= 0
since αT + βS = 0. If exactly one of the vectors, WLOG S, is zero, then α = 0
and therefore Z = −βT 6= 0 ∈ R4 .
17
Let l be a line in P3C represented by a two dimensional complex subspace
spanned by X, Y, i.e. l = X ∨ Y . There may but do not have to be real points
on l.
Theorem 10 Let a complex line l in P3C be represented by a two dimensional
complex subspace spanned by X, Y. Then
(a) l contains no real point ⇔ rank S T U V = 4
(b) l contains exactly one real point ⇔ rank S T U V = 3;
(c) l contains a real line ⇔ rank S T U V = 2;
(d) l does not contain a real plane.
Proof. Denote matrix S T U V by A. It follows from Theorem 8 that
2 ≤ rankA ≤ 4.
The backward implication of (a) is trivial. The forward implication follows
from 2 ≤ rankA ≤ 4, Theorem 8, and from the fact that whenever rankA ≤ 3
there are non-trivial coefficient so that (39) holds and (38) does not hold true
at the same time.
Let us further prove (c). First, assume l to contain a real line, i.e. a two
dimensional real subspace. Thus, there have to be at least two non-trivial
linearly independent (as vectors from R4 ) combinations that make (39) hold
true. By that argument rankA ≤ 2. Since X, Y are assumed independent,
rankA ≥ 2, according to Theorem 8, at the same time. Secondly, assume
rankA = 2. Since X, Y are assumed independent, the two dimensional null
space of A is not an element of the standard
spread, Theorem 8. Let a =
a1 a2 a3 a4 , b = b1 b2 b3 b4 be a basis of the null space of A.
Then it follows from the proof of Lemma 3 that vectors
Z = a2 S − a1 T + a4 U − a3 V
W = b2 S − b1 T + b4 U − b3 V
(46)
(47)
are not zero. They are also linearly independent, and thus represent a real line,
as follows from the next argument.
Assume Z, W linearly dependent. Then there are ϕ, ψ ∈ R, not both zero,
so that
0 = ϕZ + ψW
(48)





a2
b2
 −b1  
  −a1 




S T U V 
=
 ϕ  a4  + ψ  b4  
−a3
−b3
= A ϕa× + ψb×
= Ac
(49)
(50)
(51)
Vector c is not zero since a× , b× are linearly independent, which follows from
the independence of a, b. Clearly, c is in the null space of A and therefore
rankB = rank a b a× b× < 4 .
(52)
18
However, it is shown in [5] that rankB is either four, two, or zero. It is clear
that rankB = 2 because a, b are linearly independent. By that, the null space
of A is in the standard spread because it contains with a non-zero a also a× .
However, this is in contradiction with the independence of X, Y, and therefore
Z, W are linearly independent also.
Let us prove (b). The forward implication follows from the fact that rankA ≥
2 since X, Y are independent, Theorem 8, rankA 6= 2 because of (c), and
rankA 6= 4 because of (a). To show the backward implication, first consider
that (39) can always be made hold true with a one dimensional space of coefficients for rankA = 3. Secondly, the non-trivial coefficients, which make (39)
hold true, cannot, according to Theorem 8, make (38) hold at the same time
since X, Y are independent.
To show (d), it is enough to remember that in order to have a real plane, the
null space of A has to be three dimensional, leaving us with rankA = 1, which
cannot happen for independent X, Y.
We aim at showing that the existence of real points and lines on complex
points and lines, respectively, is characterized in terms of certain properties of
their representative vectors. As we want to say something about the points
and lines, not merely about their particular representatives, we have to show
that the properties defined through the representatives do not depend on their
choice.
Lemma 7 Let Xi = Si + Ti i and Yi = Ui + Vi i with Si , Ti , Ui , Vi ∈ R4 ,
i = 1, . . . , n be two bases of a complex vector space. Then
rank S1 T1 . . . Sn Tn = rank U1 V1 . . . Un Vn . (53)
Proof. Vectors Xi , Yi , i ∈ 1, . . . , n are both bases of the same
and so there
Pspace
n
are αji , βji ∈ R such that for all j ∈ 1, . . . , n holds Yj = i=1 (αji + βji i)Xi ,
which is equivalent with
Ui
Vi
=
=
n
X
i=1
n
X
αji Si − βji Ti ,
(54)
βji Si + αji Ti .
(55)
i=1
Vectors Ui , Vi thus can be written as a linear combination of Si , Ti and vice
versa, it is seen that Si , Ti can be obtained as a combination Ui , Vi when expressing Xi in the basis Yi . Equation (53) follows from that fact that it holds
for the both sets that the vectors in one set can be obtained as a linear combination of the vectors in the other set.
The previous lemma shows that subspaces are characterized by the dimension of the space spanned by columns of their corresponding matrix A. It follows
from Theorem 10 that there are indeed qualitatively different subspaces.
19
References
[1] R. Gupta and R. I. Hartley. Linear pushbroom cameras. IEEE Trans. on
Pattern Analysis and Machine Intelligence, 19(9):963–975, September 1997.
[2] P. R. Halmosh. Finite-Dimensional Vector Spaces. Springer-Verlag, 1987.
[3] N. Knarr. Translation Planes : Foundations and Construction Principles,
volume 1611 of Lecture Notes in Mathematics. Springer, Berlin, Germany,
1995.
[4] T. Pajdla. Epipolar geometry of some non-classical cameras. In B Likar,
editor, Proceedings of Computer Vision Winter Workshop, pages 223–233,
Ljubljana, Slovenia, February 2001. Slovenian Pattern Recorgnition Society.
[5] T. Pajdla.
Oblique cameras generated by collineations.
Research
Report CTU–CMP–2001–14, Center for Machine Perception, K333
FEE Czech Technical University, Prague, Czech Republic, April 2001.
ftp://cmp.felk.cvut.cz/pub/cmp/articles/pajdla/Pajdla-TR-2001-14.ps.gz.
[6] T. Pajdla. Stereo with oblique cameras. In IEEE Workshop on Stereo and
Multi-Baseline Vision. IEEE Computer Society Press, December 2001. To
appear.
[7] T. Pajdla. Stereo with oblique cameras. IJCV, 47(1-3), 2002.
[8] S. Peleg, D. Weinshall, D. Feldman, and A. Zome t. Perspective unbound:
The two-slit camera. In SIGGRAPH’2002, 2002. Submitted.
[9] D. Weinshall, M-S. Lee, T. Brodsky, M. Trajkovic, and D. Feldman. New
view generation with a bi-centric camera. In ECCV’2002, May 2002. To
appear.
20