Pengolahan dalam Domain Spasial dan Restorasi Citra

1 / 40

# Pengolahan dalam Domain Spasial dan Restorasi Citra - PowerPoint PPT Presentation

Pengolahan dalam Domain Spasial dan Restorasi Citra. Pengolahan Citra Digital Materi 4. Eko Prasetyo Teknik Informatika Universitas Muhamamdiyah Gresik 2011. Konsep Domain Spasial. Domain Spasial  Operasi pemfilteran secara linear.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Pengolahan dalam Domain Spasial dan Restorasi Citra' - elliott-boyle

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Pengolahandalam Domain SpasialdanRestorasi Citra

Pengolahan Citra Digital

Materi 4

Eko Prasetyo

TeknikInformatika

UniversitasMuhamamdiyah Gresik

2011

Konsep Domain Spasial
• Domain Spasial Operasipemfilteransecara linear.
Konsep Domain Spasial
• Ada 2 konsepketikamelakukan filter spasial linier, yaitucorrelation (korelasi)danconvolution (konvolusi).
KorelasidanKonvolusi 2 dimensi

korelasi filter w(x,y) sebuahcitra f(x,y) berukuran m x n dituliskandengan w(x,y)  f(x,y)

w(x,y)  f(x,y) =

konvolusi w(x,y) dan f(x,y) dituliskan w(x,y)  f(x,y)

w(x,y)  f(x,y) =

R = w1z1 + w2z2 + … + wmnzmn

= wkzk

= wTz

R = w1z1 + w2z2 + … + w9z9

= wkzk

= wTz

Toolbox untukmelakukan filter linear spasialadalahfungsiimfilterdengan formula:

g = imfilter(f, w, filtering_mode, boundary_option, size_option);

Pemfilterandengankorelasi

>> f=rgb2gray(i);

>> f=im2double(i);

>> w=ones(31);

>> g = imfilter(f,w);

>> figure, imshow(g, [ ]);

>> grep = imfilter(f,w,'replicate');

>> figure, imshow(grep, [ ]);

>> gsym = imfilter(f,w,'symmetric');

>> figure, imshow(gsym, [ ]);

>> gcir = imfilter(f,w,'circular');

>> figure, imshow(gcir, [ ]);

>> f8 = im2uint8(f);

>> gf8 = imfilter(f8, w, 'replicate');

>> figure, imshow(gf8, [ ]);

citraasli

denganopsi ‘default’

denganopsi ‘symmetric’

denganopsi ‘replicate’

denganopsi ‘circular’

denganopsi ‘replicate’ dantipe uint8

Filter Penghalusan (Smoothing)
• Digunakanuntuk: mengaburkan (blurring) danuntukmengurangi noise padacitra.
• Pengurangan noise dapatdilakukanoleh blurring dengan filter linear maupun filter non-linear.
• Filter Linear
• Disebutdenganaveraging filter, disebutjugalowpass filter.

rata-rata level intensitaspikseldalamtetangga 3 x 3 yang didefinisikanoleh mask dengan w=1/9

Filter Penghalusan (Smoothing) (2)

Filter rata-rataberukuran 3x3 (bentuksepertidibawah)

Opsi Boundary: default (0 disemua pad)

Input: 4x4 image

Output: 4x4 image

(smoothed)

Gray scale = [0,7]

Gray scale = [0,7]

Filter Penghalusan (Smoothing) (3)

>> w3=ones(3)/9;

>> w5=ones(5)/25;

>> w9=ones(9)/81;

>> w21=ones(21)/441;

>> w35=ones(35)/1225;

• >> g3=imfilter(f,w3);
• >> figure, imshow(g3, [ ]);
• >> g5=imfilter(f,w5);
• >> figure, imshow(g5, [ ]);
• >> g9=imfilter(f,w9);
• >> figure, imshow(g9, [ ]);
• >> g21=imfilter(f,w21);
• >> figure, imshow(g21, [ ]);
• >> g35=imfilter(f,w35);
• >> figure, imshow(g35, [ ]);

Hasil filter rata-rata denganukuran mask 3, 5, 9, 21,35

Filter Penghalusan (Smoothing) (4)

Filter rata-rataberukuran 3x3 (bentuksepertidibawah)

Opsi Boundary: default (0 disemua pad)

