Sabtu, 22 Oktober 2016

Aplikasi Perbandingan Viterbi - Sequential Data

Studi kasus  load data .xls ke table pada Matlab dan Grafik multiplot



function btnBrowse_Callback(hObject, eventdata, handles)
proyek=guidata(gcbo);
[handles.namafile,handles.direktori]=uigetfile({'*.xls;*.xlsx','file excel(*.xls,*.xlsx)';'*.*','semua file(*.*)'},'buka file xls master');
I=fullfile(handles.direktori,handles.namafile);

if ~isequal(handles.namafile, 0)
set(handles.btnReset,'Enable','on');

[A,B,C]=xlsread(I);  
header= {'1/2' 'BER' '3/4' 'BER' '7/8' 'BER'};
ba=size(C,1);
co=size(C,2);
 mydata=C(2:ba,1:co);
 rnames = zeros(1,ba)

 X1(1,1)=1;
 X2(1,1)=1;
 X3(1,1)=1;
 Y1(1,1)=1;
 Y2(1,1)=1;
 Y3(1,1)=1;
for i=1:ba-1
   rnames(1,i)=i;
   X1(i,1)=str2num(cell2mat(mydata(i,1)));
   X2(i,1)=str2num(cell2mat(mydata(i,3)));
   X3(i,1)=str2num(cell2mat(mydata(i,5)));
   Y1(i,1)=str2num(cell2mat(mydata(i,2)));
   Y2(i,1)=str2num(cell2mat(mydata(i,4)));
   Y3(i,1)=str2num(cell2mat(mydata(i,6)));

end    

set(handles.Tabel1,'data',mydata,'ColumnName',header,'RowName',rnames);
set(handles.Tabel1,'Userdata',mydata);

    mypath=(['path file :',handles.direktori,handles.namafile]);    
    [infofile]=([mypath]);
    set(handles.txtPath,'string',infofile);
      nf=handles.namafile(1,1:size(handles.namafile,2)-4);
      set(handles.txtTittle1,'string',nf);
    
      set(handles.figure1,'CurrentAxes',handles.graph1);
      x = linspace(5,10,50);
      %plot(x,aRR,'-g',x,aRR,'-b',x,aRF,':ro');
hold on
plot(X1,Y1,'-go',...
    'LineWidth',2,...
    'MarkerSize',10,...
    'MarkerEdgeColor','g',...
    'MarkerFaceColor',[0.5,0.5,0.5]);
plot(X2,Y2,':ro',...
    'LineWidth',2,...
    'MarkerSize',10,...
    'MarkerEdgeColor','r',...
    'MarkerFaceColor',[0.5,0.5,0.5]);
plot(X3,Y3,'b--o',...
    'LineWidth',2,...
    'MarkerSize',10,...
    'MarkerEdgeColor','b',...
    'MarkerFaceColor',[0.5,0.5,0.5]);

        xlabel('Period');
        ylabel('BER');
        plots=['Plot ' nf];
        title(plots);
        legend('1/2','3/4','7/8','Location','southeast');

else
    set(handles.txtPath,'string','');
    return;
end

----------------------------------------------------------------------------------------------

function btnReset_Callback(hObject, eventdata, handles)
proyek=guidata(gcbo);
mau=questdlg(['Reset ' get(proyek.figure1,'Name')''],['Anda ingin Reset  Aplikasi ini?'],'Ya','Tidak','Ya');
if strcmp(mau,'Tidak')
return;
else
    arrayfun(@cla,findall(0,'type','axes'))
    set(handles.txtPath,'String','');
    set(handles.txtPath2,'String','');
    axes(handles.graph1);cla;
    axes(handles.graph2);cla;
    
    tab1 = handles.Tabel1;
    set(tab1,'Data',[]);
    tab2 = handles.Tabel2;
    set(tab2,'Data',[]);
    hm = msgbox('Reset','Reset Sukses','help');
    set(handles.btnReset,'Enable','off');
I=imread('istn.jpg');
 set(handles.figure1,'CurrentAxes',handles.axes1);
 imshow(I);

end
---------------------------------------------------------------------------------------------






GUIDE Kisi-kisi GUI Matlab




Menampilkan data .xls dari open / browse ke tabel pada Matlab:

proyek=guidata(gcbo);
[handles.namafile,handles.direktori]=uigetfile({'*.xls;*.xlsx','file excel(*.xls,*.xlsx)';'*.*','semua file(*.*)'},'buka file xls master');
I=fullfile(handles.direktori,handles.namafile);
set(handles.edPath,'String',I);

[A,B,C]=xlsread(I);  
header= {'nama','jenis kelamin','usia','BB','TB','IMT','status'};
ba=size(C,1);
co=size(C,2);
rnames = linspace(1,ba,ba);

