Kami adalah penyedia jasa penerbitan dan percetakan yang telah beroperasi sejak tahun 2016, dan bergabung menjadi anggota IKAPI dengan nomor 258/JTE/2023. Jika Anda memiliki naskah yang masih nganggur, daftar dan terbitkan bukumu sekarang !!!LIHAT PAKET TERBIT- Menulis Untuk Kemanfaatan -

container no-pad-m no-pad-v-m widgetNoTitle noCapSlider

8/slider/storage/16-9/1140

Iklan Tersedia ads left available col-xs-12 col-sm-6 img-31-9

Iklan Tersedia <a href="wAC">ads left available col-xs-12 col-sm-6 img-31-9</a>
PROMO TERBATAS !!!
SPACE IKLAN - A1
100k / bulan
250k / 3 bulan

Iklan Tersedia ads right available col-xs-12 col-sm-6 img-31-9

Iklan Tersedia <a href="wAC">ads right available col-xs-12 col-sm-6 img-31-9</a>
PROMO TERBATAS !!!
SPACE IKLAN - A2
100k / bulan
250k / 3 bulan

Pengolahan Citra Digital Untuk Mendeteksi Bentuk dan Warna Objek Dengan Jaringan Syaraf Tiruan pada Matlab

Kecerdasan Buatan
Pengolahan Citra Digital Untuk Mendeteksi Bentuk dan Warna Objek Dengan Jaringan Syaraf Tiruan pada Matlab
Disusun oleh :
1.            Ahmad Faidul Basyar    (2014-530-18)
2.            Nailul Lutfah                            (2014-530-57)
3.            Lia Chamidah                 (2014-530-63)
   
Kelas                      : B
Progam Studi        : Sistem Informasi


FAKULTAS TEKNIK
UNIVERSITAS MURIA KUDUS
2014



BAB 1
PENDAHULUAN

1.1    Latar Belakang
Seiring dengan perkembangan zaman, teknologi  yang menggunakan komputer berkembang dengan  pesat. Hampir setiap individu di dunia memerlukan  komputer sebagai alat bantu untuk me nyelesaikan  masalahnya. Hampir semua sistem analog digantikan  dengan sistem komputerisasi. Keunggulannya adalah sistem  komputerisasi lebih mudah  dalam  pengontrolan. Dalam hal ini misalnya pengontrolan di  dalam mengidentifikasi suatu objek atau citra.  Komputer diusahakan untuk dapat bekerja mendekati  proses kerja otak manusia.  
Pengolahan citra digital (Digital Image Processing) adalah sebuah disiplin ilmu yang mempelajari tentang teknik-teknik mengolah citra. Citra yang dimaksud disini adalah gambar diam (foto) maupun gambar bergerak (yang berasal dari webcam). Sedangkan digital disini mempunyai maksud bahwa pengolahan citra/gambar dilakukan secara digital menggunakan komputer. Secara matematis, citra merupakan fungsi kontinyu (continue) dengan intensitas cahaya pada bidang dua dimensi. Agar dapat diolah dengan komputer digital, maka suatu citra harus dipresentasikan secara numerik dengan nilai-nilai diskrit. Repersentasi dari fungsi kontinyu menjadi nilai-nilai diskrit disebut digitalisasi citra.
Salah satu bidang yang berkaitan dengan pengolahan citra adalah pengenalan pola atas objek dua  dimensi. Penelitian ini dilakukan untuk menghasilkan  suatu sistem yang dapat mengidentifikasi dan mengenali suatu objek atau pola sederhana, seperti lingkaran, bujur sangkar, persegi panjang, dan segitiga,  berdasarkan  bentuk dan ukurannya.Dengan menggunakan sistem tersebut diharapkankomputer  dapat mengenali objek objeksederhana yang dimasukkan.
Kemampuan inilah yang akan kami tiru dengan  menggunakan mesin (komputer).  Komputer menerima masukan yang berupa citra objek yang kemudian citra  tersebut akan diproses, diidentifikasi  dan diberikan keluaran berupa deskripsi objek di dalam citra.


