Pada kedua activity diagram yang telah diberikan, pertama sekali pengguna melakukan proses input citra lalu sistem akan memproses citra. Sistem hanya
menerima citra bertipe bitmap .bmp yang terdiri dari tiga jenis yaitu citra grayscale
, citra biner, dan citra RGB. Tetapi citra RGB akan dikonversi menjadi YCbCr dan mengambil citra Y grasycale sebagai citra yang akan diproses ke dalam
sistem. Jika citra yang diproses sistem bukan citra bertipe bitmap .bmp, sistem akan menghentikan pemrosesan ke tahap selanjutnya. Selanjutnya jika citra telah sesuai
dengan batasan sistem, sistem akan menampilkan citra yang telah dimasukkan oleh pengguna. Pengguna dapat merespon dengan menekan button kompresi dan sistem
akan memproses yaitu melakukan proses kompresi dengan metode JPEG atau metode BWT sesuai dengan pilihan pengguna. Sistem akan memberikan hasil kompresi
kepada pengguna berupa file dengan format Microsoft Access Table .mat ke direktori penyimpanan yang telah ditentukan oleh sistem. Kemudian sistem akan
menghitung rasio dan waktu kompresi serta menampilkan hasilnya kepada pengguna. Pengguna dapat merespon kembali dengan menekan button dekompresi dan sistem
akan memproses yaitu melakukan proses dekompresi dengan metode JPEG atau metode BWT sesuai dengan pilihan pengguna. Setelah proses dekompresi selesai
sistem akan menampilkan citra hasil dekompresi dan sistem akan menghitung waktu dekompresi yang kemudian akan ditampilkan kepada pengguna. Terakhir citra hasil
dekompresi akan disimpan ke direktori penyimpanan yang telah ditentukan oleh sistem.
3.3 Pseudocode Program
Pseudocode merupakan bahasa yang digunakan untuk menyederhanakan penulisan
sebuah metode atau algoritma. Pseudocode dibuat agar dapat dimengerti manusia dengan mudah sehingga dapat dipahami secara menyeluruh bagaimana cara algoritma
berjalan. Berikut diberikan pseudocode program untuk metode Joint Photographic Experts Group JPEG
dan metode Burrows-Wheeler Transform BWT.
Universitas Sumatera Utara
begin baca citra I
if I == grayscale biner ambil I sebagai input
elseif I == RGB konversi I dari RGB ke YCbCr
ambil Y sebagai input dan simpan Cb dan Cr else
kembali ke awal endif
lakukan Discrete Cosine Transform y := DCTinput lakukan Kuantisasi pada y
lakukan Pengkodean Entropi pada y simpan file y sebagai hasil kompresi
hitung rasio kompresi dan waktu kompresi end
3.3.1 Pseudocode Proses Kompresi Metode Joint Photographic Experts Group
JPEG
Berikut ini merupakan pseudocode program untuk proses kompresi menggunakan metode Joint Photographic Experts Group JPEG.
Pada pseudocode proses kompresi menggunakan metode JPEG, pertama baca citra dengan variabel I kemudian dilanjutkan dengan pemilihan, jika citra I adalah
citra grayscale dan citra biner maka citra I akan diambil sebagai input yang akan diolah oleh sistem, jika citra I adalah citra RGB maka citra I akan dikonversi dari
bentuk RGB menjadi YCbCr dan ambil Y atau citra grayscale sebagai input yang akan diolah oleh sistem, selain dari kondisi tersebut sistem akan mengembalikan
proses ke awal. Selanjutnya proses kompresi akan dimulai dengan melakukan proses
Universitas Sumatera Utara
begin baca data y sebagai hasil proses kompresi
lakukan Dekode Entropi pada y lakukan Dekuantisasi pada y
lakukan Inverse Discrete Cosine Transform Y := IDCTy
if nilai Cb nilai Cr == 1 baca Y, Cb, Cr lalu konversi dari YCbCr ke RGB
output := RGB else
output := Y endif
hitung waktu dekompresi simpan output sebagai citra hasil dekompresi
end
DCT, kuantisasi, dan pengkodean entropi. Setelah proses kompresi selesai, sistem akan menyimpan file hasil kompresi lalu menghitung rasio dan waktu kompresi.
3.3.2 Pseudocode Proses Dekompresi Metode Joint Photographic Experts Group
JPEG
Berikut ini merupakan pseudocode program untuk proses dekompresi menggunakan metode Joint Photographic Experts Group JPEG.
Pada pseudocode proses dekompresi menggunakan metode JPEG, pertama baca data dengan variabel y sebagai hasil proses kompresi, kemudian lakukan proses
dekompresi yang dimulai dari proses dekode entropi, dekuantisasi, dan IDCT. Setelah proses dekompresi selesai dengan hasil berupa data Y, proses pemilihan akan berjalan,
jika terdapat nilai Cb dan Cr maka baca Y, Cb, dan Cr lalu konversikan ke bentuk RGB sebagai output. Selain dari kondisi tersebut maka ambil data Y sebagai output.
Universitas Sumatera Utara
begin baca citra A
if A == grayscale biner ambil A sebagai input
elseif A == RGB konversi A dari RGB ke YCbCr
ambil Y sebagai input dan simpan Cb dan Cr else
kembali ke awal endif
ubah bentuk input dari 2 dimensi menjadi 1 dimensi lakukan perputaran ke kiri setiap baris pada input
susun setiap baris secara leksikografi ambil kolom terakhir sebagai output
simpan lokasi nilai input pada output dengan indeks I simpan output sebagai file hasil kompresi
hitung rasio kompresi dan waktu kompresi end
Sistem akan menghitung waktu dekompresi dan menyimpan output sebagai citra hasil dekompresi.
3.3.3 Pseudocode Proses Kompresi Metode Burrows-Wheeler Transform BWT
Berikut ini merupakan pseudocode program untuk proses kompresi menggunakan metode Burrows-Wheeler Transform BWT.
Pada pseudocode proses kompresi menggunakan metode BWT, pertama baca citra dengan variabel A kemudian dilanjutkan dengan pemilihan, jika citra A adalah
citra grayscale dan citra biner maka citra A akan diambil sebagai input yang akan
Universitas Sumatera Utara
begin baca data hasil proses kompresi
� := output kompresi susun kolom
� dan beri nomor tiap baris For i:=1 to length
�-1 buat tabel reverse Urutkan panjang string
� yang dihasilkan secara leksikografi.
Letakkan list yang terurut di kolom pertama pada tabel.
Endfor Pilih baris i == indeks I sebagai hasil Y
if nilai Cb nilai Cr == 1 baca Y, Cb, Cr
konversi dari YCbCr ke RGB
diolah oleh sistem, jika citra A adalah citra RGB maka citra A akan dikonversi dari bentuk RGB menjadi YCbCr dan ambil Y atau citra grayscale sebagai input yang
akan diolah oleh sistem, selain dari kondisi tersebut sistem akan mengembalikan proses ke awal. Selanjutnya proses kompresi akan dimulai dengan melakukan
perubahan bentuk input dari bentuk dua dimensi menjadi satu dimensi. Kemudian proses kompresi dengan metode BWT dimulai dengan tahap pertama melakukan
perputaran ke kiri pada input sehingga terbentuk matriks. Lalu susun setiap baris pada matriks secara leksikografi. Hasil kompresi adalah nilai yang terdapat pada kolom
terakhir. Simpan lokasi nilai input pada matriks dengan indeks I agar dapat dikembalikan nantinya dengan proses dekompresi. Setelah proses kompresi selesai,
sistem akan menyimpan file hasil kompresi lalu menghitung rasio dan waktu kompresi.
3.3.4 Pseudocode Proses Dekompresi Metode Burrows-Wheeler Transform BWT
Berikut ini merupakan pseudocode program untuk proses dekompresi menggunakan metode Burrows-Wheeler Transform BWT.
Universitas Sumatera Utara
output := RGB else
output := Y endif
hitung waktu dekompresi simpan output sebagai citra hasil dekompresi
end
Pada pseudocode proses dekompresi menggunakan metode BWT, pertama baca data hasil proses kompresi yang disimbolkan dengan L, kemudian L yang
merupakan matriks diberikan nomor tiap barisnya. Selanjutnya adalah proses perulangan untuk membentuk tabel reverse. Tabel reverse dibentuk untuk
mengembalikan data yang telah dikompresi sebelumnya sehingga didapatkan nilai asli data pada tabel tersebut. Setelah perulangan selesai, ambil baris dengan indeks I yang
kemudian merupakan hasil dari proses dekompresi atau disimbolkan dengan Y. Ketika semua telah selesai diproses, selanjutnya proses pemilihan akan berjalan, jika terdapat
nilai Cb dan Cr maka baca Y, Cb, dan Cr lalu konversikan ke bentuk RGB sebagai output
. Selain dari kondisi tersebut maka ambil data Y sebagai output. Sistem akan menghitung waktu dekompresi dan menyimpan output sebagai citra hasil dekompresi.
3.4 Perancangan Sistem