pdf template itextsharp c# : Add hyperlink to pdf SDK software service wpf .net asp.net dnn Thesis-hongtu5-part61

1.2. ALTERNATIVE VIDEO SEGMENTATION ALGORITHMS
39
Wiener filters are also expensive in computation and memory requirement.
N frame buffers are needed to store a history of frames. Background pixel
prediction and coefficients updating are very costly since a set of linear functions
are needed to obtain the value. p multiplication and p−1 additions are needed
for prediction, plus the solution of a linear equation of order p.
An alternative approach for linear prediction is to use Kalman filters. Basic
Kalman filter theory can be found in many literatures, e.g. [12,13,15]. Kalman
filters are widely used for many background subtraction applications, e.g. [13–
15]. It predicts the current background pixel value by recursive computing
from the previous estimate and the new input data. A brief formulation of the
theory is given in the below according to [13], while a detailed description of
Kalman filters can be found in [12].
Kalman filters provide an optimal estimate of the state of the process x
t
,
by minimizing the difference of the average of the estimated outputs and the
averageof the measures, which is characterized by the variance of the estimation
error. The definition of a state can vary in different applications, e.g. the
estimated value of the background pixel and its derivative in [15]. Kalman
filtering is performed in essentially two steps: prediction and correction: In the
prediction step, the current state of the system is predicted from the previous
state as
ˆx
t
=Aˆx
t−1
,
(1.7)
where A is the state transition matrix, ˆx
t−1
is the previous state estimate and
ˆx
t
is the estimation of the current state before correction. In order to minimize
the difference between the measure and the estimated state value I
t
−H
ˆ
x
t
.I
t
is the current observation and H is the transition matrix that maps the state
to the measurements. A variance of such difference is calculated based on
P
t
=AP
t−1
A
T
+Q
t
,
(1.8)
where Q
t
represents the process noise, P
t−1
is the previous estimation error
variance and P
t
is the estimation of error variance based on current prediction
state value. With a filter gain factor calculated by
K
t
=
P
t
C
T
CP
t
CT + R
t
,
(1.9)
where R
t
represents the variances of measurement noise and C is the transition
matrix that maps the state to the measurement. The corrected state estimation
becomes
ˆ
x
t
=
ˆ
x
t−1
+K
t
(I
t
−Hx
t
),
(1.10)
and the variance after correction is reduced to
P
t
=(1 − K
t
C)P
t
.
(1.11)
Add hyperlink to pdf - insert, remove PDF links in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Free C# example code is offered for users to edit PDF document hyperlink (url), like inserting and deleting
pdf links; add hyperlinks to pdf
Add hyperlink to pdf - VB.NET PDF url edit library: insert, remove PDF links in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Help to Insert a Hyperlink to Specified PDF Document Page
clickable links in pdf from word; add link to pdf acrobat
40
CHAPTER 1. SEGMENTATION
Ridder et al. [15] use both background pixel intensity value and its temporal
derivative B
t
and B
t
as the state value:
ˆx
t
=
B
t
B
t
,
(1.12)
and the parameters are selected as follows:
A=
1 0.7
0 0.7
and H =
1 0
.
(1.13)
The gain factor K
t
varies between a slow adaptation rate α
1
and a fast
adaptation rate α
2
depending on whether the current observation is a back-
ground pixel or not:
K
t
=
α
1
α
1
if I
t−1
is foreground, and
α
2
α
2
otherwise.
(1.14)
In summary, a recursive background prediction approach with Kalman fil-
ters can be obtained by combining equations 1.10,1.12,1.13 and 1.14, which can
be formulated as follows:
B
t
B
t
=A
B
t−1
B
t−1
+K
t
I
t
−HA
B
t−1
B
t−1