1.2      Dasar Teori
1.2.1         Pengertian Citra Digital
Citra merupakan salah satu komponen multimedia yang memegang peranan penting sebagai bentuk informasi visual, karena karakteristiknya yang kaya dengan informasi. Secara harfiah, citra adalah gambar pada bidang dwimatra (dua dimensi). Secara matematis citra adalah gambar pada bidang dwimatra (dua dimensi) yang dihasilkan dari gambar analog dua dimensi yang kontinus menjadi gambar diskret melalui proses sampling. Pengolahan citra digital (Digital Image Processing) adalah sebuah disiplin ilmu yang mempelajari tentang teknik-teknik mengolah citra. Citra yang dimaksud pada penelitian ini adalah gambar statis yang berasal sensor vision berupa webcam. Secara matematis, citra merupakan fungsi kontinyu dengan intensitas cahaya pada bidang dua dimensi. Agar dapat diolah dengan komputer digital, maka suatu citra harus dipresentasikan secara numerik dengan nilai-nilai diskrit. Sebuah citra digital dapat diwakili oleh sebuah matriks dua dimensi f(x,y) yang terdiri dari M kolom dan N baris. Pada pengolahan warna gambar, ada bermacam-macam model salah satunya adalah model rgb atau normalisai RGB. Model pengolahan ini merupakan pengolahan warna dengan menghitung prosentase warna RGB dalam sebuah citra. Dengan menggunakan model ini, sebuah obyek dengan warna tertentu dapat dideteksi dan terbebas dari pengaruh perubahan intensitas cahaya dari luar. Kelemahan dari pengolahan warna model ini adalah tidak dapat membedakan warna hitam dan putih, karena memiliki prosentase nilai RGB yang sama yaitu 33%. Guna melihat pengaruh pendeteksian obyek terhadap perubahan intensitas cahaya maka nilai brightness diubah-ubah. Berdasarkan hasil tersebut pada saat nilai brightness antara 1 – 80 obyek target yang diinginkan masih dapat dideteksi.
1.2.2   Pengolahan Citra Digital
Pengolahan citra adalah pemrosesan citra,  khususnya dengan menggunakan komputer, menjadi citra yang kualitasnya lebih baik. Tujuan utama pengolahan citra adalah agar citra yang mengalami gangguan mudah diinterpretasi oleh manusia maupun mesin (komputer). Teknik pengolahan citra digital adalah mentransformasikan citra dua dimensi menjadi citra lain dengan mengunakan komputer. Proses ini mempunyai ciri data masukan dan informasi keluaran yang berbentuk citra. Jadi masukannya berupa citra dan keluarannya juga berbentuk citra, dengan kualitas yang lebih baik dari citra masukan. Beberapa contoh operasi pengolahan citra adalah pengubahan kontras citra, penghilangan derau (noise) dengan operasi penapisan (filtering), penajaman (sharpening), pemberian warna semu (pseudocoloring), dan sebagainya. Operasi operasi tersebut akan diterapkan pada pengolahan citra apabila:
1. Digunakan untuk meningkatkan kualitas penampakan atau menonjolkan beberapa aspek informasi yang terkandung dalam citra dengan perbaikan atau modifikasi citra
2.  Perlu pengelompokkan, pencocokan atau pengukuran elemen pada citra.
3. Perlu penggabungan sebagian citra dengan bagian citra lainnya.Dalam bidang komputer, tidak hanya bidang studi pengolahan citra yang berhubungan dengan data citra, namun ada bidang studi lain.
1.3   Pengertian Matlab
Matlab adalah sebuah bahasa dengan kinerja tinggi untuk komputasi masalah teknik. Matlab mengintegrasikan komputasi, visualisasi, dan pemrograman dalam suatu model yang sangat mudah untuk pakai dimana masalah-masalah dan penyelesaiannya diekspresikan dalam notasi matematika yang familiar. Penggunaan Matlab meliputi : Matematika dan komputasi, Pembentukan algoritma, Akusisi data, Pemodelan, simulasi, dan pembuatan prototype, Analisa data, explorasi, dan visualisasi, Grafik keilmuan dan bidang rekayasa.
Matlab  memungkinkan manipulasi matriks, pem-plot-an fungsi dan data, implementasi algoritma, pembuatan antarmuka pengguna, dan peng-antarmuka-an dengan program dalam bahasa lainnya. Meskipun hanya bernuansa numerik, sebuah kotak kakas (toolbox) yang menggunakan mesin simbolik MuPAD, memungkinkan akses terhadap kemampuan aljabar komputer. Sebuah paket tambahan, Simulink, menambahkan simulasi grafis multiranah dan Desain




