Program ini adalah program sederhana dalam bahasa Java (CLI) yang mengimplementasikan algoritma divide and conquer untuk melakukan kompresi gambar berbasis quadtree dengan parameter kompresi dari pengguna sepert:
- Metode perhitungan galat:
- Varians
- Mean Absolute Deviation
- Max Pixel Difference
- Entropi
- Structural Similarity Index Measure (SSIM)
- Ambang batas galat.
- Ukuran blok minimum.
- Target persentase kompresi (jika aktif, maka program akan mengatur nilai ambang batas galat secara dinamis).
- Opsi untuk mengekspor GIF.
Program dibuat dengan Java versi 21.
Pastikan Java Runtime Environment terpasang di sistem operasi agar bisa menjalankan program. Untuk mengkompilasi program, pastikan juga Java Development Kit terpasang.
Untuk menjalankan program, maka lakukan langkah berikut:
- Klon repositori ini ke lokal:
git clone https://github.com/L4mbads/Tucil2_13523162
- Masuk ke repo lokal:
cd Tucil2_13523162
- Untuk mengkompilasi program, gunakan salah satu dari skrip build sesuai dengan sistem operasi:
./build.sh # jika menggunakan Linux
./build.bat # jika menggunakan Windows
- Jalankan program:
java -jar bin/ImageCompressor.jar
Pastikan requirements terpenuhi sebelum menjalankan program.
Setelah menjalakan program, pengguna harus memasukkan parameter-parameter berikut:
- Alamat absolut gambar yang akan dikompresi.
- Metode perhitungan galat.
- Ambang batas galat.
- Ukuran blok minimum.
- Target persentase kompresi (floating number, 1.0 = 100%), beri nilai 0 jika ingin menonaktifkan mode ini.
- Alamat absolut gambar hasil kompresi.
- Alamat absolut GIF (beri "n" untuk tidak membuat GIF).
Seluruh parameter dapat di-buffer. Artinya pengguna bisa memasukkan seluruh parameter sejak saat input pertama saja, dipisah dengan spasi.
- dragon66 - Pustaka AnimatedGIFWriter.
- MOKOLS - Gambar input pertama dan kedua.
- Artem Saranin - Gambar input ketiga.
- Fachriza Ahmad Setiyono - 13523162 - K3