• Tidak ada hasil yang ditemukan

Langkah-Langkah Pembuatan Aplikasi Kompresi

N/A
N/A
Protected

Academic year: 2022

Membagikan "Langkah-Langkah Pembuatan Aplikasi Kompresi"

Copied!
10
0
0

Teks penuh

(1)

Kompresi gambar Dengan Matlab 7.1

KOMPRESI

Secara garis besar, kompresi merupakan proses untuk menghilangkan berbagai kerumitan yang tidak penting (redundansi) dari suatu informasi dengan cara memadatkan isi file sehingga ukurannya menjadi lebih kecil dengan memaksimalkan kesederhanaannya dan tetap menjaga kualitas penggambaran dari informasi tersebut. Kompresi data menjadi sangat penting karena memperkecil kebutuhan penyimpanan data,

mempercepat pengiriman data, memperkecil kebutuhan

bandwith.Teknik kompresi bisa dilakukan terhadap data teks/biner, gambar (JPEG, PNG, TIFF), audio (MP3, AAC, RMA, WMA), dan video (MPEG, H261, H263).

Langkah-Langkah Pembuatan Aplikasi Kompresi

Aplikasi kompresi yang kami buat, menggunakan MATLAB 7, yaitu

software yang digunakan sebagai alat pemrograman standar bidang

matematika, rekayasa dan keilmuan yang terkait. MATLAB

menyediakan beberapa pilihan untuk dipelajari yaitu metode

visualisasi dan pemrograman.. Ada beberapa tahap dalam

pembuatannya, tahap pertama adalah membuat design figure sseperti

gambar berikut

(2)

Design figure merupakan tahap untuk mendesain tampilan dari

aplikasi yang akan dibuat. Ada beberapa component palette yang

digunakan, yaitu dua buah axes untuk menampilkan gambar asli dan

gambar hasil konversi. Kemudian ada beberapa static text untuk

menampilkan nama file dan ukuran dari gambar yang dibuka serta

yang telah di kompressi. Selain itu ada pula pushbutton yang berfungsi

untuk menyediakan menu dari aplikasi ini yaitu, buka gambar,

kompres, dan keluar. Untuk mengedit atau mengatur component

pallet, klik dua kali pada pallete yang ingin diedit dan akan keluar

tampilan property inspector

(3)

Setelah membuat desain, selanjutnya adalah membuat source code program. Untuk memulai membuatnya, buka layout figure yang telah dibuat kemudian klik kanan pada figure dan pilih M-file, kemudian ketik source code pada editor M-file

Pada function buka_Callback, kita ketikkan source code seperti berikut

