SlideShare a Scribd company logo
TUGAS MANDIRI
PENGOLAHAN CITRA DIGITAL MENGGUNAKAN OCTAVE
MATA KULIAH : PEMROGRAMAN CITRA DIGITAL
NAMA : FAUJI GABE.H . PANGANRIBUAN
NPM : 130210206
DOSEN : COSMOS EKO SUHARYANTO. M. Kom.
UNIVERSITAS PUTERA BATAM
2015
i
KATA PENGANTAR
Syukur Alhamdulillah kehadirat Tuhan YME, yang telah melimpahkan segala
rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan makalah yang
merupakan salah satu Tugas Mandiri mata kuliah Pengolahan Citra Digital di
Universitas Putera Batam.
Makalah ini disusun dengan judul Pengolahan Citra Digital Menggunakan
OCTAVE. Didalam makalah ini terdapat penjelasan mengenai mengolah objek citra
dengan menggunakan algoritma dan pemrograman.
Penulis sangat menyadari bahwa makalah ini masih jauh dari sempurna.
Karena itu, kritik dan saran yang bersifat konstruktif serta membangun akan
senantiasa penulis terima dengan senang hati. Dengan segala keterbatasan, penulis
menyadari pula bahwa makalah ini tak akan terwujud tanpa bantuan, bimbingan dan
dorongan dari berbagai pihak yang bersedia membantu dalam pembuatan makalah
ini.
Batam, Juni 2015
Penulis
ii
DAFTAR ISI
Kata Pengantar............................................................................................... i
Daftar Isi ......................................................................................................... ii
Bab I Pendahuluan.......................................................................................... 1
1.1 Latar Belakang.................................................................................... 1
1.2 Tujuan Makalah.................................................................................. 1
1.3 Metode Studi....................................................................................... 2
1.4 Waktu Studi........................................................................................ 2
Bab II TinjauanPustaka ................................................................................. 3
2.1 Pengertian Pengolahan Citra Digital................................................... 3
2.2 Prinsip Dasar Pengolahan Citra........................................................... 3
2.3 Representasi Citra................................................................................ 5
2.4 Kuantisasi Citra ................................................................................... 6
2.5 Kualitas Citra....................................................................................... 7
2.6 Membaca Citra..................................................................................... 7
2.7 Mengetahui Ukuran Citra .................................................................... 7
2.8 Menampilkan Citra.............................................................................. 8
2.9 Mengenal Jenis Citra ........................................................................... 8
Bab III Pembahasan....................................................................................... 11
3.1 Operasi Piksel dan Histogram............................................................. 11
3.1.1 Operasi Piksel............................................................................ 11
3.1.2 Menggunakan Histogram Citra ................................................. 11
3.1.3 Meningkatkan Kecerahan.......................................................... 13
3.1.4 Meregangkan Kontras ............................................................... 14
3.1.5 Membalik Citra.......................................................................... 15
3.1.6 Pemotongan Aras Keabuan....................................................... 16
iii
3.2 Operasi Ketetanggan Piksel................................................................... 17
3.2.1 Pengertian Ketetanggan Piksel.................................................. 17
3.2.2 Aplikasi Tetangga Piksel........................................................... 17
3.2.2.1 Filter Batas.................................................................... 17
3.2.2.2 Filter Perataan............................................................... 20
3.2.2.3 Filter Median................................................................. 21
3.2.3 Konvolusi................................................................................... 23
3.2.4 Frekuensi.................................................................................... 24
3.2.5 Filter Lolos Rendah................................................................... 25
3.2.6 Filter High Boost....................................................................... 25
3.2.7 Efek Embos................................................................................ 25
3.3 Operasi Geometrik ............................................................................... 25
3.3.1 Pengantar Operasi Geometrik.................................................... 25
3.3.2 Pergeseran Citra .................................................................... 25
3.3.3 Pemutaran Citra......................................................................... 27
3.3.4 Interpolasi Piksel........................................................................ 29
3.3.5 Pemutaran Citra Sembarang Koordinat..................................... 31
3.3.6 Pemutaran Citra Secara Utuh..................................................... 33
3.3.7 Perbesaran Citra......................................................................... 37
3.3.8 Pengecilan Citra......................................................................... 39
3.3.9 Pencerminan Citra..................................................................... 40
3.3.10 Efek Ripple .............................................................................. 45
BAB IV Penutup.............................................................................................. 48
4.1 Kesimpulan............................................................................................. 48
4.2 Saran ................................................................................................ 48
DAFTAR PUSTAKA
iv
BAB I
PENDAHULUAN
1.1 LatarBelakangMasalah
Perkembangan teknologi pada masa sekarang telah memasuki era digital.
Proses digitalisasi teknologi juga telah mengubah suatu citra berkembang dan lebih
menarik buat semua orang dalam menggunakan nya. Teknologi semakin menarik
karena adanya multimedia yang membuat sebuah teknologi yang dulunya disajikan
hanya berupa sebuah teks, namun sekarang sudah berupa gambar,musik,videodan lain
lain.
Pengolahan yang berupa teks sekarang hampir telah beralih berupa image atau
citra. Mulai dari lahir sampai akhir hayat citra selalu mengabadikan setiap kegiatan
dan moment yang berharga bagi seseorang. Untuk itu diperlukan suatu pengolahan
agar citra yang dihasilkan bisa dimanipulasi sesuai keinginan. Pengolahan citra tidak
hanya dalam dunia fotografi, tetapi juga telah memasuki berbagai aspek seperti :
kedokteran, biologi, fisika dan lain sebagainya. Sebagai seorang jurusan informatika
kita, harus mengetahui bagaimana sebuah citra diolah dengan menggunakan
algoritma dan penulisan program.Jadi sederhananya, citra yang diolah mnggunakan
kode program dengan ketentuan yang ada.
1.2 Tujuan Makalah
Tujuan dari makalah ini, bertujuan untuk memenuhi tugas matakuliah
pengolahan citra,juga untuk menambah pengetahuan bagi penulis pada matakuliah
Pengolahan Citra,dan semoga bisa bermanfaat bagi pembacasekalian.
v
1.3 Metodepenulisan
Metode yang penulis gunakan adalah tinjauan pustaka. Dalam metode ini
penulis bersumber dari buku dan internet untuk menyelesaikan makalah ini
1.4 Waktu Studi
Studi dilakukan pada bulan akhir Februari2015 sampai dengan akhirJuly 2015
6
BAB II
TINJAUAN PUSTAKA
2.1 Pengertian Pengolahan Citra Digital
Secara umum, istilah pengolahan citra digital menyatakan β€œpemrosesan
gambar berdimensi-dua melalui komputer digital” (Jain, 1989). Menurut Efford
(2000), pengolahan citra adalah istilah umum untuk berbagai teknik yang
keberadaannya untuk memanipulasi dan memodifikasi citra dengan berbagai cara.
Foto adalah contoh gambar berdimensi dua yang bisa diolah dengan mudah. Setiap
foto dalam bentuk citra digital (misalnya berasal dari kamera digital) dapat diolah
melalui perangkat-lunak tertentu.
2.2 Prinsip Dasar dalam Pengolahan Citra
Aplikasi-aplikasi pada umumnya menggunakan prinsip dasar dalam
pengolahan citra seperti peningkatan kecerahan dan kontras, penghilangan derau pada
citra, dan pencarian bentuk objek
1. PeningkatanKecerahandanKontras
Dengan menggunakan pengolahan citra, citra yang kurang cerah dan kurang
kontras menjadi bisa diolah menjadi citra yang lebih kontras.
7
Gambar 2.1Pengolahan citra memungkinkan pengubahan kontras pada citra
2. PenghilanganDerau
Penghilangan deraukan menghasilkan citra dengan kualitas yang bagus
sehingga noise yang ada dapat dihilangkan.
Gambar 2.2 Pengolahan citra memungkinkan untuk menghilangkan derau pada
citra
(a) Citra dengan derau berbentuk kotak-kotak (b) Citra dengan derau telah dihilangkan
8
3. PencarianBentukObjek
Untukkepentinganmengenalisuatuobjek di dalamcitra,
objekperludipisahkanterlebihduludarilatarbelakangnya. Salah satupendekatan yang
umumdipakaiuntukkeperluaniniadalahpenemuanbatasobjek.
Gambar 2.3Pengolahan citra memungkinkan untuk mendapatkan bentuk objek
2.3 Representasi Citra Digital
Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (pixel atau
β€œpicture element”). Setiap piksel digambarkan sebagai satu kotak kecil. Setiap piksel
mempunyai koordinat posisi. Sistem koordinat yang dipakai untuk menyatakan citra
digital ditunjukkan pada Gambar dibawah ini
9
Gambar 2.4Sistem koordinat citra berukuran M x N
Dengan sistem koordinat yang mengikuti asas pemindaian pada layar TV standar
itu, sebuah piksel mempunyai koordinat berupa
(x, y)
Dalam hal ini,
ο‚· x menyatakan posisi kolom;
ο‚· y menyatakan posisi baris;
ο‚· piksel pojok kiri-atas mempunyai koordinat (0, 0) dan piksel pada pojok kanan-
bawah mempunyai koordinat (N-1, M-1).
2.4 Kuantisasi Citra
Kuantisasi adalah prosedur yang dipakai untuk membuat suatu isyarat yang
bersifat kontinue ke dalam bentuk diskret.
10
Tabel 2.1Jangkauan nilai pada citra keabuan
Komponen
warna
Bit per
Piksel
Jangkauan Penggunaan
1 1 0-1 Citra biner: dokumen
faksimili
8 0-255 Umum: foto dan hasil
pemindai
12 0-4095 Kualitas tinggi: foto dan
hasil pemindai
14 0-16383 Kualitas profesional: foto
dan hasil pemindai
16 0-65535 Kualitas tertinggi: citra
kedokteran dan astronomi
Tabel 2.2Jangkauan nilai pada citra berwarna
Komponen
Warna
Bit per
Piksel
Jangkauan Penggunaan
3 24 0-1 RGB umum
36 0-4095 RGB kualitas tinggi
42 0-16383 RGB kualitas profesional
4 32 0-255 CMYK (cetakan digital)
Gambar 2.5Kuantisasi citra dengan menggunakan berbagai bit
2.5 Kualitas Citra
Jumlah piksel yang digunakan untuk menyusun suatu citra mempengaruhi
kualitas citra. Istilah resolusi citra biasa dinyatakan jumlah piksel pada arah lebar dan
tinggi. Resolusi piksel biasa dinyatakan dengan notasi m x n, dengan m menyatakan
tinggi dan n menyatakan lebar dalam jumlah piksel.
11
2.6 Membaca Citra
Octave menyediakan perintah yang berguna untuk membaca citra yang tersimpan
dalam bentuk file.Perintah itu bernama imread. Bentuk pemanggilannya:
Img = imread(nama_file_citra). Format file gambar yang bisa dibaca oleh imread
adalah TIFF, PNG, JPG, GIF.
>> Img = imread(’C:Imagemandrill.png’);
>>
2.7 MengetahuiUkuran Citra
Secara umum, ukuran matriks Img adalah M x N. Untuk mengetahui nilai M dan
N yang sesungguhnya, dapat digunakan fungsi pada Octave yang bernama size.
Contoh untuk mengetahui dimensi pada matriks Img:
>> Ukuran = size(Img)
Ukuran =
512 512
2.8 Menampilkan Citra
Citra dapat ditampilkan dengan mudah melalui fungsi imshow. Contoh berikut
digunakan untuk menampilkan citra yang terdapat di Img:
>> imshow(Img);
2.9 MengenalJenis Citra
Ada tiga jenis citra yang umum digunakan dalam pemrosesan citra. Ketiga jenis
citra tersebut yaitu citra berwarna, citra berskala keabuan, dan citra biner.
12
1. Citra Berwarna
Citra berwarna, atau biasa dinamakan citra RGB, merupakan jenis citra yang
menyajikan warna dalam bentuk komponen R (merah), G (hijau), dan B (biru). Setiap
komponen warna menggunakan 8 bit (nilainya berkisar antara 0 sampai dengan 255).
Dengan demikian, kemungkinan warna yang bisa disajikan mencapai 255 x 255 x
255 atau 16.581.375 warna. Tabel 2.4 menunjukkan contoh warna dan nilai R,G,
dan B.
Tabel 2.4 Warna dan nilai penyusun warna
Warna R G B
Merah 255 0 0
Hijau 0 255 0
Biru 0 0 255
Hitam 0 0 0
Putih 255 255 255
Kuning 0 255 255
Gambar 2.6Citra berwarna
2. Citra Berskala Keabuan
Sesuai dengan nama yang melekat, citra jenis ini menangani gradasi warna hitam
dan putih, yang tentu saja menghasilkan efek warna abu-abu. Pada jenis gambar ini,
warna dinyatakan dengan intensitas. Dalam hal ini, intensitas berkisar antara 0 sampai
dengan 255. Nilai 0 menyatakan hitam dan nilai 255 menyatakan putih. Contoh citra
berskala keabuan telah dibahas pada Subbab 2.5.
13
3. Citra Biner
Citra biner adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah
nilai dari dua buah kemungkinan (yaitu nilai 0 dan 1). Nilai 0 menyatakan warna
hitam dan nilai 1 menyatakan warna putih. Citra jenis ini banyak dipakai dalam
pemrosesan citra, misalnya untuk kepentingan memperoleh tepi bentuk suatu objek.
(a) Citra daun berskala keabuan (b) Citra biner
Gambar 2.7Citra di kanan menyatakan bentuk citra di kiri
dengan mengabaikan komposisi warna
14
BAB III
PEMBAHASAN
3.1 Operasi Piksel dan Histogram
3.1.1. Operasi piksel
Operasi pikseladalahoperasipengolahancitra yang memetakanhubungansetiappiksel
yang bergantungpadapikselitusendiri. Jika f(y, x)
menyatakannilaisebuahpikselpadacitra f dan g(y, x)
menyatakanpikselhasilpengolahandari f(y, x), hubungannyadapatdinyatakandengan ;
𝑔( 𝑦, π‘₯) = 𝑇(𝑓( 𝑦, π‘₯))
3.1.2. Menggunakan Histogram Citra
Histogram citra merupakan diagram yang menggambarkan frekuensi setiap nilai
intensitas yang muncul di seluruh piksel citra. Nilai yang besar menyatakan bahwa
piksel-piksel yang mempunyai intensitas tersebut sangat banyak.
Algoritma Menghitung histogram citra aras keabuan
Masukan:
β€’ f(M, N) : citra berukuran M baris dan N kolom
β€’ L : jumlah aras keabuan
1. Buatlah larik hist sebanyak 2L elemen dan isi dengan nol.
2.
END-FOR
END-FOR
15
Program Histogram
==> function histo(Img)
> % HISTO Digunakan sebagai contoh pembuatan histogram
>
> [jum_baris, jum_kolom] = size(Img);
> Img = double(Img);
>
> Histog = zeros(256, 1);
> for baris=1 : jum_baris
> for kolom=1 : jum_kolom
> Histog(Img(baris, kolom)+1) = ...
> Histog(Img(baris, kolom)+1) + 1;
> end
> end
>
> % Tampilkan dalam bentuk diagram batang
> Horis = (0:255)';
> bar(Horis, Histog);
> endfunction
==> Img = imread('C:Imagewelcome.png');
warning: your version of GraphicsMagick limits images to 16 bits per pixel
==> histo(Img);
16
Gambar 3.1Citra welcome.png dan histogramnya
3.1.3. Meningkatkan Kecerahan
Operasidasar yang seringdilakukanpadacitraadalahpeningkatankecerahan
(brightness).Operasiinidiperlukandengantujuanuntukmembuatgambarmenjadilebihter
ang.
Secaramatematis,
peningkatankecerahandilakukandengancaramenambahkansuatukonstantaterhadapnilai
seluruhpiksel. Misalkan, f(y, x)
menyatakannilaipikselpadacitraberskalakeabuanpadakoordinat(y, x). Maka, citrabaru
𝑔( 𝑦, π‘₯) = 𝑓( 𝑦, π‘₯) + 𝛽
Telahmeningkatnilaikecerahansemuapikselnyasebesar𝛽 terhadap citra asli f(y, x).
Apabila Ξ² berupabilangan negatif, kecerahanakanmenurunataumenjadilebihgelap
Program Peningkatan Kecerahan
17
andree==> barelang = imread('C:Imagemendung.png');
andree==> C = barelang + 80;
andree==> figure(1);
andree==> subplot(1,2,1);imshow(barelang);
andree==> subplot(1,2,2);imshow(C);
(1) Gambar asli (2) gambar hasil peningkatan kecerahan
Gambar 3.2 Citra barelang.png dengan peningkatan kecerahan
3.1.4. Meregangkan Kontras
Kontras dalam suatu citra menyatakan distribusi warna terang dan warna
gelap. Suatu citra berskala keabuan dikatakan memiliki kontras rendah apabila
distribusi warna cenderung pada jangkauan aras keabuan yang sempit. Sebaliknya,
citra mempunyai kontras tinggi, apabila jangkauan aras keabuan lebih terdistribusi
secara melebar. Kontras dapat diukur berdasarkan perbedaan antara nilai intensitas
tertinggi dan nilai intensitas terendah yang menyusun piksel-piksel dalam citra.
Program Kontras
18
octave:1> Img = imread('C:Imagemawar.png');
warning: your version of GraphicsMagick limits images to 16 bits per pixel
octave:2> K = 2.5 * Img;
octave:3> figure(1);
octave:4> subplot(1,2,1);imshow(Img);
octave:5> subplot(1,2,2);imshow(K);
octave:6>
(a) Gambar asli (b) citra hasil peningkatan kontas
Gambar 3.3 Citra mawar.pngdengan peningkatan kontras
3.1.5. Membalik Citra
Membuat citra terlihat negatif dengan rumus
π’ˆ( π’š, 𝒙) = πŸπŸ“πŸ“ βˆ’ 𝒇( π’š, 𝒙)
Program Membalik Citra
19
==> anisa = imread('C:Imageanisa.png');
warning: your version of GraphicsMagick limits images to 16 bits per pixel
==> R = 255 - anisa;
==> figure(2);
==> subplot(1,2,1);imshow(anisa);
==> subplot(1,2,2);imshow(R);
(a) Gambar asli (b) Citra hasil pembalikan
Gambar 3.4Citra anisa dan pembalikannya
3.1.6. Pemotongan Aras Keabuan
Efek pemotongan (clipping) diperoleh bila dilakukan operasi seperti berikut:
𝑔( 𝑦, π‘₯) = {
0, π‘₯ ≀ 𝑓1
𝑓(𝑦, π‘₯), 𝑓1 < 𝑓( 𝑦, π‘₯) < 𝑓2
255, π‘₯ β‰₯ 𝑓2
20
Nilai g dinolkan atau dipotong habis untuk intensitas asli dari 0 hingga f1
karena dipandang tidak mengandung informasi atau objek menarik. Demikian pula
untuk nilai intensitas dari f2 ke atas, yang mungkin hanya mengadung derau.
(a) Gambar asli (b) Hasil citra
Gambar 3.4 Citra pemotongan aras keabuan
3.2 Operasi Ketetanggan Piksel
3.2.1. Pengertian Tetangga Piksel
Operasiketetanggaanpikseladalahoperasipengolahancitrauntukmendapatkannila
isuatupiksel yang melibatkannilaipiksel-pikseltetangganya.
T2
T8
T2T4
T4
T3 T1P
T3
T7
T5 T1P
T6
(a) 4-ketetanggaan (b) 8-ketetanggaan
Gambar 3.5 Dua macam ketetanggaan piksel
ο‚· Pada 4-ketetanggaan
21
𝑇1 = ( 𝑏, π‘˜ + 1), 𝑇2 = ( 𝑏 βˆ’ 1, π‘˜), 𝑇3 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇4 = ( 𝑏 + 1, π‘˜)
ο‚· Pada 8-ketetanggaan
𝑇1 = ( 𝑏, π‘˜ + 1), 𝑇2 = ( 𝑏 βˆ’ 1, π‘˜ βˆ’ 1),
𝑇3 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇4 = ( 𝑏 βˆ’ 1, π‘˜ βˆ’ 1)
𝑇5 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇6 = ( 𝑏 + 1, π‘˜ βˆ’ 1),
𝑇7 = ( 𝑏 + 1, π‘˜ βˆ’ 1), 𝑇8 = ( 𝑏 + 1, π‘˜ + 1)
3.2.2. Aplikasi Tetangga Piksel
3.2.2.1. Filter Batas
Filter batas adalah filter yang dikemukakan dalam Davies (1990). Idenya adalah
mencegah piksel yang intensitasnya di luar intensitas piksel-piksel tetangga. Algoritma
yang digunakan untuk keperluan ini dapat dilihat berikut ini.
ALGORITMA 4.1 – Menghitung piksel dengan filter batas
Masukan:
ο‚· f(y, x) : Piksel pada posisi (y, x)
Keluaran:
ο‚· g(y, x) : Nilai intensitas untuk piksel pada citra g pada posisi (y,
x)
1. Carilah nilai intensitas terkecil pada tetangga f(y, x) dengan
menggunakan 8-ketetanggan dan simpan pada minInt.
2. Carilah nilai intensitas terbesar pada tetangga f(y, x) dengan
menggunakan 8-ketetanggan dan simpan pada maksInt.
3. IF f(y, x) < minInt
g(y, x)  minInt
22
ELSE
IF f(y. x) > maksInt
g(y, x)  maksInt
ELSE
g(y, x)  f(y, x)
END-IF
END-IF
Program Filter Batas
==> % FILBATAS Melakukan operasi ketetanggan piksel
==> % menggunakan filter batas
==>
==> F = imread('c:Imagenoise.png');
warning: your version of GraphicsMagick limits images to 16 bits per
pixel
==> Ukuran = size(F);
==> tinggi = Ukuran(1);
==> lebar = Ukuran(2);
==>
==> G = F;
==> for baris=2 : tinggi-1
> for kolom=2 : lebar-1
> minPiksel = min([F(baris-1, kolom-1) ...
> F(baris-1, kolom) F(baris, kolom+1) ...
> F(baris, kolom-1) ...
> F(baris, kolom+1) F(baris+1, kolom-1) ...
> F(baris+1, kolom) F(baris+1, kolom+1)]);
23
> maksPiksel = min([F(baris-1, kolom-1) ...
> F(baris-1, kolom) F(baris, kolom+1) ...
> F(baris, kolom-1) ...
> F(baris, kolom+1) F(baris+1, kolom-1) ...
> F(baris+1, kolom) F(baris+1, kolom+1)]);
>
> if F(baris, kolom) < minPiksel
> G(baris, kolom) = minPiksel;
> else
> if F(baris, kolom) > maksPiksel
> G(baris, kolom) = maksPiksel;
> else
> G(baris, kolom) = F(baris, kolom);
> end
> end
> end
> end
==> figure(1);
==> subplot(1,2,1);imshow(F);
==> subplot(1,2,2);imshow(G);
24
(a) gambar asli (b) setelh penghilangan noise
Gambar 3.6Citra noise dan hasilnya
3.2.2.2. Filter Perataan
Filter pererataan (Costa dan Cesar, 2001) dilakukan dengan menggunakan rumus:
𝑔( 𝑦, π‘₯) =
1
9
βˆ‘ βˆ‘ 𝑓(𝑦 + 𝑝, π‘₯ + π‘ž)
1
π‘ž=βˆ’1
1
𝑝=βˆ’1
(a) Gambar Asli (b) Setelah diolah
Gambar 3.7Citra perataan
3.2.2.3Filter Median
Filter ini dapat dipakai untuk menghilangkan derau bintik-bintik. Nilai yang lebih baik
digunakan untuk suatu piksel ditentukan oleh nilai median dari setiap piksel dan kedelapan
piksel tetangga pada 8-ketetanggaan. Secara matematis, filter dapat dinotasikan seperti
berikut:
𝑔( 𝑦, π‘₯) = π‘šπ‘’π‘‘π‘–π‘Žπ‘›(
25
𝑓( 𝑦 βˆ’ 1, π‘₯ βˆ’ 1), 𝑓( 𝑦 βˆ’ 1, π‘₯), 𝑓( 𝑦 βˆ’ 1, π‘₯ + 1),
𝑓( 𝑦, π‘₯ βˆ’ 1), 𝑓( 𝑦, π‘₯), 𝑓( 𝑦, π‘₯ + 1),
𝑓( 𝑦 + 1, π‘₯ βˆ’ 1), 𝑓( 𝑦 + 1, π‘₯), 𝑓( 𝑦 + 1, π‘₯ + 1))
Program Filter Median
% FILMEDIAN Melakukan operasi dengan filter median
F = imread('C:Imagemobil.TIF');
[tinggi, lebar] = size(F);
for baris=2 : tinggi-1
for kolom=2 : lebar-1
data = [F(baris-1, kolom-1) ...
F(baris-1, kolom) ...
F(baris-1, kolom+1) ...
F(baris, kolom-1) ...
F(baris, kolom) ...
F(baris, kolom+1) ...
F(baris+1, kolom-1) ...
F(baris+1, kolom) ...
F(baris+1, kolom+1)];
% Urutkan
for i=1 : 8
for j=i+1 : 9
if data(i) > data(j)
tmp = data(i);
data(i) = data(j);
data(j) = tmp;
end
end
26
end
% Ambil nilai median
G(baris, kolom) = data(5);
end
end
figure(1); imshow(G);
clear;
(a) Gambar asli (b) gambar setelahdiolah
Gambar 3.8Citra median
3.2.3. Konvolusi
Konvolusi pada citra sering disebut sebagaikonvolusi dua-dimensi
(konvolusi 2D). Konvolusi 2D didefinisikan sebagai proses untuk memperoleh suatu
piksel didasarkan pada nilai piksel itu sendiri dan tetangganya, dengan melibatkan
suatu matriks yang disebut kernel yang merepresentasikan pembobotan.
ALGORITMA 4.2 – Konvolusi pada citra dengan mengabaikan bagian tepi
27
Masukan:
ο‚· f : Citra yang akan dikonvolusi
ο‚· h : kernel konvolusi
Keluaran:
ο‚· g : Citra hasil konvolusi
1. m2  floor(jumlah_baris_kernel h)
2. n2  floor(jumlah_lebar_kernel h)
3. FOR y  m2+1 TO tinggi_citra_f – m2
FOR x n2+1 TO lebar_citra_f – n2
// Lakukan konvolusi
jum  0;
FOR p  -m2 TO m2
FOR q  -n2 TO n2
jum  jum * h(p+m2+1, q+n2+1) * f(y-p, x-p)
END-FOR
END-FOR
g2(y, x)  jum
END-FOR
END-FOR
4. // Salin posisi g2 ke g dengan membuang yang tidak dikonvolusi
5. FOR y  m2+1 TO tinggi_citra_f – m2
FOR x  n2+1 TO lebar_citra_f – n2
g(y-m2, x-n2)  g2(y, x)
END-FOR
END-FOR
28
(a)Gambar asli (b) setelah konvolusi
Gambar 3.9 Citra hasil konvolusi
3.2.4. Frekuensi
Definisi di Wikipedia menyatakan bahwa frekuensi spasial adalah
karakteristik sebarang struktur yang bersifat periodis sepanjang posisi dalam ruang.
Frekuensi spasial adalah ukuran seberapa sering struktur muncul berulang dalam satu
satuan jarak.
Frekuensi spasial pada citra menunjukkan seberapa sering suatu perubahan aras
keabuan terjadi dari suatu posisi ke posisi berikutnya
3.2.5. Filter lolos rendah
Filter lolos-bawah (low-pass filter) adalah filter yang mempunyai sifat dapat
meloloskan yang berfrekuensi rendah dan menghilangkan yang berfrekuensi tinggi.
Efek filter ini membuat perubahan aras keabuan menjadi lebih lembut.
3.2.6. Filter high boost
Filter lolos-tinggi adalah filter yang ditujukan untuk melewatkan frekuensi
tinggi dan menghalangi yang berfrekuensi rendah. Hal ini biasa dipakai untuk
mendapatkan tepi objek dalam citra atau menajamkan citra
3.2.7. Efek emboss
Rahasia pembuatan emboss terletak pada kernel konvolusi dengan sifat
seperti berikut (Oliver, dkk., 1993).
1. Tinggi dan lebar kernel gasal.
29
2. Bobot dalam kernel bersifat tidak simetris terhadap piksel pusat.
3. Bobot pusat kernel bernilai nol.
4. Jumlah keseluruhan bobot bernilai nol.
3.3 Operasi Geometrik
3.3.1. Pengantar operasi geometrik
Operasi geometrik adalah operasi pada citra yang dilakukan secara geometris
seperti translasi, rotasi, dan penyekalaan. Pada operasi seperti ini terdapat pemetaan
geometrik, yang menyatakan hubungan pemetaan antara piksel pada citra masukan
dan piksel pada citra keluaran
3.3.2. Pergeseran citra
Penggeseran citra ke arah mendatar atau vertikal dapat dilaksanakan dengan
mudah. Rumus yang digunakan sebagai berikut:
π‘₯ π‘π‘Žπ‘Ÿπ‘’ = π‘₯π‘™π‘Žπ‘šπ‘Ž + 𝑠 π‘₯
𝑦 π‘π‘Žπ‘Ÿπ‘’ = π‘¦π‘™π‘Žπ‘šπ‘Ž + 𝑠 𝑦
Program Pergeseran
% GESER Melakukan operasi penggeseran citra.
F = imread('c:Imagemenara.png');
[tinggi, lebar] = size(F);
sx = 45; % Penggesaran arah horisontal
sy = 15; % Penggesaran arah vertikal
F2 = double(F);
G = zeros(size(F2));
for y=1 : tinggi
30
for x=1 : lebar
xlama = x - sx;
ylama = y - sy;
if (xlama>=1) && (xlama<=lebar) && ...
(ylama>=1) && (ylama<=tinggi)
G(y, x) = F2(ylama, xlama);
else
G(y, x) = 0;
end
end
end
G = uint8(G);
figure(5);
subplot(1,2,1);imshow(F);
subplot(1,2,2);imshow(G);
clear all;
(a) gambar asli (b) gambar hasil pergeseran
31
Gambar 3.9Citra pergeseran
3.3.3. Pemutaran citra
Suatucitradapatdiputardengansudutπœƒ seiring arah jarum jam atau
berlawanan arah jarum jam dengan pusat putaran pada koordinat (0,0).
Program Pemutaran Citra
% ROTASI Melakukan Operasi pemutaran citra.
% Versi 1
% Menggunakan pendekatan pemetaan ke belakang
F = imread('c:Imageapartemen.png');
[tinggi, lebar] = size(F);
sudut = 10; % Sudut pemutaran
rad = pi * sudut/180;
cosa = cos(rad);
sina = sin(rad);
F2 = double(F);
for y=1 : tinggi
for x=1 : lebar
x2 = round(x * cosa + y * sina);
y2 = round(y * cosa - x * sina);
if (x2>=1) && (x2<=lebar) && ...
(y2>=1) && (y2<=tinggi)
G(y, x) = F2(y2, x2);
else
G(y, x) = 0;
32
end
end
end
G = uint8(G);
figure(4);imshow(F);
figure(5);imshow(G);
clear all;
(a) sebelum diputar
33
(b) setelah diputar
Gambar 3.10PemutaranCitra
3.3.4. Interploasi piksel
Hasil pemutaran citra menggunakan rotasi.m menimbulkan efek bergerigi pada objek
citra. Hal itu diakibatkan oleh penggunaan nilai intensitas didasarkan pada piksel tetangga
terdekat, yang dilakukan melalui:
x2 = round(x * cosa + y * sina);
y2 = round(y * cosa - x * sina);
Penggunaan fungsi round (pembulatan ke atas) merupakan upaya untuk
menggunakan intensitas piksel terdekat. Alternatif lain dilakukan dengan menggunakan
floor (pembulatan ke bawah).
34
(a) Sebelum diputar
(b) setelah diputar
Gambar 3.11Interpolasi Piksel
3.3.5. Pemutaran citra sembarang koordinat
Operasi pemutaran citra dapat dilakukan dengan pusat di mana saja; tidak harus dari
(0, 0).Rumus untuk melakukan pemutaran berlawanan arah jarum jam sebesar 
π‘₯ π‘π‘Žπ‘Ÿπ‘’ = ( π‘₯ βˆ’ 𝑛) βˆ— πΆπ‘œπ‘ ( πœƒ) + ( 𝑦 βˆ’ π‘š) βˆ— 𝑆𝑖𝑛( πœƒ) + 𝑛
35
𝑦 π‘π‘Žπ‘Ÿπ‘’ = ( 𝑦 βˆ’ π‘š) βˆ— πΆπ‘œπ‘ ( πœƒ) βˆ’ ( π‘₯ βˆ’ 𝑛) βˆ— 𝑆𝑖𝑛( πœƒ) + π‘š
Program Pemutaran Citra Sembarang Koordinat
% ROTASI4 Melakukan operasi pemutaran citra.
% Versi 4 - pusat putaran pada pusat citra
F = imread('c:Imagepanorama.png');
Ukuran = size(F);
tinggi = Ukuran(1);
lebar = Ukuran(2);
sudut = 5; % Sudut pemutaran
rad = pi * sudut/180;
cosa = cos(rad);
sina = sin(rad);
F2 = double(F);
m = floor(tinggi / 2);
n = floor(lebar / 2);
for y=1 : tinggi
for x=1 : lebar
x2 = (x-n) * cosa + (y-m) * sina + n;
y2 = (y-m) * cosa - (x-n) * sina + m;
if (x2>=1) && (x2<=lebar) && ...
(y2>=1) && (y2<=tinggi)
% Lakukan interpolasi bilinear
p = floor(y2);
q = floor(x2);
a = y2-p;
b = x2-q;
if (x2==lebar) || (y2 == tinggi)
36
G(y, x) = F(y2, x2);
else
intensitas = (1-a) * ((1-b) * F(p,q) + ...
b * F(p, q+1)) + ...
a *((1-b)* F(p+1, q) + ...
b * F(p+1, q+1));
G(y, x) = intensitas;
end
else
G(y, x) = 0;
end
end
end
G = uint8(G);
figure(1); imshow(G);
clear all;
(a) sebelum diputar
37
(c) Setelah diputar
Gambar 3.12 Pemutaran Citra Sembarang Koordinat
3.3.6. Pemutaran citra secara utuh
Memutar citra secara keseluruhan berarti semua area citra diputar
secara penuh dengan sudut tertentu.
Program Rotasi Secara Utuh
% ROTASI5 Melakukan operasi pemutaran citra.
% Versi 5
% Memutar dengan hasil utuh
F = imread('c:ImageBALING.PNG');
Ukuran = size(F);
tinggi = Ukuran(1);
lebar = Ukuran(2);
sudut = 45; % Sudut pemutaran
rad = pi * sudut/180;
cosa = cos(rad);
38
sina = sin(rad);
x11 = 1; y11 = 1;
x12 = lebar; y12 = 1;
x13 = lebar; y13 = tinggi;
x14 = 1; y14 = tinggi;
m = floor(tinggi/2);
n = floor(lebar/2);
% Menentukan pojok
x21 = ((x11-n) * cosa + (y11-m) * sina + n);
y21 = ((y11-m) * cosa - (x11-n) * sina + m);
x22 = ((x12-n) * cosa + (y12-m) * sina + n);
y22 = ((y12-m) * cosa - (x12-n) * sina + m);
x23 = ((x13-n) * cosa + (y13-m) * sina + n);
y23 = ((y13-m) * cosa - (x13-n) * sina + m);
x24 = ((x14-n) * cosa + (y14-m) * sina + n);
y24 = ((y14-m) * cosa - (x14-n) * sina + m);
ymin = min([y21 y22 y23 y24]);
xmin = min([x21 x22 x23 x24]);
ymak = max([y21 y22 y23 y24]);
xmak = max([x21 x22 x23 x24]);
39
lebar_baru = xmak - xmin + 1;
tinggi_baru = ymak - ymin + 1;
tambahan_y = floor((tinggi_baru-tinggi)/2);
tambahan_x = floor((lebar_baru-lebar)/2);
F2=zeros(tinggi_baru, lebar_baru);
for y=1 : tinggi
for x=1 : lebar
F2(y+tambahan_y, x+tambahan_x) = F(y, x);
end
end
figure(1);
imshow( uint8(F2));
% Putar citra
m = floor(tinggi_baru/2);
n = floor(lebar_baru/2);
for y=1 : tinggi_baru
for x=1 : lebar_baru
x2 = round((x-n) * cosa + (y-m) * sina + n);
y2 = round((y-m) * cosa - (x-n) * sina + m);
if (x2>=1) && (x2<=lebar_baru) && ...
(y2>=1) && (y2<=tinggi_baru)
G(y, x) = F2(y2,x2);
else
40
G(y,x) = 0;
end
end
end
figure(2);
G = uint8(G);
imshow(G);
clear all;
(a) Gambar asli
41
(b) Setelah diputar
Gambar 3.13. Pemutaran Citra Secara Utuh
3.3.7. Pembesaran citra
Suatu citra dapat diperbesar dengan membuat setiap piksel menjadi beberapa piksel.
Program Perbesaran Citra
octave:1> function G = perbesar(berkas, sy, sx)
> % PERBESAR Melakukan operasi pembesaran citra.
> % Masukan: berkas = nama berkas image
> % sy : skala pembesaran pada sumbu Y
> % sx : skala pembesaran pada sumbu X
> %
> % Versi 1
>
> F = imread(berkas);
> Ukuran = size(F);
42
> tinggi = Ukuran(1);
> lebar = Ukuran(2);
>
> tinggi_baru = tinggi * sy;
> lebar_baru = lebar * sx;
>
> F2 = double(F);
> for y=1 : tinggi_baru
> y2 = ((y-1) / sy) + 1;
> for x=1 : lebar_baru
> x2 = ((x-1) / sx) + 1;
> G(y, x) = F(floor(y2), floor(x2));
> end
> end
>
> G = uint8(G);
> endfunction
octave:2> Img = Perbesar2('C:Imagemayudi.png', 4, 4);
octave:3>imshow(Img);
(a) Gambar asli
43
(b) Setelah pembesaran
Gambar 3.14Pembesaran citra
3.3.8. Pengecilan citra
Suatu citra dapat diperkecil dengan membuat setiap piksel menjadi beberapa piksel.
Program Pengecilan Citra
octave:1> function G = perbesar(berkas, sy, sx)
> % PERkecilMelakukan operasi pembesaran citra.
> % Masukan: berkas = nama berkas image
> % sy : skala pembesaran pada sumbu Y
> % sx : skala pembesaran pada sumbu X
> %
> % Versi 1
>
> F = imread(berkas);
> Ukuran = size(F);
44
> tinggi = Ukuran(1);
> lebar = Ukuran(2);
>
> tinggi_baru = tinggi * sy;
> lebar_baru = lebar * sx;
>
> F2 = double(F);
> for y=1 : tinggi_baru
> y2 = ((y-1) / sy) + 1;
> for x=1 : lebar_baru
> x2 = ((x-1) / sx) + 1;
> G(y, x) = F(floor(y2), floor(x2));
> end
> end
>
> G = uint8(G);
> endfunction
octave:2> Img = Perbesar2('C:Imagemayudi.png', 0,5, 0,5);
octave:3>imshow(Img);
45
(a) Citra asli
(b) Hasil perkecil
Gambar 3.15Pengecilan citra
3.3.9. Pencerminan citra
Pencerminan yang
umumdilakukanberupapencerminansecaravertikaldanpencerminansecara
horizontal.Pencerminansecara horizontal
dilakukandenganmenukarkanduapiksel yang berseberangankir-kanan.
46
ALGORITMA – Mencerminkan gambar secara horizontal
Masukan:
ο‚· f (M,N): Citra masukan berukuran M baris dan N kolom
Keluaran:
ο‚· g (M, N): Hasil citra yang telah dicerminkan secara horizontal
FOR baris  1 TO M
FOR kolom  1 TO N
g(baris, kolom)  f(N – baris + 1, kolom)
END-FOR
END-FOR
Program Pencerminan secara Horizontal
octave:1> function G = cerminh(F)
> % CERMINH Berfungsi untuk mencerminkan citra
> % secara horizontal
> % Masukan: F = Citra berskala keabuan
>
> [tinggi, lebar] = size(F);
>
> for y=1 : tinggi
> for x=1 : lebar
> x2 = lebar - x + 1;
> y2 = y;
>
> G(y, x) = F(y2, x2);
> end
> end
> endfunction
47
octave:2>
octave:2> G = uint8(G);
error: `G' undefined near line 2 column 11
error: evaluating argument list element number 1
octave:2> F = imread('C:Imageacha.png');
warning: your version of GraphicsMagick limits images to 16 bits per
pixel
octave:3> G = cerminh(F);
octave:4> figure(2);
octave:5> subplot(1,2,1);imshow(F);
octave:6> subplot(1,2,2);imshow(G);
(a) Gambar asli (b) Gambar Hasil Pencerminan
Gambar 3.16 Pencerminan Citra Secara Horizontal
48
Pencerminan secara Vertical
function G = cerminv(F)
% CERMINV Berfungsi untuk mencerminkan citra
% secara vertikal
% Masukan: F = Citra berskala keabuan
[tinggi, lebar] = size(F);
for y=1 : tinggi
for x=1 : lebar
x2 = x;
y2 = tinggi - y + 1;
G(y, x) = F(y2, x2);
end
end
endfunction
G = uint8(G);
F = imread('C:Imageacha.png');
G = cerminv(F);
figure(1);
subplot(1,2,1);imshow(F);
subplot(1,2,2);imshow(G);
49
(a) Gambar asli (b) Setelah diolah
Gambar 3.17 Pencerminan Citra Secara Vertical
3.3.10. Efek Ripple
Efek ripple (riak) adalah aplikasi transformasi citra yangmembuat gambar
terlihat bergelombang. Efek riak dapaat dibuat baik pada arah x maupun y.
Transformasinya seperti berikut:
x=x^'+a_x sin 2Ο€y'/T_x
y=y^'+a_y sin 2Ο€x'/T_y
Dalam hal ini, ax dan ay menyatakan amplitudo riak gelombang sinus,
sedangkan Tx dan Ty menyatakan periode gelombang sinus.
Program Ripple
octave:1> function G = ripple(F, ax, ay, tx, ty)
> % RIPPLE Berfungsi untuk melakukan transformasi 'ripple'.
>
> dimensi = size(F);
50
> tinggi = dimensi(1);
> lebar = dimensi(2);
> for y=1 : tinggi
> for x=1 : lebar
> x2 = x + ax * sin(2 * pi * y / tx);
> y2 = y + ay * sin(2 * pi * x / ty);
> if (x2>=1) && (x2<=lebar) && ...
> (y2>=1) && (y2<=tinggi)
>
> % Lakukan interpolasi bilinear
> p = floor(y2);
> q = floor(x2);
> a = y2-p;
> b = x2-q;
>
> if (floor(x2)==lebar) || ...
> (floor(y2) == tinggi)
> G(y, x) = F(floor(y2), floor(x2));
> else
> intensitas = (1-a)*((1-b)*F(p,q) + ...
> b * F(p, q+1)) + ...
> a *((1-b)* F(p+1, q) + ...
> b * F(p+1, q+1));
>
> G(y, x) = intensitas;
> end
> else
> G(y, x) = 0;
51
> end
> end
> end
>
> G = uint8(G);
> endfunction
octave:2> F = imread('C:imagemonas.png');
warning: your version of GraphicsMagick limits images to 16 bits per
pixel
octave:3> G = ripple(F,10,15,120, 250);
octave:4> figure(1);
octave:5> subplot(1,2,1);imshow(F);
octave:6> subplot(1,2,2);imshow(G);
(a) Gambar asli (b) setelah diberi efek
Gambar 3.18 Efek Ripple Citra
52
BAB IV
PENUTUP
4.1 Kesimpulan
Pengolahan citra menjadi suatu yang sangat diperlukan pada era digital saat
ini. Pengolahan dilakukan untuk mendapatkan hasil citra yang diinginkan.
Seorang yang ahli informatika tentu tidak hanya bisa menggunakan aplikasi
pengolahan citra tetapi juga harus mengetahui bagaimana citra tersebut dari citra
asli dimanipulasi menjadi citra yang diinginkan. Tentu saja, ini berhubungan
dengan kode program yang menjadi dasar pengolahan citra. Dalam hal ini dibantu
dengan tool yakni OCTAVE. Dengan tool ini kita mendapatkan gambaran secara
umum proses sebuah citra dioleh ke bentuk lain dengan menggunakan algoritma
dan pemrograman.
4.2 Saran
ο‚· Sebelum mempelajari pengolahan citra dengan OCTAVE sebaiknya
menguasai dasar pemrograman.
ο‚· Penggunaan ilmu matematika sangat dibutuhkan dalam pengolahan citra
digital karena berkaitan dengan ukuran.

More Related Content

What's hot

Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum Algoritma
EnvaPya
Β 
02.logika
02.logika02.logika
02.logika
Oggii Oggii
Β 
Ragam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerRagam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan Komputer
Auliaa Oktarianii
Β 
Iterasi gauss seidel
Iterasi gauss seidelIterasi gauss seidel
Iterasi gauss seidelNur Fadzri
Β 
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidel
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidelPenyelesaian sistem persamaan linear dengan metode iterasi gauss seidel
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidelBAIDILAH Baidilah
Β 
Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03
KuliahKita
Β 
Transformasi laplace
Transformasi laplaceTransformasi laplace
Transformasi laplace
dwiprananto
Β 
Pcd 05 - transformasi citra
Pcd   05 - transformasi citraPcd   05 - transformasi citra
Pcd 05 - transformasi citra
Febriyani Syafri
Β 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristik
ahmad haidaroh
Β 
Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )
Kelinci Coklat
Β 
Bab 4 operasi-operasi dasar pengolahan citra dijital
Bab 4 operasi-operasi dasar pengolahan citra dijitalBab 4 operasi-operasi dasar pengolahan citra dijital
Bab 4 operasi-operasi dasar pengolahan citra dijital
Syafrizal
Β 
jurnal pengolahan citra
jurnal pengolahan citrajurnal pengolahan citra
jurnal pengolahan citraOvie Poenya
Β 
Regula falsi
Regula falsiRegula falsi
Regula falsi
Lutfi Nurul Aulia
Β 
Bab 8 pendeteksian tepi
Bab 8 pendeteksian tepiBab 8 pendeteksian tepi
Bab 8 pendeteksian tepi
Syafrizal
Β 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
zachrison htg
Β 
Logika matematika
Logika matematikaLogika matematika
Logika matematikaMeycelino A. T
Β 
Caesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipherCaesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipherHelmaKurniasari
Β 
Matematika Diskrit - 10 pohon - 04
Matematika Diskrit - 10 pohon - 04Matematika Diskrit - 10 pohon - 04
Matematika Diskrit - 10 pohon - 04
KuliahKita
Β 
Tutorial operasi geometrik menggunakan octave
Tutorial operasi geometrik menggunakan octaveTutorial operasi geometrik menggunakan octave
Tutorial operasi geometrik menggunakan octave
RINAPERMATASARII
Β 
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra DigitalPertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
ahmad haidaroh
Β 

What's hot (20)

Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum Algoritma
Β 
02.logika
02.logika02.logika
02.logika
Β 
Ragam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerRagam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan Komputer
Β 
Iterasi gauss seidel
Iterasi gauss seidelIterasi gauss seidel
Iterasi gauss seidel
Β 
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidel
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidelPenyelesaian sistem persamaan linear dengan metode iterasi gauss seidel
Penyelesaian sistem persamaan linear dengan metode iterasi gauss seidel
Β 
Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03
Β 
Transformasi laplace
Transformasi laplaceTransformasi laplace
Transformasi laplace
Β 
Pcd 05 - transformasi citra
Pcd   05 - transformasi citraPcd   05 - transformasi citra
Pcd 05 - transformasi citra
Β 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristik
Β 
Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )
Β 
Bab 4 operasi-operasi dasar pengolahan citra dijital
Bab 4 operasi-operasi dasar pengolahan citra dijitalBab 4 operasi-operasi dasar pengolahan citra dijital
Bab 4 operasi-operasi dasar pengolahan citra dijital
Β 
jurnal pengolahan citra
jurnal pengolahan citrajurnal pengolahan citra
jurnal pengolahan citra
Β 
Regula falsi
Regula falsiRegula falsi
Regula falsi
Β 
Bab 8 pendeteksian tepi
Bab 8 pendeteksian tepiBab 8 pendeteksian tepi
Bab 8 pendeteksian tepi
Β 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
Β 
Logika matematika
Logika matematikaLogika matematika
Logika matematika
Β 
Caesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipherCaesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipher
Β 
Matematika Diskrit - 10 pohon - 04
Matematika Diskrit - 10 pohon - 04Matematika Diskrit - 10 pohon - 04
Matematika Diskrit - 10 pohon - 04
Β 
Tutorial operasi geometrik menggunakan octave
Tutorial operasi geometrik menggunakan octaveTutorial operasi geometrik menggunakan octave
Tutorial operasi geometrik menggunakan octave
Β 
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra DigitalPertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Β 

Viewers also liked

Tugas pengolahan citra
Tugas pengolahan citraTugas pengolahan citra
Tugas pengolahan citra
Isnaini Habiballah
Β 
Tutorial pengolahan citra menggunakan octave
Tutorial pengolahan citra menggunakan octaveTutorial pengolahan citra menggunakan octave
Tutorial pengolahan citra menggunakan octave
Tumiarsimamora
Β 
Dasar matlab
Dasar matlabDasar matlab
Dasar matlabRina Ayank
Β 
Tugas program sitti zulaeha
Tugas program sitti zulaehaTugas program sitti zulaeha
Tugas program sitti zulaehaSitti Zulaeha
Β 
Laporan Praktikum warna dalam cahaya
Laporan Praktikum warna dalam cahayaLaporan Praktikum warna dalam cahaya
Laporan Praktikum warna dalam cahaya
Annisa Icha
Β 
Membuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlabMembuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlab
Nur Halimah
Β 
PERULANGAN DALAM MATLAB
PERULANGAN DALAM MATLABPERULANGAN DALAM MATLAB
PERULANGAN DALAM MATLAB
Febri Arianti
Β 
Matlab Untuk Pengolahan Citra
Matlab Untuk Pengolahan CitraMatlab Untuk Pengolahan Citra
Matlab Untuk Pengolahan Citra
arifgator
Β 
Modul praktikum pengolahan citra digital
Modul praktikum pengolahan citra digitalModul praktikum pengolahan citra digital
Modul praktikum pengolahan citra digitalDhanar Intan Surya Saputra
Β 
Praktik dengan matlab
Praktik dengan matlabPraktik dengan matlab
Praktik dengan matlab
Syafrizal
Β 
Panduan matlab
Panduan matlabPanduan matlab
Panduan matlab
giya12001
Β 
Contoh program matlab
Contoh program matlabContoh program matlab
Contoh program matlabZahra Doangs
Β 

Viewers also liked (12)

Tugas pengolahan citra
Tugas pengolahan citraTugas pengolahan citra
Tugas pengolahan citra
Β 
Tutorial pengolahan citra menggunakan octave
Tutorial pengolahan citra menggunakan octaveTutorial pengolahan citra menggunakan octave
Tutorial pengolahan citra menggunakan octave
Β 
Dasar matlab
Dasar matlabDasar matlab
Dasar matlab
Β 
Tugas program sitti zulaeha
Tugas program sitti zulaehaTugas program sitti zulaeha
Tugas program sitti zulaeha
Β 
Laporan Praktikum warna dalam cahaya
Laporan Praktikum warna dalam cahayaLaporan Praktikum warna dalam cahaya
Laporan Praktikum warna dalam cahaya
Β 
Membuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlabMembuat program kalkulator sederhana dengan matlab
Membuat program kalkulator sederhana dengan matlab
Β 
PERULANGAN DALAM MATLAB
PERULANGAN DALAM MATLABPERULANGAN DALAM MATLAB
PERULANGAN DALAM MATLAB
Β 
Matlab Untuk Pengolahan Citra
Matlab Untuk Pengolahan CitraMatlab Untuk Pengolahan Citra
Matlab Untuk Pengolahan Citra
Β 
Modul praktikum pengolahan citra digital
Modul praktikum pengolahan citra digitalModul praktikum pengolahan citra digital
Modul praktikum pengolahan citra digital
Β 
Praktik dengan matlab
Praktik dengan matlabPraktik dengan matlab
Praktik dengan matlab
Β 
Panduan matlab
Panduan matlabPanduan matlab
Panduan matlab
Β 
Contoh program matlab
Contoh program matlabContoh program matlab
Contoh program matlab
Β 

Similar to Tugas mandiri pengolahan citra digital

Tugas mandiri pengolahan citra digital
Tugas mandiri pengolahan citra digitalTugas mandiri pengolahan citra digital
Tugas mandiri pengolahan citra digital
Andree Ddoank
Β 
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNERKALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
aulia rachmawati
Β 
Tugas makalah simulasi komputasi tambang
Tugas makalah simulasi komputasi tambangTugas makalah simulasi komputasi tambang
Tugas makalah simulasi komputasi tambangSylvester Saragih
Β 
KELOMPOK 1 KELAS D MICROCONTROLLER.doc
KELOMPOK 1 KELAS D MICROCONTROLLER.docKELOMPOK 1 KELAS D MICROCONTROLLER.doc
KELOMPOK 1 KELAS D MICROCONTROLLER.doc
YustinRuruRanteBamba
Β 
Makalah printer
Makalah printerMakalah printer
Makalah printerDedy Bagoes
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Donny Kurniawan
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Donny Kurniawan
Β 
Modul 5 dian haryanto 1407123394
Modul 5 dian haryanto  1407123394Modul 5 dian haryanto  1407123394
Modul 5 dian haryanto 1407123394
dian haryanto
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Donny Kurniawan
Β 
pembuatan TA man bangil "pembuatan website"
pembuatan TA man bangil "pembuatan website"pembuatan TA man bangil "pembuatan website"
pembuatan TA man bangil "pembuatan website"
mufid Fakhrudin
Β 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrogramanasuransipaninlife
Β 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrogramanasuransipaninlife
Β 
Rumput Sintetis
Rumput SintetisRumput Sintetis
Rumput Sintetis
Malfattahjillan
Β 
Rumput Sintetis
Rumput SintetisRumput Sintetis
Rumput Sintetis
Malfattahjillan
Β 
Rumput Sitensis
Rumput SitensisRumput Sitensis
Rumput Sitensis
Malfattahjillan
Β 
Modul 3 Periferal
Modul 3   PeriferalModul 3   Periferal
Modul 3 Periferal
Aan Solo
Β 
Tugas tentang laporan praktek kerja lapang
Tugas tentang laporan praktek kerja lapangTugas tentang laporan praktek kerja lapang
Tugas tentang laporan praktek kerja lapang
anggarahmad
Β 
Penerapan komputer di bidang industri
Penerapan komputer di bidang industriPenerapan komputer di bidang industri
Penerapan komputer di bidang industri
SMK MUhammadiyah Singkut
Β 

Similar to Tugas mandiri pengolahan citra digital (20)

Tugas mandiri pengolahan citra digital
Tugas mandiri pengolahan citra digitalTugas mandiri pengolahan citra digital
Tugas mandiri pengolahan citra digital
Β 
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNERKALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
KALIBRASI KAMERA MENGGUNAKAN SOFTWARE PHOTOMODELLER SCANNER
Β 
Tugas makalah simulasi komputasi tambang
Tugas makalah simulasi komputasi tambangTugas makalah simulasi komputasi tambang
Tugas makalah simulasi komputasi tambang
Β 
KELOMPOK 1 KELAS D MICROCONTROLLER.doc
KELOMPOK 1 KELAS D MICROCONTROLLER.docKELOMPOK 1 KELAS D MICROCONTROLLER.doc
KELOMPOK 1 KELAS D MICROCONTROLLER.doc
Β 
Makalah printer
Makalah printerMakalah printer
Makalah printer
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 3)
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 1 dan 2)
Β 
Modul 5 dian haryanto 1407123394
Modul 5 dian haryanto  1407123394Modul 5 dian haryanto  1407123394
Modul 5 dian haryanto 1407123394
Β 
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Cara Membuat Program Chatting Sederhana Dengan Visual Basic (Program 4)
Β 
Multimedia
MultimediaMultimedia
Multimedia
Β 
pembuatan TA man bangil "pembuatan website"
pembuatan TA man bangil "pembuatan website"pembuatan TA man bangil "pembuatan website"
pembuatan TA man bangil "pembuatan website"
Β 
Tugas Akhir
Tugas AkhirTugas Akhir
Tugas Akhir
Β 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrograman
Β 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrograman
Β 
Rumput Sintetis
Rumput SintetisRumput Sintetis
Rumput Sintetis
Β 
Rumput Sintetis
Rumput SintetisRumput Sintetis
Rumput Sintetis
Β 
Rumput Sitensis
Rumput SitensisRumput Sitensis
Rumput Sitensis
Β 
Modul 3 Periferal
Modul 3   PeriferalModul 3   Periferal
Modul 3 Periferal
Β 
Tugas tentang laporan praktek kerja lapang
Tugas tentang laporan praktek kerja lapangTugas tentang laporan praktek kerja lapang
Tugas tentang laporan praktek kerja lapang
Β 
Penerapan komputer di bidang industri
Penerapan komputer di bidang industriPenerapan komputer di bidang industri
Penerapan komputer di bidang industri
Β 

Recently uploaded

PPT Observasi Praktik Kinerja PMM SD pdf
PPT Observasi Praktik Kinerja PMM SD pdfPPT Observasi Praktik Kinerja PMM SD pdf
PPT Observasi Praktik Kinerja PMM SD pdf
safitriana935
Β 
ppt profesionalisasi pendidikan Pai 9.pdf
ppt profesionalisasi pendidikan Pai 9.pdfppt profesionalisasi pendidikan Pai 9.pdf
ppt profesionalisasi pendidikan Pai 9.pdf
Nur afiyah
Β 
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
Indah106914
Β 
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
agusmulyadi08
Β 
Patofisiologi Sistem Endokrin hormon pada sistem endokrin
Patofisiologi Sistem Endokrin hormon pada sistem endokrinPatofisiologi Sistem Endokrin hormon pada sistem endokrin
Patofisiologi Sistem Endokrin hormon pada sistem endokrin
rohman85
Β 
Bahan Sosialisasi PPDB_1 2024/2025 Bandung
Bahan Sosialisasi PPDB_1 2024/2025 BandungBahan Sosialisasi PPDB_1 2024/2025 Bandung
Bahan Sosialisasi PPDB_1 2024/2025 Bandung
Galang Adi Kuncoro
Β 
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik DosenUNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
AdrianAgoes9
Β 
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdfEVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
Rismawati408268
Β 
ppt landasan pendidikan pai 9 revisi.pdf
ppt landasan pendidikan pai 9 revisi.pdfppt landasan pendidikan pai 9 revisi.pdf
ppt landasan pendidikan pai 9 revisi.pdf
setiatinambunan
Β 
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docxINSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
lindaagina84
Β 
ppt materi aliran aliran pendidikan pai 9
ppt materi aliran aliran pendidikan pai 9ppt materi aliran aliran pendidikan pai 9
ppt materi aliran aliran pendidikan pai 9
mohfedri24
Β 
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
Kanaidi ken
Β 
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdfLaporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
UmyHasna1
Β 
ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_
setiatinambunan
Β 
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdfPaparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
SEMUELSAMBOKARAENG
Β 
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdfLK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
UditGheozi2
Β 
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docxRUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
kinayaptr30
Β 
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docxSOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
MuhammadBagusAprilia1
Β 
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
arianferdana
Β 
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdfRHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
asyi1
Β 

Recently uploaded (20)

PPT Observasi Praktik Kinerja PMM SD pdf
PPT Observasi Praktik Kinerja PMM SD pdfPPT Observasi Praktik Kinerja PMM SD pdf
PPT Observasi Praktik Kinerja PMM SD pdf
Β 
ppt profesionalisasi pendidikan Pai 9.pdf
ppt profesionalisasi pendidikan Pai 9.pdfppt profesionalisasi pendidikan Pai 9.pdf
ppt profesionalisasi pendidikan Pai 9.pdf
Β 
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
0. PPT Juknis PPDB TK-SD -SMP 2024-2025 Cilacap.pptx
Β 
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
PI 2 - Ratna Haryanti, S. Pd..pptx Visi misi dan prakarsa perubahan pendidika...
Β 
Patofisiologi Sistem Endokrin hormon pada sistem endokrin
Patofisiologi Sistem Endokrin hormon pada sistem endokrinPatofisiologi Sistem Endokrin hormon pada sistem endokrin
Patofisiologi Sistem Endokrin hormon pada sistem endokrin
Β 
Bahan Sosialisasi PPDB_1 2024/2025 Bandung
Bahan Sosialisasi PPDB_1 2024/2025 BandungBahan Sosialisasi PPDB_1 2024/2025 Bandung
Bahan Sosialisasi PPDB_1 2024/2025 Bandung
Β 
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik DosenUNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
UNTUK DOSEN Materi Sosialisasi Pengelolaan Kinerja Akademik Dosen
Β 
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdfEVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
EVIDENCE BASED DALAM PELAYANAN KB DAN KONTRASEPSI.pdf
Β 
ppt landasan pendidikan pai 9 revisi.pdf
ppt landasan pendidikan pai 9 revisi.pdfppt landasan pendidikan pai 9 revisi.pdf
ppt landasan pendidikan pai 9 revisi.pdf
Β 
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docxINSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
INSTRUMEN PENILAIAN PRAKTIK KINERJA KS Dok Rating Observasi (1).docx
Β 
ppt materi aliran aliran pendidikan pai 9
ppt materi aliran aliran pendidikan pai 9ppt materi aliran aliran pendidikan pai 9
ppt materi aliran aliran pendidikan pai 9
Β 
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
Β 
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdfLaporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Β 
ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_
Β 
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdfPaparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
Paparan Kurikulum Satuan Pendidikan_LOKAKARYA TPK 2024.pptx.pdf
Β 
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdfLK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
LK 1 - 5T Keputusan Berdampak PERMATA BUNDA.pdf
Β 
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docxRUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
RUBRIK OBSERVASI KINERJA KEPALA SEKOLAH.docx
Β 
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docxSOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
SOAL SHB PKN SEMESTER GENAP TAHUN 2023-2024.docx
Β 
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
2. Kerangka Kompetensi Literasi Guru SD_Rev.pptx
Β 
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdfRHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
Β 

Tugas mandiri pengolahan citra digital

  • 1. TUGAS MANDIRI PENGOLAHAN CITRA DIGITAL MENGGUNAKAN OCTAVE MATA KULIAH : PEMROGRAMAN CITRA DIGITAL NAMA : FAUJI GABE.H . PANGANRIBUAN NPM : 130210206 DOSEN : COSMOS EKO SUHARYANTO. M. Kom. UNIVERSITAS PUTERA BATAM 2015
  • 2. i KATA PENGANTAR Syukur Alhamdulillah kehadirat Tuhan YME, yang telah melimpahkan segala rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan makalah yang merupakan salah satu Tugas Mandiri mata kuliah Pengolahan Citra Digital di Universitas Putera Batam. Makalah ini disusun dengan judul Pengolahan Citra Digital Menggunakan OCTAVE. Didalam makalah ini terdapat penjelasan mengenai mengolah objek citra dengan menggunakan algoritma dan pemrograman. Penulis sangat menyadari bahwa makalah ini masih jauh dari sempurna. Karena itu, kritik dan saran yang bersifat konstruktif serta membangun akan senantiasa penulis terima dengan senang hati. Dengan segala keterbatasan, penulis menyadari pula bahwa makalah ini tak akan terwujud tanpa bantuan, bimbingan dan dorongan dari berbagai pihak yang bersedia membantu dalam pembuatan makalah ini. Batam, Juni 2015 Penulis
  • 3. ii DAFTAR ISI Kata Pengantar............................................................................................... i Daftar Isi ......................................................................................................... ii Bab I Pendahuluan.......................................................................................... 1 1.1 Latar Belakang.................................................................................... 1 1.2 Tujuan Makalah.................................................................................. 1 1.3 Metode Studi....................................................................................... 2 1.4 Waktu Studi........................................................................................ 2 Bab II TinjauanPustaka ................................................................................. 3 2.1 Pengertian Pengolahan Citra Digital................................................... 3 2.2 Prinsip Dasar Pengolahan Citra........................................................... 3 2.3 Representasi Citra................................................................................ 5 2.4 Kuantisasi Citra ................................................................................... 6 2.5 Kualitas Citra....................................................................................... 7 2.6 Membaca Citra..................................................................................... 7 2.7 Mengetahui Ukuran Citra .................................................................... 7 2.8 Menampilkan Citra.............................................................................. 8 2.9 Mengenal Jenis Citra ........................................................................... 8 Bab III Pembahasan....................................................................................... 11 3.1 Operasi Piksel dan Histogram............................................................. 11 3.1.1 Operasi Piksel............................................................................ 11 3.1.2 Menggunakan Histogram Citra ................................................. 11 3.1.3 Meningkatkan Kecerahan.......................................................... 13 3.1.4 Meregangkan Kontras ............................................................... 14 3.1.5 Membalik Citra.......................................................................... 15 3.1.6 Pemotongan Aras Keabuan....................................................... 16
  • 4. iii 3.2 Operasi Ketetanggan Piksel................................................................... 17 3.2.1 Pengertian Ketetanggan Piksel.................................................. 17 3.2.2 Aplikasi Tetangga Piksel........................................................... 17 3.2.2.1 Filter Batas.................................................................... 17 3.2.2.2 Filter Perataan............................................................... 20 3.2.2.3 Filter Median................................................................. 21 3.2.3 Konvolusi................................................................................... 23 3.2.4 Frekuensi.................................................................................... 24 3.2.5 Filter Lolos Rendah................................................................... 25 3.2.6 Filter High Boost....................................................................... 25 3.2.7 Efek Embos................................................................................ 25 3.3 Operasi Geometrik ............................................................................... 25 3.3.1 Pengantar Operasi Geometrik.................................................... 25 3.3.2 Pergeseran Citra .................................................................... 25 3.3.3 Pemutaran Citra......................................................................... 27 3.3.4 Interpolasi Piksel........................................................................ 29 3.3.5 Pemutaran Citra Sembarang Koordinat..................................... 31 3.3.6 Pemutaran Citra Secara Utuh..................................................... 33 3.3.7 Perbesaran Citra......................................................................... 37 3.3.8 Pengecilan Citra......................................................................... 39 3.3.9 Pencerminan Citra..................................................................... 40 3.3.10 Efek Ripple .............................................................................. 45 BAB IV Penutup.............................................................................................. 48 4.1 Kesimpulan............................................................................................. 48 4.2 Saran ................................................................................................ 48 DAFTAR PUSTAKA
  • 5. iv BAB I PENDAHULUAN 1.1 LatarBelakangMasalah Perkembangan teknologi pada masa sekarang telah memasuki era digital. Proses digitalisasi teknologi juga telah mengubah suatu citra berkembang dan lebih menarik buat semua orang dalam menggunakan nya. Teknologi semakin menarik karena adanya multimedia yang membuat sebuah teknologi yang dulunya disajikan hanya berupa sebuah teks, namun sekarang sudah berupa gambar,musik,videodan lain lain. Pengolahan yang berupa teks sekarang hampir telah beralih berupa image atau citra. Mulai dari lahir sampai akhir hayat citra selalu mengabadikan setiap kegiatan dan moment yang berharga bagi seseorang. Untuk itu diperlukan suatu pengolahan agar citra yang dihasilkan bisa dimanipulasi sesuai keinginan. Pengolahan citra tidak hanya dalam dunia fotografi, tetapi juga telah memasuki berbagai aspek seperti : kedokteran, biologi, fisika dan lain sebagainya. Sebagai seorang jurusan informatika kita, harus mengetahui bagaimana sebuah citra diolah dengan menggunakan algoritma dan penulisan program.Jadi sederhananya, citra yang diolah mnggunakan kode program dengan ketentuan yang ada. 1.2 Tujuan Makalah Tujuan dari makalah ini, bertujuan untuk memenuhi tugas matakuliah pengolahan citra,juga untuk menambah pengetahuan bagi penulis pada matakuliah Pengolahan Citra,dan semoga bisa bermanfaat bagi pembacasekalian.
  • 6. v 1.3 Metodepenulisan Metode yang penulis gunakan adalah tinjauan pustaka. Dalam metode ini penulis bersumber dari buku dan internet untuk menyelesaikan makalah ini 1.4 Waktu Studi Studi dilakukan pada bulan akhir Februari2015 sampai dengan akhirJuly 2015
  • 7. 6 BAB II TINJAUAN PUSTAKA 2.1 Pengertian Pengolahan Citra Digital Secara umum, istilah pengolahan citra digital menyatakan β€œpemrosesan gambar berdimensi-dua melalui komputer digital” (Jain, 1989). Menurut Efford (2000), pengolahan citra adalah istilah umum untuk berbagai teknik yang keberadaannya untuk memanipulasi dan memodifikasi citra dengan berbagai cara. Foto adalah contoh gambar berdimensi dua yang bisa diolah dengan mudah. Setiap foto dalam bentuk citra digital (misalnya berasal dari kamera digital) dapat diolah melalui perangkat-lunak tertentu. 2.2 Prinsip Dasar dalam Pengolahan Citra Aplikasi-aplikasi pada umumnya menggunakan prinsip dasar dalam pengolahan citra seperti peningkatan kecerahan dan kontras, penghilangan derau pada citra, dan pencarian bentuk objek 1. PeningkatanKecerahandanKontras Dengan menggunakan pengolahan citra, citra yang kurang cerah dan kurang kontras menjadi bisa diolah menjadi citra yang lebih kontras.
  • 8. 7 Gambar 2.1Pengolahan citra memungkinkan pengubahan kontras pada citra 2. PenghilanganDerau Penghilangan deraukan menghasilkan citra dengan kualitas yang bagus sehingga noise yang ada dapat dihilangkan. Gambar 2.2 Pengolahan citra memungkinkan untuk menghilangkan derau pada citra (a) Citra dengan derau berbentuk kotak-kotak (b) Citra dengan derau telah dihilangkan
  • 9. 8 3. PencarianBentukObjek Untukkepentinganmengenalisuatuobjek di dalamcitra, objekperludipisahkanterlebihduludarilatarbelakangnya. Salah satupendekatan yang umumdipakaiuntukkeperluaniniadalahpenemuanbatasobjek. Gambar 2.3Pengolahan citra memungkinkan untuk mendapatkan bentuk objek 2.3 Representasi Citra Digital Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (pixel atau β€œpicture element”). Setiap piksel digambarkan sebagai satu kotak kecil. Setiap piksel mempunyai koordinat posisi. Sistem koordinat yang dipakai untuk menyatakan citra digital ditunjukkan pada Gambar dibawah ini
  • 10. 9 Gambar 2.4Sistem koordinat citra berukuran M x N Dengan sistem koordinat yang mengikuti asas pemindaian pada layar TV standar itu, sebuah piksel mempunyai koordinat berupa (x, y) Dalam hal ini, ο‚· x menyatakan posisi kolom; ο‚· y menyatakan posisi baris; ο‚· piksel pojok kiri-atas mempunyai koordinat (0, 0) dan piksel pada pojok kanan- bawah mempunyai koordinat (N-1, M-1). 2.4 Kuantisasi Citra Kuantisasi adalah prosedur yang dipakai untuk membuat suatu isyarat yang bersifat kontinue ke dalam bentuk diskret.
  • 11. 10 Tabel 2.1Jangkauan nilai pada citra keabuan Komponen warna Bit per Piksel Jangkauan Penggunaan 1 1 0-1 Citra biner: dokumen faksimili 8 0-255 Umum: foto dan hasil pemindai 12 0-4095 Kualitas tinggi: foto dan hasil pemindai 14 0-16383 Kualitas profesional: foto dan hasil pemindai 16 0-65535 Kualitas tertinggi: citra kedokteran dan astronomi Tabel 2.2Jangkauan nilai pada citra berwarna Komponen Warna Bit per Piksel Jangkauan Penggunaan 3 24 0-1 RGB umum 36 0-4095 RGB kualitas tinggi 42 0-16383 RGB kualitas profesional 4 32 0-255 CMYK (cetakan digital) Gambar 2.5Kuantisasi citra dengan menggunakan berbagai bit 2.5 Kualitas Citra Jumlah piksel yang digunakan untuk menyusun suatu citra mempengaruhi kualitas citra. Istilah resolusi citra biasa dinyatakan jumlah piksel pada arah lebar dan tinggi. Resolusi piksel biasa dinyatakan dengan notasi m x n, dengan m menyatakan tinggi dan n menyatakan lebar dalam jumlah piksel.
  • 12. 11 2.6 Membaca Citra Octave menyediakan perintah yang berguna untuk membaca citra yang tersimpan dalam bentuk file.Perintah itu bernama imread. Bentuk pemanggilannya: Img = imread(nama_file_citra). Format file gambar yang bisa dibaca oleh imread adalah TIFF, PNG, JPG, GIF. >> Img = imread(’C:Imagemandrill.png’); >> 2.7 MengetahuiUkuran Citra Secara umum, ukuran matriks Img adalah M x N. Untuk mengetahui nilai M dan N yang sesungguhnya, dapat digunakan fungsi pada Octave yang bernama size. Contoh untuk mengetahui dimensi pada matriks Img: >> Ukuran = size(Img) Ukuran = 512 512 2.8 Menampilkan Citra Citra dapat ditampilkan dengan mudah melalui fungsi imshow. Contoh berikut digunakan untuk menampilkan citra yang terdapat di Img: >> imshow(Img); 2.9 MengenalJenis Citra Ada tiga jenis citra yang umum digunakan dalam pemrosesan citra. Ketiga jenis citra tersebut yaitu citra berwarna, citra berskala keabuan, dan citra biner.
  • 13. 12 1. Citra Berwarna Citra berwarna, atau biasa dinamakan citra RGB, merupakan jenis citra yang menyajikan warna dalam bentuk komponen R (merah), G (hijau), dan B (biru). Setiap komponen warna menggunakan 8 bit (nilainya berkisar antara 0 sampai dengan 255). Dengan demikian, kemungkinan warna yang bisa disajikan mencapai 255 x 255 x 255 atau 16.581.375 warna. Tabel 2.4 menunjukkan contoh warna dan nilai R,G, dan B. Tabel 2.4 Warna dan nilai penyusun warna Warna R G B Merah 255 0 0 Hijau 0 255 0 Biru 0 0 255 Hitam 0 0 0 Putih 255 255 255 Kuning 0 255 255 Gambar 2.6Citra berwarna 2. Citra Berskala Keabuan Sesuai dengan nama yang melekat, citra jenis ini menangani gradasi warna hitam dan putih, yang tentu saja menghasilkan efek warna abu-abu. Pada jenis gambar ini, warna dinyatakan dengan intensitas. Dalam hal ini, intensitas berkisar antara 0 sampai dengan 255. Nilai 0 menyatakan hitam dan nilai 255 menyatakan putih. Contoh citra berskala keabuan telah dibahas pada Subbab 2.5.
  • 14. 13 3. Citra Biner Citra biner adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah nilai dari dua buah kemungkinan (yaitu nilai 0 dan 1). Nilai 0 menyatakan warna hitam dan nilai 1 menyatakan warna putih. Citra jenis ini banyak dipakai dalam pemrosesan citra, misalnya untuk kepentingan memperoleh tepi bentuk suatu objek. (a) Citra daun berskala keabuan (b) Citra biner Gambar 2.7Citra di kanan menyatakan bentuk citra di kiri dengan mengabaikan komposisi warna
  • 15. 14 BAB III PEMBAHASAN 3.1 Operasi Piksel dan Histogram 3.1.1. Operasi piksel Operasi pikseladalahoperasipengolahancitra yang memetakanhubungansetiappiksel yang bergantungpadapikselitusendiri. Jika f(y, x) menyatakannilaisebuahpikselpadacitra f dan g(y, x) menyatakanpikselhasilpengolahandari f(y, x), hubungannyadapatdinyatakandengan ; 𝑔( 𝑦, π‘₯) = 𝑇(𝑓( 𝑦, π‘₯)) 3.1.2. Menggunakan Histogram Citra Histogram citra merupakan diagram yang menggambarkan frekuensi setiap nilai intensitas yang muncul di seluruh piksel citra. Nilai yang besar menyatakan bahwa piksel-piksel yang mempunyai intensitas tersebut sangat banyak. Algoritma Menghitung histogram citra aras keabuan Masukan: β€’ f(M, N) : citra berukuran M baris dan N kolom β€’ L : jumlah aras keabuan 1. Buatlah larik hist sebanyak 2L elemen dan isi dengan nol. 2. END-FOR END-FOR
  • 16. 15 Program Histogram ==> function histo(Img) > % HISTO Digunakan sebagai contoh pembuatan histogram > > [jum_baris, jum_kolom] = size(Img); > Img = double(Img); > > Histog = zeros(256, 1); > for baris=1 : jum_baris > for kolom=1 : jum_kolom > Histog(Img(baris, kolom)+1) = ... > Histog(Img(baris, kolom)+1) + 1; > end > end > > % Tampilkan dalam bentuk diagram batang > Horis = (0:255)'; > bar(Horis, Histog); > endfunction ==> Img = imread('C:Imagewelcome.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel ==> histo(Img);
  • 17. 16 Gambar 3.1Citra welcome.png dan histogramnya 3.1.3. Meningkatkan Kecerahan Operasidasar yang seringdilakukanpadacitraadalahpeningkatankecerahan (brightness).Operasiinidiperlukandengantujuanuntukmembuatgambarmenjadilebihter ang. Secaramatematis, peningkatankecerahandilakukandengancaramenambahkansuatukonstantaterhadapnilai seluruhpiksel. Misalkan, f(y, x) menyatakannilaipikselpadacitraberskalakeabuanpadakoordinat(y, x). Maka, citrabaru 𝑔( 𝑦, π‘₯) = 𝑓( 𝑦, π‘₯) + 𝛽 Telahmeningkatnilaikecerahansemuapikselnyasebesar𝛽 terhadap citra asli f(y, x). Apabila Ξ² berupabilangan negatif, kecerahanakanmenurunataumenjadilebihgelap Program Peningkatan Kecerahan
  • 18. 17 andree==> barelang = imread('C:Imagemendung.png'); andree==> C = barelang + 80; andree==> figure(1); andree==> subplot(1,2,1);imshow(barelang); andree==> subplot(1,2,2);imshow(C); (1) Gambar asli (2) gambar hasil peningkatan kecerahan Gambar 3.2 Citra barelang.png dengan peningkatan kecerahan 3.1.4. Meregangkan Kontras Kontras dalam suatu citra menyatakan distribusi warna terang dan warna gelap. Suatu citra berskala keabuan dikatakan memiliki kontras rendah apabila distribusi warna cenderung pada jangkauan aras keabuan yang sempit. Sebaliknya, citra mempunyai kontras tinggi, apabila jangkauan aras keabuan lebih terdistribusi secara melebar. Kontras dapat diukur berdasarkan perbedaan antara nilai intensitas tertinggi dan nilai intensitas terendah yang menyusun piksel-piksel dalam citra. Program Kontras
  • 19. 18 octave:1> Img = imread('C:Imagemawar.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel octave:2> K = 2.5 * Img; octave:3> figure(1); octave:4> subplot(1,2,1);imshow(Img); octave:5> subplot(1,2,2);imshow(K); octave:6> (a) Gambar asli (b) citra hasil peningkatan kontas Gambar 3.3 Citra mawar.pngdengan peningkatan kontras 3.1.5. Membalik Citra Membuat citra terlihat negatif dengan rumus π’ˆ( π’š, 𝒙) = πŸπŸ“πŸ“ βˆ’ 𝒇( π’š, 𝒙) Program Membalik Citra
  • 20. 19 ==> anisa = imread('C:Imageanisa.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel ==> R = 255 - anisa; ==> figure(2); ==> subplot(1,2,1);imshow(anisa); ==> subplot(1,2,2);imshow(R); (a) Gambar asli (b) Citra hasil pembalikan Gambar 3.4Citra anisa dan pembalikannya 3.1.6. Pemotongan Aras Keabuan Efek pemotongan (clipping) diperoleh bila dilakukan operasi seperti berikut: 𝑔( 𝑦, π‘₯) = { 0, π‘₯ ≀ 𝑓1 𝑓(𝑦, π‘₯), 𝑓1 < 𝑓( 𝑦, π‘₯) < 𝑓2 255, π‘₯ β‰₯ 𝑓2
  • 21. 20 Nilai g dinolkan atau dipotong habis untuk intensitas asli dari 0 hingga f1 karena dipandang tidak mengandung informasi atau objek menarik. Demikian pula untuk nilai intensitas dari f2 ke atas, yang mungkin hanya mengadung derau. (a) Gambar asli (b) Hasil citra Gambar 3.4 Citra pemotongan aras keabuan 3.2 Operasi Ketetanggan Piksel 3.2.1. Pengertian Tetangga Piksel Operasiketetanggaanpikseladalahoperasipengolahancitrauntukmendapatkannila isuatupiksel yang melibatkannilaipiksel-pikseltetangganya. T2 T8 T2T4 T4 T3 T1P T3 T7 T5 T1P T6 (a) 4-ketetanggaan (b) 8-ketetanggaan Gambar 3.5 Dua macam ketetanggaan piksel ο‚· Pada 4-ketetanggaan
  • 22. 21 𝑇1 = ( 𝑏, π‘˜ + 1), 𝑇2 = ( 𝑏 βˆ’ 1, π‘˜), 𝑇3 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇4 = ( 𝑏 + 1, π‘˜) ο‚· Pada 8-ketetanggaan 𝑇1 = ( 𝑏, π‘˜ + 1), 𝑇2 = ( 𝑏 βˆ’ 1, π‘˜ βˆ’ 1), 𝑇3 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇4 = ( 𝑏 βˆ’ 1, π‘˜ βˆ’ 1) 𝑇5 = ( 𝑏, π‘˜ βˆ’ 1), 𝑇6 = ( 𝑏 + 1, π‘˜ βˆ’ 1), 𝑇7 = ( 𝑏 + 1, π‘˜ βˆ’ 1), 𝑇8 = ( 𝑏 + 1, π‘˜ + 1) 3.2.2. Aplikasi Tetangga Piksel 3.2.2.1. Filter Batas Filter batas adalah filter yang dikemukakan dalam Davies (1990). Idenya adalah mencegah piksel yang intensitasnya di luar intensitas piksel-piksel tetangga. Algoritma yang digunakan untuk keperluan ini dapat dilihat berikut ini. ALGORITMA 4.1 – Menghitung piksel dengan filter batas Masukan: ο‚· f(y, x) : Piksel pada posisi (y, x) Keluaran: ο‚· g(y, x) : Nilai intensitas untuk piksel pada citra g pada posisi (y, x) 1. Carilah nilai intensitas terkecil pada tetangga f(y, x) dengan menggunakan 8-ketetanggan dan simpan pada minInt. 2. Carilah nilai intensitas terbesar pada tetangga f(y, x) dengan menggunakan 8-ketetanggan dan simpan pada maksInt. 3. IF f(y, x) < minInt g(y, x)  minInt
  • 23. 22 ELSE IF f(y. x) > maksInt g(y, x)  maksInt ELSE g(y, x)  f(y, x) END-IF END-IF Program Filter Batas ==> % FILBATAS Melakukan operasi ketetanggan piksel ==> % menggunakan filter batas ==> ==> F = imread('c:Imagenoise.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel ==> Ukuran = size(F); ==> tinggi = Ukuran(1); ==> lebar = Ukuran(2); ==> ==> G = F; ==> for baris=2 : tinggi-1 > for kolom=2 : lebar-1 > minPiksel = min([F(baris-1, kolom-1) ... > F(baris-1, kolom) F(baris, kolom+1) ... > F(baris, kolom-1) ... > F(baris, kolom+1) F(baris+1, kolom-1) ... > F(baris+1, kolom) F(baris+1, kolom+1)]);
  • 24. 23 > maksPiksel = min([F(baris-1, kolom-1) ... > F(baris-1, kolom) F(baris, kolom+1) ... > F(baris, kolom-1) ... > F(baris, kolom+1) F(baris+1, kolom-1) ... > F(baris+1, kolom) F(baris+1, kolom+1)]); > > if F(baris, kolom) < minPiksel > G(baris, kolom) = minPiksel; > else > if F(baris, kolom) > maksPiksel > G(baris, kolom) = maksPiksel; > else > G(baris, kolom) = F(baris, kolom); > end > end > end > end ==> figure(1); ==> subplot(1,2,1);imshow(F); ==> subplot(1,2,2);imshow(G);
  • 25. 24 (a) gambar asli (b) setelh penghilangan noise Gambar 3.6Citra noise dan hasilnya 3.2.2.2. Filter Perataan Filter pererataan (Costa dan Cesar, 2001) dilakukan dengan menggunakan rumus: 𝑔( 𝑦, π‘₯) = 1 9 βˆ‘ βˆ‘ 𝑓(𝑦 + 𝑝, π‘₯ + π‘ž) 1 π‘ž=βˆ’1 1 𝑝=βˆ’1 (a) Gambar Asli (b) Setelah diolah Gambar 3.7Citra perataan 3.2.2.3Filter Median Filter ini dapat dipakai untuk menghilangkan derau bintik-bintik. Nilai yang lebih baik digunakan untuk suatu piksel ditentukan oleh nilai median dari setiap piksel dan kedelapan piksel tetangga pada 8-ketetanggaan. Secara matematis, filter dapat dinotasikan seperti berikut: 𝑔( 𝑦, π‘₯) = π‘šπ‘’π‘‘π‘–π‘Žπ‘›(
  • 26. 25 𝑓( 𝑦 βˆ’ 1, π‘₯ βˆ’ 1), 𝑓( 𝑦 βˆ’ 1, π‘₯), 𝑓( 𝑦 βˆ’ 1, π‘₯ + 1), 𝑓( 𝑦, π‘₯ βˆ’ 1), 𝑓( 𝑦, π‘₯), 𝑓( 𝑦, π‘₯ + 1), 𝑓( 𝑦 + 1, π‘₯ βˆ’ 1), 𝑓( 𝑦 + 1, π‘₯), 𝑓( 𝑦 + 1, π‘₯ + 1)) Program Filter Median % FILMEDIAN Melakukan operasi dengan filter median F = imread('C:Imagemobil.TIF'); [tinggi, lebar] = size(F); for baris=2 : tinggi-1 for kolom=2 : lebar-1 data = [F(baris-1, kolom-1) ... F(baris-1, kolom) ... F(baris-1, kolom+1) ... F(baris, kolom-1) ... F(baris, kolom) ... F(baris, kolom+1) ... F(baris+1, kolom-1) ... F(baris+1, kolom) ... F(baris+1, kolom+1)]; % Urutkan for i=1 : 8 for j=i+1 : 9 if data(i) > data(j) tmp = data(i); data(i) = data(j); data(j) = tmp; end end
  • 27. 26 end % Ambil nilai median G(baris, kolom) = data(5); end end figure(1); imshow(G); clear; (a) Gambar asli (b) gambar setelahdiolah Gambar 3.8Citra median 3.2.3. Konvolusi Konvolusi pada citra sering disebut sebagaikonvolusi dua-dimensi (konvolusi 2D). Konvolusi 2D didefinisikan sebagai proses untuk memperoleh suatu piksel didasarkan pada nilai piksel itu sendiri dan tetangganya, dengan melibatkan suatu matriks yang disebut kernel yang merepresentasikan pembobotan. ALGORITMA 4.2 – Konvolusi pada citra dengan mengabaikan bagian tepi
  • 28. 27 Masukan: ο‚· f : Citra yang akan dikonvolusi ο‚· h : kernel konvolusi Keluaran: ο‚· g : Citra hasil konvolusi 1. m2  floor(jumlah_baris_kernel h) 2. n2  floor(jumlah_lebar_kernel h) 3. FOR y  m2+1 TO tinggi_citra_f – m2 FOR x n2+1 TO lebar_citra_f – n2 // Lakukan konvolusi jum  0; FOR p  -m2 TO m2 FOR q  -n2 TO n2 jum  jum * h(p+m2+1, q+n2+1) * f(y-p, x-p) END-FOR END-FOR g2(y, x)  jum END-FOR END-FOR 4. // Salin posisi g2 ke g dengan membuang yang tidak dikonvolusi 5. FOR y  m2+1 TO tinggi_citra_f – m2 FOR x  n2+1 TO lebar_citra_f – n2 g(y-m2, x-n2)  g2(y, x) END-FOR END-FOR
  • 29. 28 (a)Gambar asli (b) setelah konvolusi Gambar 3.9 Citra hasil konvolusi 3.2.4. Frekuensi Definisi di Wikipedia menyatakan bahwa frekuensi spasial adalah karakteristik sebarang struktur yang bersifat periodis sepanjang posisi dalam ruang. Frekuensi spasial adalah ukuran seberapa sering struktur muncul berulang dalam satu satuan jarak. Frekuensi spasial pada citra menunjukkan seberapa sering suatu perubahan aras keabuan terjadi dari suatu posisi ke posisi berikutnya 3.2.5. Filter lolos rendah Filter lolos-bawah (low-pass filter) adalah filter yang mempunyai sifat dapat meloloskan yang berfrekuensi rendah dan menghilangkan yang berfrekuensi tinggi. Efek filter ini membuat perubahan aras keabuan menjadi lebih lembut. 3.2.6. Filter high boost Filter lolos-tinggi adalah filter yang ditujukan untuk melewatkan frekuensi tinggi dan menghalangi yang berfrekuensi rendah. Hal ini biasa dipakai untuk mendapatkan tepi objek dalam citra atau menajamkan citra 3.2.7. Efek emboss Rahasia pembuatan emboss terletak pada kernel konvolusi dengan sifat seperti berikut (Oliver, dkk., 1993). 1. Tinggi dan lebar kernel gasal.
  • 30. 29 2. Bobot dalam kernel bersifat tidak simetris terhadap piksel pusat. 3. Bobot pusat kernel bernilai nol. 4. Jumlah keseluruhan bobot bernilai nol. 3.3 Operasi Geometrik 3.3.1. Pengantar operasi geometrik Operasi geometrik adalah operasi pada citra yang dilakukan secara geometris seperti translasi, rotasi, dan penyekalaan. Pada operasi seperti ini terdapat pemetaan geometrik, yang menyatakan hubungan pemetaan antara piksel pada citra masukan dan piksel pada citra keluaran 3.3.2. Pergeseran citra Penggeseran citra ke arah mendatar atau vertikal dapat dilaksanakan dengan mudah. Rumus yang digunakan sebagai berikut: π‘₯ π‘π‘Žπ‘Ÿπ‘’ = π‘₯π‘™π‘Žπ‘šπ‘Ž + 𝑠 π‘₯ 𝑦 π‘π‘Žπ‘Ÿπ‘’ = π‘¦π‘™π‘Žπ‘šπ‘Ž + 𝑠 𝑦 Program Pergeseran % GESER Melakukan operasi penggeseran citra. F = imread('c:Imagemenara.png'); [tinggi, lebar] = size(F); sx = 45; % Penggesaran arah horisontal sy = 15; % Penggesaran arah vertikal F2 = double(F); G = zeros(size(F2)); for y=1 : tinggi
  • 31. 30 for x=1 : lebar xlama = x - sx; ylama = y - sy; if (xlama>=1) && (xlama<=lebar) && ... (ylama>=1) && (ylama<=tinggi) G(y, x) = F2(ylama, xlama); else G(y, x) = 0; end end end G = uint8(G); figure(5); subplot(1,2,1);imshow(F); subplot(1,2,2);imshow(G); clear all; (a) gambar asli (b) gambar hasil pergeseran
  • 32. 31 Gambar 3.9Citra pergeseran 3.3.3. Pemutaran citra Suatucitradapatdiputardengansudutπœƒ seiring arah jarum jam atau berlawanan arah jarum jam dengan pusat putaran pada koordinat (0,0). Program Pemutaran Citra % ROTASI Melakukan Operasi pemutaran citra. % Versi 1 % Menggunakan pendekatan pemetaan ke belakang F = imread('c:Imageapartemen.png'); [tinggi, lebar] = size(F); sudut = 10; % Sudut pemutaran rad = pi * sudut/180; cosa = cos(rad); sina = sin(rad); F2 = double(F); for y=1 : tinggi for x=1 : lebar x2 = round(x * cosa + y * sina); y2 = round(y * cosa - x * sina); if (x2>=1) && (x2<=lebar) && ... (y2>=1) && (y2<=tinggi) G(y, x) = F2(y2, x2); else G(y, x) = 0;
  • 34. 33 (b) setelah diputar Gambar 3.10PemutaranCitra 3.3.4. Interploasi piksel Hasil pemutaran citra menggunakan rotasi.m menimbulkan efek bergerigi pada objek citra. Hal itu diakibatkan oleh penggunaan nilai intensitas didasarkan pada piksel tetangga terdekat, yang dilakukan melalui: x2 = round(x * cosa + y * sina); y2 = round(y * cosa - x * sina); Penggunaan fungsi round (pembulatan ke atas) merupakan upaya untuk menggunakan intensitas piksel terdekat. Alternatif lain dilakukan dengan menggunakan floor (pembulatan ke bawah).
  • 35. 34 (a) Sebelum diputar (b) setelah diputar Gambar 3.11Interpolasi Piksel 3.3.5. Pemutaran citra sembarang koordinat Operasi pemutaran citra dapat dilakukan dengan pusat di mana saja; tidak harus dari (0, 0).Rumus untuk melakukan pemutaran berlawanan arah jarum jam sebesar  π‘₯ π‘π‘Žπ‘Ÿπ‘’ = ( π‘₯ βˆ’ 𝑛) βˆ— πΆπ‘œπ‘ ( πœƒ) + ( 𝑦 βˆ’ π‘š) βˆ— 𝑆𝑖𝑛( πœƒ) + 𝑛
  • 36. 35 𝑦 π‘π‘Žπ‘Ÿπ‘’ = ( 𝑦 βˆ’ π‘š) βˆ— πΆπ‘œπ‘ ( πœƒ) βˆ’ ( π‘₯ βˆ’ 𝑛) βˆ— 𝑆𝑖𝑛( πœƒ) + π‘š Program Pemutaran Citra Sembarang Koordinat % ROTASI4 Melakukan operasi pemutaran citra. % Versi 4 - pusat putaran pada pusat citra F = imread('c:Imagepanorama.png'); Ukuran = size(F); tinggi = Ukuran(1); lebar = Ukuran(2); sudut = 5; % Sudut pemutaran rad = pi * sudut/180; cosa = cos(rad); sina = sin(rad); F2 = double(F); m = floor(tinggi / 2); n = floor(lebar / 2); for y=1 : tinggi for x=1 : lebar x2 = (x-n) * cosa + (y-m) * sina + n; y2 = (y-m) * cosa - (x-n) * sina + m; if (x2>=1) && (x2<=lebar) && ... (y2>=1) && (y2<=tinggi) % Lakukan interpolasi bilinear p = floor(y2); q = floor(x2); a = y2-p; b = x2-q; if (x2==lebar) || (y2 == tinggi)
  • 37. 36 G(y, x) = F(y2, x2); else intensitas = (1-a) * ((1-b) * F(p,q) + ... b * F(p, q+1)) + ... a *((1-b)* F(p+1, q) + ... b * F(p+1, q+1)); G(y, x) = intensitas; end else G(y, x) = 0; end end end G = uint8(G); figure(1); imshow(G); clear all; (a) sebelum diputar
  • 38. 37 (c) Setelah diputar Gambar 3.12 Pemutaran Citra Sembarang Koordinat 3.3.6. Pemutaran citra secara utuh Memutar citra secara keseluruhan berarti semua area citra diputar secara penuh dengan sudut tertentu. Program Rotasi Secara Utuh % ROTASI5 Melakukan operasi pemutaran citra. % Versi 5 % Memutar dengan hasil utuh F = imread('c:ImageBALING.PNG'); Ukuran = size(F); tinggi = Ukuran(1); lebar = Ukuran(2); sudut = 45; % Sudut pemutaran rad = pi * sudut/180; cosa = cos(rad);
  • 39. 38 sina = sin(rad); x11 = 1; y11 = 1; x12 = lebar; y12 = 1; x13 = lebar; y13 = tinggi; x14 = 1; y14 = tinggi; m = floor(tinggi/2); n = floor(lebar/2); % Menentukan pojok x21 = ((x11-n) * cosa + (y11-m) * sina + n); y21 = ((y11-m) * cosa - (x11-n) * sina + m); x22 = ((x12-n) * cosa + (y12-m) * sina + n); y22 = ((y12-m) * cosa - (x12-n) * sina + m); x23 = ((x13-n) * cosa + (y13-m) * sina + n); y23 = ((y13-m) * cosa - (x13-n) * sina + m); x24 = ((x14-n) * cosa + (y14-m) * sina + n); y24 = ((y14-m) * cosa - (x14-n) * sina + m); ymin = min([y21 y22 y23 y24]); xmin = min([x21 x22 x23 x24]); ymak = max([y21 y22 y23 y24]); xmak = max([x21 x22 x23 x24]);
  • 40. 39 lebar_baru = xmak - xmin + 1; tinggi_baru = ymak - ymin + 1; tambahan_y = floor((tinggi_baru-tinggi)/2); tambahan_x = floor((lebar_baru-lebar)/2); F2=zeros(tinggi_baru, lebar_baru); for y=1 : tinggi for x=1 : lebar F2(y+tambahan_y, x+tambahan_x) = F(y, x); end end figure(1); imshow( uint8(F2)); % Putar citra m = floor(tinggi_baru/2); n = floor(lebar_baru/2); for y=1 : tinggi_baru for x=1 : lebar_baru x2 = round((x-n) * cosa + (y-m) * sina + n); y2 = round((y-m) * cosa - (x-n) * sina + m); if (x2>=1) && (x2<=lebar_baru) && ... (y2>=1) && (y2<=tinggi_baru) G(y, x) = F2(y2,x2); else
  • 41. 40 G(y,x) = 0; end end end figure(2); G = uint8(G); imshow(G); clear all; (a) Gambar asli
  • 42. 41 (b) Setelah diputar Gambar 3.13. Pemutaran Citra Secara Utuh 3.3.7. Pembesaran citra Suatu citra dapat diperbesar dengan membuat setiap piksel menjadi beberapa piksel. Program Perbesaran Citra octave:1> function G = perbesar(berkas, sy, sx) > % PERBESAR Melakukan operasi pembesaran citra. > % Masukan: berkas = nama berkas image > % sy : skala pembesaran pada sumbu Y > % sx : skala pembesaran pada sumbu X > % > % Versi 1 > > F = imread(berkas); > Ukuran = size(F);
  • 43. 42 > tinggi = Ukuran(1); > lebar = Ukuran(2); > > tinggi_baru = tinggi * sy; > lebar_baru = lebar * sx; > > F2 = double(F); > for y=1 : tinggi_baru > y2 = ((y-1) / sy) + 1; > for x=1 : lebar_baru > x2 = ((x-1) / sx) + 1; > G(y, x) = F(floor(y2), floor(x2)); > end > end > > G = uint8(G); > endfunction octave:2> Img = Perbesar2('C:Imagemayudi.png', 4, 4); octave:3>imshow(Img); (a) Gambar asli
  • 44. 43 (b) Setelah pembesaran Gambar 3.14Pembesaran citra 3.3.8. Pengecilan citra Suatu citra dapat diperkecil dengan membuat setiap piksel menjadi beberapa piksel. Program Pengecilan Citra octave:1> function G = perbesar(berkas, sy, sx) > % PERkecilMelakukan operasi pembesaran citra. > % Masukan: berkas = nama berkas image > % sy : skala pembesaran pada sumbu Y > % sx : skala pembesaran pada sumbu X > % > % Versi 1 > > F = imread(berkas); > Ukuran = size(F);
  • 45. 44 > tinggi = Ukuran(1); > lebar = Ukuran(2); > > tinggi_baru = tinggi * sy; > lebar_baru = lebar * sx; > > F2 = double(F); > for y=1 : tinggi_baru > y2 = ((y-1) / sy) + 1; > for x=1 : lebar_baru > x2 = ((x-1) / sx) + 1; > G(y, x) = F(floor(y2), floor(x2)); > end > end > > G = uint8(G); > endfunction octave:2> Img = Perbesar2('C:Imagemayudi.png', 0,5, 0,5); octave:3>imshow(Img);
  • 46. 45 (a) Citra asli (b) Hasil perkecil Gambar 3.15Pengecilan citra 3.3.9. Pencerminan citra Pencerminan yang umumdilakukanberupapencerminansecaravertikaldanpencerminansecara horizontal.Pencerminansecara horizontal dilakukandenganmenukarkanduapiksel yang berseberangankir-kanan.
  • 47. 46 ALGORITMA – Mencerminkan gambar secara horizontal Masukan: ο‚· f (M,N): Citra masukan berukuran M baris dan N kolom Keluaran: ο‚· g (M, N): Hasil citra yang telah dicerminkan secara horizontal FOR baris  1 TO M FOR kolom  1 TO N g(baris, kolom)  f(N – baris + 1, kolom) END-FOR END-FOR Program Pencerminan secara Horizontal octave:1> function G = cerminh(F) > % CERMINH Berfungsi untuk mencerminkan citra > % secara horizontal > % Masukan: F = Citra berskala keabuan > > [tinggi, lebar] = size(F); > > for y=1 : tinggi > for x=1 : lebar > x2 = lebar - x + 1; > y2 = y; > > G(y, x) = F(y2, x2); > end > end > endfunction
  • 48. 47 octave:2> octave:2> G = uint8(G); error: `G' undefined near line 2 column 11 error: evaluating argument list element number 1 octave:2> F = imread('C:Imageacha.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel octave:3> G = cerminh(F); octave:4> figure(2); octave:5> subplot(1,2,1);imshow(F); octave:6> subplot(1,2,2);imshow(G); (a) Gambar asli (b) Gambar Hasil Pencerminan Gambar 3.16 Pencerminan Citra Secara Horizontal
  • 49. 48 Pencerminan secara Vertical function G = cerminv(F) % CERMINV Berfungsi untuk mencerminkan citra % secara vertikal % Masukan: F = Citra berskala keabuan [tinggi, lebar] = size(F); for y=1 : tinggi for x=1 : lebar x2 = x; y2 = tinggi - y + 1; G(y, x) = F(y2, x2); end end endfunction G = uint8(G); F = imread('C:Imageacha.png'); G = cerminv(F); figure(1); subplot(1,2,1);imshow(F); subplot(1,2,2);imshow(G);
  • 50. 49 (a) Gambar asli (b) Setelah diolah Gambar 3.17 Pencerminan Citra Secara Vertical 3.3.10. Efek Ripple Efek ripple (riak) adalah aplikasi transformasi citra yangmembuat gambar terlihat bergelombang. Efek riak dapaat dibuat baik pada arah x maupun y. Transformasinya seperti berikut: x=x^'+a_x sin 2Ο€y'/T_x y=y^'+a_y sin 2Ο€x'/T_y Dalam hal ini, ax dan ay menyatakan amplitudo riak gelombang sinus, sedangkan Tx dan Ty menyatakan periode gelombang sinus. Program Ripple octave:1> function G = ripple(F, ax, ay, tx, ty) > % RIPPLE Berfungsi untuk melakukan transformasi 'ripple'. > > dimensi = size(F);
  • 51. 50 > tinggi = dimensi(1); > lebar = dimensi(2); > for y=1 : tinggi > for x=1 : lebar > x2 = x + ax * sin(2 * pi * y / tx); > y2 = y + ay * sin(2 * pi * x / ty); > if (x2>=1) && (x2<=lebar) && ... > (y2>=1) && (y2<=tinggi) > > % Lakukan interpolasi bilinear > p = floor(y2); > q = floor(x2); > a = y2-p; > b = x2-q; > > if (floor(x2)==lebar) || ... > (floor(y2) == tinggi) > G(y, x) = F(floor(y2), floor(x2)); > else > intensitas = (1-a)*((1-b)*F(p,q) + ... > b * F(p, q+1)) + ... > a *((1-b)* F(p+1, q) + ... > b * F(p+1, q+1)); > > G(y, x) = intensitas; > end > else > G(y, x) = 0;
  • 52. 51 > end > end > end > > G = uint8(G); > endfunction octave:2> F = imread('C:imagemonas.png'); warning: your version of GraphicsMagick limits images to 16 bits per pixel octave:3> G = ripple(F,10,15,120, 250); octave:4> figure(1); octave:5> subplot(1,2,1);imshow(F); octave:6> subplot(1,2,2);imshow(G); (a) Gambar asli (b) setelah diberi efek Gambar 3.18 Efek Ripple Citra
  • 53. 52 BAB IV PENUTUP 4.1 Kesimpulan Pengolahan citra menjadi suatu yang sangat diperlukan pada era digital saat ini. Pengolahan dilakukan untuk mendapatkan hasil citra yang diinginkan. Seorang yang ahli informatika tentu tidak hanya bisa menggunakan aplikasi pengolahan citra tetapi juga harus mengetahui bagaimana citra tersebut dari citra asli dimanipulasi menjadi citra yang diinginkan. Tentu saja, ini berhubungan dengan kode program yang menjadi dasar pengolahan citra. Dalam hal ini dibantu dengan tool yakni OCTAVE. Dengan tool ini kita mendapatkan gambaran secara umum proses sebuah citra dioleh ke bentuk lain dengan menggunakan algoritma dan pemrograman. 4.2 Saran ο‚· Sebelum mempelajari pengolahan citra dengan OCTAVE sebaiknya menguasai dasar pemrograman. ο‚· Penggunaan ilmu matematika sangat dibutuhkan dalam pengolahan citra digital karena berkaitan dengan ukuran.