0% found this document useful (0 votes)
46 views10 pages

Data Analytics Certification

The document discusses singular value decomposition (SVD) and its applications in image compression. SVD decomposes a matrix into three component matrices, allowing the original matrix to be approximated by retaining only the most important components. Using SVD, an image can be compressed by approximating it with its top k principal components, reducing the file size while maintaining image quality.

Uploaded by

Prathyusha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views10 pages

Data Analytics Certification

The document discusses singular value decomposition (SVD) and its applications in image compression. SVD decomposes a matrix into three component matrices, allowing the original matrix to be approximated by retaining only the most important components. Using SVD, an image can be compressed by approximating it with its top k principal components, reducing the file size while maintaining image quality.

Uploaded by

Prathyusha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Singular Value

Decomposition (SVD)
Matrix Transpose
Matrix Multiplication
Matrix Inverse
If, A× B = I ,identity matrix
Then, B= A -1

Identity matrix :
1 0 ... 0 0
0 1 ... 0 0
 
. . . . . . ... . 
 
0 0 ...1 0
0 0 ... 0 1
 
X= UΣVT U and V are
Orthonormal
matrices

rxr diagonal
matrix with r
non-zero
diagonal
elements
T
X U ∑ V
1 0 0 0 2 0 0 1 0 4 0 0 0 0 1 0 0 0
0 0 3 0 0 0 1 0 0 0 3 0 0 0 0 1 0 0
= x x
0 0 0 0 0 0 0 0 -1 0 0 2.24 0 0.45 0 0 0 0.89
0 4 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0

OPTIONAL R Code

> M=matrix(c(1,0,0,0,0,0,0,4,0,3,0,0,0,0,0,0,2,0,0,0),nrow=4,ncol=5)
> X=svd(M)
> X$u
> X$d
> X$v
> X$u%*%diag(X$d)%*%t(X$v)
Applications of SVD in image
processing
– closest rank-k approximation for a matrix
X k
= ∑ u i Σi vi
k T
X i =1

– Each term in the summation expression


above is called principal image
Original matrix (X) Original size
1 0 0 0 2 4*5=20 bytes
0 0 3 0 0
0 0 0 0 0
0 4 0 0 0
T
X U ∑ V
1 0 0 0 2 0 0 1 0 4 0 0 0 0 1 0 0 0
0 0 3 0 0 0 1 0 0 0 3 0 0 0 0 1 0 0
= x x
0 0 0 0 0 0 0 0 -1 0 0 2.24 0 0.45 0 0 0 0.89
0 4 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0

k=1
0x 4x 0 1 0 0 0= 0 0 0 0 0 Compressed size
0 0 0 0 0 0 4*1+1+1*5=10 bytes
0 0 0 0 0 0
1 0 4 0 0 0
k=2
0 0x 40x 0 1 0 0 0= 0 0 0 0 0 Compressed size
0 1 03 0 0 1 0 0 0 0 3 0 0 4*2+2+2*5=20 bytes
0 0 0 0 0 0 0
1 0 0 4 0 0 0

k=3
00 1x 40 0x 0 1 0 0 0= 1 0 0 0 2 Compressed size
01 0 03 0 0 0 1 0 0 0 0 3 0 0 4*3+3+3*5=30 bytes
00 0 0 0 2.24 0.45 0 0 0 0.89 0 0 0 0 0
10 0 0 4 0 0 0

k=4
00 1 0 4 0 0 0 0 1 0 0 0= 1 0 0 0 2 Compressed size
01 0 0 0 3 0 0 0 0 1 0 0 0 0 3 0 0 4*4+4+4*5=40 bytes
x x
00 0 -1 0 0 2.24 0 0.45 0 0 0 0.89 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 1 0 0 4 0 0 0
The image compression example in
http://journal.batard.info/post/2009/04/08/svd-
fun-profit
• Original size = 384*384 bytes = 147,456
bytes
• k=1: 384*1+1+1*384=769 bytes
• k=10: 384*10+10+10*384=7,690 bytes
• k=20: 384*20+20+20*384=15,380 bytes
• k=50: 384*50+50+50*384=38,450 bytes
• k=100: 384*100+100+100*384=76,900
bytes
• k=200: 384*200+200+200*384=153,800
bytes

You might also like