Input: 4x4 image

Output: 4x4 image

(smoothed)

Gray scale = [0,7]

Gray scale = [0,7]

Penghalusandengan Filter non-Linear (Order-Statistic)
• Order-statistic adalah filter spasial non-linear yang hasilnyadidasarkanpadaurutan (rangking) piksel yang mengisi area citra yang diapit filter dankemudianmenggantinilaidaripusatpikseldengannilai yang ditentukanolehhasilperangkingan.
• Filter yang paling dikenal: median filter.
• Filter median menggantinilaipikseldengan median darinilaiintensitasdalamtetanggadaripikseltersebut (nilaiaslidaripikseltersebuttermasukdalamperhitungan median)
• Baikuntukmenghilangkansalt-and-peppernoisekarenasifat median yang menjauhihitamdanputih.

Toolbox fungsi ordfilt2 menghasilkanorder-statistic filters.

g = ordfilt2(f, order, domain)

order adalahnilaike-x hasilpengurutantetangga yang ditentukanolehbukannoldalam domain.

Filter median 3x3

Citra asli

median filter

Penghalusandengan Filter non-Linear (Order-Statistic) (2)
• Filter lain yang diberikanolehstatistikdasar. Jikamenggunakannilaiterbesarurutanmakaakanmenjadimax filter:
• Bergunauntukmencarititik-titik yang paling terangdalamcitra.
• Hasildari filter max 3 x 3 diberikanoleh R = max{zk|k = 1, 2, …, 9}.
• Filter order-statistic denganmengambilnilaiterkecildisebutmin filter :
• Digunakanuntuktujuanmencarititik-titik yang paling gelap
• Hasildari filter min 3 x 3 diberikanoleh R = min{zk|k = 1, 2, …, 9}.

max filter

Citra asli

Penghalusandengan Filter non-Linear (Order-Statistic) (3)
• Toolbox filter spasial non-linear adalahfungsi ordfilt2 yang menghasilkanorder-statistic filters.
• g = ordfilt2(f, order, domain)
• order adalahnilaike-x hasilpengurutantetangga yang ditentukanolehbukannoldalam domain.
• Untuk filter median:
• g = ordfilt2(f, median(1:m*n), ones(m, n))
• g = medfilt2(f, [m n], padopt)
• [m n] mendefinisikantetanggaukuran m x n dimana median dihitung,
• padoptmenetapkansatudaritigapilihan border-padding: ‘zeros’ (default), ‘symmetric’ dimana f diperluassecarasimetrisdenganmirror-reflectingpadabordernya, dan ‘indexed’ dimana f dilapisidengansatujikamenggunakan class double dan 0 jika yang lain
• Untuk filter max:
• g = ordfilt2(f, m*n, ones(m, n))
• Untuk filter min:
• g = ordfilt2(f, 1, ones(m, n))
Penghalusandengan Filter non-Linear (Order-Statistic) (4)

>> fb = imnoise(f,'salt & pepper', 0.2);

>> gm = medfilt2(fb);

>> gm2 = medfilt2(fb,[5 5]);

>> gm3 = medfilt2(fb,[7 7]);

Citra asli

Salt and Pepper noise

Hasil median 3x3

Hasil median 5x5

Hasil median 7x7

Filter Penajaman (Sharpening)
• Penajaman (sharpening) adalahuntukmemperterang (highlight) dalamintensitascitra.
• Turunandarifungsi digital didefinisikandenganistilahdifferences.

turunanpertamafungsi f(x,y) satudimensi

turunankedua f(x) sebagaidiferensial

Filter Penajaman: Laplacian
• Filter Laplaciansebuahcitra f(x,y) dinyatakanoleh2f(x,y) yang didefinisikandengan:
• Umumnyamenggunakanperkiraan digital turunankedua:
• dan :
Filter khususdalammatlab: fspecial()
• w = fspecial(‘type’, parameter)
• dimana ‘type’ adalahjenis filter yang digunakan, sedangkan parameter mendefinisikan filter tetapannya

>> w=fspecial('laplacian',0)

w =

0 1 0

1 -4 1

0 1 0

• >> w=[0 1 0; 1 -4 1; 0 1 0];
• >> g=imfilter(f,w);
Filter Penajaman: Laplacian (2)

