Singular Value Decomposition

pancakesnightmuteAI and Robotics

Nov 5, 2013 (3 years and 7 months ago)

195 views

Singular Value Decomposition


in Digital Signal Processing


By Tin Sheen

Signals


Flow of information


Measured quantity that varies with time (or
position)


Electrical signal received from a transducer
(microphone, thermometer, accelerometer,
antenna, etc.)


Electrical signal that controls a process

SVD background


The Singular Value Decomposition (SVD) of a rectangular matrix
A

is a decomposition of the form


A = U S V
T



U

and
V

are orthogonal matrices


and
S

is a diagonal matrix


The singular vectors form orthonormal bases, and the important
relation


A v
i

= s
i

u
i



shows that each right singular vectors is mapped onto the
corresponding left singular vector, and the "magnification factor" is
the corresponding singular value.


What is Digital Signal Processing?


Digital signal processing

(
DSP
) is the study
of signals in a digital representation and the
processing methods of these signals.



DSP includes subfields like: audio signal
processing, control engineering, digital image
processing and speech processing.


Noise reduction


The SVD has also applications in digital signal processing, e.g., as a
method for noise reduction. The central idea is to let a matrix
A

represent the noisy signal, compute the SVD, and then discard small
singular values of
A
. It can be shown that the small singular values
mainly represent the noise, and thus the rank
-
k

matrix
A
k

represents
a filtered signal with less noise.

SVD’s usefulness


SVD is sufficient and is the most optimal in
given image.


It is packed with energy in a given number of
transformation coefficients is maximized.


Easy to calculate.


Normal vs Noised Image

Block SVD filtering algorithm




Let the original, non
-
corrupted image F be represented as KxL matrix. Adding the noise to the
original F image will produces the noised image G of the same size


G = F + N


Where N = random KxL noise field


G will be divided into bxb matrix image


G
ij

= U
ij

S
ij

V
ij
T

where i = 1,2,3,4,…k; j =1,2,3,4,…,l


Where U
ij

is the left singular vector, S
ij

is the diagonal, and V
ij

is the right singular vector


From here we can calculate the mean value of the rank (rank obtained from G
ij

* S
ij
)

SVD’s calculation


The proposed algorithm has two basic steps: first, the noise variance
(
variance

of a random variable (or somewhat more precisely, of a
probability distribution) is a measure of its statistical dispersion, indicating
how its possible values are spread around the expected value) is
estimated,


And then filtering is performed on singular values and vectors. Noised
image is divided into square blocks of size
bxb
. For each block the singular
value decomposition is performed. In the consequent step, the average sum
of the last
t
singular values is calculated over all image




Noised calculation


Previously calculated SVD of image blocks will now be used for filtering.


First step in filtering is decreasing of noised singular value
s
i jr

for every image block :


ŝ
i jr

= s
i jr



p
1

* n
s

*w(r)


where ŝ
i jr

is filtered singular value,

p
1

is image dependent parameter and

w(r)
is a
weighting function that determines percentage of estimated noise variance to be
subtracted from noised


singular value

s
i jr

. The weighting function used in this work is chosen to be:


Implementation of DSP

Conclusion


Digital signal processing is a stealth technology. It is
the core enabling technology in everything from your
cell phone to the Mars Rover. It goes much further
than just enabling a one
-
time breakthrough product.
It provides ever
-
increasing capability; compare the
performance gains made by dial
-
up modems with
the recent performance gains of DSL and cable
modems. Remarkably, digital signal processing has
become ubiquitous with little fanfare, and most of its
users are not even aware of what it is.