Image Processing Reference
In-Depth Information
Algorithm :
U
PDATE
C
ELL
V
ECTOR
(
cell
,
grid
,
m
,
φ )
comment:
Update vector
vec
in a Cell
c
by querying neighbors in Grid
g
procedure
N
EIGHBOR
C
ELLS
(
c
,
g
)
neighborCells
ₐ
A
RRAY
(
9
)
for
i
ₐ−
1
to
1
for
j
ₐ−
1
to
1
⊨
⊩
nc
ₐ
c
.
col
+
i
nr
ₐ
c
.
row
+
j
if
nc
<
0
,
nc
ₐ
grid
.
cols
−
1
if
nc
>
grid
.
cols
−
1
,
nc
ₐ
0
if
nr
<
0
,
nc
ₐ
grid
.
rows
−
1
if
nr
>
grid
.
rows
−
1
,
nr
ₐ
0
neighborCells
.
push
(
grid
[
nc
][
nr
])
return
(
neighborCells
)
do
procedure
M
AKE
R
ECT
(
p
)
w
ₐ
g
.
width
/
g
.
cols
h
ₐ
g
.
height
/
g
.
rows
pLL
ₐ
vec
2
(
p
.
x
−
w
/
2
,
p
.
y
−
h
/
2
)
pU R
ₐ
vec
2
(
p
.
x
+
w
/
2
,
p
.
y
+
h
/
2
)
return
(
R
ECT
(
pLL
,
pU R
))
procedure
P
ARTIAL
(
pos
,
nc
,
nv
)
p
ₐ
I
NTERSECT
R
ECTS
(
M
AKE
R
ECT
(
pos
)
,
M
AKE
R
ECT
(
nc
.
pos
+
nv
))
return
(
nv
∗
p
)
procedure
S
TREAM
V
ECTOR
(
c
,
nc
,
mr
,
ao
)
return
(
vec
2
(
nc
.
mag
∗
mr
,
nc
.
ang
+
ao
))
main
mag
ₐ
ang
ₐ
0
.
0
p
ₐ
cell
.
pos
arr
ₐ
N
EIGHBOR
C
ELLS
(
cell
,
grid
)
for
i
ₐ
0
to
9
⊨
nc
ₐ
arr
[
i
]
fv
ₐ
S
TREAM
V
ECTOR
(
cell
,
nc
,
m
,
0
.
0
)
lv
ₐ
S
TREAM
V
ECTOR
(
cell
,
nc
,
1
.
0
−
m
/
2
.
0
,−
φ
)
rv
ₐ
S
TREAM
V
ECTOR
(
cell
,
nc
,
1
.
0
−
m
/
2
.
0
,
φ
)
v
ₐ
P
ARTIAL
(
p
,
nc
,
fv
)+
P
ARTIAL
(
p
,
nc
,
lv
)+
P
ARTIAL
(
p
,
nc
,
rv
)
mag
ₐ
mag
+
v
.
mag
ang
ₐ
ang
+
v
.
ang
c
.
vec
ₐ
vec
2
(
mag
,
ang
)
do
⊩
Search WWH ::
Custom Search