mydata=C(:,1:co);
set(handles.myTabel1,'data',mydata,'ColumnName',header,'RowName',rnames);
set(handles.myTabel1,'Userdata',mydata);

ps=['Jumlah Data Training ' num2str(ba) ' item'];
set(handles.edJum,'String',ps);


-----------------------------------------------------------------------------------------------------------
Code Mengakses radio button pada Matlab:[yjk =name variabel gui uibuttongroup]
function myjk_SelectionChangeFcn(hObject, eventdata, handles)
switch get(eventdata.NewValue,'Tag') 
    case 'radP'
        set(handles.myjk,'Userdata', 'Laki-laki');
    case 'radW'
       set(handles.myjk,'Userdata', 'Perempuan');
end

sehingga pada button yang lain cukup panggil:
JK=  get(handles.myjk,'Userdata');

-----------------------------------------------------------------------------------------------------------

BTNEXIT
mau=questdlg(['Keluar ' get(handles.figure1,'Name')''],['Keluar ' get(handles.figure1,'Name')''],'Ya','Tidak','Ya');
if strcmp(mau,'Tidak')
return;
end
delete(handles.figure1);%close;


-----------------------------------------------------------------------------------------------------------


BTNBROWSE
[handles.namafile,handles.direktori]=uigetfile({'*.rtf';'*.*'},'Open File .RTF');
path=fullfile(handles.direktori,handles.namafile);
if size(path,2)>1
     set(handles.edPathRTF,'string',path);
     set(handles.btnReset,'Enable','on');
     set(handles.btnTXT,'Enable','on');
     set(handles.btnReset,'Enable','on');
     set(handles.btnGenerate,'Enable','on');
     set(handles.btnSave,'Enable','on');
     set(handles.edHasil,'string','');
    
     aa='';
        fid = fopen(path);
        tline = fgetl(fid);
        while ischar(tline)
            aa=[aa tline];
            tline = fgetl(fid);
        end

        fclose(fid);
        set(handles.edProsses,'string',aa);
        
        myicon(:,:,1) = [0 1; 0 1];
        myicon(:,:,2) = [.8 1; 0 .3];
        myicon(:,:,3) = [.3 0; .9 .5];
        h=msgbox('Operation Load .rtf Completed','Success','custom',myicon);

 else
     set(handles.edPathRTF,'string','');
     set(handles.btnTXT,'Enable','off');
     set(handles.btnReset,'Enable','off');
     set(handles.btnGenerate,'Enable','off');
     set(handles.btnSave,'Enable','off');
        myicon(:,:,1) = [0 1; 0 1];
        myicon(:,:,2) = [.8 1; 0 .3];
        myicon(:,:,3) = [.3 0; .9 .5];
      h=msgbox('Operation Load .rtf Failed','Failed','custom',myicon);
 end


-----------------------------------------------------------------------------------------------------------
BTNLOAD.TXT

[handles.namafile,handles.direktori]=uigetfile({'*.TXT';'*.*'},'Open File .txt');
path=fullfile(handles.direktori,handles.namafile);
if size(path,2)>1
%     fid = fopen(path);
%     s = textscan(fid,'%s','Delimiter','\n');
%     s = s{1};
%     mytxt=cell2mat(s);

  aa='';
        fid = fopen(path);
        tline = fgetl(fid);
        while ischar(tline)
            aa=[aa tline];
            tline = fgetl(fid);
        end

        fclose(fid);
        
    set(handles.edPathTXT,'string',path);
    set(handles.edMessage,'string',aa);
    set(handles.edHasil,'string','');


     set(handles.btnReset,'Enable','on');
     set(handles.btnTXT,'Enable','on');
     set(handles.btnReset,'Enable','on');
     set(handles.btnGenerate,'Enable','on');
     set(handles.btnSave,'Enable','on');
            myicon(:,:,1) = [0 1; 0 1];
        myicon(:,:,2) = [.8 1; 0 .3];
        myicon(:,:,3) = [.3 0; .9 .5];
     h=msgbox('Operation Load .txt Completed','Success','custom',myicon);

 else
     set(handles.edPathTXT,'string','');
            myicon(:,:,1) = [0 1; 0 1];
        myicon(:,:,2) = [.8 1; 0 .3];
        myicon(:,:,3) = [.3 0; .9 .5];
    h=msgbox('Operation Load .rtf Canceled','Canceled','custom',myicon);

 end

-----------------------------------------------------------------------------------------------------------

BTNSAVE
proyek=guidata(gcbo);
mau=questdlg(['SAVE ' get(proyek.proyekPD,'Name')''],['Anda ingin Save  hasil Kriptografi ini?'],'Ya','Tidak','Ya');

