Next: Data model for extracting
Up: Roads Extraction using a
Previous: Road network extraction
Bayesian approach
Notations :
- D : the observed image
- T : finite grid on the image
-
: the gray level of a pixel
Hypothesis : the line network, S, we want to extract is
composed of a finite number of segments si
![\begin{displaymath}\begin{array}{l}
S=\{s_{i},i=1,..., n \}\\
n \in N
\end{array}\end{displaymath}](img16.gif) |
(1) |
We have :
-
si=(pi,mi) : a segment in the configuration
-
pi=(xi,yi) : the coordinates of its center
-
: the vector containing the width,
the length and the orientation of the segment
Problem :
to detect the number of the segments, their location and their
parameters
Solution : Bayes rule
![\begin{displaymath}P(S/D)=\frac{P(D/S)P(S)}{P(D)}
\end{displaymath}](img18.gif) |
(2) |
MAP estimation :
![\begin{displaymath}\hat{S} \approx \arg max _{S}\{P(D/S)P(S)\}
\end{displaymath}](img19.gif) |
(3) |
Considering we have a Gibbs point process :
![\begin{displaymath}f(S/D) \propto \beta^{n}\exp(- U)=\beta^{n}\exp( -(U_{D}(S)+U_{P}(S)))
\end{displaymath}](img20.gif) |
(4) |
The estimator of the line network is :
![\begin{displaymath}
\hat{S}=\arg min_{S}\{U_{D}(S)+U_{P}(S)-n\log\beta\}
\end{displaymath}](img21.gif) |
(5) |
Candy model
The parameters of a segment are independent random variables :
-
: the coordinates of the center of
the segment
-
: the
width of the segment
-
: the
length of the segment
-
: the orientation of
the segment
is a uniform law.
State of segment : a segment has two extremities to be connected with
-
: no connection
-
s=st||q : one connected extremity
- s=stq : two connected extremities
Probability density :
![\begin{displaymath}
f(S) \propto \beta^{n}\prod_{s_{i} \in S} g(i) \prod_{s_{i} \diamond s_{j}, i<j} h(s_{i},s_{j})
\end{displaymath}](img28.gif) |
(6) |
State penalties : the short segments and the free segments are penalized
![\begin{displaymath}g(s_{i})=g_{1}(s_{i}) \times g_{2}(s_{i})
\end{displaymath}](img29.gif) |
(7) |
![\begin{displaymath}g_{1}(s_{i})=exp\left (\frac{h_{s(i)}-h_{max}}{h_{max}}\right)
\end{displaymath}](img30.gif) |
(8) |
![\begin{displaymath}g_{2}(s_{i})=\left\{
\begin{array}{l}
g_{21}, \quad s_{i}=s...
... q}\\
g_{23}= 1, \quad s_{i}=s_{i}^{tq}
\end{array} \right.
\end{displaymath}](img31.gif) |
(9) |
We have :
.
Rejection interactions : we penalize the overlaping segments,
but we enable the crossing segments.
Figure:
Rejection region for a segment
|
Figure 2:
Rejection interactions btw segments
|
Attraction interactions : to form a network, the segments
attract each other. We penalize the segments which are not well aligned.
Figure 3:
Attraction region for a segment
|
Figure 4:
Attraction interactions btw segments
|
If there is a rejection interaction btw two segments :
![\begin{displaymath}h(s_{i},s_{j})=h_{r} \leq 1
\end{displaymath}](img37.gif) |
(10) |
If there is an attraction interaction btw two segments, the function h is
penalizing the orientation between segments :
![\begin{displaymath}h(s_{i},s_{j})=h_{a} \leq 1 \quad \text{if} \quad \tau > \tau_{max}
\end{displaymath}](img38.gif) |
(11) |
For each segment, the local prior energy is:
![\begin{displaymath}U_{P}(s_{i})= - \log g(s_{i})-\sum_{s_{i} \diamond s_{j}, i \neq j} \log h(s_{i},s_{j})
\end{displaymath}](img39.gif) |
(12) |
hence for the configuration S :
UP(S) |
= |
![$\displaystyle \sum_{s_{i} \in S} U_{P}(s_{i})$](img40.gif) |
|
|
= |
![$\displaystyle -\sum_{s_{i}\in S} \log g(s_{i})+\sum_{s_{i}
\diamond s_{j}, i < j} \log h(s_{i},s_{j})$](img41.gif) |
(13) |
Next: Data model for extracting
Up: Roads Extraction using a
Previous: Road network extraction
Radu Stoica
2000-04-17