Klasifikasi Buah Tomat Metode C-means

download Klasifikasi Buah Tomat Metode C-means

of 15

Transcript of Klasifikasi Buah Tomat Metode C-means

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    1/15

    TUGAS NEURO FUZZY PADA INSTRUMENTASI ELKA

    KLASIFIKASI KEMATANGAN BUAH TOMATMENGGUNAKAN METODE FUZZY C MEANS

    Disusun oleh :

    M A!h"#i A$inu%in &'()*'))'+

    BIDANG STUDI ELEKTRONIKA

    PROGRAM STUDI TEKNIK ELEKTRO

    FAKULTAS TEKNIK

    UNI,ERSITAS BHAYANGKARA SURABAYA

    ()'- . ()'/

    ' PENDAHULUAN

    0

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    2/15

    Percobaan ini menggunakan model warna RGB. Tingkat RGB pola bit

    dikomposisikan dari tiga warna tersebut dan masing-masing warna mempunyai

    28 atau 25 bit !0 - 255". #odel warna RGB yang dapat dinyatakan dalam bentuk

    indeks warna RGB dengan cara menormalisasi setiap komponen warna dengan

    persamaan sebagai sebagai berikut$

    R %R

    R+G+BG %

    G

    R+G+BB %

    B

    R+G+B

    &istogram 'arna &istogram warna atau color (istogram adala(

    representasi distribusi warna dalam sebua( gambar yang didapatkan dengan

    meng(itung )umla( pi*el dari setiap bagian range warna+ secara tipikal dalam dua

    dimensi atau tiga dimensi. ,alam pembuatan (istogram+ nilai RGB mempunyai

    range dari 0 sampai 255 akan punya kemungkinan kombinasi warna sebesar

    2 !didapat dari$ 255 * 255 * 255".

    /ara mengidentiikasi dan mendeteksi kematangan bua( yang dilakukan

    di ruma( kaca masi( banyak menggunakan cara manual. /ara manual dilakukan

    berdasarkan pengamatan 1isual secara langsung pada bua( yang akan

    diklasiikasi. elema(an pengklasiikasian manual sangat dipengaru(i

    sub)ektiitas operator sortir se(ingga pada kondisi tertentu tidak konsisten proses

    pengklasiikasiannya. Perkembangan teknologi inormasi memungkinkan

    identiikasi bua( berdasarkan ciri warna dengan bantuan komputer. /ara

    komputasi ini dilakukan dengan pengamatan 1isual tidak langsung dengan

    menggunakan kamera sebagai pengola( citra dari gambar yang direkam !image

    processing" untuk kemudian diola( dengan menggunakan perangkat lunak

    computer.lasiikasi ini menggunakan aplikasi kecerdasan buatan menggunakan

    metode u33y c-means clustering. 4b)ek yang diamati yaitu bua( tomat yang

    berbeda tingkat kematangannya berdasarkan warna. normasi citra dari bua(

    tomat yang diamati menggunakan bantuan 1ideo kamera atau webcam. 'ebcam

    dan sotware diintegrasikan ke komputer menggunakan u33y c-means clustering

    agar komputer dapat mengenali inormasi citra bua( tomat tersebut.

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    3/15

    Bua( tomat diklasiikasi berdasarkan input (istogram warna citra yang

    didapat dari (asil capture. ,ari beberapa sampel pola data bua( tomat dengan

    tingkatan kematangan yang berbeda diinputkan pada u33y c-means untuk

    meng(asilkan nilai pusat cluster. 6ilai pusat cluster yang diperole( tersebut

    digunakan untuk proses klasiikasi bua( tomat matang+ muda+ dan setenga(

    matang. Tingkatan keber(asilan identiikasi dipengaru(i ole( aktor penca(ayaan

    ter(adap citra.

    ( DASAR TEORI

    7u33y /-#eans !7/#" merupakan sala( satu algoritma u33y

    clustering. 7u33y /-#eans !7/#" adala( suatu teknik pengclusteran data yang

    keberadaan setiap titik data dalam suatu cluster ditentukan ole( dera)at

    keanggotaan. Teknik ini pertama kali diperkenalkan ole( im Be3dek pada ta(un

    98.

    onsep dasar 7/# yaitu menentukan pusat cluster+ yang akan

    menandai lokasi rata-rata untuk setiap cluster. ,engan cara memperbaiki pusat

    cluster dan dera)at keanggotaan setiap titik data secara berulang+ maka akan

    dapat dili(at ba(wa pusat cluster akan bergerak menu)u lokasi yang tepat.

    Perulangan ini didasarkan pada pada minimisasi ungsi obyekti yang

    menggambarkan )arak dari titik data yang diberikan ke pusat cluster yang

    terbobot ole( dera)at keanggotaan titik data tersebut.

    4utput dari 7/# bukan merupakan u33y inerence system+ namunmerupakan deretan pusat cluster dan beberapa dera)at keanggotaan untuk tiap-tiap

    titik data. normasi ini dapat digunakan untuk membangun suatu u33y inerence

    system. :lgoritma 7u33y /-means clustering adala( sebagai berikut $

    . #enentukan$

    #atriks ; yang merupakan data yang akan dicluster+ berukuran k * )+ dengan

    k % )umla( data yang akan di-cluster dan ) % )umla( 1ariabel

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    4/15

    2. #enentukan $

    a. umla( cluster yang akan dibentuk !n =c > 2".

    b. pembobot !w = ".

    c. #aksimum iterasi !ma* n".

    d. riteria peng(entian

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    5/15

    5. &itung nilai obyekti !Pn" dengan rumus $

    eterangan $

    Dik % data partisi !pada matriks @" pada cluster ke-i dan data ke-k.

    dik% ungsi ukuran )arak untuk )arak Euclidean pada pusat cluster ke-i dan

    data ke-k.

    w % pembobot.Pn% nilai obyekti pada iterasi ke-n.

    . Perbaiki dera)at keanggotaan setiap data pada setiap cluster !perbaiki matriks

    partisi"

    dengan $

    eterangan $

    Dik % data partisi !pada matriks @" pada pusat cluster ke-i dan data ke-k.

    dik% ungsi ukuran )arak untuk )arak Euclidean pada pusat cluster ke-i dan

    data ke-k.

    d)k% ungsi ukuran )arak untuk )arak Euclidean pada pusat cluster ke-) dan

    data ke-k.

    w % pembobot.

    ;k) % data !pada matriks @" pada atribut ke-) dan data ke-k.

    . #eng(entikan iterasi )ika pusat cluster C tidak beruba(. :lternati

    kriteria peng(entian adala( )ika peruba(an nilai error kurang dari tres(old F

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    6/15

    Pn - Pn-F . :lternati adala( ketika perulangan melebi(i maksimum iterasi

    ! n = ma* n". ika iterasi belum ber(enti+ kembali ke langka( .

    8. ika iterasi ber(enti+ ditentukan cluster dari tiap-tiap data. /luster dipili(

    berdasarkan nilai matriks partisi terbesar.

    0 PERCOBAAN DAN ANALISA

    " H"sil D"1" His1o2#"$ 3"#n"

    ,ilakukan pemrosesan awal dengan beberapa kali pengambilan data

    (istogram untuk bua( tomat yang memiliki tingkat kematangannya berbeda.

    ,ibawa( ini sala( satu data dari beberapa pengambilan data nilai (istogram

    warna bua( tomat $

    T"4el 0' Be4e#"5" D"1" Nil"i His1o2#"$ To$"1

    6o. warna 6ilai (istogram warna

    Bua( tomat R!Red" G!Green" B!Blue"

    288 22 895

    2 592 2 85

    ? ?5 ?9 2

    5098 2059 88

    5 259 ??98

    528 598?2 92?

    5229 880? ??0?

    8 588 890?2 50?55

    9 52 89 55

    5

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    7/15

    4 T#"inin2

    Proses training menggunakan ? sampel pola data yang mencirikan

    masing-masing tingkat kematangan bua( tomat. Tetapi untuk lebi( seder(ananya

    bisa menggunkan 2 sampel warna sa)a. 2 sampel data bua( tomat masak warna

    mera(+ 2 sampel bua( tomat muda warna (i)au+ dan 2 sampel bua( tomat

    setenga( matang warna campur+ untuk percobaan ini suda( dilakukan

    normalisasi se(ingga (anya tinggal memasukkan nilai normalisasinya sa)a. 2

    G"$4"# 0' %"1" 1#"inin2 5"%" no1e5"%

    Pada data training+ kolom pertama merepresentasikan RE,+ sedangkan

    kolom kedua adala( GREE6. Tidak ada kolom ketiga sebagai target+ karena

    7u33y /-#eans akan menentukan klasiikasi berdasarkan nilai kluster yang

    dibuat. ,ata training tadi kemudian di masukkan ke dalam matlab menggunakan

    clustering dengan cara mengetikkanfindclusterpada command window. ,i bawa(

    ini adala( tampilan )endela clustering pada matlab. ,alam (al ini terdapat tiga

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    8/15

    kelas yaitu matang+ muda+ dan setenga( matang. He(inggga akan terbentuk tiga

    titik pusat. Titik pusat kluster inila( alat penentu keputusan dari data baru yang

    kita cari klasiikasinya.

    G"$4"# 0( 6en%el" 7lus1e#in2 5"%" $"1l"4

    @ntuk $e1o%e8 menggunakan FCMkarena memang metode itu yang kita

    gunakan. Clus1e# Nu$adala( )umla( kelas klasiikasi yang kita butu(kan+ dalam(al ini adala( kelas 9$"1"n298 kelas se1en2"h $"1"n2;dan kelas9$u%"9+

    maka diisi ?.

    7 Pe#7o4""n

    percobaan dilakukan dengan mengunakan G@ yang suda( tersedia di

    matlab. Berikut adala( tampilan G@ untuk klasiikasi kematangan bua( tomat.

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    9/15

    G"$4"# 00 GUI un1u<

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    10/15

    5 20 0 9.920.

    2?.?

    8

    #asak

    0 KESIMPULAN

    Hetela( melakukan perencanaan dan pembuatan sistem klasiikasi bua(

    tomat menggunakan u33y c-means kemudian dilakukan pengu)ian+ maka dapat

    diambil kesimpulan ba(wa. Histem dapat menganali kematangan bua( tomat

    dengan keber(asilan mendekati 00J (anya dengan menggunakan 5 data

    training.

    * DAFTAR PUSTAKA

    KL Hariatul :dawiya(+ 20. 7@MMN /-#E:6.

    (ttp$

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    11/15

    - LAMPIRAN

    Lis1in2 P#o2#"$ 5"%" GUI $"1l"4 @

    functionvarargout = kasifikasitomat(varargin)% KASIFIKASITOMAT MATLAB code for kasifikasitomatfig

    % KASIFIKASITOMAT! "# itse$f! creates a ne KASIFIKASITOMAT orraises t&e e'isting% sing$eton

    %% = KASIFIKASITOMAT returns t&e &and$e to a ne KASIFIKASITOMAT ort&e &and$e to

    % t&e e'isting sing$eton%

    % KASIFIKASITOMAT(*+ALLBA+K*!&O",ect!event-ata!&and$es!) ca$$st&e $oca$

    % function named +ALLBA+K in KASIFIKASITOMATM it& t&e given in.utarguments%

    % KASIFIKASITOMAT(*/ro.ert#*!*0a$ue*!) creates a neKASIFIKASITOMAT or raises t&e% e'isting sing$eton Starting from t&e $eft! .ro.ert# va$ue .airs

    are% a..$ied to t&e 12I "efore kasifikasitomat3O.eningFcn gets ca$$edAn

    % unrecogni4ed .ro.ert# name or inva$id va$ue makes .ro.ert#a..$ication% sto. A$$ in.uts are .assed to kasifikasitomat3O.eningFcn via

    varargin%% See 12I O.tions on 12I-5*s Too$s menu +&oose 612I a$$os on$#one

    % instance to run (sing$eton)6%% See a$so7 12I-5! 12I-ATA! 12IA8-L5S

    % 5dit t&e a"ove te't to modif# t&e res.onse to &e$. kasifikasitomat

    % Last Modified "# 12I-5 v9: ;an9;?< 9@79

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    12/15

    % 5'ecutes ,ust "efore kasifikasitomat is made visi"$efunctionkasifikasitomat3O.eningFcn(&O",ect! eventdata! &and$es!

    varargin)% T&is function &as no out.ut args! see Out.utFcn% &O",ect &and$e to figure% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es structure it& &and$es and user data (see 12I-ATA)% varargin command $ine arguments to kasifikasitomat (see 0AHAH1I8)

    % +&oose defau$t command $ine out.ut for kasifikasitomat&and$esout.ut = &O",ect

    % 2.date &and$es structure

    guidata(&O",ect! &and$es)

    % 2IAIT makes kasifikasitomat ait for user res.onse (see 2IH5S2M5)

    % uiait(&and$esfigure?)

    % Out.uts from t&is function are returned to t&e command $inefunctionvarargout = kasifikasitomat3Out.utFcn(&O",ect! eventdata!

    &and$es)% varargout ce$$ arra# for returning out.ut args (see 0AHAH1O2T)% &O",ect &and$e to figure

    % eventdata reserved to "e defined in a future version of MATLAB% &and$es structure it& &and$es and user data (see 12I-ATA)

    % 1et defau$t command $ine out.ut from &and$es structure

    varargout?G = &and$esout.ut

    functionred3+a$$"ack(&O",ect! eventdata! &and$es)% &O",ect &and$e to red (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of red as te't% str9dou"$e(get(&O",ect!*String*)) returns contents of red as a

    dou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.erties

    functionred3+reateFcn(&O",ect! eventdata! &and$es)

    % &O",ect &and$e to red (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es em.t# &and$es not created unti$ after a$$ +reateFcnsca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos

    % See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!get(;!*defau$t2icontro$Background+o$or*))

    set(&O",ect!*Background+o$or*!*&ite*)end

    functiongreen3+a$$"ack(&O",ect! eventdata! &and$es)

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    13/15

    % &O",ect &and$e to green (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB% &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of green as te't% str9dou"$e(get(&O",ect!*String*)) returns contents of green as adou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.ertiesfunctiongreen3+reateFcn(&O",ect! eventdata! &and$es)

    % &O",ect &and$e to green (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB% &and$es em.t# &and$es not created unti$ after a$$ +reateFcns

    ca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos

    % See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!get(;!*defau$t2icontro$Background+o$or*)) set(&O",ect!*Background+o$or*!*&ite*)

    end

    function&asi$3+a$$"ack(&O",ect! eventdata! &and$es)% &O",ect &and$e to &asi$ (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB% &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of &asi$ as te't

    % str9dou"$e(get(&O",ect!*String*)) returns contents of &asi$ as adou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.erties

    function&asi$3+reateFcn(&O",ect! eventdata! &and$es)% &O",ect &and$e to &asi$ (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB% &and$es em.t# &and$es not created unti$ after a$$ +reateFcns

    ca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos

    % See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!

    get(;!*defau$t2icontro$Background+o$or*)) set(&O",ect!*Background+o$or*!*&ite*)end

    % 5'ecutes on "utton .ress in .us&"utton?function.us&"utton?3+a$$"ack(&O",ect! eventdata! &and$es)% &O",ect &and$e to .us&"utton? (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es structure it& &and$es and user data (see 12I-ATA)red = get(&and$esred! *string*)green = get(&and$esgreen! *string*)

    red = str9dou"$e(red)

    green = str9dou"$e(green)

    2

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    14/15

    data = Cred greenD$oad .usatc$ustertomatdat.usat? = .usatc$ustertomat(?!7)

    .usat9 = .usatc$ustertomat(9!7)

    .usat@ = .usatc$ustertomat(@!7)

    u,iA = norm(data .usat?)

    u,iB = norm(data .usat9)u,i+ = norm(data .usat@)set(&and$eseditA!*string*!u,iA)

    set(&and$eseditB!*string*!u,iB)set(&and$esedit+!*string*!u,i+)

    ifu,iA u,iB EE u,iA u,i+

    set(&and$es&asi$!*string*!*matang*)e$seif u,i+ u,iB EE u,i+ u,iB set(&and$es&asi$!*string*!*muda*)

    e$seset(&and$es&asi$!*string*!*setenga& matang*)

    end

    % If 5na"$e == *on*! e'ecutes on mouse .ress in : .i'e$ "order% Ot&erise! e'ecutes on mouse .ress in : .i'e$ "order or over

    .us&"utton?function.us&"utton?3Button-onFcn(&O",ect! eventdata! &and$es)% &O",ect &and$e to .us&"utton? (see 1+BO)

    % eventdata reserved to "e defined in a future version of MATLAB% &and$es structure it& &and$es and user data (see 12I-ATA)

    functionedit+3+a$$"ack(&O",ect! eventdata! &and$es)% &O",ect &and$e to edit+ (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of edit+ as te't% str9dou"$e(get(&O",ect!*String*)) returns contents of edit+ as a

    dou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.erties

    functionedit+3+reateFcn(&O",ect! eventdata! &and$es)% &O",ect &and$e to edit+ (see 1+BO)

    % eventdata reserved to "e defined in a future version of MATLAB% &and$es em.t# &and$es not created unti$ after a$$ +reateFcnsca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos

    % See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!get(;!*defau$t2icontro$Background+o$or*))

    set(&O",ect!*Background+o$or*!*&ite*)end

    functioneditA3+a$$"ack(&O",ect! eventdata! &and$es)

    % &O",ect &and$e to editA (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    ?

  • 7/23/2019 Klasifikasi Buah Tomat Metode C-means

    15/15

    % &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of editA as te't

    % str9dou"$e(get(&O",ect!*String*)) returns contents of editA as adou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.erties

    functioneditA3+reateFcn(&O",ect! eventdata! &and$es)% &O",ect &and$e to editA (see 1+BO)% eventdata reserved to "e defined in a future version of MATLAB

    % &and$es em.t# &and$es not created unti$ after a$$ +reateFcnsca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos% See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!

    get(;!*defau$t2icontro$Background+o$or*)) set(&O",ect!*Background+o$or*!*&ite*)end

    functioneditB3+a$$"ack(&O",ect! eventdata! &and$es)% &O",ect &and$e to editB (see 1+BO)

    % eventdata reserved to "e defined in a future version of MATLAB% &and$es structure it& &and$es and user data (see 12I-ATA)

    % ints7 get(&O",ect!*String*) returns contents of editB as te't

    % str9dou"$e(get(&O",ect!*String*)) returns contents of editB as adou"$e

    % 5'ecutes during o",ect creation! after setting a$$ .ro.ertiesfunctioneditB3+reateFcn(&O",ect! eventdata! &and$es)% &O",ect &and$e to editB (see 1+BO)

    % eventdata reserved to "e defined in a future version of MATLAB% &and$es em.t# &and$es not created unti$ after a$$ +reateFcnsca$$ed

    % int7 edit contro$s usua$$# &ave a &ite "ackground on indos% See IS/+ and +OM/2T5Hifis.c EE iseJua$(get(&O",ect!*Background+o$or*)!

    get(;!*defau$t2icontro$Background+o$or*)) set(&O",ect!*Background+o$or*!*&ite*)

    end