Skip to main content

Histogram 3 Warna dalam Matlab

Kali ini saya akan share syntax untuk membuat histogram dengan menyatukan 3 warna (Red, Green, Blue) hanya menggunakan satu axes saja.
Yang diperlukan adalah :
- 6 Static Text
- 5 Axes
- 3 Push Button (Push Button 1 : OPEN CITRA, Push Button 2 : PROSES citra untuk 3 Axes, dan Push Button 3 : HISTOGRAM WARNA yaitu penyatuan dari warna RGB)

berikut syntax yang harus dimasukan dalam M-File Editor :
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;*jpeg','File Citra (*.bmp,*.jpeg,*.jpg)';
    '*.bmp','File Bitmap (*.bmp)';...
    '*.jpeg','File jpeg (*.jpeg)';...
    '*.jpg','File jpg (*.jpg)'},...
    'Buka File Citra');
if ~isequal (nama_file1,0)
    data1=imread(fullfile(nama_path1,nama_file1));
    handles.data1=data1;
    guidata(hObject,handles);
    axes(handles.axes1);
    imshow(handles.data1);
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)
data1=handles.data1;
dr=data1(:,:,1);
dg=data1(:,:,2);
db=data1(:,:,3);
handles.dr=dr;
guidata(hObject,handles);
axes(handles.axes2);
imhist(handles.dr);

handles.dg=dg;
guidata(hObject,handles);
axes(handles.axes3);
imhist(handles.dg);

handles.db=db;
guidata(hObject,handles);
axes(handles.axes4);
imhist(handles.db);


% --- 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)
dr=double(handles.dr);
dg=double(handles.dg);
db=double(handles.db);
data1=handles.data1;
[b,k,s]=size(data1);
if s==1
    data1=rgb2gray(data1);
    axes(handles.axes5);
    imhist(data1);
else
    dtr=[];
    dtg=[];
    dtb=[];
    for warna=0:255;
        jmlr=0;
        jmlg=0;
        jmlb=0;
        for i=1:b;
            for j=1:k;
                if dr(i,j)==warna
                    jmlr=jmlr+1;
                end;
                if dg(i,j)==warna
                    jmlg=jmlg+1;
                end;
                if db(i,j)==warna
                    jmlb=jmlb+1;
                end;
            end;
        end;
        dtr=[dtr jmlr];
        dtg=[dtg jmlg];
        dtb=[dtb jmlb];
    end;
    dt=dtr+dtg+dtb;
    data1=handles.data1;
    [b,k,s]=size(data1);
    handles.b=b;
    handles.k=k;
    x=0:255;
    y=dt/(b*k);
    axes(handles.axes5);
    bar(x,y,'g');
    set(gca,'xlim',[0 255]);
end;

dan ini hasil running program-nya :




Comments

Popular posts from this blog

Kelebihan dan Kekurangan Model Proses pada Rekayasa Perangkat Lunak

1.   Model Linear Sequential/Waterfall Model Linear Sequential/Waterfall merupakan paradigma rekayasa perangkat lunak yang paling tua dan paling banyak dipakai. Kelebihan model Linear Sequential/Waterfall : ·      Mudah diaplikasikan ·   Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan ·     Cocok digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya Kekurangan model Linear Sequential/Waterfall : ·    Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses ·         Sulit untuk mengalami perubahan kebutuhan yang diinginkan customer ·       Customer harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap,menyelesaikan tahap awal baru bisa ke tahap selanjutnya ·      ...

Kelebihan dan Kekurangan Model Metode Pengembangan Sistem [II]

Ini adalah lanjutan dari tugas kuliah saya yang pertama. Untuk tugas kuliah yang pertama saya dapat dilihat di   Kelebihan dan Kekurangan Model Proses pada Rekayasa Perangkat Lunak 1.        V-Shaped Model V-Shaped Model  sering disebut sebagai pengembangan dari teknik  waterfall .  V-Shaped Model  untuk verifikasi dan validasi dan merupakan model standar yang bayak dipakai di negara-negara Eropa seperti standar  untuk proyek pertahanan dan administrasi federal di Jerman. a.        Tahapan  V-Shaped Model Tahapan  V-Shaped Model  membentuk seperti huruf V sehingga urutan tahapannya ada yang sejajar tetapi berlangsung secara urut dan membentuk huruf V, berikut tahapan dari  V-Shaped ModelI : 1)        System Test Planning  :  Requirements  yang setara dengan  System Testing 2)      ...

Profil Henry Lau Super Junior M

Annyeong haseo:) Haiiii......haiiii..............haiiiiii Apa kabar neh?? Pastinya baik-baik aja kan:) Kali ini aku mau bahas tentang Super Junior M. Boyband yang paling aku sukai hehehe Di Super Junior aku paling suka sama Yesung n Donghae..(Malah curhat diri sendiri hahaha:D) Tapi akhir-akhir ini aku lagi suka sama Henry Lau, Super Junior M. Wajahnya yang charming n kyeoppta bikin gemeessss:D Ini neh profil dari Henry Lau yang kyeoppta...nomu nomu nomu kyeoppta:) Profil Nama                        : Henry Lau Nama Mandarin         : Liu Xian Hua Nicknames : Mochi, Violin Prince, Meat Buns, Liu Fresh Flowers, Underwear Thief, Kid Name of Fans        : Strings TTL                       : Canadian Chinese, 11 Oktober 1989 Bintang                 : Libra Pendidikan ...