1.4   Citra Biner
Citra biner adalah citra yang hanya mempunyai dua nilai derajat keabuan yaitu, hitam dan putih. Piksel piksel objek bernilai ‘1’ dan piksel piksel latar belakang bernilai ‘0’. Pada saat menampilkan gambar, ‘0’ adalah putih dan ‘1’ adalah hitam. Meskipun saat ini citra berwarna lebihdisukai karena memberi kesan yang lebih kaya daripada citra biner, namun tidak membuat citra biner mati. Pada beberapa aplikasi citra biner masih tetap dibutuhkan, misalnya citra logo instansi, citra kode batang (barcode) yang tertera pada label barang, citra hasil pemindai dokumen teks,dan sebagainya. Adapun alasan penggunaan citra biner adalah karena citra biner masih memiliki keunggulan sebagai berikut:
1.      Kebutuhan memori kecil karena nilai derajat keabuan hanya membutuhkan representasi 1 bit.
2.      Waktu pemrosesan lebih cepat dibandingkan dengan citra aras keabuan (greyscale).
1.5    Pengertian Ciri (Feature) dan Pola (Pattern)
Ciri adalah segala jenis aspek pembeda, kualitas atau karakteristik. Cirbisa berwujud simbolik (misalnya warna) atau numerik (misalnya tinggi). Ciri yang bagus adalah ciri yang memiliki daya pembeda yang tinggi, sehingga pengelompokan pola berdasarkan ciri yang dimiliki dapat dilakukan dengan keakuratan yang tinggi. Sebagai contoh, segitiga yang memiliki ciri yaitu: memiliki tiga buah titik sudut, atau lingkaran yang memiliki ciri yaitu: jari-jari yang besarnya konstan. Citra pada suatu pola diperoleh dari hasil pengukuran terhadap objek uji. Khusus pada pola yang didapat di dalam citra, ciri-ciri yang diperoleh berasal dari:
a) Spasial: intensitas piksel, histogram dan sebagainya.
b) Tepi: Arah, kekuatan dan sebagainya.
c) Kontur: garis, elips, lingkaran dan sebagainya.
d) Wilayah/bentuk: keliling, luas dan sebagainya.
e) Hasil Transformasi Fourier: frekuensi dan
sebagainya




BAB II
ANALISA ALGORITMA

2.1    Pengertian Perceptron dalam Matlab
Model jaringan perceptron ditemukan Rosenblatt (1962) dan Minsky-Papert (1969). Model tersebut merupakan model yang memiliki aplikasi dan pelatihan yang paling baik pada era tersebut. Arsitetktur jaringan perceptron mirip dengan arsitektur jaringan Hebb.
Model perceptron dalam Matlab sedikit berbeda dengan penjelasan perceptron manual. Dalam Matlab, default sistem yang dipakai adalah sebagai berikut :
· Masukan dan target yang dipakai berbentuk bebas ( tidak harus biner / bipolar )
· Threshold yang dipakai adalah 0
· Fungsi aktivasi memiliki output berupa biner ( bukan -1, 0, 1 seperti penjelasan sebelumnya), sehingga :
f (net)
· Tidak menggunakan laju pemahaman (α). Bobot diubah berdasarkan erroor yang terbentuk dari selisih antara target yang diinginkan dengan keluaran jaringan ( f (net) ). Perubahan bobot bukan merupakan hasil kali antara target dengan masukan.
A. Menghitung f(net)/a dengan sintak “sim”
- Rumus “sim”
- Tabel 13.2
B. Menghitung Perceptron dengan sintak “learnp”
- And, Or, XAnd,XOr (input+output)
C.  Menghitung Perceptron dengan sintak “train”
- And, Or, XAnd,XOr (input+output+grafik)




