Makalah Pengolahan Citra Menggunakan Konvolusi Matlab
Makalah Pengolahan Citra Menggunakan Konvolusi Matlab
Operasi konvolusi antara citra f(x,y) dengan kernel g(x,y), yaitu f(x,y) * g(x,y) dapat
diilustrasikan sebagai berikut:
(1) Tempatkan kernel pada sudut kiri atas, kemudian hitung nilai piksel pada posisi (0,0) dari
kernel.
4 4 3 5 4
6 6 5 5 2 3
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Hasil konvolusi = 3. Nilai ini dihitung dengan cara berikut:
(0x4) + (-1x4) + (0x3) + (-1x6) + (4x6) + (-1x5) + (0x5) + (-1x6) + (0x6) = 3
(2) Geser kernel satu piksel ke kanan, kemudian hitung nilai piksel pada posisi (0,0) dari kernel:
4 4 3 5 4
6 6 5 5 2 3 0
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Hasil konvolusi = 0. Nilai ini dihitung dengan cara berikut:
(0x4) + (-1x3) + (0x5) + (-1x6) + (4x5) + (-1x5) + (0x6) + (-1x6) + (0x6) = 0
(3) Geser kernel satu piksel ke kanan, kemudian hitung nilai piksel pada posisi (0,0) dari kernel:
4 4 3 5 4
6 6 5 5 2 3 0 2
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Hasil konvolusi = 2. Nilai ini dihitung dengan cara berikut:
(0x3) + (-1x5) + (0x4) + (-1x5) + (4x5) + (-1x2) + (0x6) + (-1x6) + (0x2) = 2
(4) Geser kernel satu piksel ke bawah, lalu mulai lagi melakukan konvolusi dari sisi kiri citra.
Setiap kali konvolusi, geser kernel atau piksel ke kanan:
4 4 3 5 4
6 6 5 5 2 3 0 2
5 6 6 6 2 0
6 7 5 5 3
3 5 2 4 4
Hasil konvolusi = 0. Nilai ini dihitung dengan cara berikut:
(0x6) + (-1x6) + (0x5) + (-1x5) + (4x6) + (-1x6) + (0x6) + (-1x7) + (0x5) = 0
(5) Geser kernel satu piksel ke kanan, kemudian hitung nilai piksel pada posisi (0,0) dari kernel:
4 4 3 5 4
6 6 5 5 2 3 0 2
5 6 6 6 2 0 2
6 7 5 5 3
3 5 2 4 4
3 0 2
0 2 6
6 0 2
Jika hasil konvolusi menghasilkan nilai piksel negatif, nilai tersebut dijadikan 0. Sebaliknya jika
hasil konvolusi menghasilkan nilai piksel lebih besar dari nilai keabuan maksimum (255), nilai
tersebut dijadikan ke nilai keabuan maksimum. Masalah timbul bila piksel yang dikonvolusi adalah
piksel pinggir, karena beberapa koefisien konvolusi tidak dapat diposisikan pada piksel-piksel citra,
seperti contoh di bawah ini:
4 4 3 5 4 ?
6 6 5 5 2 ?
5 6 6 6 2 ?
6 7 5 5 3
3 5 2 4 4
Solusi untuk masalah ini adalah: (1) piksel-piksel pinggir diabaikan, tidak dikonvolusi, jadi nilai
piksel pinggir sama dengan nilai pada citra semula; (2) duplikasi elemen citra, misalnya elemen
kolom pertama disalin ke kolom M+1 dst.; (3) elemen bertanda “?” diasumsikan bernilai 0 atau
konstanta lain, sehingga konvolusi pinggir-pinggir dapat dilakukan. Solusi dengan ketiga pendekatan
di atas mengasumsikan bagian pinggir citra lebarnya sangat kecil (hanya satu piksel) relatif
dibandingkan dengan ukuran citra, sehingga piksel-piksel pinggir tidak memperlihatkan efek yang
kasat mata.
4 4 3 5 4
6 3 0 2 2
5 0 2 6 2
6 6 0 2 3
3 5 2 4 4
(keterangan : piksel-piksel pinggir (yang tidak diarsir) tidak dikonvolusi)
Dalam algoritma konvolusi citra N x M dengan mask atau kernel yang berukuran 3 x 3 piksel
yang dikonvolusi adalah elemen (i,j). Delapan buah piksel yang bertetangga dengan piksel (i,j)
1.4 Tujuan
Berikut tujuan dari makalah ini adalah sebagai berikut:
1. Memahami konsep dasar dari metode konvolusi dalam pengolahan citra, termasuk prinsip-
prinsip matematisnya.
2. Dapat mendeskripsikan bagaimana metode konvolusi diterapkan dalam pengolahan citra seperti
sharpen dan mean removal.
3. Dapat melakukan percobaan untuk mengilustrasikan bagaimana parameter kovolusi
mempengaruhi hasil pengolahan citra.
N Uraian Peneliti
o
Wikaria Gazali, dkk Dina Dwi Afifah, dkk Rustia Eka Pratiwi, dkk
1 Universitas Binus University Universitas Islam Sekolah Tinggi Teknik
Bandung Harapan Medan
2 Tahun 2012 2022 2013
3 Judul Penerapan Metode Teknik Konvolusi Aplikasi Pengolahan
Konvolusi dalam pada Deep Learning Citra Dengan Teknik
Pengolahan Citra untuk Image Metode Konvolusi
Digital Processing
4 Metode Kovolusi Konvolusi Konvolusi
5 Hasil Penelitian Pengolahan citra Pengolahan operasi Pengolahan citra
dengan menggunakan konvolusi pada citra dengan menggunakan
konvolusi smooth, digital dengan konvolusi gaussian
gaussian blur, menggunakan blur, sharpen, mean
sharpen, mean perhitungan matriks. removal dan emboss.
removal dan emboss.
6 Kesimpulan Kesimpulan dari Konvolusi kernel Kesimpulan dari
penelitian ini adalah yang digunakan penelitian ini adalah
metode konvolusi berupa matriks 3 × 3 aplikasi yang dirancang
dapat digunakan dan 2 × 2, maka memungkinkan untuk
dalam proses pengolahan citra yang mengkombinasikan
pengolahan citra dilakukan efek gaussian blur,
seperti penghalusan memberikan efek mean removal,
citra (smooth), kecil namun masih penajaman citra
Gaussian blur, terlihat perbedaan (sharpen) dan emboss
sharpen, mean antara citra asli sehingga terjadi
removal, emboss dengan citra yang perubahan pada image
(memberi efek timbul sudah diolah. Proses originalnya.
pada citra), dan edge awal untuk konvolusi
detection pada citra adalah
(pendeteksian tepi mengubahnya
pada citra). menjadi matriks citra
dengan derajat
keabuan (0 – 255)
yang setiap titiknya
memiliki nilai lalu
dikalikan dengan
matriks kernel.
BAB III
3.2 Flowchart
Algoritma adalah urutan langkah-langkah logis penyelesaian masalahyang disusun secara
sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam
algoritma harus logis dan harus dapat ditetukan bernilai salah atau benar Adapun keseluruhan
langkah-langkah pengambilan citra sampai dengan proses dapat digambarkan seperti flowchart
dibawah ini :
3.3 Perancangan Sistem
Perancangan sistem pada pemrosesan citra dengan metode konvolusi sharpen dan mean removal
melibatkan langkah-langkah seperti:
1. Input Citra: Pilih citra yang akan diproses. Pastikan citra memiliki resolusi yang memadai dan
sesuai dengan kebutuhan.
2. Preprocessing: Lakukan pra-pemrosesan jika diperlukan, seperti normalisasi atau penyesuaian
kontras, untuk mempersiapkan citra sebelum masuk ke tahap konvolusi.
3. Konvolusi Sharpen: Terapkan filter konvolusi yang dirancang khusus untuk meningkatkan
kejelasan dan detail citra. Misalnya, filter sharpen seperti kernel sharpening dapat digunakan
untuk meningkatkan tepi dan detail objek.
4. Konvolusi Mean Removal: Implementasikan filter konvolusi mean removal untuk menambah
ketajaman citra. Filter ini dapat menghasilkan citra yang lebih tajamdan noise yang lebih jelas.
5. Output Citra: Tampilkan atau simpan hasil citra setelah melewati kedua langkah konvolusi.
Pastikan untuk memeriksa apakah hasil memenuhi tujuan pemrosesan citra.
6. Optimasi dan Evaluasi: Sesuaikan parameter konvolusi, seperti ukuran kernel, sesuai kebutuhan.
Evaluasi hasilnya untuk memastikan bahwa metode ini efektif dalam pemrosesan citra dan
menambah noise.
7. Iterasi dan Peningkatan: Jika diperlukan, ulangi proses dengan menyesuaikan metode atau
parameter untuk mencapai hasil yang optimal.
BAB IV
4.1 Implementasi
Implementasi untuk simulator pemrosesan citra yang sudah dibuat agar dapat bekerja
sebagaimana yang diharapkan, agar simulator pemrosesan citra dapat diketahui dengan baik
cara kerjanya. Maka dibuatlah cara penggunaan simulator berikut ini.
a. Tampilan awal simulator
Pada saat pertama kali membuka simulator, simulator akan menampilkan
antarmuka yang dapat dilihat pada gambar dibawah.
Pada gambar diatas merupakan tampilan awal pada saat pertamakali membuka
aplikasi. Pada tampilan awal tersebut terdapat 2 fitur konvolusi yaitu Sharpen dan
Mean Removal serta fitur tambahan seperti Open image dan Save image.
b. Melakukan input gambar
Untuk melakukan input gambar kedalam simulator dapat dilakukan dengan cara
menekan tombol “Open Image” seperti pada gambar dibawah.
Setelah pemilihan selesai, maka output akan ditampilkan pada Modified Image
yang berada pada fitur konvolusi seperti diatas.
f. Menyimpan hasil output konvolusi
Hasil output dapat disimpan dengan menekan tombol Save Image. Kemudian
dapat memilih langsung lokasi penyimpanan dari hasil konvolusi dan memberikan
nama pada file hasil konvolusi tersebut.
Gambar diatas merupakan contoh hasil konvolusi mean removal yang disimpan
pada file. Gambar yang telah disimpan berbentuk file PNG.
4.2 Pengujian
Pengujian simulator pemrosesan citra dilakukan dengan menggunakan data sebanyak 5
sampel gambar oleh penulis. Pengujian yang dilakukan yaitu pengujian metode konvolusi
sharpen dan mean removal.
Pada table diatas merupakan hasil dari pengujian metode konvolusi. Dalam hasil
pengujian tersebut dapat disimpulkan bahwa setiap fitur dapat bekerja dengan baik jika
digunakan pada jenis noise yang tepat. Setiap fitur konvolusi juga dapat memperburuk kualitas
dari gambar tersebut terutama pada konvolusi mean removal.
BAB V
5.1 Kesimpulan
Dari hasil implementasi dan pengujian diatas, dapat disimpulkan bahwa:
1. Metode konvolusi dapat digunakan dalam proses pengolahan citra seperti: sharpen dan
mean removal.
2. Konvolusi kernel yang digunakan berbentuk matriks 3x3, maka pengolahan citra yang
dilakukan memberi efek kecil namun masih terlihat perbedaan antara citra asli dengan citra
yang sudah diolah. Untuk mendapatkan hasil yang diinginkan pengguna dapat melakukan
proses berulang kali.
3. Pada konvolusi sharpen gambar hasil konvolusi hamper sama dengan gambar awal atau
input. Akan tetapi jika diperhatikan hasilnya sedikit lebih ditanjamkan.
4. Fungsi konvolusi mean removal sama dengan konvolusi sharpen yaitu melakukan
penajaman citra, tetapi konvolusi mean removal memberi ketajaman lebih pada citra. Hal
tersebut dikarenakan oleh kernel yang digunakan oleh konvolusi sharpen hanya bekerja
pada garis horizontal dan vertikal saja, sedangkan konvolusi mean removal juga bekerja
pada garis diagonal.
5. Berdasarkan data-data yang ada pengolahan citra mengunakan metode konvolusi sharpen
dan mean removal semua noise bertambah pada gambar yang telah diuji coba.
6. Aplikasi pengolahan citra yang telah dibuat dapat diterapkan untuk kebutuhan studio foto, di
mana penggunaannya lebih mudah daripada menggunakan software yang ada yang
dilakukan secara manual atau menggunakan software khusus yang memerlukan keahlian
khusus.
5.2 Saran
Saran yang dapat penulis berikan untuk pengembangan implementasi aplikasi
yang telah dibuat untuk kedepannya yaitu dalam penggembangan aplikasi dapat
dilakukan penambahan fitur konvolusi atau metode konvolusi lainnya. Agar aplikasi ini
tidak berfokus pada metode konvolusi sharpen dan mean removal saja. Dapat
menambahkan fitur konvolusi seperti gaussian blur, smooth, median filter ataupun lain
sebagainya.
DAFTAR PUSTAKA
Gazali, Wikaria, Soeparno, Haryono & Ohliati Jenny. 2012. Penerapan Metode
Konvolusi Dalam Pengolahan Citra Digital. Jurnal Mat12:2. Binus University.
Afifah, Dina Dwi, dkk. 2022. Teknik Konvolusi pada Deep Learning untuk Image
Processing. Vol. 2 No. 2 (2022), Hal: 103-112. Universitas Islam Bandung.
Pratiwi, Rustia Eka, dkk. 2013. APlikasi Pengolahan Citra Dengan Teknik Metode
Konvolusi. Sekolah Tinggi Teknik Harapan Medan.
Wijaya, Alvin. 2021. Simulator Pemrosesan Citra Menggunkan Metode Konvolusi Untuk
Gambar Yang Memiliki Noise Pada Desain Spanduk. Sekolah Tinggi Manajemen Informatika
Dan Kompuer Palangkaraya.
LAMPIRAN
% Create UIAxes
app.UIAxes = uiaxes(app.UIFigure);
title(app.UIAxes, 'Image Display')
xlabel(app.UIAxes, 'X')
ylabel(app.UIAxes, 'Y')
app.UIAxes.Position = [50, 200, 600, 300];
% Create SelectImageButton
app.SelectImageButton = uibutton(app.UIFigure, 'push');
app.SelectImageButton.ButtonPushedFcn = createCallbackFcn(app,
@SelectImageButtonPushed, true);
app.SelectImageButton.Position = [50, 50, 100, 22];
app.SelectImageButton.Text = 'Open Image';
% Create SharpenButton
app.SharpenButton = uibutton(app.UIFigure, 'push');
app.SharpenButton.ButtonPushedFcn = createCallbackFcn(app,
@SharpenButtonPushed, true);
app.SharpenButton.Position = [180, 50, 100, 22];
app.SharpenButton.Text = 'Sharpen';
% Create MeanRemovalButton
app.MeanRemovalButton = uibutton(app.UIFigure, 'push');
app.MeanRemovalButton.ButtonPushedFcn = createCallbackFcn(app,
@MeanRemovalButtonPushed, true);
app.MeanRemovalButton.Position = [310, 50, 140, 22];
app.MeanRemovalButton.Text = 'Mean Removal';
% Create OpenImageButton
app.OpenImageButton = uibutton(app.UIFigure, 'push');
app.OpenImageButton.ButtonPushedFcn = createCallbackFcn(app,
@OpenImageButtonPushed, true);
app.OpenImageButton.Position = [50, 120, 120, 22];
app.OpenImageButton.Text = 'Open Image';
% Create SaveImageButton
app.SaveImageButton = uibutton(app.UIFigure, 'push');
app.SaveImageButton.ButtonPushedFcn = createCallbackFcn(app,
@SaveImageButtonPushed, true);
app.SaveImageButton.Position = [180, 120, 120, 22];
app.SaveImageButton.Text = 'Save Image';
end
end
% Construct app
function app = ImageProcessingApp
% Create UIFigure and components
createComponents(app);
if nargout == 0
clear app;
end
end