PERBAIKAN CITRA
description
Transcript of PERBAIKAN CITRA
PERBAIKAN CITRA
EE465: Introduction to Digital Image Processing 2
Introduction
Apa itu perbaikan citra? Proses peningkatan kualitas visual dari citra
karena proses pengambilan gambar yang tidak ideal. (Tidak fokus, gerakan blurring, illumminasi yang jelek, dll)
Menilai kualitas visual citra
EE465: Introduction to Digital Image Processing 3
A Plague in Image Processing: Blur Dari mana blur itu berasal?
Optical blur: kamera out-of-focus Motion blur: Kamera bergerak
Mengapa perlu deblurring? Mengganggu secara visual Target yang salah untuk kompressi Jelek untuk dianalisa
Numerous applications in astronomical imaging, biomedical imaging, biometrics ...
EE465: Introduction to Digital Image Processing 4
Restoration Images
EE465: Introduction to Digital Image Processing 5
Another Example
EE465: Introduction to Digital Image Processing 6
The Real (Optical) Solution
Before the repair After the repair
EE465: Introduction to Digital Image Processing 7
Application (II): Medical Image Deblurring (Deconvolution)
EE465: Introduction to Digital Image Processing 8
Application (III): Law Enforcement
Motion-blurred license plate image
EE465: Introduction to Digital Image Processing 9
Restoration Example
EE465: Introduction to Digital Image Processing 10
A Grand Challenge in Iris Recognition
out-of-focus iris image
EE465: Introduction to Digital Image Processing 11
h(m,n) +x(m,n) y(m,n)
),( nmw
• Linear degradation model
),( nmh blurring filter
),0(~),( 2wNnmw additive white Gaussian noise
Modeling Blurring Process
EE465: Introduction to Digital Image Processing 12
2
2
10log10w
zBSNR
Blurring SNR
The Curse of Noise
h(m,n) +x(m,n) y(m,n)
),0(~),( 2wNnmw
z(m,n)
EE465: Introduction to Digital Image Processing 13
h(m,n): 1D horizontal motion blurring [1 1 1 1 1 1 1]/7
BSNR=40dB
Image Example
BSNR=10dBx(m,n)
EE465: Introduction to Digital Image Processing 14
Mengapa butuh metode non linier ? Proses pemodelan degradasi citra dengan
linear system muncul terutama karena dapat dinyatakan secara matematis
Tetapi ada fenomena dalam visualisasi dan pencitraan secara fisik sulit dijelaskan degna persamaan sederhana secara linier Examples: relationship between illumination and
luminance on a complex surface, quantization of intensity values, Gamma-correction in display devices
EE465: Introduction to Digital Image Processing 15
Point Operations Overview
Point operations are zero-memory operations wherea given gray level x[0,L] is mapped to anothergray level y[0,L] according to a transformation
)(xfy
L
L
x
y
L=255: for grayscale images
EE465: Introduction to Digital Image Processing 16
Lazy Man Operation
L
L
x
y
xy
No influence on visual quality at all
EE465: Introduction to Digital Image Processing 17
Digital Negative
xLy
L x0
L
EE465: Introduction to Digital Image Processing 18
Contrast Stretching
Lxbybx
bxayax
axx
y
b
a
)(
)(
0
L x0 a b
ya
yb
200,30,1,2,2.0,150,50 ba yyba
EE465: Introduction to Digital Image Processing 19
Clipping
Lxbab
bxaax
ax
y
)(
)(
00
L x0 a b
2,150,50 ba
EE465: Introduction to Digital Image Processing 20
Range Compression
)1(log10 xcy
L x0
c=100
EE465: Introduction to Digital Image Processing 21
Kesimpulan operasi titik
Pemetaan f(x) mengahasilkan hasil perbaikan yang berbeda beda
Bagaimana memilih fungsi f(x) yang sesuai untuk sembarang citra?
One systematic solution is based on the histogram information of an image Histogram equalization and specification
EE465: Introduction to Digital Image Processing 22
Histogram based Enhancement
Histogram of an image represents the relative frequency of occurrence of various gray levels in the image
0 50 100 150 2000
500
1000
1500
2000
2500
3000
MATLAB function >imhist(x)
EE465: Introduction to Digital Image Processing 23
Why Histogram?
Histogram information reveals that image is under-exposed
0 50 100 150 200 250
0
0.5
1
1.5
2
2.5
3
3.5
4
x 104
It is a baby in the cradle!
EE465: Introduction to Digital Image Processing 24
Another Example
0 50 100 150 200 250
0
1000
2000
3000
4000
5000
6000
7000
Over-exposed image
EE465: Introduction to Digital Image Processing 25
How to Adjust the Image?
Histogram equalization Basic idea: find a map f(x) such that the histogram
of the modified (equalized) image is flat (uniform). Key motivation: cumulative probability function
(cdf) of a random variable approximates a uniform distribution
x
t
thxs0
)()(Suppose h(t) is the histogram (pdf)
EE465: Introduction to Digital Image Processing 26
Histogram Equalization
x
t
thLy0
)(Uniform
Quantization
L
t
th0
1)(Note:
L
1
x
t
ths0
)(
x
L
y
0
cumulative probability function
EE465: Introduction to Digital Image Processing 27
MATLAB Implementation
function y=hist_eq(x)
[M,N]=size(x);for i=1:256 h(i)=sum(sum(x= =i-1));End
y=x;s=sum(h);for i=1:256 I=find(x= =i-1); y(I)=sum(h(1:i))/s*255;end
Calculate the histogramof the input image
Perform histogramequalization
21/04/23 PERTEMUAN KE-6 28
Ic. Histogram Equalization
Histogram: diagram yang menunjukkan jumlah kemunculan grey level (0-255) pada suatu citra
Histogram processing: Gambar gelap: histogram cenderung ke sebelah kiri Gambar terang: histogram cenderung ke sebelah
kanan Gambar low contrast: histogram mengumpul di suatu
tempat Gambar high contrast: histogram merata di semua
tempat Histogram processing: mengubah bentuk histogram agar pemetaan gray level pada citra juga berubah
21/04/23 PERTEMUAN KE-6 29
Ic. Histogram Equalization in all grey level and all area (1)
Ide: mengubah pemetaan greylevel agar sebarannya (kontrasnya) lebih menyebar pada kisaran 0-255
Sifat: Grey level yang sering
muncul lebih dijarangkan jaraknya dengan grey level sebelumnya
Grey level yang jarang muncul bisa lebih dirapatkan jaraknya dengan grey level sebelumnya
Histogram baru pasti mencapai nilai maksimal keabuan (contoh: 255)
21/04/23 PERTEMUAN KE-6 30
Ic. Histogram Equalization in all grey level and all area (2)
- mengubah pemetaan grey level pada citra, dengan rumus:
citra pada ada yang maksimal levelgrey adalah L
1,.....,1,010
)()(0 0
Lkdanr
rpn
nrTs
k
k
j
k
jj
jkk
21/04/23 PERTEMUAN KE-6 31
Ic. Histogram Equalization in all grey level and all area (3)
Contoh : citra dengan derajat keabuan hanya berkisar 0-10
Citra awal: 3 5 5 5 45 4 5 4 45 3 4 4 44 5 6 6 3
Derajat Keabuan
Kemunculan
Probabilitas Kemunculan
Sk
SK * 10
Derajat keabuan baru
0 1 2 3 4 5 6 7 8 9 10
0 0 0 3 8 7 2 0 0 0 0
0 0 0 0.15 0.40 0.35 0.1 0 0 0 0
0 0 0 0.15 0.55 0.90 1 1 1 1 1
0 0 0 1.5 5.5 9 10 10 10 10 10
0 0 0 1 5 9 10 10 10 10 10
Citra Akhir: 1 9 9 9 59 5 9 5 59 1 5 5 55 9 10 10 1
21/04/23 PERTEMUAN KE-6 32
Ic. Histogram Equalization specific grey level (hist. specification)
Histogram equalization tidak dilakukan pada seluruh bagian dari histrogram tapi hanya pada bagian tertentu saja
EE465: Introduction to Digital Image Processing 33
Image Example
before after
EE465: Introduction to Digital Image Processing 34
Histogram Comparison
0 50 100 150 2000
500
1000
1500
2000
2500
3000
0 50 100 150 200 250 3000
500
1000
1500
2000
2500
3000
before equalization after equalization
EE465: Introduction to Digital Image Processing 35
Application (I): Digital Photography
EE465: Introduction to Digital Image Processing 36
Application (II): Iris Recognition
before after
EE465: Introduction to Digital Image Processing 37
Application (III): Microarray Techniques
before after
EE465: Introduction to Digital Image Processing 38
Frequency-Domain Techniques (I): Unsharp Masking
0),,(),(),( nmgnmxnmy
g(m,n) is a high-pass filtered version of x(m,n)
• Example (Laplacian operator)
)]1,()1,(
),1(),1([4
1),(),(
nmxnmx
nmxnmxnmxnmg
EE465: Introduction to Digital Image Processing 39
MATLAB Implementation
% Implementation of Unsharp masking
function y=unsharp_masking(x,lambda)
% Laplacian operationh=[0 -1 0;-1 4 -1;0 -1 0]/4;dx=filter2(h,x);y=x+lambda*dx;
EE465: Introduction to Digital Image Processing 40
0 50 100 150 200 2500
50
100
150
200
250
1D Example
0 50 100 150 200 2500
50
100
150
200
250
0 50 100 150 200 250 300-8
-6
-4
-2
0
2
4
6
8
0 50 100 150 200 250 30080
100
120
140
160
180
200
220
x(n) xlp(n)
g(n)=x(n)-xlp(n) )()()( ngnxny
EE465: Introduction to Digital Image Processing 41
2D Example
>roidemoMATLAB command
EE465: Introduction to Digital Image Processing 42
Frequency-Domain Techniques (II): Homomorphic filtering
),(),(),( yxryxiyxf
Illumination(low freq.)
reflectance(high freq.)
Basic idea:
),(ln),(ln),(ln yxryxiyxf
freq. domain enhancement
EE465: Introduction to Digital Image Processing 43
Image Example
before after
EE465: Introduction to Digital Image Processing 44
Summary of Nonlinear Image Enhancement Understand how image degradation occurs first
Play detective: look at histogram distribution, noise statistics, frequency-domain coefficients…
Model image degradation mathematically and try inverse-engineering
Visual quality is often the simplest way of evaluating the effectiveness, but it will be more desirable to measure the performance at a system level Iris recognition: ROC curve of overall system Microarray: ground-truth of microarray image segmentation
result provided by biologists