Ada beberapa hal yang perlu diperhatikan dalam algoritma tersebut :
a.  Iterasi dilakukan terus menerus hingga semua pola memiliki keluaran jaringan yang sama dengan targetnya ( y = t ).
b.  Pada langkah 2(c), perubahan bobot hanya dilakukan pola yang mengandung kesalahan (y ≠ t). Perubahan tersebut merupakan hasil kali unit masukan dengan target dan laju pemahaman (∆w = xi t α). Perubahan bobot hanya akan terjadi kalau unit masukan ≠ 0.
c.    Kecepatan iterasi ditentukan pula oleh α (dengan 0 ≤ α ≤ 1) yang dipakai. Semakin besar harga α, maka akan semakin sedikit iterasi yang diperlukan. Namun apabila harga α terlalu besar, maka akan merusak pola yang sudah benar sehingga pemahaman menjadi lambat.









BAB III
IMPLEMENTASI

Implementasi dilakukan dengan menggunakan software Matlab 7.10.0 (R2010a).
Gambar 4.1 : Matlab R2010a.
Langkah – langkah Implementasi :
1.       Buka Matlab lalu pilih “File” à “New” à “GUI”.
Gambar 4.2 : Buat GUI.
2.       Pilih Tab “Create New GUI” pilih “Blank GUI” à “OK”.
Gambar 4.3 : Pilih Jenis GUI.
3.       Buat GUI seperti gambar berikut lalu simpan dengan nama “Color_and_Shape_Detection”.
Gambar 4.4 : Tampilan GUI.
4.       Pilih “File” à “New” à “Function”, tuliskan kode dibawah ini lalu simpan dengan nama “Color_and_Shape_Detection”.
Gambar 4.5 : Kode fungsi utama.

function varargout = Color_and_Shape_Detection(varargin)
%       Nama Kelompok :
%           201453018 - AHMAD FAIDUL BASYAR
%           201453057 - NAILUL LUTFAH
%           201453063 - LIA CHAMIDAH
% COLOR_AND_SHAPE_DETECTION MATLAB code for Color_and_Shape_Detection.fig
%      COLOR_AND_SHAPE_DETECTION, by itself, creates a new COLOR_AND_SHAPE_DETECTION or raises the existing
%      singleton*.
%
%      H = COLOR_AND_SHAPE_DETECTION returns the handle to a new COLOR_AND_SHAPE_DETECTION or the handle to
%      the existing singleton*.
%
%      COLOR_AND_SHAPE_DETECTION('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in COLOR_AND_SHAPE_DETECTION.M with the given input arguments.
%
%      COLOR_AND_SHAPE_DETECTION('Property','Value',...) creates a new COLOR_AND_SHAPE_DETECTION or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before Color_and_Shape_Detection_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to Color_and_Shape_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

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

% Last Modified by GUIDE v2.5 12-Oct-2016 13:44:54

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

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

% Update handles structure
guidata(hObject, handles);
movegui(hObject,'center');

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


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


% --- 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)
[filename,pathname] = uigetfile('*.jpg');

