Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Log Polar Manual

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

A Brief Introduction to Log Polar Mapping

Fabio Berton
July 9, 2005

1 Notation
Given a log polar pixel (ρ, θ), the general formulas to compute its cartesian
position are:

R = λρ · r0
(1)
ω = 2πθ
Θ

where:
R is the distance between the center of the receptive field (RF) and the
center of the mapping.
ω is the counter-clockwise angular distance of the center of the RF from the
horizontal axis.
λ is the ratio between the widths of two subsequent rings.
r0 is the radius of the ring with index ρ = 0.
Θ is the number of RF’s per ring.

Note that the log polar domain is intended as a discrete domain, so (ρ, θ)
represents the pixel covering the rectangular area delimited by (ρ, θ) and (ρ +
1, θ + 1). So the cartesian coordinates of the point will be:

x = R · cos(ω)
(2)
y = R · sin(ω)
which is: 
x = λρ · r0 · cos( 2πθ
Θ ) (3)
y = λρ · r0 · sin( 2πθ
Θ )

The inverse transformation is given by


 √ 2 2
x +y
ρ = logλ rR0 = logλ r0
y
(4)
θ = Θω
2π = Θ
2π arctan x

From the previous formulae is easy to notice that there is a discontinuity in


the origin: since the width of the rings when approaching the origin tends to

1
Figure 1: The Mapping outside the gray ring is pure logarithmic (left), while
inside of it is pure linear polar (center). The overlapping of the two mappings
gives the right image.

zero, it is impossible to cover the central area with a finite number of recep-
tive fields. Then, a common strategy is to cover the fovea with a linear polar
distribution of RF’s, defined by the following:

R =ρ+ε
(5)
ω = 2πθ
Θ

The term ε is added in order to have a perfect overlap between the last ring
in fovea for the two mappings (linear and logarithmic, see figure).

2 Computing the Logarithm Index


We want to compute the logarithm index λ, given the number of pixels per ring
Θ. Let’s set the following:

AB = 2rn (6)
A B 
= 2rn−1 (7)
OA = OB = Rn (8)
OA = OB  = Rn−1 (9)

We can easily see that rn−1 = Rn−1 sin(α) and 2α = 2π


Θ . Considering that
the sum rn−1 + rn equals the difference Rn − Rn−1 and rn = λ · rn−1 . So:

2
Figure 2: How to compute the Log Index

rn + rn−1 = Rn − Rn−1 (10)


λ · rn−1 + rn−1 = λ · Rn−1 − Rn−1 (11)
rn−1 (λ + 1) = Rn−1 (λ − 1) (12)
λ−1
rn−1 = Rn−1 · (13)
λ+1
λ−1
Rn−1 sin(α) = Rn−1 · (14)
λ+1
λ−1
sin α = (15)
λ+1
λ(1 − sin α) = 1 + sin α (16)
1 + sin α
λ= (17)
1 − sin α
π
1 + sin Θ
λ= π (18)
1 − sin Θ

3 Computing the Fovea Size


The Fovea is the constant resolution part of the mapping. So the size of each
receptive field (when circular), here is constant. In the figure, O is the center of
the mapping, the first three receptive fields belong to fovea, and they all have
radius rf . The first receptive field out of the fovea will have a radius of λ · rf ,
the second λ2 · rf and so on. Then the distance OA will be (2F − 1) · rf , where
F is the number of receptive fields in the fovea, thus (2F − 1) · rf · sin(α) = rf .

3
Figure 3: How to compute the Fovea Size

λ−1
Since sin(α) = λ+1 , we will have:
(2F − 1) · rf · sin(α) = rf (19)
(2F − 1) · sin(α) = 1 (20)
λ−1
(2F − 1) · =1 (21)
λ+1
(2F − 1) · λ − 1 = λ + 1 (22)
2F λ − λ − 2F + 1 = λ + 1 (23)
2F λ − 2F = 2λ (24)
Fλ − F = λ (25)
λ
F = (26)
λ−1
In the same way:
OA = 2F + λ (27)
(2F + λ) · sin(α) = λ (28)
λ−1
(2F + λ) · =λ (29)
λ+1
λ
F = (30)
λ−1
Unfortunately F is not necessarily an integer, so its actual value will be
rounded and the extra ring will be added in order to “absorb” the fractional
part. The fovea will then have F  rings, numbered (0, 1, . . . , F ), the first
ring having a diameter of rf (F − F ). This is:
 
r0 λ λ
2 = − (31)
rf λ−1 λ−1
subtracting an integer from both the operands:
 
r0 λ λ−1 λ λ−1
2 = − − + (32)
rf λ−1 λ−1 λ−1 λ−1

4
we get:
 
r0 1 1
2 = − (33)
rf λ−1 λ−1
Since the log polar domain is discrete, setting ρ = F will denote the whole
(F + 1)th ring (i.e. the ring with index F , all the area between ρ and ρ + 1).
So, applying (1), we will get:
λ
= λF +1 · r0 (34)
λ−1
1
= λF · r0 (35)
λ−1
1
r0 = F (36)
λ (λ − 1)
(37)

Physically r0 represents the radius of the inner circle (i.e. the lower bound
of the logarithmic part of the mapping). In fact, since λF · r0 represents the
boundary between RFF −1 and RFF , then λ0 · r0 = r0 will be the lower limit of
the RF0 .

4 Receptive Fields Shape


We assumed that the receptive fields in the last (external) ring were circular.
How does this affect the shape of all the remaining RF’s? If we call ΛP the
radius of a RF in the last ring and DP the distance between the center of this
RF and the center of the mapping, from the above formulas we have:

DP = λP · r0 (38)
DP
DP −1 = λP −1 · r0 = (39)
λ
In the same way:
Π
ΛP = DP · sin() (40)
Θ
Π 1 Π ΛP
ΛP −1 = DP −1 · sin( ) = · DP · sin( ) = (41)
Θ λ Θ λ
So each ring is proportional to any other ring in the logarithmic part of the
mapping, then the shape of the RF’s is still circular.
On the other hand it is intuitive to realize that in fovea everything changes:
while the width of each ring is constant, its lenght (its circumference) decreases
when we get closer to the center of the mapping. Since we decided to keep
constant the number of RF’s per ring and the overlapping ratio between the
RF’s, it is obvious to see that the shape changes from circular to elliptical, with
a constant radial axis and a decreasing tangential one.

You might also like