[nama_file1, nama_path1]=uigetfile( ...

{'*.bmp;,*.jpg','File Citra(*.bmp,*.jpg)'; '*.bmp','File

(4)

Bitmap(*.bmp)';... '*.jpg','File JPEG(*.jpg)'; '*.*','Semua File(*.*)'},... 'Buka File Citra Host/Asli'); if

~isequal(nama_file1, 0)

handles.data1=imread(fullfile(nama_path1,nama_file1));

guidata(hObject,handles);

handles.current_data1=handles.data1; axes(handles.citra1);

imshow(handles.current_data1);

set(handles.text2,'String',nama_file1);

set(handles.text8,'String',size(handles.data1,1));

set(handles.text11,'String',size(handles.data1,2));

else return;

end

script tersebut menjelaskan bahwa pada function buka_Callback terdapat fungsi uigetfile yang digunakan untuk membaca file citra dengan format yang ditentukan yaitu *.bmp, *.jpg sebagai filter.

Berikutnya ketikkan script berikut pada function kompres_Callback

[nama_file_simpan, path_simpan]=uiputfile(... {'*.jpg','File citra(*.jpg)'; '*.jpg','Citra JPEG(*.jpg)';... '*.*','Semua File(*.*)'},... 'Menyimpan File Citra Hasil Kompresi JPEG');

imwrite(handles.data1, fullfile(path_simpan,

nama_file_simpan));

citra_kompres=imread(fullfile(path_simpan,

nama_file_simpan)); guidata(hObject,handles);

axes(handles.citra2); imshow(citra_kompres);

set(handles.text4,'String',nama_file_simpan);

(5)

set(handles.text12,'String',size(handles.data1,1));

set(handles.text13,'String',size(handles.data1,2));

script tersebut menyatakan bahwa terdapat fungsi uigetfile pada function kompres_Callback yang digunakan untuk membuat file citra yang di kompresi akan berformat *.jpg apapun format awal file citra tersebut.

Terakhir adalah mengetikkan script pada bagian function keluar_Callback, script yang diketikkan adalah

selection=questdlg(['Keluar ' get(handles.figure1,'Name')''],...

['Keluar ' get(handles.figure1,'Name')''],...

'Ya','Tidak','Ya');

if strcmp(selection,'Tidak')

return;

end

delete(handles.figure1)

Script tersebut berfungsi menampilkankotak dialog yang berisi dua pushbutton yaitu “Ya” dan “Tidak” yang akan menanyakan apakah pengguna ingin keluar dari aplikasi atau tidak.

Hasil dari aplikasi ini jika dijalankan adalah sebagai berikut,

Tampilan Awal

(6)

Tampilan Pilih Menu Buka Gambar

Tampilan Gambar Asli

Tampilan Pilih Menu Kompres (simpan nama file hasil kompresi)

(7)

Tampilan Gambar Asli & Gambar Kompresi

Tampilan Menu Keluar

Aplikasi Kompresi Gambar menggunakan MATLAB

Posted: 26 November 2010 in Tidak terkategori

3

Nama Anggota Kelompok PPC : 1. Achmad Thohir (50407016)

(8)

2. Wenny Rahmawati (50407891)

Pengolahan Citra adalah Pemrosesan citra, khususnya dengan menggunakan komputer, menjadikan citra dengan kualitas yang lebih baik. Pengolahan Citra bertujuan untuk memperbaiki kualitas citra agar mudah diinterprestasi oleh manusia atau mesin (dalam hal ini komputer). Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain, salah satunya adalah kompresi citra (image compression). Jadi, masukannya adalah citra dan keluarannya juga citra, namun citra keluarannya mempunyai ukuran citra lebih kecil daripada citra masukannya.

Kompresi merupakan proses untuk menghilangkan berbagai kerumitan yang tidak penting (redudansi) dari suatu informasi dengan cara memadatkan isi file sehingga ukurannya menjadi lebih kecil dengan memaksimalkan kesederhanaannya dan tetap menjaga kualitas penggambaran dari informasi tersebut. Aplikasi kompresi yang saya buat menggunakan masukan (input) berupa citra dengan beberapa format seperti format JPEG, Bitmap, PNG, dan TIF dan menghasilkan keluaran (output) berupa citra dengan format JPEG.

Langkah – langkah pembuatan Program Kompresi

A. Membuat Desain Figure

Aplikasi kompresi ini dibuat menggunakan MATLAB 7.1 dengan membuat sebuah user interface MATLAB dengan fasilitas GUIDE. Untuk membuat sebuah user interface

dimulai dengan mmbuat desain sebuah figure dengan memanfaatkan uicontrol (control user interface) yang tersedia di editor figure. Uicontrol yang digunakan untuk membuat aplikasi kompresi ini adalah :

1. Axes

Axes digunakan untuk menampilkan sebuah grafik atau gambar (image). Pada pembuatan aplikasi ini digunakan 2 Axes yang digunakan untuk menampilkan citra asli dan citra kompresi.

2. Static Text

Static Text akan menghasilkan teks bersifat tetap sehingga user tidak dapat melakukan perubahan. Teks dan beberapa fasilitas lainnya dapat diatur dalam static text. Seperti jenis dan ukuran font, warna dll. Pada pembuatan aplikasi kompresi ini terdapat 2 static text yaitu Nama file untuk citra masukan dan Nama file untuk citra keluaran.

3. Pushbutton

Pushbutton merupakan jenis control berupa tombol tekan yang akan menghasilkan sebuah tindakan jika diklik. Pada pembuatan aplikasi ini, pushbutton yang digunakan adalah Pilih Gambar, Kompres dan Keluar.

Berikut adalah Desain Aplikasi Kompres JPEG :

(9)

Pembuatan Source Code Program Kompresi

Penulisan source code pada pembuatan aplikasi dengan MATLAB menggunakan editor M-file.

a. Buka Layout Figure yang telah dibuat, lalu klik kanan pada figure pilih M-file.

b. Ketikkan source code pada Editor M-file.

Program kompresi ini disimpan dengan nama PPC.fig. Pada MATLAB terdapat function yang tersedia secara otomatis seperti dibawah ini :

function varargout = PPC(varargin)

% PPC M-file for PPC.fig

% PPC, by itself, creates a new PPC or raises the existing

% singleton*.

%

% H = PPC returns the handle to a new PPC or the handle to

% the existing singleton*.

%

% PPC(‘CALLBACK’,hObject,eventData,handles,…) calls the local

% function named CALLBACK in PPC.M with the given input arguments.

%

(10)

% PPC(‘Property’,'Value’,…) creates a new PPC or raises the

% existing singleton*. Starting from the left, property value pairs are

% applied to the GUI before PPC_OpeningFunction gets called. An

% unrecognized property name or invalid value makes property application

% stop. All inputs are passed to PPC_OpeningFcn via varargin.

%

% *See GUI Options on GUIDE’s Tools menu. Choose “GUI allows only one

% instance to run (singleton)”.

%

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help PPC

% Last Modified by GUIDE v2.5 23-Nov-2010 15:28:23

% Begin initialization code – DO NOT EDIT gui_Singleton = 1;

gui_State = struct( ‘gui_Name‘, mfilename, …

‘gui_Singleton’, gui_Singleton, …

‘gui_OpeningFcn’, @PPC_OpeningFcn, …

‘gui_OutputFcn’, @PPC_OutputFcn, …

‘gui_LayoutFcn’, [] , …

‘gui_Callback’, []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

Referensi

Dokumen terkait

Kasus SP3 Illog Riau tahun 2008 dan lima terpidana korupsi kehutanan di Siak dan Pelalawan menggambarkan dengan jelas korporasi adalah actor utama pemberi suap agar izin larangan

Penelitian Eksperimental pada Kelinci yang Dilakukan Abrasi Ileum CORTISOL, TRANSFORMING GROWTH FACTOR β (TGF-β) LEVEL, AND THE INTRAPERITONEAL ADHESION DEGREE.. AFTER LAPAROSCOPY

Menurut Peraturan Direktur Jenderal Pajak Nomor PER-32/PJ/2015 adalah pajak atas penghasilan berupa gaji, upah, honorarium, tunjangan dan pembayaran lain dengan

Penyer ahan Mahasi swa Magang uni ver si t as pendi di kan Muhammadi yah Sor ong diSMP l eb STKI P Muhammadi yah Kabupat enSor ong... Penar i kan Mahasi swa Magang uni ver si t as

Pandangan Geertz tentang praktik keagamaan dalam kebudayaan merupakan sebuah sistem simbol yang dapat memberikan motivasi yang kuat, menyebar, dan tidak mudah menghilang di

13 Tahun 2006 sebagaimana terakhir diubah dengan Peraturan Menteri Dalam Negeri Nomor 21 Tahun 2011, belanja daerah dikelompokan menjadi Belanja Tidak Langsung (BTL)

Hasil penelitian menunjukkan bahwa nilai t = 4,405 (p value = 0,000 <0,05) yang berarti batuk efektif dan nafas dalam dapat mengurangi kolonisasi Staphylococcus aureus pada

mAs, scan time, kVp, tebal irisan, ukuran objek dan algoritma Sebagai contoh adalah air memiliki CT Number 0, semakin tinggi standar deviasi nilai CT Number pada Secara umum