if ~isequal(filename,0)
    Img = imread(fullfile(pathname,filename));
    axes(handles.axes1)
    imshow(Img)
    title(filename);
   
    % Color Detection
    [m,n,~] = size(Img);
    hsv = rgb2hsv(Img);
   
    H = hsv(:,:,1);
   
    for y = 1:m
        for x = 1:n
            h = H(y,x);
           
            % Ubah warna
            if h < 11/255       % merah
                h = 0;
            elseif h < 32/255   % jingga
                h = 21/255;
            elseif h < 54/255   % kuning
                h = 43/255;
            elseif h < 116/255  % hijau
                h = 85/255;
            elseif h < 141/255  % cyan
                h = 128/255;
            elseif h < 185/255  % biru
                h = 170/255;
            elseif h < 202/255  % ungu
                h = 191/255;
            elseif h < 223/255  % magenta
                h = 213/255;
            elseif h < 244/255  % merah muda
                h = 234/255;
            else
                h = 0;          % merah
            end
           
            % Ubah komponen H
            H(y,x) = h;
        end
    end
   
    % Shape Detection
    gray = rgb2gray(Img);
    threshold = .8;
    bw = ~im2bw(gray,threshold);
    bw = imfill(bw,'holes');
   
    [B,L] = bwboundaries(bw,'noholes');
    stats = regionprops(L,'All');
   
    class = zeros(12,1);
   
    for k = 1:length(B)
        boundary = B{k};
        delta_sq = diff(boundary).^2;
        perimeter = sum(sqrt(sum(delta_sq,2)));
        area = stats(k).Area;
        eccentricity = stats(k).Eccentricity;
        metric = 4*pi*area/perimeter^2;
       
        if metric<0.56
            class(k,1) = 1;
        elseif metric<0.89
            if eccentricity>0.04 && eccentricity <0.05
                class(k,1) = 2;
            else
                class(k,1) = 3;
            end
        else
            class(k,1) = 4;
        end
       
    end
   
    handles.Img = Img;
    handles.H = H;
    handles.class = class;
    handles.bw = bw;
    guidata(hObject, handles)
   
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)
Img = handles.Img;
H = handles.H;

H_aksen = H==0/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')

% --- 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)
Img = handles.Img;
H = handles.H;

H_aksen = H==21/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')


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

H_aksen = H==85/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')


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

H_aksen = H==170/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')


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

H_aksen = H==213/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')


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

H_aksen = H==43/255;
H_aksen = logical(H_aksen);

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~H_aksen) = 255;
G(~H_aksen) = 255;
B(~H_aksen) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Warna')


% --- Executes on button press in pushbutton8.
function pushbutton8_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton8 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
Img = handles.Img;
bw = handles.bw;
class = handles.class;

bw2 = false(size(bw));
n = find(class==1);
for x = 1:numel(n)
    cc = bwconncomp(bw, 4);
    bw2(cc.PixelIdxList{n(x)}) = true;
end

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~bw2) = 255;
G(~bw2) = 255;
B(~bw2) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Bentuk Poligon')


% --- Executes on button press in pushbutton9.
function pushbutton9_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton9 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
Img = handles.Img;
bw = handles.bw;
class = handles.class;

bw2 = false(size(bw));
n = find(class==2);
for x = 1:numel(n)
    cc = bwconncomp(bw, 4);
    bw2(cc.PixelIdxList{n(x)}) = true;
end

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~bw2) = 255;
G(~bw2) = 255;
B(~bw2) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Bentuk Segi Tiga')


% --- Executes on button press in pushbutton10.
function pushbutton10_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton10 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
Img = handles.Img;
bw = handles.bw;
class = handles.class;

bw2 = false(size(bw));
n = find(class==3);
for x = 1:numel(n)
    cc = bwconncomp(bw, 4);
    bw2(cc.PixelIdxList{n(x)}) = true;
end

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~bw2) = 255;
G(~bw2) = 255;
B(~bw2) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Bentuk Segi Empat')


% --- Executes on button press in pushbutton11.
function pushbutton11_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton11 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
Img = handles.Img;
bw = handles.bw;
class = handles.class;

