Teori Kompresi
Mengapa perlu kompresi dan reduksi data?
l  Data citra umumnya berukuran besar
l  Tidak praktis dalam aspek penyimpanan, proses dan transmisi
l  Perlu reduksi atau pemampatan data dengan mengurangi redundancy atau duplikasi data    
Data redundancy:
adalah bagian data yang tidak mengandung informasi terkait atau merupakan pengulangan dari informasi yang sudah dinyatakan sebelumnya atau sudah diketahui
Aplikasi yang membutuhkan image compression: dimana perkembangannya ditentukan oleh efisiensi pada manipulasi data, penyimpanan, dan transmisi citra biner / monokrom / berwarna:
l  Televideo-conferencing
l  Remote sensing
l  Telemedical / Medical imaging
l  Facsimile transmission

Kategori Teknik Kompresi Citra :
l  Information preserving (lossless compression): teknik yang memproses data asli menjadi bentuk yang lebih ringkas tanpa hilangnya informasi.  Contoh: Aplikasi biomedis.
l  Lossy compression: teknik mendapatkan data yang lebih ringkas dengan melalui suatu proses penghampiran (approksimasi) dari data asli dengan tingkat error yang dapat diterima.  Contoh: TV broadcast.

Ada 3 jenis data redundancy pada citra:
l  Coding redundancy. Terjadi bila suatu kode simbol yang digunakan terdiri dari sejumlah bit yang melebihi jumlah bit yang diperlukan untuk representasi setiap simbol (dalam hal ini: tingkat keabuan piksel citra).
l  Interpixel redundancy. data redundancy dinyatakan dengan korelasi antar piksel dimana intensitas suatu piksel dapat diperkirakan dari intensitas piksel-piksel tetangganya. Artinya: informasi yang dibawa oleh setiap piksel relatif tidak besar atau kontribusi setiap piksel kepada gambar secara keseluruhan adalah redundan.                       
l  Psychovisual redundancy. Suatu fenomena dimana intensitas keabuan yang bervariasi dilihat sebagai intensitas konstan, artinya: mata tidak mempunyai sensitivitas yang sama terhadap semua informasi yang dianggap penting dan tidak penting. Hal tersebut diatas dapat dikatakan sebagai psychovisual redundancy, yang bila dihilangkan tidak mengganggu persepsi kwalitas citra.
Suatu data dikatakan terkompresi jika satu atau lebih redundancy tersebut bisa dikurangi atau dihilangkan.
Untuk listing program sebagai berikut:
function varargout = Kompresi(varargin)
% KOMPRESI MATLAB code for Kompresi.fig
%      KOMPRESI, by itself, creates a new KOMPRESI or raises the existing
%      singleton*.
%
%      H = KOMPRESI returns the handle to a new KOMPRESI or the handle to
%      the existing singleton*.
%
%      KOMPRESI('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in KOMPRESI.M with the given input arguments.
%
%      KOMPRESI('Property','Value',...) creates a new KOMPRESI or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before Kompresi_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to Kompresi_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 Kompresi

% Last Modified by GUIDE v2.5 02-Nov-2012 08:16:52

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @Kompresi_OpeningFcn, ...
                   'gui_OutputFcn',  @Kompresi_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before Kompresi is made visible.
function Kompresi_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
% varargin   command line arguments to Kompresi (see VARARGIN)

% Choose default command line output for Kompresi
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes Kompresi wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = Kompresi_OutputFcn(hObject, eventdata, handles)
% varargout  cell array for returning output args (see VARARGOUT);
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
 [nama_file1, nama_path1]=uigetfile( ...
{'*.bmp;,*.jpg','File Citra(*.bmp,*.jpg)';
'*.bmp','File 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.axes1);
    imshow(handles.current_data1);
    set(handles.text8,'String',nama_file1);
    set(handles.text9,'String',size(handles.data1,2));
   
else
return;end

% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
[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.axes2);
imshow(citra_kompres);
set(handles.text10,'String',nama_file_simpan);
set(handles.text11,'String',size(handles.data1,1));


% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
selection=questdlg(['Keluar ' get(handles.figure1,'Name')''],...
['Keluar ' get(handles.figure1,'Name')''],...
'Ya','Tidak','Ya');
if strcmp(selection,'Tidak')
return;
end
delete(handles.figure1)
Pembuatan Aplikasi
1.        Penginstalan MATLAB
Langkah pertama untuk membuat aplikasi ini adalah menginstall MATLAB & SIMULINK R2011a. Proses peng-instal-an ini dilakukan pada sistem operasi Microsoft windows, jika software ini ada pada komputer, maka akan digunakan untuk mengompile skrip coding yang dibuat.

a.       Software MATLAB & SIMULINK R2011a bisa didapatkan dengan cara men-download atau membeli cd aslinya. Namun pada kesempatan ini penulis men-download

b.      Kemudian kita akan melakukan penginstalan MATLAB tersebut. Langkah-langkah disesuaikan dengan tampilan gambar dibawah ini:


c.       Pada folder yang telah kita download akan ada aktivasi yang dilakukan dan dimasukan ke dalam Installation key dan memasukan nilai kedalamnya.


d.      Lalu kita atur tempat kita akan menginstal MATLAB tersebut di C:\Program Files\MATLAB\R2011a.



e.       Dari tampilan di atas akan diinstal beberapa library yang akan digunakan untuk menjalankan program MATLAB yang akan kita buat. Kemudian akan diproses penginstalan yang akan mensupport kinerja MATLAB. Dari sini akan ditunggu proses penginstalan sampai tahap selanjutnya.





f.       Pada folder download kembali akan kita masukan Path yang ada di dalam folder tersebut dan menunjuk ke lic_standalone.dat. yang digunakan untuk mengaktifkan License tersebut.


g.      Dan akhirnya untuk penginstalan telah selesai dilakukan.

2.        Pembuatan Program
Pada tampilan awal MATLAB yang dibuat akan muncul seperti pada gambar:


Kemudian pertama akan kita buat tampilan yang ingin kita buat sesuai keinginan, dengan cara File->New->GUI yang akan muncul seperti berikut:


Langkah selanjutnya kita akan membuat GUI baru dengan cara Create New GUI -> Blank GUI (default). Bisa dilihat pada gambar:

Maka akan muncul Tampilan GUI seperti pada gambar berikut:


Pada ToolBar yang ada disamping GUI tersebut akan kita buat dengan tampilan sebagai berikut:

Selanjutnya adalah tampilan akhir untuk GUI dari aplikasi ini akan menjadi seperti ini jika kita jalankan.
      


Berikut ini adalah contoh perubahan image yang terjadi ketika aplikasi dijalankan.


Gambar awal


Gambar akhir



Hal yang terjadi pada gambar ini adalah
1.      Gambar awal 1,02MB ketika di kompresi menjadi 270KB
2.      Perubahan sedikit pada warna yang pada gambar awal gambar memiliki detail yang jelas namun setelah dikompresi warna gambar sedikti berkurang.
Di Postkan oleh kelompok: Dewo Sidharta Simanjutak dan Rudy Kurniawan (4IA03)



Sistem operasi yang hadir di Smart Phone
Sistem operasi umum
Sistem operasi yang berbasis linux dan banyak digunakan oleh para pembuat/pabrikan telepon genggam sekarang ini (Samsung, HTC, Motorola, Sony Ericsson, LG, Huawei, dll)
BlackBerry OS atau disingkat BB OS berbeda dengan BlackBerry Tablet OS, BB OS diperuntukkan untuk ponsel pintar
iOS merupakan OS buatan Apple yang hanya hadir untuk produk-produk buatan Apple
Symbian terdiri dari beberapa mobile OS yang tidak saling mendukung secara penuh; S60 3rd edition, S60 5th edition, S80, UIQ, MOAP, dan Symbian^3/Anna. Yang masih dikembangkan adalah yang berbasis Symbian^3.
Windows Phone sebelumnya dinamai Windows Phone 7 series dan diperkenalkan pertama kali pada bulan februari 2010. Seri pengembangan lebih lanjut memiliki kode nama Mango.
Sistem operasi lainnya
BB10 merupakan sistem operasi terbaru yang dikembangkan RIM, dengan menggabungkan sistem operasi BlackBerry OS dan BlackBerry Tablet OS/QNX.
Meego merupakan proyek kerjasama antara Nokia dan Intel, tetapi kemudian tidak dilanjutkan oleh Nokia, dan hanya ada 2 telepon genggam buatan Nokia yang menggunakan sistem operasi Meego; Nokia N9 dan Nokia N950 (hanya untuk pihak pengembang).
Sistem operasi ini hanya digunakan pada perangkat keras buatan Samsung dah hanya terdapat pada ponsel seri Wave.
Brew banyak digunakan oleh perusahaan Huawei, INQ Mobile, Amoi, and Samsung. Biasa pengguna perangkat keras yang menggunakan sistem operasi Brew tidak mengetahui kalau mereka menggunakan sistem operasi tersebut. Brew MP, penerus dari Brew, telah pernah digunakan pada 2 buah telepon genggam HTC.
Pada tanggal 14 februari, LiMo foundation mengumumkan akan merilis versi terbaru dari sistem operasi LiMo, yaitu LiMo 4. LiMo yang berbasis Linux umumnya banyak digunakan pada produk NTT Docomo.
Sistem operasi yang sudah tidak dilanjutkan
terdiri dari 2 versi yaitu; versi PocketPC dan versi SmartPhone
  • Palm OS/Garnet OS dari Access Co. (closed source, proprietary)
  • webOS dari HP (certain parts open sourced)
  • Ubuntu Mobile dari Canonical Ltd.
  • DangerOS dari Danger, Inc.
  • Nucleus dari Mentor Graphics
Sistem operasi yang akan hadir
  • Boot 2 Gecko dari Mozilla Foundation (open source, GPL)
OS yang dibuat oleh Mozilla Foundation yang terkenal sebagai pembuat browser Firefox
  • Aliyun OS dari Alibaba/AliCloud (cloud based)
Merupakan OS buatan Alibaba, perusahaan penyedia jasa jual beli barang terbuka di China yang mirip dengan ebay
  • Korean OS
OS yang belum memiliki nama, proyek gabungan dari pemerintah Korea, Samsung, dan LG.
  • Kubuntu Mobile dari Canonical Ltd.
  • Baidu Yi dari Baidu
Baidu merupakan search engine terbesar di China dengan pasar 80%, sistem operasi ini berbasis pada Android.
  • Tizen OS
OS hasil kerjasama antara Samsung, Intel, dan Linux Foundation, berbasis Linux.
  • Meltemi dari Nokia
Meltemi adalah sistem operasi yang dikhususkan untuk pasar ponsel menengah kebawah menggantikan platform Nokia S40.
  • WoPhone dari China Unicom
 Lanjutan: 

Navigation

Total Pageviews

Diberdayakan oleh Blogger.

Popular Posts

Pengikut