ALJABAR LINEAR DALAM ALGORITMA KOMPRESI GAMBAR MEMANFAATKAN DEKOMPOSISI NILAI SINGULAR (SINGULAR
VALUE DECOMPOSITION ATAU SVD)
Diajukan untuk memenuhi salah satu tugas Mata Kuliah: Matematika Informatika
Dosen Pengampu: Luh Arida Ayu Rahning Putri, S.Kom., M.Cs.
Disusun oleh Kelompok 2 Kelas B
Ni Luh Putu Arvina Indira Arda 2408561006 I Kadek Candra Gunawan 2408561057
Dia Arufata 2408561099
I Kadek Dhiyo Dewangga 2408561137
PROGRAM STUDI SARJANA INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA
2024
2
DAFTAR ISI
DAFTAR ISI ...2
BAB I ...3
PENDAHULUAN ...3
1.1 Latar Belakang ...3
1.2 Rumusan Masalah ...3
1.3 Tujuan ...3
BAB II ...5
ISI ...5
2.1 Dasar Teori ...5
2.1.1 Konsep Teori Aljabar Linear dalam Kompresi ...6
2.1.2 Konsep Singular Value Decomposition ...6
2.1.3 Konsep Teori SVD dalam Kompresi ... 10
2.1.4 Gambaran Umum Proses Dekomposisi dalam SVD ... 11
2.2 Penerapan Aljabar Linear dalam Kompresi Gambar ... 12
2.2.1 Langkah-langkah Kompresi Gambar dengan Singular Value Decomposition ... 12
2.2.2 Contoh Kompresi Gambar Grayscale dengan SVD ... 12
2.2.3 Contoh Kompresi Gambar dengan SVD Menggunakan Python ... 14
BAB III ... 18
SIMPULAN ... 18
DAFTAR PUSTAKA ... 19
3
BAB I
PENDAHULUAN
1.1 Latar Belakang
Penerapan teknik kompresi gambar menjadi salah satu hal yang sangat penting dalam bidang pengolahan citra digital. Dengan meningkatnya jumlah dan ukuran data gambar yang dihasilkan, kebutuhan untuk mengurangi ukuran file gambar tanpa mengorbankan kualitas visual semakin diperlukan. Kompresi gambar yang efisien memungkinkan penghematan ruang penyimpanan, serta mempercepat proses transmisi data.
Salah satu metode yang sering digunakan dalam kompresi gambar adalah metode Singular Value Decomposition (SVD). Singular Value Decomposition merupakan teknik matriks yang sangat berguna dalam analisis data dan pengolahan citra. Dalam konteks gambar, Singular Value Decomposition digunakan untuk menata ulang gambar menjadi tiga komponen utama, yaitu matriks singular, matriks vektor kiri, dan matriks vektor kanan. Proses ini memungkinkan mengubah gambar dalam bentuk yang lebih sederhana, dengan mengurangi ukuran file gambar.
1.2 Rumusan Masalah
Pada laporan ini akan membahas materi yang akan dibatasi berdasarkan rumusan masalah berikut:
1. Apa yang dimaksud aljabar linear elementer?
2. Apa itu kompresi data?
3. Apa manfaat kompresi data?
4. Bagaimana konsep penerapan aljabar linear dalam kompresi data khususnya pada gambar menggunakan metode SVD (Singular Value Decomposition)?
1.3 Tujuan
Berdasarkan rumusan masalah yang telah dijabarkan, diharapkan beberapa hal tercapai melalui laporan ini, yaitu:
1. Mengetahui pengertian aljabar linear elementer.
2. Mengetahui pengertian kompresi data.
3. Mengetahui manfaat kompresi data.
4 4. Mengetahui konsep penerapan aljabar linear dalam kompresi data berupa gambar dengan
metode SVD (Singular value Decomposition).
5
BAB II ISI
2.1 Dasar Teori
Aljabar linear elementer adalah cabang matematika yang mempelajari dasar-dasar aljabar linear: Ruang vektor, Transformasi linear, Kombinasi linear, Garis dan bidang, Pemetaan, Vektor, Matriks, Fungsi linear. Aljabar linear elementer memiliki banyak aplikasi, di antaranya:
o Memodelkan fenomena alam o Mengoptimalkan proses
o Menyelesaikan perhitungan kompleks di ilmu komputer, fisika, ekonomi, dan lainnya o Pemrosesan dan analisis data di teknik informatika
Aljabar linear elementer berbeda dengan aljabar linear dasar. Aljabar linear dasar lebih fokus pada matriks dan mencari faktorisasi matriks untuk menghitung sesuatu. Sedangkan aljabar linear elementer lebih fokus pada studi transformasi linear.
Kompresi data adalah teknik untuk mengurangi ukuran file digital tanpa menghilangkan informasi penting. Saat ini terdapat banyak sekali algoritma yang dapat digunakan pada proses kompresi citra digital seperti DCT, Huffman, Wavelet, RLE, JPEG, AMBTC, NMF, dan lain-lain.
Setiap algoritma memiliki kelebihan dan kekurangan tersendiri tergantung citra sampel yang digunakan untuk kompresi. Selain itu dimensional citra juga berpengaruh terhadap kualitas hasil kompres.
Kompresi gambar merupakan suatu tipe kompresi data yang dilakukan pada gambar digital. Dengan kompresi gambar, suatu file gambar digital dapat dikurangi ukuran filenya dengan baik tanpa mempengaruhi kualitas gambar secara signifikan. Terdapat berbagai metode dan algoritma yang digunakan untuk kompresi gambar pada zaman modern ini. Berdasarkan Phandany dkk. salah satu metode yang digunakan untuk kompresi gambar adalah menggunakan aljabar linear, khususnya teknik yang dikenal sebagai Singular Value Decomposition (SVD). Dalam kompresi gambar dan video, aljabar linear adalah konsep penting, khususnya dalam metode seperti kompresi JPEG yang memanfaatkan Singular Value Decomposition (SVD). Algoritma SVD didasarkan pada teorema dalam aljabar linier yang menyatakan bahwa sebuah matriks dua dimensi dapat dipecah menjadi hasil perkalian dari 3 sub-matriks yaitu matriks ortogonal U, matriks diagonal S, dan transpose dari matriks ortogonal V.
6 SVD dalam kompresi gambar dapat digunakan untuk mengurangi redudansi informasi dalam gambar. Dalam penelitian terdahulu, terdapat beberapa algoritma yang digunakan dalam menjalankan kompresi pada citra digital. Untuk itu setiap algoritma kompresi citra digital memiliki karakteristik dan keunikan masing-masing, sehingga setiap algoritma memiliki keunggulan dan kelemahan dalam melakukan kompresi pada citra digital dan hasil kompresi yang diberikan oleh setiap algoritma kompresi citra digital berbeda satu sama lain.
2.1.1 Konsep Teori Aljabar Linear dalam Kompresi
Aljabar linear adalah cabang matematika yang mempelajari ruang vektor, matriks, transformasi linear, dan operasi pada objek-objek tersebut. Dalam konteks kompresi gambar dan video, konsep aljabar linear seperti dekomposisi matriks, khususnya Dekomposisi Nilai Singular (Singular Value Decomposition atau SVD), digunakan untuk menguraikan matriks menjadi komponen-komponen yang lebih sederhana.
1. Ruang Vektor dan Matriks : Dalam kompresi gambar, gambar digital dapat direpresentasikan sebagai matriks yang berisi nilai intensitas pixel. pengodean gambar ke dalam matriks, di mana setiap piksel pada gambar direpresentasikan oleh satu elemen matriks. Matriks ini dapat diuraikan menggunakan transformasi linear untuk memperoleh representasi yang lebih kompak.
2. Singular Value Decomposition (SVD) : Singular Value Decomposition (SVD) adalah teknik dalam aljabar linear untuk mendekomposisi atau memfaktorkan sebuah matriks menjadi tiga matriks lain, yang menguraikan struktur asli dari matriks tersebut. SVD sangat berguna dalam banyak bidang seperti kompresi data, pengenalan pola, pengolahan citra, dan machine learning.
2.1.2 Konsep Singular Value Decomposition
2.1.2.1 Pengertian Singular Value Decomposition
Singular Value Decomposition (SVD) adalah salah satu teknik faktorisasi matriks dalam aljabar linear yang digunakan untuk menganalisis dan mendekomposisi sebuah matriks. Secara sederhana, SVD adalah teknik faktorisasi matriks yang berdimensi non persegi (m × n). SVD memecah sebuah matriks berukuran menjadi tiga matriks, yaitu matriks U, matriks ∑, dan matriks VT.
7 2.1.2.2 Diagonal Utama Matriks m x n
Diagonal utama sebuah matriks biasanya didefinisikan pada matriks persegi (matriks bujursangkar) berukuran n x n. Untuk matriks bukan bujursangkar, yaitu matriks m x n, diagonal utama matriks didefinisikan pada garis yang dimulai dari sudut kiri atas terus ke bawah matriks sejauh mungkin.
2.1.2.3 Matriks Ortogonal
Matriks ortogonal adalah matriks yang kolom-kolomnya adalah vektor yang saling ortogonal satu sama lain (hasil kali titik sama dengan 0). Jika vektor-vektor kolom tersebut merupakan vektor satuan, maka matriks ortogonal tersebut dinamakan juga matriks ortonormal. Vektor satuan adalah vektor yang dinormalisasi dengan panjang atau magnitude-nya sehingga memiliki panjang atau magnitude = 1. Jika Q adalah matriks ortogonal m x n, dan kolom-kolom matriks Q adalah vektor-vektor satuan v1 , v2 , …, vm, maka vi vj = 0 untuk i j. Atau, dapat juga dikatakan bahwa Q adalah matriks ortogonal jika QTQ= I, dalam hal ini I adalah matriks identitas.
Contoh:
𝑄𝑇𝑄 =
( 1 3
2 3 −2
3
−2 3
2 3
1 3 2
3 1 3
2 3 )(
1 3 −2
3 2 3 2
3 2 3
1 3
−2 3
1 3
2 3)
= (
1 0 0 0 1 0 0 0 1
)
𝑄𝑇𝑄 = [
3/7 2/7 6/7
−6/7 3/7 2/7 2/7 6/7 −3/7
] [
3/7 2/7 6/7
−6/7 3/7 2/7 2/7 6/7 −3/7
] = [
1 0 0 0 1 0 0 0 1 ]
8 2.1.2.4 Nilai-nilai Singular Matriks
Misalkan A adalah matriks m x n. Jika λ1, λ2, …, λn adalah nilai-nilai eigen dari ATA, maka 𝜎1 = √λ1, 𝜎2= √λ2, … , 𝜎𝑛= √λ𝑛 disebut nilai-nilai singular dari matriks A. • Diasumsikan λ1 ≥ λ2 ≥ ⋯ ≥ λ𝑛 ≥ 0 sehingga 𝜎1 ≥ 𝜎2 ≥ ⋯ ≥ 𝜎𝑛 ≥ 0
2.1.2.4 Contoh Soal Singular Value Decomposition
9
10 2.1.3 Konsep Teori SVD dalam Kompresi
Kompresi data adalah teknik untuk mengurangi ukuran file digital tanpa menghilangkan informasi penting. Saat ini terdapat banyak sekali algoritma yang dapat digunakan pada proses kompresi citra digital seperti DCT, Huffman, Wavelet, RLE, JPEG, AMBTC, NMF, dan lain- lain. Setiap algoritma memiliki kelebihan dan kekurangan tersendiri tergantung citra sampel yang digunakan untuk kompresi. Selain itu dimensional citra juga berpengaruh terhadap kualitas hasil kompres.
Kompresi gambar merupakan suatu tipe kompresi data yang dilakukan pada gambar digital. Dengan kompresi gambar, suatu file gambar digital dapat dikurangi ukuran filenya dengan baik tanpa mempengaruhi kualitas gambar secara signifikan. Terdapat berbagai metode
11 dan algoritma yang digunakan untuk kompresi gambar pada zaman modern ini. Berdasarkan Phandany dkk. salah satu metode yang digunakan untuk kompresi gambar adalah menggunakan aljabar linear, khususnya teknik yang dikenal sebagai Singular Value Decomposition (SVD).
Dalam kompresi gambar dan video, aljabar linear adalah konsep penting, khususnya dalam metode seperti kompresi JPEG yang memanfaatkan Singular Value Decomposition (SVD).
Algoritma SVD didasarkan pada teorema dalam aljabar linier yang menyatakan bahwa sebuah matriks dua dimensi dapat dipecah menjadi hasil perkalian dari 3 sub-matriks yaitu matriks ortogonal U, matriks diagonal S, dan transpose dari matriks ortogonal V.
SVD dalam kompresi gambar dapat digunakan untuk mengurangi redudansi informasi dalam gambar. Dalam penelitian terdahulu, terdapat beberapa algoritma yang digunakan dalam menjalankan kompresi pada citra digital. Untuk itu setiap algoritma kompresi citra digital memiliki karakteristik dan keunikan masing-masing, sehingga setiap algoritma memiliki keunggulan dan kelemahan dalam melakukan kompresi pada citra digital dan hasil kompresi yang diberikan oleh setiap algoritma kompresi citra digital berbeda satu sama lain.
2.1.4 Gambaran Umum Proses Dekomposisi dalam SVD
Jika kita memiliki sebuah matriks A berukuran m×n, SVD menguraikan A menjadi tiga matriks:
di mana:
o U adalah matriks ortogonal berukuran m×m yang berisi vektor singular kiri dari A
o Σ adalah matriks diagonal berukuran m×n yang berisi nilai singular dari A pada diagonal utamanya.
o VT adalah transpose dari matriks ortogonal V berukuran n×n, berisi vektor singular kanan dari A
12
2.2 Penerapan Aljabar Linear dalam Kompresi Gambar
2.2.1 Langkah-langkah Kompresi Gambar dengan Singular Value Decomposition Dalam kompresi gambar, konsep aljabar linear diterapkan dengan menguraikan matriks intensitas pixel menggunakan SVD. Langkah-langkah penerapannya adalah sebagai berikut:
1. Representasi Gambar dalam Bentuk Matriks: Gambar diubah menjadi matriks dua dimensi yang berisi nilai intensitas setiap piksel.
2. Dekomposisi Matriks dengan SVD: Matriks gambar kemudian didekomposisi menjadi komponen U, Σ, dan VT.
3. Reduksi Matriks Menggunakan Nilai Singular Tertentu: Hanya sebagian nilai singular terbesar dalam Σ yang dipertahankan, dan elemen lainnya diabaikan. Hal ini memungkinkan representasi gambar dengan ukuran data yang lebih kecil, tetapi tetap menyerupai gambar asli.
4. Rekonstruksi Gambar: Gambar hasil kompresi direkonstruksi dengan mengalikan kembali komponen U, Σ, dan VT yang telah disederhanakan.
5. Pengaturan Nilai k : Nilai k menentukan seberapa besar kompresi yang ingin dicapai.
Jika kita memilih nilai k yang lebih kecil ukuran data lebih kecil tetapi kualitas gambar akan menurun. Jika k lebih besar, gambar lebih mendekati aslinya namun data yang dibutuhkan lebih besar.
2.2.2 Contoh Kompresi Gambar Grayscale dengan SVD
Misalkan kita memiliki sebuah gambar grayscale berukuran 100×100 piksel, yang berarti gambar ini bisa direpresentasikan sebagai sebuah matriks A berukuran 100×100, di mana setiap elemen Ai,j mewakili intensitas piksel di titik tertentu (dari 0 untuk hitam sampai 255 untuk putih).
Langkah-langkah Kompresi Gambar dengan SVD 1. Representasi Gambar sebagai Matriks
13 o Pertama-tama, gambar diubah menjadi matriks numerik yang dimana setiap elemen
dalam matriks ini mewakili nilai intensitas piksel dalam gambar.
o Misalkan gambar kita direpresentasikan sebagai matriks A berukuran 100×100.
Setiap elemen di matriks tersebut berisi nilai intensitas piksel.
2. Melakukan Dekomposisi SVD pada Matriks A
A = UΣV
TDi mana:
o U adalah matriks ortogonal berukuran 100×100,
o Σ adalah matriks diagonal berukuran 100×100 yang berisi singular values dari A
o VT adalah transpos dari matriks ortogonal V yang berukuran 100×100 3. Pilih Singular Value Terbesar
Untuk mengompresi gambar, kita pilih hanya sebagian nilai singular terbesar. Misalnya, jika kita hanya menyimpan 20 singular value terbesar, maka kita hanya perlu:
o Kolom pertama hingga kolom ke-20 dari U
o Nilai diagonal terbesar pertama hingga ke-20 dari Σ,
o Baris pertama hingga baris ke-20 dari VT
A
20= U
100 X 20Σ
20 X 20V
20 X 100TDi mana:
a. Matriks U100 X 20 :
- Ukuran 100 menunjukkan jumlah baris, sesuai dengan dimensi gambar asli.
- Ukuran 20 menunjukkan bahwa kita hanya mengambil 20 kolom pertama (sesuai dengan jumlah singular values yang dipilih).
b. Matriks Σ20 X 20 :
- Ukuran 20×20 menunjukkan bahwa kita hanya menyimpan 20 nilai singular terbesar dalam bentuk matriks diagonal.
c. Matriks V20 X 100T
- Ukuran 20 menunjukkan bahwa kita hanya mengambil 20 baris pertama dari VT (sesuai dengan jumlah singular values yang dipilih),
- Ukuran 100 tetap menunjukkan jumlah kolom dari matriks asli.
14 Setelah ini, kita akan mendapatkan versi terkompresi dari A dengan ukuran data yang lebih kecil.
4. Rekonstruksi Matriks
Matriks A20 ini adalah perkiraan dari matriks asli A, tetapi hanya menyimpan 20 singular value terbesar. Ukuran data yang kita simpan akan lebih kecil dibandingkan dengan ukuran asli A karena hanya menggunakan sebagian kecil kolom dan baris dari U dan VT
5. Analisis Penghematan Ukuran
Ukuran Asli: Matriks A memiliki ukuran data sebesar 100×100 =10,000 elemen Ukuran Matriks Terkompresi:
o U100×20 memiliki 2000 elemen,
o Σ20×20 memiliki 400 elemen,
o V20×100 memiliki 2000 elemen.
Total elemen yang disimpan setelah kompresi adalah 2000+400+2000 = 4400, sehingga kita mengurangi ukuran data dari 10,000 menjadi 4,400 elemen.
2.2.3 Contoh Kompresi Gambar dengan SVD Menggunakan Python
Berdasarkan Teorema 2.2, Brunton & Kutz [1] juga mengemukakan bahwa dapat dilakukan reduksi terhadap suatu matriks menggunakan SVD, sehingga berikut dilakukan kompresi gambar berbentuk matriks yang berisi data warna berukuran 1920 x 2880 .
Menggunakan SVD, kita dapat mengatur tingkat kompresi gambar dengan memilih nilai . Nilai adalah rank matriks setelah direduksi
Gambar terdiri pixel-pixel data. Pixel dapat direpresentasikan menjadi array tiga dimensi (tinggi, lebar, warna). Dalam SVD digunakan matriks, maka gambar dipecah menjadi tiga array warna dua dimensi, yaitu red (merah), green (hijau), dan blue (biru). Setiap array berisi intensitas warna bersesuaian. Nilai intensitas warna antara 0 – 255.
15 Dilakukan input 5 gambar berbeda yaitu Cat, People, Tree, Building, dan Landscape dengan 10 nilai berbeda yaitu 2, 5, 20, 30, 50, 100, 200, 400, 800, dan 1000. Berikut disajikan perbandingan kualitas gambar asli dengan gambar terkompres.
16
17
18
BAB III SIMPULAN
Aljabar linear elementer adalah cabang matematika yang mempelajari vektor, ruang vektor, dan transformasi linier, serta berbagai operasi dan konsep terkait seperti matriks dan determinan.
Salah satu penerapan signifikan dari aljabar linear elementer adalah dalam bidang kompresi data.
Kompresi data merupakan proses mengurangi ukuran data tanpa menghilangkan informasi penting secara signifikan. Kompresi data bertujuan untuk menghemat ruang penyimpanan dan mempercepat proses transmisi data, khususnya dalam format digital seperti gambar, video, atau file multimedia lainnya.
Penerapan aljabar linear dalam kompresi data, terutama pada gambar, sangat terlihat melalui metode Singular Value Decomposition (SVD). SVD adalah teknik dekomposisi matriks yang memungkinkan representasi data yang lebih efisien dengan mempertahankan informasi utama sambil menghilangkan redundansi.
Dalam kompresi gambar, Singular Value Decomposition memampatkan gambar dengan menyederhanakan data matriks yang mewakili gambar, mengurangi ukurannya tanpa mengurangi secara drastis kualitas visual. Metode yang menggunakan singular value Decomposition ini menunjukkan bahwa aljabar linear memberikan Gambaran penggunaan matematika yang kuat dalam mengatasi permasalahan kompresi data, menawarkan solusi yang optimal dan efisien.
19
DAFTAR PUSTAKA
Munir, Rinaldi. 2021. Singular Value Decomposition (SVD). STEI-Institut Teknologi Bandung.
Rahmadi, Deddy. 2024. KOMPRESI GAMBAR MENGGUNAKAN SINGULAR VALUE DECOMPOSITION (SVD) DENGAN PYTHON. Jurnal Ilmiah Matematika dan Pendidikan Matematika (JMP).