Sabtu, 15 September 2012

SEGMENTASI CITRA


Segmentasi citra adalah membagi suatu citra menjadi wilayah-wilayah yang homogen.



- EDGE DETECTION (DETEKSI TEPI)


Penentuan tepian suatu objek dalam citra merupakan salah satu wilayah pengolahan citra digital yang paling awal dan paling banyak diteliti. Proses ini seringkali ditempatkan sebagai langkah pertama dalam aplikasi segmentasi citra, yang bertujuan untuk mengenali objek-objek yang terdapat dalam citra ataupun konteks citra secara keseluruhan.

Deteksi tepi berfungsi untuk mengidentifikasi garis batas (boundary) dari suatu objek yang terdapat pada citra. Tepian dapat dipandang sebagai lokasi piksel dimana terdapat nilai perbedaan intensitas citra secara ekstrem. Sebuah edge detector bekerja dengan cara mengidentifikasi dan menonjolkan lokasi-lokasi piksel yang memiliki karakteristik tersebut.

Ada banyak cara-cara untuk mengintifikasikan bagian tepi suatu citra, diantaranya adalah sebagai berikut :

- OPERATOR GRADIEN


Pada citra digital f(x,y), turunan berarah sepanjang tepian objek akan bernilai maksimum pada arah normal dari kontur tepian yang bersesuaian. Sifat ini dipergunakan sebagai dasar pemanfaatan operator gradien sebagai edge detector.
Operator gradien citra konvensional melakukan diferensiasi intensitas piksel pada arah baris dan kolom, mengikuti persamaan local intensity variation berikut :



Nilai magnitudo gradien dari persamaan di atas dapat dinyatakan sebagai berikut:




Operator gradien dapat direpresentasikan oleh dua buah kernel konvolusi Gx dan Gy, yang masing-masing mendefinisikan operasi penghitungan gradien dalam arah sumbu x dan sumbu y yang saling tegak lurus.

Dalam kasus penghitungan gradien dengan persamaan local intensity variation, maka kernel Gx dan Gy dapat dirumuskan seperti berikut:



Dari operator gradien konvensional di atas, dapat diturunkan berbagai operator gradien berikut :
1.Operator Roberts
2.Operator Prewit
3.Operator Sobel

- OPERATOR LAPLACIAN

Dalam kondisi transisi tepian yang lebih tidak ekstrem, penggunaan operator turunan kedua lebih dianjurkan.




Turunan kedua memiliki sifat lebih sensitif terhadap noise, selain itu juga menghasilkan double edge. Oleh karena itu, operator Laplacian dalam deteksi tepi pada umumnya tidak dipergunakan secara langsung, namun dikombinasikan dengan suatu kernel Gaussian menjadi sebuah operator Laplacian of Gaussian.

Fungsi transfer dari kernel Laplacian of Gaussian dapat dirumuskan sebagai berikut:





- OPERATOR ZERRO CROSS
Metode Zero-cross menemukan edge dengan cara mencari zero crossings setelah memfilter I (Identitas) dengan filter a yang telah ditentukan.

- OPERATOR CANNY
Salah satu algoritma deteksi tepi modern adalah deteksi tepi dengan menggunakan metoda Canny. Berikut adalah diagram blok algoritma Canny :




II. CARA PEMAKAIAN PROGRAM

a)Cara memakai program GUI adalah :


1.Buka program Matlab 7.0 keatas (tapi disini kami memakai matlab 7.5)
2.Buka toolbar File → New → GUI



3.Kemudian Klik tab Open Existing GUI→ D:\FILE UI\SEMESTER 6 KULIAH EVI (2008)\CITRA\TUGAS SEGMENTASI CITRA\EVI_EDGE_DETECTION.fig→ klik open




4.Muncul tampilan window berikut:




5.Klik run , sehingga muncul window berikut :




6.Lalu kita mulai dengan memasukkan image dengan klik toolbar File lalu klik ‘open file’ lalu pilih image atau citra apa yang mau dicoba untuk berbagai jenis program Edge Detection.
Contoh : using Robert, caranya : Klik toolbar File →Open File→ambil image(citra)

Tampilannya awal :



lalu klik pushbutton ‘apply’



III.TAMPILAN PROGRAM

Berikut ini bentuk-bentuk tampilan program edge detection dari berbagai topik-topik yang dibahas dalam tugas ini :

1.OPERATOR ROBERTS

Untuk Citra tidak berwarna :



Untuk Citra berwarna :



2.OPERATOR PREWIT