bw2 = false(size(bw));
n = find(class==4);
for x = 1:numel(n)
    cc = bwconncomp(bw, 4);
    bw2(cc.PixelIdxList{n(x)}) = true;
end

R = Img(:,:,1);
G = Img(:,:,2);
B = Img(:,:,3);

R(~bw2) = 255;
G(~bw2) = 255;
B(~bw2) = 255;

RGB = cat(3,R,G,B);

axes(handles.axes2)
imshow(RGB);
title('Hasil Deteksi Bentuk Lingkaran')


% --- Executes on button press in pushbutton12.
function pushbutton12_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton12 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
axes(handles.axes1)
cla reset
set(gca,'XTick',[])
set(gca,'YTick',[])

axes(handles.axes2)
cla reset
set(gca,'XTick',[])
set(gca,'YTick',[])



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

% Hints: get(hObject,'String') returns contents of edit1 as text
%        str2double(get(hObject,'String')) returns contents of edit1 as a double


% --- Executes during object creation, after setting all properties.
function edit1_CreateFcn(hObject, eventdata, handles)
% hObject    handle to edit1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor','white');
end


5.       Gunakan gambar dibawah ini untuk menguji program.
colour shape acak
Gambar 4.6 : Colour Shape Acak.
6.       Jalankan program (tekan “F9” pada keyboard).
Gambar 4.7 : Tampilan program setelah dijalankan.





BAB IV
PENUTUP
4.1   Kesimpulan

Berdasarkan pengujian yang telah dilakukan dapatkan kesimpulan sebagai berikut :
1.       Telah dapat dihasilkan sebuah program untuk mengidentifikasi objek berdasarkan bentuk dan warna, dengan menggunakan bahasa pemrograman Matlab.
2.       Model normalisasi RGB ini sangat mudah untuk diaplikasikan khususnya untuk mendeteksi obyek dengan warna-warna tertentu.
3.        Berdasarkan persamaan 6, warna putih dan hitam sulit dibedakan karena memiliki nilai RGB (red, Green, Blue) yang sama untuk kedua warna.
4.       Pada proses klasifikasi (pendeteksian) objek, program akan membandingkan tingkat kesesuaiaan yang dimiliki objek, terhadap lingkaran, segiempat, segitiga, polygon, persegi panjang,dan segitiga, kemudian akan dipilih tingkat kesesuaiaan yang paling tinggi dan diputuskan apakah objek tersebut adalah lingkaran, persegi panjang, segiempat, segitiga, polygon atau segitiga
4.2      Saran
Berikut adalah saran - saran yang berkaitan dengan penelitian yang telah dilakukan.
1. Perlu dilakukan penambahan jenis – jenis ciri yang akan diekstraksi sehingga dapat dibuat kesimpulan yang lebih tepat lagi.
2.  Perlu dilakukan penelitian lanjutan untuk menambah jenis - jenis objek yang dideteksi, sehingga program dapat dapat mendeteksi lebih banyak objek lagi.
3.   Perlu dilakukan penelitian lebih lanjut agar program dapat mendeteksi citra dengan objek yang memiliki dimensi yang lebih rumit.




DAFTAR PUSTAKA

Diambil dari  https://core.ac.uk/download/pdf/11724494.pdf pada tanggal 12 Oktober 2016



1 komentar:

Iklan Tersedia ads left available col-xs-12 col-sm-6 img-31-9

Iklan Tersedia <a href="wAC">ads left available col-xs-12 col-sm-6 img-31-9</a>
PROMO TERBATAS !!!
SPACE IKLAN - B1
25k / bulan
60k / 3 bulan

Iklan Tersedia ads right available col-xs-12 col-sm-6 img-31-9

Iklan Tersedia <a href="wAC">ads right available col-xs-12 col-sm-6 img-31-9</a>
PROMO TERBATAS !!!
SPACE IKLAN - B2
25k / bulan
60k / 3 bulan