if strcmp(mau,'Tidak')
return;
else
 [namafile, direktori] = uiputfile({'*.rtf';'*.doc';'*.txt';'*.*'},'Save as')
 path=fullfile(direktori,namafile);

isi=char(get(handles.edProsses,'String'));%seharusnya edResult ya
    fileID = fopen(path,'w');
    fwrite(fileID,isi,'uint8','ieee-be');
    fclose(fileID);
    msgbox(['Process New File RTF :@ ' direktori '\'  namafile ' has Succesfully to Save']);
    
end

-----------------------------------------------------------------------------------------------------------
BTNCLEAR
proyek=guidata(gcbo);
mau=questdlg(['Reset ' get(proyek.proyekPD,'Name')''],['Anda ingin Reset  Aplikasi ini?'],'Ya','Tidak','Ya');
if strcmp(mau,'Tidak')
return;
else
set(handles.edPathRTF,'String','');
set(handles.edPathTXT,'String','');
set(handles.edMessage,'String','');
set(handles.edProsses,'String','');
set(handles.edHasil,'String','');
     set(handles.btnTXT,'Enable','off');
     set(handles.btnReset,'Enable','off');
     set(handles.btnGenerate,'Enable','off');
     set(handles.btnSave,'Enable','off');
end




Kursus Matlab 5 Hari




Adalah singkatan dari MATrix LABoratory.Umumnya Matlab digunakan untuk kebutuhan komputasi teknis, visualisasi dan penerapan pemrograman analisis data seperti komputasi matematik, analisis data, pengembangan algoritma, simulasi serta pemodelan + grafik-grafik perhitungan.
Beberapa kelebihan Matlab:

Mudah dalam memanipulasi struktur matriks dan perhitungan berbagai operasi matriks yang meliputi penjumlahan, pengurangan, perkalian, invers dan fungsi matriks lainnya.
Menyediakan fasilitas untuk memplot struktur gambar hingga grafik tiga dimensi secara mudah.
Script program yang dapat diubah sesuai dengan keinginan user.
Jumlah routine-routine powerful yang berlimpah dan terus berkembang.
Kemampuan interface (misal dengan bahasa C, word dan mathematica).

Dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta mulai melimpahnya source code di internet yang dibuat dalam matlab ( contoh toolbox misalnya : signal processing, control system, neural networks dan sebagainya).


Kursus Matlab 5 Hari

Kami menyelenggarakan Training MATLAB Math Computation, Modeling dan Analysis yang sangat berguna untuk mendapatkan skill tentang cara penggunaan MATLAB sebagai aplikasi bantu untuk memudahkan para pengguna melakukan Komputasi Matematis, Analisa dan Simulasi Grafis untuk keperluan Project .

Training ini akan mengarahkan para pesertanya untuk menjadi Programmer yang mampu mengoperasikan MATLAB demi menghasilkan pembuatan Kalkulasi Optimal yang sesuai kriteria project. Selama training, pengajar akan menggunakan kombinasi teori serta praktek langsung dengan studi kasus yang telah dipersiapkan yang menyerupai Aplikasi nyata dan GUI interface agar belajar pemrograman bertambah mudah dan interaktif.
Belajar 5 hari @3 jam; Biaya Mahasiswa : Rp. 400.000;

Hari1: 
membuat kalkulator matematika
pembahasan fungsi matematika pada Matlab
pembuatan dan penerapan fungsi sendiri
pengayaan materi : penggunaan Toolbox radiobutton, ComboBox, ListBox, checkbox Matlab

Hari2:
membuat kalkulator kalimat / fungsi String pada mMatlab
pengayaan materi : penggunaan Toolbox radiobutton, ComboBox, ListBox, checkbox

Hari3:
Pengenalan Variabel Matlab
Operasi Skalar, Vectors, dan Matrik 2d, 3d
Navigasi Antar Halaman
pengayaan materi : penerapan uitable Matlab,  Messagebox, Confirmdialog Matlab

Hari4:
Perbandingan Matlab: If & Nesting If (if..end, if..else..end, if..elseif..else..end) in MATLAB
Penerapan Statement (While..do) in MATLAB
MATLAB Graphics Visualization
Line Plots Generator
Bar Graphs Generator
Surface Plots Generator

Hari5:
Pengolahan Citra Digital, Browse, Exit
RGB to Grayscale ->Histogram
Grayscale to Noise Remover->Histogram
Grayscale to Penajaman Citra / Morfologi->Histogram
Grayscale to Normalisasi /BW ->Histogram
Simpan Citra
Reset Citra
Penerapan Login String
Navigasi Antar Halaman
Kursus Matlab Lanjutan

Kami menyelenggarakan juga Training MATLAB Lanjutan untuk memudahkan para pengguna melakukan Komputasi Matematis lanjutan, Analisa dan Simulasi Grafis untuk keperluan Project Aplikasi. Training ini akan mengarahkan para pesertanya untuk menjadi programmer terapan yang lebih baik, Tajam dalam menganalisa suatu bentuk algoritma / metode dan Mahir dalam Pembuatan berbagai Aplikasi Terapan


Belajar Minimal 3 hari atau Sampai target aplikasi Selesai;
Biaya Mahasiswa : Rp. 500.000 s/d 1.500.000;

Pilihan 1:
Matlab Pengolahan Database, Looks n Feel, Create Update Delete Search Data terhadap kolom tabel database yang dibuat
Penerapan pada Database Dynamic : Ms. Access, Mysql
Penerapan pada Data Static : .xls, .mat, .csv, .txt
Bonus: Penerapan pada GUI

Pilihan 2:
Matlab Penerapan Algoritma untuk Pengambilan Keputusan dan Pengolahan Data Mining
Algoritma pilihan : Jaringan Syaraf Tiruan / JST /Backpropagation, Support Vector Machine /SVM, Algoritma Genetika /AG, Particle Swarm Optimization /PSO,PCA Eigenface dll
Data Mining pilihan : K-Nearest Neighborhood Classification /KNN, Hidden Markov Model /HMM, Kalman Filter, Extreme Learning Machine / ELM , Learning Vector Quantization /LVQ, dll
Matlab Fuzzy Implementation : FIS, ANFIS (Adaptive neuro fuzzy inference system)
Bonus: Analisis dan Penerapan pada GUI


Pilihan 3:
Matlab Komunikasi Serial
Menerapkan Matlab dari data Mikrokontroller (Arduino /AVR /MCS dll) ke Komunikasi Serial Operating System, 
Realtime menampilkan /monitoring data perubahan variabel terukur pada plot /Grafik /Tabel
Realtime mengendalikan alat menggunakan Matlab
Bonus: Analisis dan Penerapan pada GUI


Pilihan 4:
Matlab Untuk Keamanan Data
Kompressi Citra :SPIHT/ENHANCED SOM/HUFFMAN/ LZW/ RLE / OBDD dll
Watermarking :Menyembunyikan Pesan pada Suara, Gambar, Video, Dokumen =>LSB, LCG, dll 
Kriptografi :Mengacak pesan menjadi pola baru => RC4-RC5-RC6, DES, Blowfish, Camellia, RSA, AES, vChipper, McELIECE, dll 
Bonus: Analisis dan Penerapan pada GUI


Pilihan 5:
Matlab Integrasi ke Mobile / Android / Web
Parsing data from the URL in MATLAB Analysis and Visualizations :JSON, XML, Crawling, URL decoding, URL Parser
Integrasi menggunakan IP Camera, CCTV, Barcode Reader, Webcam External, OCR /Optical Character Recognition‎
Bonus: Penerapan pada GUI 


Untuk pengerjaan perusahaan butuh waktu minimal 3 hari kerja. Untuk pengerjaan Skripsi atau tugas akhir biasanya 5 x pertemuan @4-8jam. Siswa diwajibkan hadir untuk mempelajari logika pemrograman, pemahaman algoritma yang dipakai dan source code yang digunakan. Untuk jarak jauh siswa disediakan penginapan dan pengerjaan max 2 sd 3 hari kerja.
Beberapa Aplikasi / Proyek Tugas Akhir Yang Bisa dan Sudah Kami Support menggunakan Matlab


+ Aplikasi sistem rental finger print pada cv.tagline kreasi askara berbasis Matlab
+ Keamanan data menggunakan kriptografi lbs methode berbasis Matlab
+ Perbandingan kemiripan citra antara menggunakan SVM,JST, LVQ dan PCA Eigenface berbasis Matlab
+ Perancangan sistem parkir berbasis sensor infrared menggunakan rfid dan Matlab
+ Aplikasi pencarian rumah sakit di jakarta selatan  dengan location base service berbasis Matlab
+ Pencocokan plat kendaraan menggunakan Hopfield Algorithm
+ Perancangan aplikasi pengenalan benda angkasa dengan teknologi  augmented reality berbasis Matlab
+ Aplikasi absensi mahasiswa berbasis face recoginition client server pada Matlab
+ Pengenalan citra Fingerprint menggunakan Matlab
+ Sistem absensi berbasis webcam dengan eigenface yg terhubung dengan internet client server Matlab
+ Aplikasi Study kelayakan menggunakan algoritma SAW Matlab
+ Simulasi adaptive modulasi dan coding pada sistem ofdm berbasis Matlab
+ Optimalisasi schedulle proyek metode sistem syaraf buatan menggunakan Matlab
+ Identifikasi iris mata untuk penentuan jenis penyakit menggunakan Matlab
+ Pemilihan Pelajar Berprestasi menggunakan algoritma AHP berbasis Matlab
+ Rancang Bangun Pengaturan jadwal perkuliahan menggunakan algoritma Genetika Studi kasus Kampus X
+ Pengolahan citra sidik jari menggunakan pca dan svm menggunakan Matlab
+ SPK Penentuan penrima BLT berdasarkan ANFIS menggunakan Matlab
+ Aplikasi pengambilan keputusan mahasiswa berprestasi menggunakan algoritma fuzzy mamdani/ sugero dengan Matlab
+ Simulasi pengukuran Fiber Optic dengan Matlab
+ Aplikasi alat bantu penderita buta warna basis video berbasis Matlab
+ Rancang bangun pemilihan target tembakan pada malam hari menggunakan blob berbasis Matlab
+ Aplikasi Blind Channel Estimation berbasis Matlab
+ Klasifikasi pencitraan Face Detection menggunakan algortima backpropagation berbasis Matlab
+ Pembuatan program simulasi diagaram gaya geser dan momen lentur pada balok berbasis Matlab
+ Analisa kanker kulit dengan JST dan LVQ berbasis Matlab
+ Pengenalan pada pembuluh darah manusia melalui metode Filter Gabor 2D berbasis Matlab
+ Implementasi k-means clustering pada penjualan produk minyak berbasis Matlab
+ Perancangan simulasi lalu lintas dengan fis metode tsukamoto pada Matlab
+ Estimasi ketinggian permukaan air laut sungai menggunakan kalman filter berbasis Matlab
+ Estimasi ketinggian air laut menggunakan hidden markov model (hmm) berbasis Matlab
+ Klasifikasi pencitraan Face Detection menggunakan algortima PCA Eigenface berbasis Matlab
+ Aplikasi watermaking pada digital audio menggunakan metode low bit coding berbasis Matlab
+ Perbandingan Steganografi Image Menggunakan LCG 1bit, 2bit, 3bit, 4bit, 5bit, 6bit, 7bit dan 8bit
+ Pengenalan pola pakaian daerah dengan metode jst barkpropagation berbasis Matlab
+ Sistem penjualan online pada cv. Xyz dengan menggunakan client server pada Matlab
+ Sistem informasi kos-kosan berbasis client server Matlab
+ Sistem monitoring dan pengendali perangkat listrik berbasis gui Matlab
+ Control gate system berbasis Matlab dan mikrokontroller
+ Rancang bangun pengontrolan alat listrik berbasis Matlab dan mikrokontroller
+ Perbandingan Teknik Watermarking LSB dan LCG pada Media Image
+ Perbandingan Teknik Watermarking LSB dan LCG pada Media Suara
+ Penghitung beban istrik menggunakan sms gateway berbasis Matlab dan mikrokontroller
+ Penggerak pintu otomatis menggunakan rfid berbasis Matlab dan mikrokontroller
+ Miniatur pemilah barang berdasarkan jenis materialnya berbasis Matlab dan mikrokontroller
+ Absensi digital dgn fingerprint berbasis wireless berbasis Matlab dan mikrokontroller
+ Alat pembersih sampah pada pintu air berbasis Matlab dan mikrokontroller
+ Sistem kontrol alat rumah tangga berbasis Matlab dan mikrokontroller
+ Perancangan sistem aplikasi smoke detector berbasis Matlab dan mikrokontroller
+ Implementasi Fuzzy Sugeno dan Mamdani dalam Kelayakan Pengajuan Kredit Nasabah Koperasi
+ Aplikasi kontrol lampu ruangan jarak jauh berbasis Matlab dan mikrokontroller
+ Prototype pengidentifikasi karyawan menggunakan jaringan wifi berbasis raspberry pi
+ Rancang bangun meter air digital menggunakan keypad token berbasis Matlab dan mikrokontroller
+ Absensi digital dgn fingerprint berbasis wireless menggunakan Matlab dan mikrokontroller
+ Sistem security car berbasis Matlab dan mikrokontroller
+ Monitoring server jarak jauh berbasis Matlab dan mikrokontroller
+ Rancang bangun sistem monitoring tegangan dan arus suhu pada sistem pencatu daya listrik gedung bertingkat secara wireless berbasis Matlab dan mikrokontroller
+ Prototype sistem keamanan rumah menggunakan image capturing dan fingerprint berbasis sms menggunakan Matlab dan mikrokontroller
+ Rancang bangun mesin hot print berbasis Matlab dan mikrokontroller
+ Prototype sistem keamanan rumah menggunakan image capturing dan fingerprint berbasis sms menggunakan Matlab dan mikrokontroller
+ Perancangan sistem parkir berbasis sensor infrared menggunakan rfid berbasis Matlab dan mikrokontroller
+ Perancangan prototype smart movie theater berbasis bluetooth menggunakan Matlab dan mikrokontroller
+ ALgoritma Genetika untuk pengaturan Jadwal Akademik SMK N Depok
+ Kompressi Citra menggunakan algoritma Huffman berbasis GUI Matlab
+ Aplikasi keamanan data pada dokumen .rtf berbasis Matlab
+ Penerapan Metode Interpolasi Linear Pada Pembesaran Citra
+ Sharpening Gambar Dengan Metode Kervel Konvolusi
+ Efek Smearring Dengan Menggunakan Teknik Pertukaran Pixe
+ Implementasi Algoritma Clipping Untuk Program Pemecah File Gambar
+ Penerapan Identifikasi Edge Pada Area Image Dg Menggunakan Algoritma Sobel Edge Detection Dan Crack Edge Relaxation
+ Teknik Kompresi Citra Fraktal Berbasis Metode Two Level Image Partition
+ Metode Akses Spasial Bersarang Pada Citra Dua Dimensi ( The NR-Tree: A spatial Access Method For Two-Dimensional Image)
+ Pembentukan Panorama dengan Image Mosaicing
+ Morphing Berbasis Vektor pada Objek Dua Dimensi Berdasarkan Model Extended Circular Image (ECI)
+ Analisis Dekomposisi Wavelet-Based Subband pada Image Restoration
+ Steganography pada Binary Images Menggunakan EDGE Detection
+ Penerapan Algoritma Genetika untuk pengaturan Jadwal Praktikum Kampus IT Depok
+ Identifikasi Noice pada Blind Image dengan Menggunakan Analisa Local Histogram
+ Implementasi Teknik Adaptive Digital Image Watermarking
+ Perbaikan Kualitas Citra Digital Menggunakan Metode Fuzzy Image Filtering dengan Sharpening
+ Implementasi dan Analisa Perbandingan Antara Algoritma JPEG-LS dan JPEG 2000 pada Lossless Image Compression
+ Aplikasi Adaptasi Format Image Berdasar Type Mini Browser
+ Smoothing Image Dengan Metode Gaussian Filtering
+ Penerapan PSO untuk pengaturan Jadwal Perkuliahan Kampus X Semarang
+ Teknik Kompresi Citra Fraktal Berbasis Metode Two Level Image Partition
+ Deteksi Muka Depan Manusia dari Sebuah Citra Berwarna dengan Template Matching
+ Perancangan dan implementasi sistem citra steganography menggunakan metode transformasi dudex
+ Implementasi Teori Fraktal Pada Kompresi Citra Dengan System Fungsi Iterasi Terpartisi
+ Implementasi Edge Detection Filtering pada Citra Digital dengan Metode Prewitt Operator dan Sobel Operator
+ Perancangan dan Implementasi Teknik Watermarking pada citra Digital menggunakan Blowfish dan Message Digest 5
+ Penajaman Sisi Citra Menggunakan Metode Fourier Phase Only Synthesis dengan pembetulan Fase
+ Pendeteksian Sisi menggunakan Isotropic Operator dengan Proses Awal Pemuliaan Citra menggunakan Teknik Manipulasi Histogram
+ Segmentasi Citra Digital Menggunakan Algoritma Region Merging dan Representasi Quadtree
+ Analisa Performansi Filtering Citra Digital Menggunakan Metoda Two-Dimensional Median Filter Dan Multilevel Median Filter
+ Perancangan Dan Implementasi Teknik Watermarking Pada Citra Digital Dengan Metode Fractal
+ Perancangan Aplikasi Pengolahan Citra dalam Studi Kasus Pengujian Logam
+ Implementasi Pengolahan Citra dalam Proses Seleksi Kemasan Minuman Kaleng
+ Aplikasi Pengolahan Citra Sebagai Alat Bantu Pengawas Keamanan
+Dll....


Hub Kami di:
lp2maray
Seberang Halte / Gerbang Utama Kampus UI Lenteng Agung
Telp : 021-22712148 / 78889003
HP/WA/SMS: 085279959498 /082111476069
http://www.lp2maray.com



Rabu, 10 Februari 2016

Create Update Delete Mysql Using Matlab

Rekan2mari kita belajar SImpan Ubah dan Hapus pada Matlab...
Mula-mula buatlah tabel yang sederhana misalkan tabel Kategori
dengan kolomnya:
kode_kategori
kategori
keterangan

Lalu kita buat GUI di matlab dengan tampilan sbb:


Dan berikan coding sbb:

function menukategori_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;

I=imread('kategori.png');
set(handles.figure1,'CurrentAxes',handles.axes1);
imshow(I);

handles.tabel='kategori';
handles.pk='kode_kategori';
handles.pre='KAT';

[kolom,mydata,no ]=lihat(handles.tabel,handles.pk);
set(handles.myTabel,'data',mydata,'ColumnName',kolom,'RowName',no);
set(handles.myTabel,'Userdata',mydata);
T=size(mydata,1);
[tot]=['Total ' num2str(T) ' data'];
set(handles.txtTotal,'String',tot);

[AU]=auto(handles.tabel,handles.pk,handles.pre);
set(handles.edKode,'String',AU);
guidata(hObject, handles);


function varargout = menukategori_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;


function btnSimpan_Callback(hObject, eventdata, handles)
kode=get(handles.edKode,'String');
kategori=get(handles.edKategori,'String');
keterangan=get(handles.edKeterangan,'String');

[con,table,kolom]=koneksi();
arData = {kode, kategori, keterangan};
fastinsert(con,table,kolom,arData);

showtabel('Simpan',handles);


function btnUbah_Callback(hObject, eventdata, handles)
kode=char(get(handles.edKode,'String'));
kategori=char(get(handles.edKategori,'String'));
keterangan=char(get(handles.edKeterangan,'String'));
[con,table,kolom]=koneksi();
    [SQL]= ['update kategori set kategori=''', kategori, ''',keterangan=''', keterangan, ''' where kode_kategori=''', kode, ''''];
    curs = exec(con,SQL);
    exec(con, 'rollback');
    exec(con, 'commit');
showtabel('Ubah',handles);


function btnHapus_Callback(hObject, eventdata, handles)
kode=char(get(handles.edKode,'String'));
[con,table,kolom]=koneksi();
    [SQL]=['delete from kategori where kode_kategori='''  kode  ''''];
    curs = exec(con,SQL);
    exec(con, 'rollback');
    exec(con, 'commit');
showtabel('Hapus',handles);


function showtabel(proses,handles)
tabel=handles.tabel;
pk=handles.pk;
[kolom,mydata,no ]=lihat(tabel,pk);
set(handles.myTabel,'data',mydata,'ColumnName',kolom,'RowName',no);
set(handles.myTabel,'Userdata',mydata);
T=size(mydata,1);
[tot]=['Total ' num2str(T) ' data'];
set(handles.txtTotal,'String',tot);

[AU]=auto(handles.tabel,handles.pk,handles.pre);
    set(handles.edKode,'String',AU);
    set(handles.edKategori,'String','');
    set(handles.edKeterangan,'String','');
[ps]=['Sukses Proses ' proses];
msgbox(ps,proses,'help');


function btnBersih_Callback(hObject, eventdata, handles)
proyek=guidata(gcbo);
mau=questdlg(['Reset ' get(proyek.figure1,'Name')''],['Anda ingin Reset  Aplikasi ini?'],'Ya','Tidak','Ya');
if strcmp(mau,'Tidak')
return;
else
    set(handles.edKode,'String','');
    set(handles.edKategori,'String','');
    set(handles.edKeterangan,'String','');
    hm = msgbox('Reset','Reset Sukses','help');
    showtabel('Clear',handles);
end


function btnTutup_Callback(hObject, eventdata, handles)
mau=questdlg(['Keluar ' get(handles.figure1,'Name')''],['Keluar ' get(handles.figure1,'Name')''],'Ya','Tidak','Ya');
if strcmp(mau,'Tidak')
return;
end
delete(handles.figure1);%close;

function btnCari_Callback(hObject, eventdata, handles)
cari=char(get(handles.edCari,'String'));
[kolom,mydata,no ] = lihat(handles.tabel,'kategori',cari);
set(handles.myTabel,'data',mydata,'ColumnName',kolom,'RowName',no);
set(handles.myTabel,'Userdata',mydata);
T=size(mydata,1);
[tot]=['Total ' num2str(T) ' data'];
set(handles.txtTotal,'String',tot);

function myTabel_CellSelectionCallback(hObject, eventdata, handles)
try
    al= eventdata.Indices;
    dataseleksi=get(handles.myTabel,'Userdata');
    getdata=dataseleksi(al);
    kode=getdata{1};
   
    [kolom,mydata,no ] = lihat(handles.tabel,handles.pk,kode);
    var1=mydata(1,1);
    var2=mydata(1,2);
    var3=mydata(1,3);
   
    set(handles.edKode,'string',var1);
    set(handles.edKategori,'string',var2);
    set(handles.edKeterangan,'string',var3);

catch
    [AU]=auto(handles.tabel,handles.pk,handles.pre);
    set(handles.edKode,'String',AU);
    set(handles.edKategori,'String','');
    set(handles.edKeterangan,'String','');
end

%%%%%%%%%%%%%%%%%%%%%%%%  

Saat kita play akan didapatkan hasil GUI sbb

Dan cobalah tombol Simpan, Ubah dan Hapus serta Bersihnya....
dikoding ini terdapat juga koding autoincrement yang unik...artinya setiap kita hendak menambahkan data baru kode_kategori akan bertambah secara automatis..
Misalkan :KAT1602001 next  KAT1602002 next KAT1602003 dst...
jika bulan dan tahun tidak berbeda dengan maka sistem akan increment...meneruskan data sebelumnya....namun jika bulan atau tahun input sekarang berbeda dengan data terahir dari database maka sistem akan memulai kembali ke index no 1...
misal dari KAT1602089 kembali ke KAT1603001 dst....









Sebagai berikut adalah kode autoIncrementnya:
function [ AU ] = auto( varargin )
[con,table,kolom]=koneksi();
%kode='KAT1407000';
tabel=varargin{1};
pk=varargin{2};
pre=varargin{3};
setdbprefs('NullNumberWrite', 'NaN');
    SQL=['SELECT * FROM ' tabel '  order by ' pk ' desc' ];
    curs = exec(con,SQL);
    curs = fetch(curs);
    mydata=curs.data;
    baris=size(mydata,1);
   
th=year(Date);
bl=month(Date);
thn=num2str(th);
thn=thn(3:4);
bln=num2str(bl);
C=1;
if bl<10
    bln=['0' bln];
end
kode=[pre thn bln '001'];
[AU]=[pre thn bln];
if baris>0
    kode=cell2mat(mydata(1,1));
    if strcmp(kode,'No Data')>0
        C=1;
    else
        C1=kode(8:10);
        C=str2num(C1)+1;
        YL=kode(4:5);
        ML=kode(6:7);
        [AU]=[pre YL ML];
        if str2num(thn)~=str2num(YL)
            C=1;
        elseif str2num(bln)~=str2num(ML)
            C=1;
        end

    end    
end

if C <10
  [AU]=[AU '00' num2str(C)]; 
elseif C <100
  [AU]=[AU '0' num2str(C)]; 
else
  [AU]=[AU num2str(C)]; 
end


end



OK rekan2...selamat mencoba yaa......
NB untuk rumus koneksinya silakan ikuti materi yang sebelum ini......

Hasil proses pencarian

Pencarian disini menerapkan kode like '%%' artinya satu huruf saja di cari maka semua kata yang mengandung huruf tsb akan ditampilkan.....gambar diatas menunjukkan bahwa kategori Matlab dan Java mengandung huruf a...


Semoga Membantu.......:-)


Matlab Lihat dan Simpan Data di Mysql

dowonload JDBC driver di http://dev.mysql.com/downloads/connector/j/3.1.html



lalu ekstract dan bebas tempatkan.....tapi baiknya di matlabroot alias tempat instalasi matlab kita berada:



NB.andaikan bebas mau ditempatkan dimana maka...harus diset alamat javaPathHome di environtment windows-nya...

Langkah berikutnya, edit file classpath.txt yang berada pada direktori matlabroot atau dengan alamat sbb
C:\Program Files\MATLAB\R2010a\toolbox\local
Lalu tambakan kode sbb (letakkan bebas dibarismanapun......)

$matlabroot/java/jar/mysql-connector-java-3.1.14-bin.jar


Restart Matlabnya...atau lebih afdhol.....restart pc nya........
Tes buat tabelnya dimysql / atau http://localhost/phpmyadmin .....


Setelah itu buat deh coding dimatlab nya: 


url = 'jdbc:mysql://localhost:3306/';
conn = database('matlab_db', 'root', '', 'com.mysql.jdbc.Driver', url);

%%%SBB Code untuk melihat isi tabel
curs = exec(conn,'SELECT * FROM barang');
curs = fetch(curs)
curs.data;

%%%SBB Code untuk simpan isi tabel
tableName = 'barang';
fields = {'kode_barang', 'nama_barang', 'deskripsi', 'harga','kategori', 'gambar', 'status'};
allData = {'BRG004', 'KOMPUTER 4', 'Harga murah.....harga ok', '1250000', 'Komputer', 'kom4.jpg', 'Tersedia'};

tic
fastinsert(conn,tableName,fields,allData)
toc


%%%SBB CODE untuk reset tabel /mengosongkan isi tabel
deleteQuery = ['delete from '   tableName   ';' ];
exec(db,deleteQuery);


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OK DEH ;-)