Untuk Citra tidak berwarna :



Untuk Citra berwarna :




3.OPERATOR SOBEL


Untuk Citra tidak berwarna :



Untuk Citra berwarna :



4.OPERATOR LAPLACIAN GAUSIAN

Untuk Citra tidak berwarna :



Untuk Citra berwarna :



5.OPERATOR ZERRO CROSS

Untuk Citra tidak berwarna :



Untuk Citra berwarna :



6.OPERATOR CANNY

Untuk Citra tidak berwarna :



Untuk Citra berwarna :





***********************************
Dibawah ini, PROGRAM SEGMENTASI CITRA PADA M-FILE
***********************************

function varargout = EVI_EDGE_DETECTION(varargin)
% EVI_EDGE_DETECTION M-file for EVI_EDGE_DETECTION.fig
% EVI_EDGE_DETECTION, by itself, creates a new EVI_EDGE_DETECTION or raises the existing
% singleton*.
%
% H = EVI_EDGE_DETECTION returns the handle to a new EVI_EDGE_DETECTION or the handle to
% the existing singleton*.
%
% EVI_EDGE_DETECTION('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in EVI_EDGE_DETECTION.M with the given input arguments.
%
% EVI_EDGE_DETECTION('Property','Value',...) creates a new EVI_EDGE_DETECTION or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before roin_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to EVI_EDGE_DETECTION_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

% Copyright 2002-2003 The MathWorks, Inc.

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

% Last Modified by GUIDE v2.5 21-Apr-2008 10:07:16

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @EVI_EDGE_DETECTION_OpeningFcn, ...
'gui_OutputFcn', @EVI_EDGE_DETECTION_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 EVI_EDGE_DETECTION is made visible.
function EVI_EDGE_DETECTION_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 EVI_EDGE_DETECTION (see VARARGIN)

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

% Update handles structure
guidata(hObject, handles);

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


% --- Outputs from this function are returned to the command line.
function varargout = EVI_EDGE_DETECTION_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;


% --------------------------------------------------------------------
function mnu_open_Callback(hObject, eventdata, handles)
% hObject handle to mnu_open (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global image_original;

[file_name, path_name]=uigetfile(...
{'*.bmp;*.jpg','Citra File (*.bmp,*.jpg)';
'*.bmp','File Bitmap(*.bmp)';...
'*.jpg','File jpeg (*.jpg)';
'*.*','All (*.*)'},...
'Buka File Citra Original');
% Check File Conditon Exist or Not
if ~isequal(file_name,0)
%handles.original=imread(fullfile(path_name,file_name));
%guidata(hObject,handles);
%axes(handles.gambar_aslie);
%imshow(handles.original);
image_original=imread(fullfile(path_name,file_name));
guidata(hObject,handles);
axes(handles.gambar_aslie);
imshow(image_original);
else
return
end

% --------------------------------------------------------------------
function mnu_exit_Callback(hObject, eventdata, handles)
% hObject handle to mnu_exit (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
option=questdlg(['Exit ',...
get(handles.figure1,'Name'),'?'],...
['Exit ',...
get(handles.figure1,'Name'),'...'],...
'Yes','No','Yes')
switch option,
case 'Yes',
delete(handles.figure1)
case 'No'
return;
end


% --------------------------------------------------------------------
function mnu_file_Callback(hObject, eventdata, handles)
% hObject handle to mnu_file (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)



% --- Executes on button press in btnapply.
function btnapply_Callback(hObject, eventdata, handles)
% hObject handle to btnapply (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global image_original metode_edge;

I = .2989*image_original(:,:,1)+.5870*image_original(:,:,2)+.1140*image_original(:,:,3);
J = edge(I, metode_edge);
%guidata(hObject,J);
axes(handles.axes9);
guidata(hObject,handles);
imshow(J);

% --------------------------------------------------------------------
function edge_methode_SelectionChangeFcn(hObject, eventdata, handles)
% hObject handle to edge_methode (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global metode_edge;

switch get(hObject,'Tag') % Get Tag of selected object
case 'optroberts'
metode_edge='roberts';

case 'optprewitt'
metode_edge='prewitt';

case 'optsobel'
metode_edge='sobel';

case 'opt_laplacian'
metode_edge='log';

case 'opt_zero_cross'
metode_edge='zerocross';

case 'opt_canny'
metode_edge='canny';

end




% --- Executes on button press in optroberts.
function optroberts_Callback(hObject, eventdata, handles)
% hObject handle to optroberts (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hint: get(hObject,'Value') returns toggle state of optroberts

Rabu, 23 Mei 2012

Kriptografi dan VPN (Virtual Private Network)

KRIPTOGRAFI 

Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita [bruce Schneier - Applied Cryptography]. Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data [A. Menezes, P. van Oorschot and S. Vanstone - Handbook of Applied Cryptography]. Tidak semua aspek keamanan informasi ditangani oleh kriptografi.
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu :
  • Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi.
  • Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
  • Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
  • Non-repudiasi., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.

 
VPN 
 
Virtual private network atau disingkat VPN adalah variasi lain dari skema jaringan yang dibangun sebagai jaringan khusus dengan menggunakan jaringan internet umum. Karena menggunakan jaringan internet, sebuah perusahaan yang membuat WAN (Wide Area Network) berbasis VPN ini mampu menjangkau area yang sangat luas dan lintas geografi. VPN menyediakan koneksi poin-to-poin baik kepada kantor cabang maupun kepada seorang karyawan yang sedang bertugas ditempat lain.
Menghubungkan antar kantor pusat/cabang dengan menggunakan VPN jauh lebih ekonomis dengan keamanan yang dapat diandalkan daripada menyewa jaringan khusus (leased lines) atau dengan panggilan jarak jauh melalui modem.
VPN dapat menjadi jaringan khusus yang besar dan tidak terbatas. Sebuah WAN khusus yang jauh lebih efisien, aman dan berbiaya ekonomis dari WAN atau LAN tradisional. Sehingga telah banyak perusahaan-perusahaan yang menggunakan VPN sebagai infrastruktur jaringanya yang menghubungkan antara kantor pusat dengan kantor cabang dan dengan agen serta client nya.
Tidak ada standar tertentu untuk VPN, namun secara umum dapat disebut bahwa VPN menggunakan jaringan internet umum untuk satu atau beberapa keperluan dengan membentuk lorong khusus (jaringan khusus / tunnelling) secara virtual.
Dalam penggunaan sebagai jaringan khusus ini, VPN diset sedemikian rupa dengan sebuah software dan hardware dengan protocol tertentu yang akan digunakan untuk otentikasi antar user dan untuk penyandian jaringannya. Umumnya VPN dipasangi firewall di dekat servernya yang berfungsi untuk menyaring sehingga hanya client yang telah terdaftar saja yang dilayani.
VPN terbagi dalam 2 bagian yaitu bagian “dalam” yang diproteksi dengan sistem sandi tertentu dan bagian “luar” yang merupakan infrastruktur internet yang tidak diproteksi. Memproteksi data dengan penyandian selama perjalanan antar user dalam sebuah VPN telah sangat populer dan selalu digunakan.

Senin, 21 Mei 2012

“Motor Matic Injeksi Irit Harga Murah – Yamaha Mio J”


Saat ini, siapa yang tak tergiur ketika mendengar kata irit dan murah ??? waow, hal yang sangat menakjubkan dengan kondisi naiknya harga BBM yang santer terdengar beberapa akhir ini.
Ini dia, hadir dengan inovasi terbaru "Motor matic injeksi irit harga murah - Yamaha Mio J"
yang begitu unik dan penuh dengan keunggulan.
Yamaha Mio J tampak kian akrab dengan konsumen Indonesia. Mesin injeksi baru diterapkan Yamaha pada motor skubek terbarunya, Mio J.

Mio J  Semakin Cepat Semakin Irit...It’s Magic!


Kenapa Motor matic injeksi irit harga murah = Yamaha Mio J?
  1. Yamaha Mio J memiliki mesin baru yang diklaim lebih responsif
  2. Yamaha Mio J dinilai lebih irit dibandingkan produk sejenis dengan kompetitor, Yamaha sendiri berpendapat      kuantitas iritnya tahan lama
  3. Yamaha Mio J menggonakan teknologi Yamaha MJET-FI
  4. Yamaha Mio J memberikan garansi 5 (lima) tahun diasil cylinder and forged piston, yang berfungsi mengurangi kerugian tenaga, tegasnya menghasilkan tenaga yang besar namun irit bahan bakar
  5. Yamaha Mio J motor matic dengan performa tinggi secepat jet dengan konsumsi bahan bakar lebih irit sekitar 30% dengan tetap mempertahankan kelincahan yamaha mio pada umumnya.

     Teknologi canggih Yamaha MJET-FI (Yamaha Mixture Jet Fuel Injection) diasumsikan akan lebih irit pada sisi penggunaan bahan hingga 30%, disinilah letak perbedaan teknologi FI Yamaha dengan kompetitor sejenis, pada teknologi FI Yamaha injektor diarahkan langsung ke ruang bakar. Satu lagi keunggulan teknologi FI Yamaha adalah ramah lingkungan. Yamaha Mixture JET-Fuel Injection (YMJET-FI) teknologi canggih Yamaha dapat meningkatkan performa mesin dan tentu saja hemat bahan bakar. Artikel ini turut serta mempopulerkan Yamaha Mio J agar lebih sukses lagi. Team Yamaha Indonesia sendiri tetap semangat berpromosi walaupun Target penjualan Motor Motor matic injeksi irit Mio J melebihi target penjualan 25 ribu unit per bulan. Konklusi ini berdasarkan data AISI (Asosisasi Sepeda motor Indonesia), skutik berteknologi Yamaha Mixture Jet-Fuel Injection (YMJET-FI) itu terjual 29.356 unit. ”Pencapaian target ini menunjukkan Mio J diterima dengan sangat baik oleh pasar Indonesia. Dengan berbagai keunggulannya, kami harapkan memperkuat market share Yamaha dan menjadi nomor satu di kategori skutik yang saat ini paling diminati konsumen Indonesia". 

Yamaha Mio J memiliki 3 varian, yaitu:

1. Varian 1 : Yamaha Mio J CW Teen YMJET-FI (velg racing)
2. Varian 2 : Yamaha Mio J CW YMJET-FI (velg racing)
3. Varian 3 : Yamaha Mio J YMJET- FI (velg jari – jari)
 
Keunggulan dari Yamaha Mio J ini, yaitu:
  1. Teknologi YMJET-FI : dirancang memiliki dua katup butterfly, yang dapat meingkatkan performa mesin dan hemat bahan bakar
  2. DiAsil Cylinder dan Forged Piston memberikan manfaat kompresinya tinggi serta piston clearance stabil. Kompresi tinggi dapat dijelaskan dari material DiAsil Cylinder yang tidak full besi tapi dicampur dengan silikon sehingga saat terjadi tekanan atau kompresi, dinding DiAsil Cylinder jadi lebih dinamik (dindingnya fleksibel).
  3. Komponen lainnya yang mendukung seperti Fuel Pump yang sangat compact (padat), disrtai low electricity consumption (konsumsi energi listrik rendah), serta bisa mengontrol injeksi bensin dari tangki ke area mesin.
  4.  
     Situs Resmi Yamaha : http://www.yamaha-motor.co.id/
     

Selasa, 15 Mei 2012

it would be like this

when the phone rings
when a message is received
there is a name you
indeed it feels very happy

"nonsense"
hear you talk like that
remind the memories last longer
feels there is something different in the heart of this
atmosphere that comes back

whether, if such it would be like this
arggght,
it feels like screaming
why is it difficult to express feelings
why we are selfish

"I love you"
that's all I want to express this feeling of relief

Jumat, 04 Mei 2012

Static Route

Static Route adalah konsep yang menggambarkan salah satu cara untuk mengkonfigurasi pemilihan path dari router dalam jaringan komputer. Ini adalah jenis routing ditandai dengan tidak adanya komunikasi antara router mengenai topologi jaringan saat ini . Hal ini dicapai dengan menambahkan rute ke tabel routing. Kebalikan dari statis routing adalah routing dinamis, kadang-kadang juga disebut sebagai adaptif routing.

Dalam sistem ini, rute melalui jaringan data dijelaskan oleh jalan yang tetap (statis). Rute ini biasanya dimasukkan ke router oleh administrator sistem. Seluruh jaringan dapat dikonfigurasi menggunakan rute statis, tetapi jenis konfigurasi tidak fault tolerant. Bila ada perubahan dalam jaringan atau kegagalan terjadi antara dua node didefinisikan secara statis, lalu lintas tidak akan dialihkan. Ini berarti bahwa apa pun yang ingin mengambil jalan yang terkena akan baik harus menunggu kegagalan akan diperbaiki atau rute statis yang akan diperbarui oleh administrator sebelum restart perjalanannya. Kebanyakan permintaan akan waktu (akhirnya gagal) sebelum perbaikan ini dapat dibuat. Namun demikian, saat-saat ketika rute statis dapat meningkatkan kinerja jaringan. Beberapa di antaranya adalah jaringan stub dan rute default.

Task 4

Dear Mr. Arief, you can download task 4 in here(Task4_Rombel4_5302410190).
Thanks.