Tugas mandiri ini membahas tutorial pengolahan citra digital menggunakan Octave, meliputi pengertian pengolahan citra digital, pengenalan Octave, cara membaca dan menampilkan citra, mengubah citra berwarna ke citra abu-abu, menyimpan citra, menggunakan histogram citra, meningkatkan kecerahan dan kontrast citra, serta operasi-operasi lain seperti penggeseran dan pemutaran citra.
1. i
TUGAS MANDIRI
TUTORIAL PENGOLAHAN CITRA MENGGUNAKAN OCTAVE
MATA KULIAH : Pengolahan Citra Digital (Praktek / Teori)
Nama Mahasiswa : Yayuk Catur Anggraini
NPM : 130210347
Kode Kelas : 142-TI28T-M5 / 142-TI28P-M5
Dosen : Cosmas EkoSuharyanto, S.Kom.
UNIVERSITAS PUTERA BATAM
2015
2. ii
KATA PENGANTAR
Puji syukur kehadirat Tuhan yang telah melimpahkan segala karuniaNya,
sehingga penulis dapat menyelesaikan laporan tugas mandiri mata kuliah Pengolahan
Citra Digital ini. Penulis menyadari bahwa laporan tugas mandiri ini masih jauh dari
sempurna dan masih banyak kekurangan. Karena itu, kritik dan saran akan senang
hati penulis terima.
Dengan segala keterbatasan, penulis menyadari pula bahwa laporan tugas
mandiri ini takkan terwujud tanpa bantuan, bimbingan, dan dorongan dari berbagai
pihak. Untuk itu, dengan segala kerendahan hati, penulis menyampaikan ucapan
terima kasih kepada Bapak Cosmas Eko Suharyanto, S.Kom., selaku dosen mata
kuliah Pengolahan Citra Digital. Semoga Tuhan membalas kebaikan dan
mencurahkan rahmatNya yang melimpah, Amin.
Batam, Juni 2015
Penulis
3. iii
DAFTAR ISI
Halaman
HALAMAN JUDUL.................................................................................................i
KATA PENGANTAR...............................................................................................ii
DAFTAR ISI.............................................................................................................iii
TUTORIAL PENGOLAHAN CITRA DIGITAL DENGAN MENGGUNAKAN
OCTAVE....................................................................................................................1
DAFTAR PUSTAKA................................................................................................15
4. 1
TUTORIAL PENGOLAHAN CITRA DIGITAL DENGAN MENGGUNAKAN
OCTAVE
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. Sebagai contoh, apabila hasil bidikan
kamera terlihatagak gelap, citra dapat diolah agar menjadi lebih terang.
Dimungkinkan pula untuk memisahkan foto orang dari latar belakangnya. Gambaran
tersebut menunjukkanhal sederhana yang dapat dilakukan melalui pengolahan citra
digital. Tentu saja, banyak hal lain yang lebih pelik yang dapatdilakukan melalui
pengolahan citra digital.
Pengolahan citra antara lain berperan untuk memisahkan objek dari latar belakang
secara otomatis. Selanjutnya, objek akan diproses oleh pengklasifikasi pola. Sebagai
contoh, sebuah objek buah bisa dikenali sebagai jeruk, apel, atau pepaya. Pada
penginderaan jarak jauh, tekstur atau warna pada citra dapat dipakai untuk
mengidentifikasi objek-objek yang terdapat di dalam citra. Pengolahan citra juga
memungkinkan wajah seseorang dikartunkan.
2. Octave
GNU Octave adalah suatu perangkat lunak gratis (freeware) dan bahasa
tingkat tinggi untuk komputasi numeric dan visualisasi data. Octave dirancang
sebagai tiruan dari Matlab. Sumber informasi mengenai Octave dapat dilihat pada
website www.octave.org.
5. 2
Pada awalnya Octave dikembangkan oleh John W. Eaton (Universitas Texas)
dan sekarang pengembangan dan pemeliharaan Octave dilakukan oleh beberapa
orang volunteer dari berbagai penjuru dunia. Kelebihan utama dari Octave yaitu
gratis (freeware) dan tersedia untuk berbagai sistem operasi seperti Windows
98/2000/XP, Mac OS/X, Debian, Suse, Fedora, RedHat Linux.
3. Menjalankan Program Octave
Pada kebanyakan sistem operasi program GNU Octave dapat dijalankan
dengan memberikan perintah octave pada shell command. Setelah perintah tersebut
kita berikan maka akan muncul suatu jendela GNU Octave. Pada jendela tersebut
akan ditampilkan beberapa pesan singkat mengenai Octave dan kemudian di bawah
pesan singkat tersebut ditampilkan sebuah prompt, yang menandakan bahwa Octave
siap untuk menerima perintah yang akan kita berikan. Gambar 1 adalah tampilan dari
program Octave untuk sistem operasi Windows. Berikut tampilan awal Program
Octave:
4. Membaca dan Menampilakan Citra Pada Octave
Untuk kepentingan memudahkan dalam memahami hasil proses pengolahan
citra, Anda perlu mengenal perintah yang berguna untuk membaca citra yang
tersimpan dalam bentuk file. Octave menyediakan fungsi bernama imread. Bentuk
pemanggilannya:
6. 3
Img = imread(nama_file_citra)
Dalam hal ini, nama_file_citra menyatakan nama file citra yang hendak dibaca
dan Img menyatakan larik (array) yang menampung data citra yang dibaca.
Sedangakan Citra dapat ditampilkan dengan mudah melalui fungsi imshow. Contoh
berikut digunakan untuk menampilkan citra yang terdapat di Img:
>>imshow(Img); A
BerikutContohnya:
5. Menampilkan Banyak Citra
7. 4
Dalam octave, kita juga dapat menampilkan beberapa gambar sekaligus
dengan menggunakan subplot. Contoh penggunaannya adalah sebagai berikut:
Hasilnya :
Angka-angka seltelah perintah sublot diatas berturut-turut berarti (banyak baris yang
akan ditampilkan, banyak kolom yang akan ditampilkan, citrake...)
Berikut untuk citra yang lebih banyak:
8. 5
6. Mengubah Citra Berwarna ke Citra Keabuan
Secara umum citra berwarna dapat dikonversikan kecitra berskala keabuan
melalui rumus:
𝐼 = 𝑎 𝑥 𝑅 + 𝑏 𝑥 𝐺 + 𝑐 𝑥 𝐵, 𝑎 + 𝑏 + 𝑐 = 1
Dengan R menyatakan nilai komponen merah, G menyatakan nilai komponen hijau,
dan B menyatakan nilai komponen biru. Misalnya, sebuah piksel mempunyai
komponen R, G, B sebagai berikut:
R = 50
G = 70
9. 6
B = 61
Salah satu contoh rumus yang biasa dipakai untuk mengubah ke skala keabuan yaitu:
Berikut contoh penerapannya:
7. Menyimpan Citra
Apabila kita ingin menyimpan sebuah citra yang telah kita olah ke
Drive C:/Image dengan nama misalnya abu.jpg, maka dalam octave penerpannya
sebagai berikut:
10. 7
8. 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. Pada citra
berskala keabuan, jumlah aras keabuan (biasa disimbolkan dengan L) sebanyak 256.
Nilai aras dimulai dari 0 hingga 255. Untuk memperoleh histogram, gunakan rumus
berikut:
functionhisto(Img)
% HISTO Digunakan sebagai contoh pembuatan histogram
[jum_baris, jum_kolom] = size(Img);
Img = double(Img);
Histog = zeros(256, 1);
forbaris=1 : jum_baris
forkolom=1 : jum_kolom
11. 8
Histog(Img(baris, kolom)+1) = ...
Histog(Img(baris, kolom)+1) + 1;
end
end
% Tampilkan dalam bentuk diagram batang
Horis = (0:255)';
bar(Horis, Histog);
Selanjutnya untuk memunculkan histogram, panggil gambar yang akan dibuat
histogramnya, misalkan:
>>Img = imread('C:Imageabu.png');Ã
>>histo(Img);Ã
Berikut contoh penerapan dari citra berikut:
12. 9
Berikut perbedaannya ketika kita menggunakan citra yang lebih cerah:
9. MeningkatkanKecerahan
Operasi dasar yang sering dilakukan pada citra adalah peningkatan
kecerahan (brightness). Operasi ini diperlukan dengan tujuan untuk membuat gambar
menjadi lebih terang. Secara matematis, peningkatan kecerahan dilakukan dengan
cara menambahkan suatu konstanta terhadap nilai seluruh piksel. Misalkan, f(y, x)
menyatakan nilai piksel pada citra berskala keabuan pada koordinat (y, x). Maka,
citra baru
g(y,x) = f(y,x) + β
13. 10
telah meningkat nilai kecerahan semua pikselnya sebesar terhadap citra asli f(y, x).
Apabila β berupa bilangan negatif, kecerahan akan menurun atau menjadi lebih gelap.
Berikut contoh penerapannya :
Berikut perbedaan antara sebelum dan sesudahnya:
Sebelum
Sesudah
14. 11
10. MeregangkanKontras
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.
Perlu diketahui, citra dengan kontras rendah acapkali terjadi karena kondisi
pencahayaan yang jelek ataupun tidak seragam. Hal itu dapat diakibatkan oleh
sensor-sensor penangkap citra yang tidak linear (Jain, 1989). Agar distribusi
intensitas piksel berubah perlu dilakukan peregangan kontras. Hal ini dilaksanakan
dengan menggunakan rumus
g(y,x) = a f (y,x)
Berdasarkan rumus di atas, kontras akan naik kalau α > 1 dan kontras akan turun
kalau α < 1. Berikut contoh penerapannya:
Berikut perbandingan antara sebelum dan sesudahnya:
15. 12
11. Kombinasi Kecerahan dan Kontras
Operasi peningkatan kecerahan dan peregangan kontras dapat dilakukan
sekaligus untuk kepentingan memperbaiki citra. Secara umum, gabungan kedua
operasi tersebut dapat ditulis menjadi
s(y,x) = a f (y,x) + β
Berikut contoh implementasi rumus diatas:
Hasil penerapannya:
16. 13
12. Menggeser Citra
Penggeseran citra kearah mendatar atau vertikal dapat dilaksanakan dengan
mudah. Rumus yang digunakan sebagai berikut:
xbaru = xlama + sx
ybaru = ylama + sy
Untuk penyederhanaan pembahasan, sx dan sy dianggap bertipe bilangan bulat.
Berikut contoh program yang digunakan untuk melakukan penggeseran citra
13. Memutar Citra
17. 14
Suatu citra dapat diputar dengan sudut seiring arah jarum jam atau berlawanan
arah jarum jam dengan pusat putaran pada koordinat (0,0). Adapun rumus yang
digunakan untuk memutar citra dengan sudut berlawanan arah jam berupa:
xbaru = * cos(0) + y * sin (0)
Ybaru = * cos(0) - x * sin (0)
Berdasarkan Persamaan diatas, pemutaran citra dengan sudut searah jarum
jam dapat dilakukan. Caranya, dengan menggunakan x dan y sebagai posisi baru dan
xbaru justru sebagai posisi lama. Pada saat menghitung dengan rumus di atas, apabila
posisi koordinat (ybaru ,xbaru) berada di luar area [1, lebar] dan [1, tinggi], intensitas
yang digunakan berupa nol. Cara inilah yang merupakan contoh pemetaan
kebelakang. Implementasinya dapat dilihat berikut ini:
18. 15
DAFTAR PUSTAKA
Abdul Kadir Dan Adhi Susanto, 2013, Teori Dan Aplikasi Pengolahan Citra, Penerbit
Andi Offset, Edisi Pertama, ISBN: 978-979-29-3430-4