>> w1 = [0 1 0; 1 -4 1; 0 1 0];

>> w2 = [1 1 1; 1 -8 1; 1 1 1];

>> f2 = im2double(f);

>> g4 = imfilter(f2,w1,'replicate');

>> g4 = f2 - g4;

>> g8 = imfilter(f2,w2,'replicate');

>> g8 = f2 - g8;

Citra asli

Hasilpenajaman

• Turunanpertamapengolahancitra digital diimplementasikanjarak (panjang) gradien.
• Panjangvektorinidiberikanoleh:
• Model lain:
• M(x,y)  |gx| + |fy|
• Duadefinisi lain yang diusulkanoleh Robert[1965]:
• gx = (z9 – z5) dangy = (z8 – z6)
• Jikamenggunakan formula M(x,y), gxdangy, makauntukmenghitungcitragradiendengan:
• M(x,y) = [(z9 – z5)2 + (z8 – z6)2]1/2
• Formula yang lain:
• M(x,y)  |z9 – z5| + |z8 – z6|
• Perkiraannilaigxdangymenggunakantetangga 3 x 3 yang terpusatdi z5sbb:
• Dan
• Sehingga:
• M(x,y) = |(z7 + 2z8 + z9) – (z1 + 2z2 + z3| + |(z3 + 2z6 + z9) – (z1 + 2z4 + z7)|

gx

g = gx + gy

gy

Citra asli

>> wh = [-1 -2 -1; 0 0 0; 1 2 1];

>> wv = [-1 0 1; -2 0 2; -1 0 1];

>> gx = imfilter(f,wh);

>> figure, imshow(gx, [ ]);

>> gy = imfilter(f,wv);

>> figure, imshow(gy, [ ]);

>> g = gx + gy;

>> figure, imshow(g, [ ]);

g(x,y)

H

Filter

restorasi (s)

+

f(x,y)

f’(x,y)

Noise

(x,y)

RESTORASI

• Mengoperasikancitra input f(x,y) untukmenghasilkancitraterdegradasi g(x,y).
• Diinginkanmemperkirakankemungkinan yang semiripmungkinterhadapcitra input original.
• g(x,y) = h(x,y)  f(x,y) + (x,y)
• Dalam domain spasial, konvolusidianalogikandenganperkaliandalam domain frekuensi, sehingga formula diatasdapatdituliskandalam domain frekuensidenganbentuk:
• G(u,v) = H(u,v)F(u,v) + N(u,v)
Model Noise
• Citra yang terkorupsiselamatransmisisecaraprinsipdisebabkaninterferensi channel yang digunakanuntuktransmisi.
• Misalnya, citra yang ditransmisikanmenggunakanjaringan wireless dapatterkorupsisebagaihasildaripencahayaanataupengaruhatmosfer yang lain
• Gaussian Noise
• PDF (probability density function) variabel random Gaussian z
Model Noise (2)
• Rayleigh Noise
• PDF noise Rayleigh diberikanoleh:
• Rata-rata danvariandiberikanoleh formula:
• Dan
• Erlang (gamma) noise
• PDF noise Erlangdiberikanoleh:
• dimana parameter a > 0, b integer positifdan “!” mengindikasikanfaktorial. Rata-rata danvariandarikepadataninidiberikanoleh:
• Dan
Model Noise (3)
• Exponential Noise
• PDF exponential noise diberikanoleh:
• dan
• Uniform Noise
• PDF uniform noise diberikanoleh:
• Dan
• Impuls (Salt-and-Pepper Noise)
TeknikRestorasi Citra dalam Domain Spasial: Mean Filter
• Arithmetic Mean Filter
• Geometric mean filter
• Perkalianpikseldalam window sub-image, yang dipangkatkandengan 1/mn.
• Menghasilkancitra yang lebihhalusdibanding arithmetic mean filter tetapitetapmenghilangkansedikit detail citradalamprosesnya
• Harmonic Mean Filter
TeknikRestorasi Citra dalam Domain Spasial: Mean Filter (2)
• Contraharmonic Mean Filter
• Q disebutdengan order filter.
• Sangatcocokuntukmengurangipengaruh noise salt-and-pepper.
• Untuknilai Q positif, filter mengeleminasi pepper noise.
• Untuk Q negatif, filter inimenghilangkan salt noise.
• Keduahaltersebuttidakbisabekerjabersama-sama.
• Contra-harmonic mean filter akanmirip arithmetic mean filter jika Q = 0, danmirip harmonic mean filter jika Q = -1
Restorasidenganaritmetikdangeometrik mean filter

>> g = imnoise(f,'gaussian');

>> figure, imshow(g);

• >> fave = spfilt(g,'amean', 3, 3);
• >> figure, imshow(fave);
• >> fgeo = spfilt(g,'gmean', 3, 3);
• >> figure, imshow(fgeo);

Citra asli

Citra dikorupsioleh noise Gaussian

difilterdengan arithmetic mean filter denganukuran 3x3

difilterdengan geometric mean filter denganukuran 3x3

Restorasidengan filter: contraharmonic, max dan min

>> [M, N] = size(f);

>> R = imnoise2('salt & pepper', M, N, 0.1, 0);

>> c = find(R == 0);

>> gpep = f;

>> gpep(c) = 0;

>> R = imnoise2('salt & pepper', M, N, 0, 0.1);

>> c = find(R == 1);

>> gsal = f;

>> gsal(c) = 255;

>> figure, imshow(gpep);

>> figure, imshow(gsal);

Citra terkorupsidengan pepper noise

Citra terkorupsidengan salt noise

Contraharmonicdan max

Hasil filter max ukuran 3x3

Citra terkorupsidengan pepper noise

Hasil filter contraharmonicukuran 3x3 dengan order 1.5

>> fconp = spfilt(gpep,'chmean', 3, 3, 1.5);

>> figure, imshow(fconp);

>> fpep = spfilt(gpep,'max', 3, 3);

>> figure, imshow(fpep);

Contraharmonicdan min

Hasil filter min ukuran 3x3

Citra terkorupsidengan salt noise

Hasil filter contraharmonicukuran 3x3 dengan order -1.5

>> fconn = spfilt(gsal,'chmean', 3, 3, -1.5);

>> figure, imshow(fconn);

>> fsal = spfilt(gsal,'min', 3, 3);

>> figure, imshow(fsal);

TeknikRestorasi Citra dalam Domain Spasial: Order-statistik
• Filter spasial yang hasilnyadidasarkandaripengurutan (perangkingan) nilaipiksel yang merupakanisidaerahcitra yang diterapkanoleh filter.
• Hasilrangkingmenentukanhasil filter.
• Filter median
• Menggantinilaipikseldengan median dari level intensitasdalamtetanggapiksel yang telahdilakukanperangkingan (pikselpusatjugaikutdirangking)
• Untukjenis random noise tertentumemberikankemampuanpengurangan noise yang sangatbaik, denganmemperhatikanpengurangan blurring filter smoothing linier padaukuran yang sama
• Filter max
• Filter max
• Sangatbergunauntukmencarititik-titik yang paling terangdalamcitra.
• Pepper noise dapatdikurangioleh filter inisebagaihasilprosespemilihan max dalam sub-image Sxy.
• Filter min
• Sangatbergunauntukmencarititik-titik paling gelapdalamcitra, danmengurangi salt noise sebagaihasiloperasi min
• Filter midpoint
• Menghitungtitiktengahantaranilaimaksimumdan minimum dalamdaerah yang diliputioleh filter
• Andaikanbahwaakanmenghapus d/2 nilaiintensitasterendahdan d/2 nilaiintensitastertinggidari g(x,y) dalamtetanggaSxy. Jikagr(s,t) mereprsentasikansisamn – d piksel, Filter dibentukoleh rata-rata sisapikselini yang disebut alpha-trimmed mean filter.
• Di mananilai d dalam range [0, mn – 1].
• Ketika d=0, alpha-trimmed mendekati arithmetic mean filter. Jika d =mn-1, filter inimenjadi filter median.
• Untuknilai d yang lain, filter inisangatbergunadalamsituasi yang menyertakanbeberapajenis noise, sepertikombinasi noise salt-and-pepper denganGausian

Citra terkorupsidengan pepper noise

>> g = imnoise(f,'gaussian');

>> fgau = spfilt(g,'midpoint', 3, 3);

>> figure, imshow(fgau);

>> fatr = spfilt(g,'atrimmed', 3, 3, 2);

>> figure, imshow(fatr);