.
(1.15)
The Kalman filtering approach is efficient for hardware implementation.
From equation 1.15, three matrix multiplication with size of 2 are needed.
Memory requirement is low with one frame of estimated background pixel value
stored. The linear predictive approach is reported to achieve better results
than the many other algorithms e.g. median or mean filtering approaches,
especially in dealing with camouflage problem [11], where foreground pixels
holding similar color as that of the background pixels are undetected.
1.2.5 Mixture of Gaussian
So far, predictive methods have been discussed which model the background
scene as a time series and develop a linear dynamical model to recover the cur-
rent input based on past observations. By minimizing the variance between the
predicted value and past observations, the estimated background pixel is adap-
tive to the current situation where its value could vary slowly over time. While
this class of algorithms may work well with quasi-static background scenes with
slow lighting changes, it fails to deal with multi-modal situations, which will
be discussed in detail in the following sections. Instead of utilizing the order
of incoming observations to predict the current background value, a Gaussian
VB.NET Create PDF from Word Library to convert docx, doc to PDF in
Change Word hyperlink to PDF hyperlink and bookmark. VB.NET Demo Code for Converting Word to PDF. Add necessary references: RasterEdge.Imaging.Basic.dll.
pdf email link; change link in pdf file
VB.NET Create PDF from Excel Library to convert xlsx, xls to PDF
Change Excel hyperlink to PDF hyperlink and bookmark. VB.NET Demo Code for Converting Excel to PDF. Add necessary references: RasterEdge.Imaging.Basic.dll.
adding a link to a pdf in preview; pdf link open in new window
1.2. ALTERNATIVE VIDEO SEGMENTATION ALGORITHMS
41
distribution can be used to model a static background value by accounting for
the noise introduced by small illumination changes, camera jitter and surface
texture. In [17], three Gaussian are used to model background scenes for traffic
surveillance. The hypothesis is made that each pixel will contain the color of
either the road, the shadows or the vehicles. Stauffer et al. [18] generalized
the idea by extending the number of Gaussian for each pixel to deal with a
multi-modal background environment, which are quite common in both indoor
and outdoor environments. A multi-modal background is caused by repetitive
background object motion, e.g. swaying trees or flickering of a monitor. As a
pixel lying in the region where repetitive motion occurs will generally consists
of two or more background colors, the RGB value of that specific pixel will have
several pixel distributions in the RGB color space. The idea of multi-modal
distribution is illustrated by figure 1.3. From the figure, a typical indoor envi-
ronment in 1.3(a) consists of static background objects, which are stationary
all the time. A pixel value in any location will stay within one single distri-
bution over time. This is in contrast with the outdoor environment in figure
1.3(c), where quasi-static background objects e.g. swaying leaves of a tree, are
present in the scene. Pixel value from these regions contains multiple back-
ground colors from time to time, e.g. the color of the leave, the color of house
or something in between.
With multi-modal environments, the value of quasi-static background pixels
tends to jump between different distributions, which will be modeled by fitting
different Gaussians for each distribution. The idea of Mixture of Gaussians
(MoG) is quite popular and many different variants are developed [19–24] based
on it.
1.2.5.1 Algorithm Formulation
The Stauffer-Grimson algorithm is formulated as modeling a pixel process with
amixture of Gaussian distributions. A pixel process is defined as the recent
history values of each pixel obtained from a number of consecutive frames.
For a static background pixel process, the values will rather be pixel clusters
than identical points when they are plotted in a RGB color space. This is due
to the variations caused by many factors, e.g. surface texture, illumination
fluctuations, or camera noise. To model such a background pixel process, a
Gaussian distribution can be used with a mean equal to the averagebackground
color and variances accounting for the value fluctuation. More complicated
background pixel processes appear when it contains more than one background
object surfaces, e.g. a background pixel of a road is covered by leaves of a
tree from time to time. In such cases, a mixture of Gaussian distributions
are necessary to model multi-modal background distributions. Formally, the
Stauffer-Grimson algorithm tries to address background modeling as in the
How to C#: Basic SDK Concept of XDoc.PDF for .NET
You may add PDF document protection functionality into your C# program. Hyperlink Edit. XDoc.PDF for .NET allows C# developers to edit hyperlink of PDF document
change link in pdf; add hyperlink in pdf
VB.NET PDF: Basic SDK Concept of XDoc.PDF
You may add PDF document protection functionality into your VB.NET program. Hyperlink Edit. XDoc.PDF for .NET allows VB.NET developers to edit hyperlink of PDF
add url link to pdf; add hyperlinks to pdf online
42
CHAPTER 1. SEGMENTATION
50
100
150
200
250
300
50
100
150
200
(a) A typical indoor environment taken in
the staircase.
70
80
90
100
110
60
70
80
90
30
40
50
60
70
80
90
R
(b) A pixel value sampled over time in
the indoor environment contains uni-modal
pixel distributions.
50
100
150
200
250
300
50
100
150
200
(c) A dynamic outdoor environment con-
taining swaying trees.
160
180
200
220
190
200
210
220
230
180
190
200
210
220
230
240
R
G
B
(d) A pixel value sampled over time in the
region that contain leaves of a tree will gen-
erally become multi-modal distributions in
the RGB color space.
Figure 1.3:
Background pixel distributions taken in different environ-
ments possess different properties in the RGB color space.
following:
Each pixel is represented by a set of Gaussian distributions k ⊂ {1,2...K},
where the number of distributions K is assumed to be constant (usually be-
tween 3 and 7). Some of the K distributions correspond to background objects
and the rest are regarded as foreground. Each of the mixture of Gaussians is
weighted with a parameter ω
k
,which represents probability of current obser-
vation belonging to the distribution, thus the equation
Σ
K
k=1
ω
k
=1.
(1.16)
The probability of the current pixel value X being in distribution k is cal-
C# Create PDF from Word Library to convert docx, doc to PDF in C#.
Change Word hyperlink to PDF hyperlink and bookmark. C#.NET Sample Code: Convert Word to PDF in C#.NET Project. Add necessary references:
add links to pdf; c# read pdf from url
.NET PDF Document Viewing, Annotation, Conversion & Processing
Extract hyperlink inside PDF. PDF Write. Insert text, text box into PDF. Edit, delete text from PDF. Insert images into PDF. Edit, remove images from PDF. Add,
adding links to pdf; adding links to pdf document
1.2. ALTERNATIVE VIDEO SEGMENTATION ALGORITHMS
43
0
50
100
150
200
250
300
0
0.005
0.01
0.015
0.02
0.025
Color intensity level
Probability
Gauss1
Mixture of Gauss
Gauss2
Gauss3
Figure 1.4:
Three Gaussian distributions are plotted in the figure with
their mean and variance as {80, 20}, {100, 5}, {200, 10} respectively.
Their prior weight is specified as {0.2, 0.2, 0.6}. The probability of a
new pixel observation belonging to one of the distributions can be seen
as a sum of three Gaussian distributions [25].
culated as:
f(X|k) =
1
(2π)
n
2
k
|
1
2
e
1
2
(X−µ
k
)
T
Σ
−1
k
(X−µ
k
)
,
(1.17)
where µ
k
is the mean and Σ
k
is the covariance matrix of the K
th
distribution.
Thus, the probability of a pixel belonging to one of the Gaussian distribution is
the sum of probabilities of belonging to each of the Gaussian distribution, which
is illustrated in 1.4 [25]. A further assumption is usually made that the different
color component is independent of each other so that the covariance matrix
is diagonal - more suitable for calculations, e.g. matrix inversion. Stauffer
et.al. go even further in assuming that the variances are identical, implying for
example that deviations in the red, green, and blue dimensions of a color space
have the same statistics. While such simplification reduce the computational
complexity, it has certain side effects which will be discussed in the following
sections.
VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to
Export PowerPoint hyperlink to PDF. VB.NET Demo Code for Converting PowerPoint to PDF. Add necessary references: RasterEdge.Imaging.Basic.dll.
check links in pdf; adding a link to a pdf
C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF
Export PowerPoint hyperlink to PDF in .NET console application. C#.NET Demo Code: Convert PowerPoint to PDF in C#.NET Application. Add necessary references:
clickable pdf links; pdf link to email
44
CHAPTER 1. SEGMENTATION
The most general solution to the foreground segmentation can be briefly
formulated as: at each sample time t, the most likely distribution k from a set
of observations is estimated from X, along with a procedure for demarcating
the foreground states from the background states.
This is done by the following: A match is defined as the incoming pixel
within J times the standard deviation off the center, where in [18] J is selected
as 2.5. Mathematically, the portion of the Gaussian distributions belonging to
the background is determined by
B= argmin
b
b
k=1
ω
k
>H
,
(1.18)
where H is a predefined parameter and ω
k
is the weight of distribution k. If a
match is found, the matched distribution is updated as:
ω
k,t
=(1 − α)ω
k,t−1
(1.19)
µ
t
=(1 − ρ)µ
t−1
+ρX
t
(1.20)
σ
2
=(1 − ρ)σ
2
t−1
+ρ(X
t
−µ
t
)
T
(X
t
−µ
t
);
(1.21)
where µ, σ are the mean and variance respectively, α, ρ are the learning factors,
and X
t
are the incoming RGB values. The mean, variance and weight factors
are updated frame by frame. For those unmatched, the weight is updated
according to
ω
k,t
=(1 − α)ω
k,t−1
,
(1.22)
while the mean and the variance remain the same. If none of the distributions
are matched, the one with the lowest weight is replaced by a distribution with
the incoming pixel value as its mean, a low weight and a large variance.
1.2.6 Kernel Density Model
In [26], it was discovered that the histogram of a dynamic background in an
outdoor environment covers a wide spectrum of gray levels (or intensity level
of different color component), and all these variations occur in a short period
of time, e.g. 30 seconds. Modeling such a dynamic background scene with a
limited number of Gaussian distributions are not feasible.
In order to adapt fast to the very recent information about an image se-
quence, a kernel density function background modeling can be used which only
use a recent history of past values to distinguish foreground from background
pixels.
Given a history of past values x
1
,x
2
,...x
N
,a kernel density function can be
formulated as the following:
1.2. ALTERNATIVE VIDEO SEGMENTATION ALGORITHMS
45
The probability of a new observation having a value of x
t
can be calculated
using a density function:
Pr(x
t
)=
1
n
N
i=1
K(x
t
−x
i
).
(1.23)
What this equation actually indicates is that a new background observation
can be predicted by the combination of its recent past history samples. If K is
chosen to be a Gaussian distribution, then the density estimation becomes
Pr(x
t
)=
1
N
N
i=1
1
(2π)
d
2
|Σ|
1
2
e
1
2
(x
t
−x
i
)
T
Σ
−1
(x
t
−x
i
)
.
(1.24)
Under similar assumptions as the mixture of Gaussian approach, if different
color components are independent of each other, the covariance matrix Σ be-
comes
Σ=
δ
2
1
0
0
0 δ
2
2
0
0
0 δ2
3
(1.25)
and the density estimation is reduced to
Pr(x
t
)=
1
N
N
i=1
d
j=1
1
2πδ
2
j
e
1
2
(x
t
j
−x
i
j
)
2
δ
2
j
.
(1.26)
From the definition of probability estimation, a foreground/background
classification process can be carried out by checking the probability value
against a threshold value, e.g. if Pr(xt) < th, the new observation can not
be predicted by its past history, thus recognized as a foreground pixel. Kernel
density estimation generalize the idea of the Gaussian mixture model, where
each single sample of the N samples is considered to be a Gaussian distribu-
tion by itself. Thus it can also handle multi-modal background scenarios. The
probability calculation only depends on its N past values, which makes the
algorithm quickly adapt to the dynamic background scene.
Regarding hardware implementation complexity, the kernel density model
needs to store N past frames, which makes it a memory intensive task. The
calculation of probability in equation 1.26 is costly. In [26], a look-up table
is suggested to store precalculated value for each x
t
−x
i
. This will further
increase the requirement on the memory.
1.2.7 Summary
Awide range of segmentation algorithms have been discussed, each with re-
lated robustness to different situations and each with different computational
46
CHAPTER 1. SEGMENTATION
Table 1.1:
Algorithm Comparison.
FD
Median
LPF
MoG
KDE
Algorithm per-
formance
fast
fast
medium
medium
slow
Memory
re-
quirement
1frame
50 −300
frames
1frame of
mean
1 frame
of
k
Gaus-
sian
parame-
ters
n
frames
of
k
Gaus-
sian
parame-
ters
Segmentation
quality
worst
low
acceptable
good
best
Hardware
complexity
very low
medium
low
to
medium
low
high
complexity. A comparison is made in [11] on segmentation qualities of some of
the algorithms. In fact, an unbiased comparison with a significant benchmark
is absent. No perfect system exists to handle all kinds of issues within differ-
ent background models. Furthermore, for realistic implementation of such a
system, trade-offs have to be made between system robustness (quality) and
system performance (frame rate, resolution, etc.). From the discussion above,
asummary is made in Table 1.1 concerning Algorithm performance, memory
requirements, the segmentation quality and hardware complexity.
From the table, it can be seen that Stauffer-Grimson algorithm gives good
segmentation quality with relatively low hardware complexity and memory
requirements. In [18], a frame rate of 11-13 FPS is obtained for a frame size
of 160×120 on an SGI O2 workstation. In our software implementation on an
AMD 4400+ processor, a frame rate of 4-6 FPS is observed for video sequences
with 352×288 resolution.
In this thesis, the hardware accelerator design is based on Stauffer-Grimson
algorithm with several modifications for better segmentation quality and hard-
ware efficiency. A variety of memory access reduction schemes are implemented,
resulting in more than 70% memory bandwidth reduction.
1.3 Algorithm Modifications
The Mixture of Gaussian algorithm works efficiently only in controlled envi-
ronments. Issues regarding algorithm weaknesses in different situations are
addressed in many publications [19–21, 23]. In this section, instead of mainly
1.3. ALGORITHM MODIFICATIONS
47
50
100
150
200
250
300
50
100
150
200
Figure 1.5:
Indoor environment taken in the lab.
focusing on improving algorithm robustness, we propose several modifications
to the algorithm, with a major concern on their impacts that could lead to
potentially improved hardware efficiency.
1.3.1 Color Space Transformation
In theory, multi-modal situations only occur when repetitive background ob-
jects are present in the scene. However, this is not always true in practice.
Consider an indoor environment where the illumination comes from a fluores-
cence lamp. An example video sequence of such environment is taken from our
lab, which is shown in figure 1.5. In our experiments, 5 pixels are picked up
evenly from the scene are measured over time. Their RGB value distributions
are drawn in figure 1.6. Clearly from the figure, instead of 5 sphere like pixel
distributions, the shapes of the pixel clusters are rather cylindrical. Pixel val-
ues tend to jump around more in one direction than another in the presence
of illumination variations caused by the fluorescence lamp and camera jitter.
This should be distinguished from the situation where one sphere distribution
is moving slowly towards one direction due to slight daylight changes. Such
acase is handled by updating the corresponding mean values in the original
background model. Without an upper bound for the variance, the sphere de-
48
CHAPTER 1. SEGMENTATION
80
90
100
110
120
60
80
100
120
60
80
100
120
140
R
RGB SPACE
G
B
Figure 1.6:
Five distributions in RGB color space.
scribing the distribution tends to grow until it covers nearly every pixel in the
most distributed direction, thus taking up a large space such that most of it
does not belong to the distribution (sphere A in figure 1.7). A simple solution
to work around this problem is to set an upper limit for the variance, e.g. the
maximum value of the variance in the least distributed direction. The result is
multi-modal distributions represented as a series of smaller spheres (B-E in the
same figure). Although a background pixel distribution is modeled more pre-
cisely by such a method, several Gaussian distributions are inferred which are
hardware costly in terms of extra parameter updating and storage. In [27] D.
Magee proposed a cylindrical model to address the issue, with primary axes of
all distribution cylinders pointing towards the origin. However, more parame-
ters are needed for each cylindrical distribution than the spherical counterpart.
The coordinates of a cylindrical system comprises distance, two angles and a
diameter and the height. Furthermore, it is hardware costly computation to
transform RGB values to cylindrical coordinates, e.g. division and square root.
In addition, not every distribution cylinder is oriented towards the origin, see
the left middle distribution in figure 1.6.
To be able to model background pixels using a single distribution but with-
out much hardware overhead, color space transformation is employed in our
implementation. Both HSV and Y C
b
C
r
space were investigated, and their
Documents you may be interested
Documents you may be interested