Pengolahan dalam Domain Spasial dan Restorasi Citra

Publish in

Documents

98 views

Please download to get full document.

View again

of 40
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Share
Description
Pengolahan dalam Domain Spasial dan Restorasi Citra. Pengolahan Citra Digital Materi 4. Eko Prasetyo Teknik Informatika UMG- UPN Veteran Jatim 2012. Konsep Domain Spasial. Domain Spasial  Operasi pemfilteran secara linear.
Transcript
Pengolahandalam Domain SpasialdanRestorasi Citra Pengolahan Citra Digital Materi 4 Eko Prasetyo TeknikInformatika UMG-UPN Veteran Jatim 2012 Konsep Domain Spasial
  • Domain Spasial Operasipemfilteransecara linear.
  • Mengalikansetiappikseldalamtetanggadengankoefisien yang terhubungkepadanyadanmenjumlahkanhasilnyauntukmendapatkanjawabanpadasetiaptitik (x,y).
  • Jikaukurantetanggaadalah m x n, koefisienmndibutuhkan. Koefisiendibentukmenjadimatriks yang disebutdenganfilter, mask, filter mask, kernel, template, atauwindow.
  • Konsep Domain Spasial
  • Ada 2 konsepdalam filter spasial linier, yaitucorrelation (korelasi)danconvolution (konvolusi).
  • Korelasiadalahprosespassingmaskterhadapcitra array f seperti yang digambarkanpadagambarsebelumnya.
  • Mekanismekonvolusisamadengankorelasi, hanyasaja w diputar 180oterlebihdahulubarukemudiandisampaikanpadacitra f
  • KorelasidanKonvolusi 1 dimensi 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 Mask 3 x 3 R = w1z1 + w2z2 + … + w9z9 = wkzk = wTz w dan z adalahvektor 9 elemen yang dibentukdarikoefisien mask danintensitascitra Toolbox untukmelakukan filter linear spasialadalahfungsiimfilterdengan formula: g = imfilter(f, w, filtering_mode, boundary_option, size_option); Pemfilterandengankorelasi >> f=imread('bw.png'); >> 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.
  • Blurring inibiasanyamenjadipreprocessing taskdalampengolahancitra,
  • sepertimembuang detail kecilcitrauntukmengekstraksiobyek yang besardanpenghubung gap kecildalamgarisataukurva.
  • Pengurangan noise dapatdilakukanoleh blurring dengan filter linear maupun filter non-linear.
  • Filter Linear
  • Output dari smoothing dengan filter linear adalah rata-rata nilaipikseldalamtetanggadarirentang mask filter.
  • 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) Output: 4x4 image (smoothed) Input: 4x4 image 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}.
  • min filter 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) >> f = imread('anak.tif'); >> 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.
  • Definisi yang digunakandalamturunanpertamaadalah:
  • Harusmenjadinolpadadaerahintensitas yang konstan.
  • Harusmenjaditidaknolpadatitikdatangnyaintensitasstep (naik) danramp (turun).
  • Harusmenjaditidaknolpadadaerahsepanjangramp.
  • Definisi yang digunakandalamturunankeduaadalah:
  • Harusmenjadinolpadadaerahintensitas yang konstan.
  • Harusmenjaditidaknolpadatitikdatangnyaintensitasstep (naik) danramp (turun).
  • Harusmenjadinolpadadaerahsepanjangramp.
  • 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 :
  • Jikadigabungdalam2f(x,y) menjadi:
  • Pernyataaninidiimplementasikanpadasemuatitik (x,y) dalamcitradenganmengisikankonstantasukusebagainilai filter mask sesuaidenganletak yang ditunjukkanolehsukunya
  • 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 spasial yang didukungolehfspecial Filter Penajaman: Laplacian (2) >> w1 = [0 1 0; 1 -4 1; 0 1 0]; >> w2 = [1 1 1; 1 -8 1; 1 1 1]; >> f = imread('srikaya.tif'); >> f2 = im2double(f); >> g4 = imfilter(f2,w1,'replicate'); >> g4 = f2 - g4; >> g8 = imfilter(f2,w2,'replicate'); >> g8 = f2 - g8; Citra asli Hasilpenajaman Filter Gradien
  • Turunanpertamapengolahancitra digital diimplementasikanjarak (panjang) gradien.
  • Untukfungsi f(x,y), gradien f padakoordinat (x,y) didefiniskansebagaivektorkolom 2-dimensi:
  • Panjangvektorinidiberikanoleh:
  • Model lain:
  • M(x,y)  |gx| + |fy|
  • Filter Gradien: Robert danSobel
  • 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)|
  • Filter Gradien: Sobel gx g = gx + gy gy Filter Gradien: Sobel (2) Gradiengxdangy Citra asli >> f = imread('lensa_kontak.png'); >> 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, [ ]); Gradiengx Gradiengy g(x,y) Fungsi degradasi H Filter restorasi (s) + f(x,y) f’(x,y) Noise (x,y) DEGRADASI RESTORASI DegradasidanRestorasi Citra
  • Prosesdegradasidimodelkansebagaisebuahfungsidegradasi yang digabungkandengansyarat additive noise
  • Mengoperasikancitra input f(x,y) untukmenghasilkancitraterdegradasi g(x,y).
  • Jikaada g(x,y), fungsidegradasi H dansyarat additive noise (x,y), obyektifdarirestorasiadalahuntukmendapatkanperkiraan f’(x,y) daricitra original.
  • Diinginkanmemperkirakankemungkinan yang semiripmungkinterhadapcitra input original.
  • Citra terdegradasidalam domain spasial:
  • g(x,y) = h(x,y)  f(x,y) + (x,y)
  • dimana h(x,y) adalahrepresentasispasialdarifungsidegradasi, simbol “” adalahkonvolusi.
  • 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
  • Sumber noise bisaterjadisejakpengambilandanatautransmisicitra.
  • Kinerjadari sensor citradipengaruhiolehbanyakfaktorsepertikondisilingkunganselamapengambilancitradanolehkualitassensitivitaselemenitusendiri.
  • Contoh, dalampengambilancitradengankamera CCD, level pencahayaandansuhu sensor adalahfaktorutama yang memengaruhitingkat noise padacitra yang dihasilkan.
  • Citra yang terkorupsiselamatransmisisecaraprinsipdisebabkaninterferensi channel yang digunakanuntuktransmisi.
  • Misalnya, citra yang ditransmisikanmenggunakanjaringan wireless dapatterkorupsisebagaihasildaripencahayaanataupengaruhatmosfer yang lain
  • Gaussian Noise
  • PDF (probability density function) variabel random Gaussian z
  • dimana z merepresentasikanintensitas, ź adalahnilai rata-rata z danadalahstandardeviasi
  • 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:
  • dimana a > 0. Rata-rata danvariandarikepadataniniadalah:
  • dan
  • Uniform Noise
  • PDF uniform noise diberikanoleh:
  • Rata-rata danvariandarikepadataniniadalah:
  • Dan
  • Impuls (Salt-and-Pepper Noise)
  • Model Noise (4) Ilustrasi noise TeknikRestorasi : Mean Filter
  • Arithmetic Mean Filter
  • Sxyadalah window mask
  • Menghitungnilai rata-rata citraterkorupsi g(x,y) padadaerah yang didefinisikanolehSxy
  • Geometric mean filter
  • Perkalianpikseldalam window sub-image, yang dipangkatkandengan 1/mn.
  • Menghasilkancitra yang lebihhalusdibanding arithmetic mean filter tetapitetapmenghilangkansedikit detail citradalamprosesnya
  • Harmonic Mean Filter
  • Bekerjadenganbaikpada salt noise, tetapitidakuntuk pepper noise.
  • Bekerjadenganbaikpadajenis noise seperti noise Gaussian
  • TeknikRestorasi: Mean Filter (2)
  • Contraharmonic Mean Filter
  • Q disebutdengan order filter.
  • Sangatcocokuntukmengurangipengaruh noise salt-and-pepper.
  • Untuk Q positif, filter mengeleminasi pepper noise.
  • Untuk Q negatif, filter menghilangkan salt noise.
  • Keduahaltersebuttidakbisabekerjabersama-sama.
  • Contra-harmonic mean filter akanberubah
  • mirip arithmetic mean filter jika Q = 0, dan
  • mirip 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 Pndegradasiancitradengan noise >> [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: 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
  • TeknikRestorasi: Order-statistik (2)
  • 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
  • TeknikRestorasi: Order-statistik (3) – Alpha Trimmed
  • 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); Hasil filter midpoint ukuran 3x3 padacitradengan pepper noise Hasil filter alpha-trimmed ukuran 3x3, d=2 padacitradengan pepper noise To Be Continued … Materi 5 – Morfologi Citra ANY QUESTION ?
    Related Search
    We Need Your Support
    Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

    Thanks to everyone for your continued support.

    No, Thanks