• Tidak ada hasil yang ditemukan

Berikut adalah langkah-langkah instalasi OpenCV (Open Source Computer Vision Library) untuk pengembangan perangkat lunak, pada Windows 98/2000/XP:

N/A
N/A
Protected

Academic year: 2022

Membagikan "Berikut adalah langkah-langkah instalasi OpenCV (Open Source Computer Vision Library) untuk pengembangan perangkat lunak, pada Windows 98/2000/XP:"

Copied!
26
0
0

Teks penuh

(1)

Lampiran 1: Petunjuk Instalasi OpenCV

Berikut adalah langkah-langkah instalasi OpenCV (Open Source Computer Vision Library) untuk pengembangan perangkat lunak, pada Windows 98/2000/XP:

Instalasi Software

1. Dahului dengan instalasi Microsoft Visual C++ versi 6.0 yang terdapat dalam paket Microsoft Visual Studio versi 6.0.

2. Install DirectX SDK (Software Development Kit) versi 8.1, ubah direktori default instalasi dari c:\dxsdk\ menjadi c:\mssdk\

Filename: DX81SDK_FULL.exe

URL:http://download.microsoft.com/download/whistler/dx/8.1/W982KMeXP/

EN-US/DX81SDK_FULL.exe

3. Install IPL (Intel Image Processing Library) versi 2.5, direktori default instalasi adalah: c:\program files\intel\plsuite\

Filename: ipl25.exe

URL: http://developer.intel.com/software/products/perflib/ipl/

4. Install OpenCV (Intel Open Source Computer Vision) versi beta3.1, direktori default instalasi adalah: c:\program files\intel\opencv\

Filename: OpenCV_b3.1.exe

URL: http://sourceforge.net/projects/opencvlibrary/

Setting Path

5. Tambahkan path instalasi program, yaitu:

c:\program files\intel\opencv\bin; c:\program files\intel\plsuite\bin (perhatikan pemakaian karakter ‘;’ untuk memisahkan path).

ƒ Untuk Windows 2000/XP:

Klik Start->Settings->Control Panel->System->Advanced->Environment Variables->System Variables->Tambahkan pada variable Path

ƒ Untuk Windows 98:

(2)

Lampiran 1: Petunjuk Instalasi OpenCV (sambungan)

Tambahkan path pada file autoexec.bat, yang secara default terletak di root directory, yaitu di c:\

Setting Visual C++ 6.0

6. Dahului dengan melakukan build baseclasses dari DirectShow baik untuk versi Win32 Release maupun Debug, yaitu dengan membuka file baseclasses.dsp pada lokasi:

C:\MSSDK\samples\Multimedia\DirectShow\BaseClasses\ melalui Visual C++ dan pilih menu: Build->Batch Build.

7. Tambahkan direktori untuk include, library, dan executable files, melalui menu: Tools->Options->Directories (letakkan direktori-direktori tersebut pada urutan teratas).

a. Direktori untuk Include Files:

ƒ c:\mssdk\include

ƒ c:\mssdk\samples\multimedia\directshow\baseclasses

ƒ c:\mssdk\samples\multimedia\common\include

ƒ c:\program files\intel\opencv\cvaux\include

ƒ c:\program files\intel\opencv\cv\include

ƒ c:\program files\intel\opencv\apps\common

ƒ c:\program files\intel\opencv\otherlibs\highgui

ƒ c:\program files\intel\plsuite\include

ƒ c:\program files\intel\plsuite\bin b. Direktori untuk Library Files:

ƒ c:\mssdk\samples\multimedia\directshow\baseclasses\debug

ƒ c:\mssdk\samples\multimedia\directshow\baseclasses\release

ƒ c:\mssdk\lib

ƒ c:\program files\intel\opencv\lib

ƒ c:\program files\intel\opencv\otherlibs\highgui

ƒ c:\program files\intel\plsuite\lib\msvc c. Direktori untuk Executable Files:

(3)

Lampiran 1: Petunjuk Instalasi OpenCV (sambungan)

ƒ c:\program files\intel\opencv\bin

ƒ c:\program files\intel\plsuite\bin

Development Perangkat Lunak

8. Tahap pengembangan perangkat lunak dalam Visual C++ menggunakan mode Win32 Debug untuk mendukung proses Debugging, setelah proses develop selesai baru aplikasi di-kompile dengan mode Win32 Release, dimana mode ini akan mempercepat eksekusi program, karena informasi debug yang sudah tidak diperlukan akan dihilangkan dari program. Untuk mendukung mode Win32 Debug maka build library versi debug dari OpenCV dan HighGUI yang akan menghasilkan library cvd.lib dan highguid.lib.

ƒ Untuk library versi debug dari OpenCV, buka file C:\Program Files\Intel\OpenCV\cv\make\cv.dsp, lakukan build secara batch untuk versi debug dan release.

ƒ Untuk library versi debug dari HighGUI, buka file C:\Program Files\Intel\OpenCV\otherlibs\highgui\highgui.dsp, lakukan build secara batch untuk versi debug dan release.

9. Dalam pembuatan aplikasi (proses coding) tambahkan informasi library- library yang digunakan oleh program (untuk keperluan proses linking), yaitu melalui menu: Project->Settings->Link, tambahkan pada pilihan Object/library modules: cvd.lib ipl.lib vfw32.lib highguid.lib (perhatikan pemakaian spasi untuk memisahkan library).

(4)

Lampiran 2: Hasil Pengujian Tanda Tangan

Anton lengkap

Anton_asli 1 Anton_asli 2 Anton_asli 3 Anton_asli 4

Anton_asli 5 Anton_asli 6 (s) Anton_asli 7 (s) Anton_asli 8 (s)

Anton_palsu 1 Anton_palsu 2 Anton_palsu 3 Anton_palsu 4

Anton_palsu 5 Anton_palsu 6 Anton_palsu 7 Anton_palsu 8

Anton_asli1 Anton_asli2 0.911504

Anton_asli3 0.855056

Anton_asli4 0.515779

Anton_asli5 0.877784

Anton_asli6 (s) 0.847756 Anton_asli7 (s) 0.786051 Anton_asli8 (s) 0.826428 Anton_asli2 Anton_asli3 0.817969

Anton_asli4 0.582209

Anton_asli5 0.913455

Anton_asli6 (s) 0.838570 Anton_asli7 (s) 0.831213 Anton_asli8 (s) 0.928655

(5)

Anton_asli3 Anton_asli4 0.629895

Anton_asli5 0.843150

Anton_asli6 (s) 0.791246 Anton_asli7 (s) 0.772700 Anton_asli8 (s) 0.780105 Anton_asli4 Anton_asli5 0.678336 Anton_asli6 (s) 0.591888 Anton_asli7 (s) 0.635926 Anton_asli8 (s) 0.634637 Anton_asli5 Anton_asli6 (s) 0.925309 Anton_asli7 (s) 0.933043 Anton_asli8 (s) 0.896075 Anton_asli6 (s) Anton_asli7 (s) 0.957982

Anton_asli8 (s) 0.815683 Anton_asli7 (s) Anton_asli8 (s) 0.834149

Anton_asli1 Anton_palsu1 0.550755

Anton_palsu2 0.839297

Anton_palsu3 0.839690

Anton_palsu4 0.643559

Anton_palsu5 0.926341

Anton_palsu6 0.902186

Anton_palsu7 0.713291

Anton_palsu8 0.732831

Anton_asli2 Anton_palsu1 0.615649

Anton_palsu2 0.906635

Anton_palsu3 0.820129

Anton_palsu4 0.705318

Anton_palsu5 0.934242

Anton_palsu6 0.846520

Anton_palsu7 0.710479

Anton_palsu8 0.839789

Anton_asli3 Anton_palsu1 0.655521

Anton_palsu2 0.876509

Anton_palsu3 0.777511

Anton_palsu4 0.678673

Anton_palsu5 0.904112

Anton_palsu6 0.832017

Anton_palsu7 0.645300

Anton_palsu8 0.818951

Anton_asli4 Anton_palsu1 0.842731

Anton_palsu2 0.686665

Anton_palsu3 0.563840

Anton_palsu4 0.710544

Anton_palsu5 0.588590

Anton_palsu6 0.571486

Anton_palsu7 0.480110

(6)

Anton_palsu8 0.793774 Anton_asli5 Anton_palsu1 0.749062

Anton_palsu2 0.907878

Anton_palsu3 0.914808

Anton_palsu4 0.828329

Anton_palsu5 0.923258

Anton_palsu6 0.846104

Anton_palsu7 0.786179

Anton_palsu8 0.823769

Anton_asli6 (s) Anton_palsu1 0.699077

Anton_palsu2 0.796756

Anton_palsu3 0.968263

Anton_palsu4 0.871841

Anton_palsu5 0.885474

Anton_palsu6 0.799196

Anton_palsu7 0.904048

Anton_palsu8 0.727459

Anton_asli7 (s) Anton_palsu1 0.765747

Anton_palsu2 0.821482

Anton_palsu3 0.953543

Anton_palsu4 0.923561

Anton_palsu5 0.860076

Anton_palsu6 0.760732

Anton_palsu7 0.896097

Anton_palsu8 0.762931

Anton_asli8 (s) Anton_palsu1 0.609884

Anton_palsu2 0.880523

Anton_palsu3 0.767707

Anton_palsu4 0.713648

Anton_palsu5 0.901111

Anton_palsu6 0.766689

Anton_palsu7 0.717748

Anton_palsu8 0.872265

Arie lengkap

Arie_asli 1 Arie_asli 2 Arie_asli 3 Arie_asli 4

(7)

Arie_asli 5 (s) Arie_asli 6 (s) Arie_asli 7 (s)

Arie_palsu 1 Arie_palsu 2 Arie_palsu 3 Arie_palsu 4

Arie_palsu 5 Arie_palsu 6 Arie_palsu 7 Arie_palsu 8

Arie_asli1 Arie_asli2 0.860334

Arie_asli3 0.981986

Arie_asli4 0.580944

Arie_asli5 (s) 0.868143 Arie_asli6 (s) 0.632967 Arie_asli7 (s) 0.884074 Arie_asli2 Arie_asli3 0.883785

Arie_asli4 0.666327

Arie_asli5 (s) 0.689682 Arie_asli6 (s) 0.724531 Arie_asli7 (s) 0.842498 Arie_asli3 Arie_asli4 0.594196 Arie_asli5 (s) 0.844003 Arie_asli6 (s) 0.651631 Arie_asli7 (s) 0.888012 Arie_asli4 Arie_asli5 (s) 0.427234 Arie_asli6 (s) 0.983455 Arie_asli7 (s) 0.573608 Arie_asli5 (s) Arie_asli6 (s) 0.477116

Arie_asli7 (s) 0.859164 Arie_asli6 (s) Arie_asli7 (s) 0.634032

Arie_asli1 Arie_palsu1 0.857187

Arie_palsu2 0.785278

(8)

Arie_asli1 Arie_palsu3 0.744079

Arie_palsu4 0.583075

Arie_palsu5 0.849982

Arie_palsu6 0.632366

Arie_palsu7 0.807487

Arie_palsu8 0.854122

Arie_asli2 Arie_palsu1 0.778891

Arie_palsu2 0.848284

Arie_palsu3 0.842522

Arie_palsu4 0.775802

Arie_palsu5 0.751508

Arie_palsu6 0.830482

Arie_palsu7 0.864296

Arie_palsu8 0.909222

Arie_asli3 Arie_palsu1 0.875857

Arie_palsu2 0.800942

Arie_palsu3 0.770484

Arie_palsu4 0.606609

Arie_palsu5 0.847591

Arie_palsu6 0.655448

Arie_palsu7 0.888012

Arie_palsu8 0.860829

Arie_asli4 Arie_palsu1 0.437994

Arie_palsu2 0.510470

Arie_palsu3 0.491550

Arie_palsu4 0.565278

Arie_palsu5 0.445427

Arie_palsu6 0.754208

Arie_palsu7 0.472159

Arie_palsu8 0.779503

Arie_asli5 (s) Arie_palsu1 0.809313

Arie_palsu2 0.674109

Arie_palsu3 0.714982

Arie_palsu4 0.508303

Arie_palsu5 0.932505

Arie_palsu6 0.491440

Arie_palsu7 0.733976

Arie_palsu8 0.684699

Arie_asli6 (s) Arie_palsu1 0.487440

Arie_palsu2 0.561518

Arie_palsu3 0.542350

Arie_palsu4 0.606471

Arie_palsu5 0.497698

Arie_palsu6 0.788982

Arie_palsu7 0.519356

Arie_palsu8 0.830270

(9)

Arie_asli7 (s) Arie_palsu1 0.840156

Arie_palsu2 0.777947

Arie_palsu3 0.858864

Arie_palsu4 0.643112

Arie_palsu5 0.909989

Arie_palsu6 0.693486

Arie_palsu7 0.794433

Arie_palsu8 0.847324

Arif lengkap

Arif_asli 1 Arif_asli 2 Arif_asli 3 Arif_asli 4

Arif_asli 5 (s) Arif_asli 6 (s) Arif_asli 7 (s) Arif_asli 8 (s)

Arif_palsu 1 Arif_palsu 2 Arif_palsu 3 Arif_palsu 4

Arif_palsu 5 Arif_palsu 6 Arif_palsu 7 Arif_palsu 8 Arif_asli1 Arif_asli2 0.755708

Arif_asli3 0.801901

Arif_asli4 0.720118

Arif_asli5 (s) 0.759358

(10)

Arif_asli6 (s) 0.543955 Arif_asli7 (s) 0.820612 Arif_asli8 (s) 0.744868 Arif_asli2 Arif_asli3 0.799306

Arif_asli4 0.589991

Arif_asli5 (s) 0.742109 Arif_asli6 (s) 0.408047 Arif_asli7 (s) 0.799464 Arif_asli8 (s) 0.926697 Arif_asli3 Arif_asli4 0.639606

Arif_asli5 (s) 0.848847 Arif_asli6 (s) 0.576465 Arif_asli7 (s) 0.757362 Arif_asli8 (s) 0.806946 Arif_asli4 Arif_asli5 (s) 0.579920

Arif_asli6 (s) 0.712763 Arif_asli7 (s) 0.759791 Arif_asli8 (s) 0.587616 Arif_asli5 (s) Arif_asli6 (s) 0.585311

Arif_asli7 (s) 0.799474 Arif_asli8 (s) 0.738905 Arif_asli6 (s) Arif_asli7 (s) 0.561495

Arif_asli8 (s) 0.388208 Arif_asli7 (s) Arif_asli8 (s) 0.771995

Arif_asli1 Arif_palsu1 0.787677

Arif_palsu2 0.609272

Arif_palsu3 0.762704

Arif_palsu4 0.848177

Arif_palsu5 0.664834

Arif_palsu6 0.743941

Arif_palsu7 0.790126

Arif_palsu8 0.640956

Arif_asli2 Arif_palsu1 0.801243

Arif_palsu2 0.631984

Arif_palsu3 0.718541

Arif_palsu4 0.793605

Arif_palsu5 0.716063

Arif_palsu6 0.694399

Arif_palsu7 0.655239

Arif_palsu8 0.583660

Arif_asli3 Arif_palsu1 0.718566

Arif_palsu2 0.602256

Arif_palsu3 0.644060

Arif_palsu4 0.743597

Arif_palsu5 0.600187

Arif_palsu6 0.650927

(11)

Arif_asli3 Arif_palsu7 0.856431

Arif_palsu8 0.811833

Arif_asli4 Arif_palsu1 0.574234

Arif_palsu2 0.613008

Arif_palsu3 0.542501

Arif_palsu4 0.674125

Arif_palsu5 0.451180

Arif_palsu6 0.530769

Arif_palsu7 0.588374

Arif_palsu8 0.501433

Arif_asli5 (s) Arif_palsu1 0.777008

Arif_palsu2 0.621361

Arif_palsu3 0.782690

Arif_palsu4 0.779778

Arif_palsu5 0.671467

Arif_palsu6 0.813788

Arif_palsu7 0.907417

Arif_palsu8 0.853389

Arif_asli6 (s) Arif_palsu1 0.399811

Arif_palsu2 0.411089

Arif_palsu3 0.398783

Arif_palsu4 0.432940

Arif_palsu5 0.284006

Arif_palsu6 0.395317

Arif_palsu7 0.584147

Arif_palsu8 0.576450

Arif_asli7 (s) Arif_palsu1 0.826260

Arif_palsu2 0.742293

Arif_palsu3 0.801435

Arif_palsu4 0.897536

Arif_palsu5 0.699865

Arif_palsu6 0.803080

Arif_palsu7 0.704877

Arif_palsu8 0.612961

Arif_asli8 (s) Arif_palsu1 0.814827

Arif_palsu2 0.631813

Arif_palsu3 0.697719

Arif_palsu4 0.827336

Arif_palsu5 0.751260

Arif_palsu6 0.672683

Arif_palsu7 0.682343

Arif_palsu8 0.618313

(12)

Indro lengkap

Indro_asli 1 Indro_asli 2 Indro_asli 3 Indro_asli 4

Indro_asli 5 Indro_asli 6 (s) Indro_asli 7 (s) Indro_asli 8 (s)

Indro_palsu 1 Indro_palsu 2 Indro_palsu 3 Indro_palsu 4

Indro_palsu 5 Indro_palsu 6 Indro_palsu 7 Indro_palsu 8 Indro_asli1 Indro_asli2 0.933818

Indro_asli3 0.476242

Indro_asli4 0.872809

Indro_asli5 0.802318

Indro_asli6 (s) 0.910427 Indro_asli7 (s) 0.837441 Indro_asli8 (s) 0.804151 Indro_asli2 Indro_asli3 0.432478

Indro_asli4 0.739289

Indro_asli5 0.687638

Indro_asli6 (s) 0.844211 Indro_asli7 (s) 0.855425 Indro_asli8 (s) 0.786866

(13)

Indro_asli3 Indro_asli4 0.468626

Indro_asli5 0.395883

Indro_asli6 (s) 0.355388 Indro_asli7 (s) 0.326252 Indro_asli8 (s) 0.588827 Indro_asli4 Indro_asli5 0.820290

Indro_asli6 (s) 0.847848 Indro_asli7 (s) 0.658504 Indro_asli8 (s) 0.721653 Indro_asli5 Indro_asli6 (s) 0.766492

Indro_asli7 (s) 0.699873 Indro_asli8 (s) 0.680054 Indro_asli6 (s) Indro_asli7 (s) 0.835378

Indro_asli8 (s) 0.704701 Indro_asli7 (s) Indro_asli8 (s) 0.719578

Indro_asli1 Indro_palsu1 0.783942

Indro_palsu2 0.603534

Indro_palsu3 0.654617

Indro_palsu4 0.657829

Indro_palsu5 0.746078

Indro_palsu6 0.553529

Indro_palsu7 0.699180

Indro_palsu8 0.744489

Indro_asli2 Indro_palsu1 0.733335

Indro_palsu2 0.566375

Indro_palsu3 0.621251

Indro_palsu4 0.657278

Indro_palsu5 0.727620

Indro_palsu6 0.532618

Indro_palsu7 0.682189

Indro_palsu8 0.665813

Indro_asli3 Indro_palsu1 0.288457

Indro_palsu2 0.300037

Indro_palsu3 0.253056

Indro_palsu4 0.227098

Indro_palsu5 0.260967

Indro_palsu6 0.194819

Indro_palsu7 0.268081

Indro_palsu8 0.239834

Indro_asli4 Indro_palsu1 0.683816

Indro_palsu2 0.607426

Indro_palsu3 0.666686

Indro_palsu4 0.554377

Indro_palsu5 0.648894

Indro_palsu6 0.531984

Indro_palsu7 0.624369

(14)

Indro_palsu8 0.693403 Indro_asli5 Indro_palsu1 0.659446

Indro_palsu2 0.519899

Indro_palsu3 0.500689

Indro_palsu4 0.447889

Indro_palsu5 0.610252

Indro_palsu6 0.362752

Indro_palsu7 0.469672

Indro_palsu8 0.696188

Indro_asli6 (s) Indro_palsu1 0.830213

Indro_palsu2 0.633607

Indro_palsu3 0.754566

Indro_palsu4 0.764285

Indro_palsu5 0.836060

Indro_palsu6 0.689091

Indro_palsu7 0.798245

Indro_palsu8 0.860007

Indro_asli7 (s) Indro_palsu1 0.894887

Indro_palsu2 0.653572

Indro_palsu3 0.642020

Indro_palsu4 0.723961

Indro_palsu5 0.892571

Indro_palsu6 0.835378

Indro_palsu7 0.721221

Indro_palsu8 0.808122

Indro_asli8 (s) Indro_palsu1 0.638271

Indro_palsu2 0.629159

Indro_palsu3 0.491165

Indro_palsu4 0.471738

Indro_palsu5 0.608990

Indro_palsu6 0.394788

Indro_palsu7 0.549680

Indro_palsu8 0.520726

(15)

Lampiran 1: Desain Dan Petunjuk Penggunaan Aplikasi

Window utama aplikasi terdiri dari tiga bagian, yaitu:

1. Bagian kiri, berisi database tanda tangan beserta informasi nama pemilik tanda tangan, keterangan dan nomor urut.

2. Bagian kanan atas, berisi tampilan frame tanda tangan dari file gambar.

3. Bagian kanan bawah, berisi informasi.

Elemen-elemen Toolbar

Semua fungsi dasar dari aplikasi bisa dilakukan dengan penekanan tombol toolbar.

1. Untuk melakukan File New.

2. Load Signature Database (berupa file .txt).

3. Load Signature Image (format yang didukung: BMP, JPEG).

4. Membuat database baru serta menentukan lokasi (path) dari file index Signature Database.

(16)

Lampiran 1: Desain Dan Petunjuk Penggunaan Aplikasi (sambungan)

5. Menentukan Signature Region (secara keseluruhan), pengubahan ukuran Signature Region bisa dilakukan dengan melakukan drag dengan menggunakan mouse pada Image tersebut.

6. Menambahkan tanda tangan (setelah terlebih dahulu ditentukan ROInya) ke dalam Signature Database.

7. Melakukan pengenalan tanda tangan.

8. About.

Elemen-elemen Menu

1. File, berisi fungsi-fungsi operasi terhadap file yaitu:

ƒ New, fungsi sama dengan tombol toolbar (no. 1).

ƒ Open Image, fungsi sama dengan tombol toolbar (no. 3).

ƒ Open Database, fungsi sama dengan tombol toolbar (no. 2).

ƒ Exit, keluar dari aplikasi.

2. View, mengatur tampilan user interface dari aplikasi.

ƒ Toolbar, untuk Show/Hide Toolbar.

ƒ Status Bar, untuk Show/Hide Status Bar.

3. Help, berisi submenu About.

(17)

Lampiran 1: Desain Dan Petunjuk Penggunaan Aplikasi (sambungan)

Elemen Window Informasi (bagian kanan bawah)

Berisi informasi nama dari image tanda tangan yang di-load pada dan nama dari image tanda tangan yang dipilih dari database yang telah ada yang diletakkan pada field “File Name 1” dan “File Name 2”. Serta nilai default dari threshold dan nilai perbedaan dari kedua tanda tangan tersebut pada field “Distance”.

Langkah-langkah dalam melakukan Pengenalan Tanda Tangan

1. Buatlah signature database dengan menekan tombol , kemudian isi field pada dialog berikut:

Tekan tombol untuk melakukan browse lokasi filename.

2. Setelah itu lakukan open signature database dengan menekan tombol

(18)

Lampiran 1: Desain Dan Petunjuk Penggunaan Aplikasi (sambungan)

3. Load tanda tangan dengan menekan tombol , dimana input berasal dari file gambar (dengan format: BMP, JPEG).

4. Tentukan daerah fokus/Region of Interest (ROI), yang bisa dilakukan dengan:

ƒ Drag mouse (klik kiri, tahan, dan gerakkan mouse, kemudian lepaskan).

ƒ Memilih signature region secara keseluruhan, dengan menekan tombol toolbar .

5. Tambahkan tanda tangan yang telah dipilih ROInya ke dalam signature database dengan menekan tombol toolbar , kemudian isi field pada dialog berikut :

Lakukan hal ini seperlunya, sebanyak yang diinginkan.

6. Untuk melakukan pengenalan tanda tangan, hanya bisa dilakukan antara file image yang di-load dengan salah satu image pada database tanda tangan. Cara memilih image pada database tanda tangan yaitu dengan menekan double click pada signature image yang ditampilkan pada database. Setelah image dari database dipilih dan file image di-load, lakukan pengenalan tanda tangan dengan menekan tombol .

7. Hasil dari pengenalan tanda tangan (recognition result) akan ditampilkan pada messagebox berupa kata “asli” atau “palsu”, untuk informasi nilai kemiripan (Distance) dapat dilihat bisa dilihat pada window informasi. Nilai dari threshold dapat diubah semau user yang akan sangat mempengaruhi hasil dari pengenalan namun tidak berpengaruh pada nilai kemiripan.

(19)

UNIVERSITAS KRISTEN PETRA

USULAN TUGAS AKHIR

Nama : Arif Wijaya NRP : 26401145

Peminatan : Teknologi Perangkat Lunak

Judul Tugas Akhir : Pembuatan Aplikasi Pengenalan Tanda Tangan menggunakan Metode Stroke Histogram Pembimbing I : Ir. Sukanto Tedjokusuma, M.Sc.

Pembimbing II : Arie W.M, S.kom.

Dilaksanakan : Semester Genap 2004/2005

Surabaya, 18 Januari 2005 Yang mengusulkan,

Arif Wijaya

Mengetahui:

Pembimbing I Pembimbing II

Ir. Sukanto Tedjokusuma, M. Sc. Arie W.M, S.Kom.

Koordinator Tugas Akhir

Silvia Rostianingsih, S.Kom, M.MT.

(20)

Stroke Histogram

2. Latar Belakang Masalah

Dengan semakin pesatnya perkembangan teknologi komputer, menyebabkan banyak sekali bermunculan program-program aplikasi yang sangat bermanfaat sebagai alat bantu manusia dalam melakukan pekerjaan.

Dimulai dari program aplikasi yang umum dan sederhana, seperti kalkulator, word processor, database perusahaan, hingga semakin berkembang ke arah computer vision dan biometric.

Biometric authentication, seringkali dimanfaatkan dalam beberapa hal berikut:

• National ID Card

• Airport Security

• Site Access

Dimana bidang biometrics yang mungkin diterapkan dalam situasi di atas, meliputi:

• Fingerprints

• Hand geometry

• Iris

• Retina

• Voice

• Signature

• Face

Dalam beberapa bidang biometrics seperti yang telah disebutkan di atas, tanda tangan merupakan kegiatan yang paling sering dilakukan. Men- tanda tangani suatu dokumen adalah suatu kegiatan yang rutin untuk dilakukan, yang untuk kebanyakan orang hal ini bisa terjadi setiap hari dan tidak menutup kemungkinan bisa terjadi setiap jam untuk beberapa orang tertentu.

(21)

Tanda tangan merupakan suatu contoh sederhana dari pengesahan sebuah identitas yang memiliki sedikit persamaan dalam kecepatan dan kesederhanaannya. Pemalsuan tanda tangan merupakan sesuatu yang harus diperhatikan bisnis seperti bank dan agensi kartu kredit, yang bergantung pada tanda tangan sebagai maksud untuk validasi dari suatu transaksi yang melibatkan uang.

Tanda tangan merupakan contoh dari apa yang disebut cursive text dan itu sangat sulit untuk ditafsirkan oleh komputer. Ada banyak variasi dari tanda tangan yaitu pada intensitasnya, gaya tulisannya, ukuran serta proporsinya. Hal ini menyebabkan suatu program komputer yang digunakan untuk mengenali tulisan tangan tidak dapat digunakan untuk mengenali tanda tangan.

Karena diterapkan dalam situasi penting (memberikan ijin akses, pengesahan terhadap sesuatu), maka dibutuhkan sistem pengenalan tanda tangan yang handal yaitu dapat beroperasi dalam beragam kondisi, seperti intensitas, gaya atau jenis tulisan, ukuran tulisan dan proporsi. Selain itu signature recognition system juga harus memiliki recognition rate yang tinggi, dan berusaha menekan error pengenalan yang terjadi menjadi sekecil mungkin.

3. Perumusan Masalah

Penulis ingin mengembangkan suatu perangkat lunak yang dapat digunakan untuk mengenali suatu tanda tangan (recognition) berdasarkan database yang berisi tanda tangan yang telah dibuat dan di-training sebelumnya

Bagaimana cara membuat sistem pengenalan tanda tangan yang mempunyai tingkat error pengenalan yang minimum?

4. Ruang lingkup

Ruang lingkup pengembangan dibatasi pada:

• Inputan tanda tangan berupa file gambar dengan format bitmap (BMP) atau JPG.

(22)

• Pengenalan tanda tangan hanya dibatasi terhadap satu objek (bukan multiple objek).

• Bahasa pemrograman yang digunakan adalah C++ dengan menggunakan compiler Microsoft Visual C++ 6.0.

• Library tambahan yang digunakan adalah Intel Image Processing Library (IPL), dan Intel Open Source Computer Vision (OpenCV).

• Filter terhadap noise.

5. Tujuan Tugas Akhir

Mengembangkan sebuah perangkat lunak yang dapat melakukan pengenalan tanda tangan (recognition) dengan menggunakan metode Stroke Histogram, dan memakai file gambar dengan format bitmap (BMP) atau JPG sebagai input data.

6. Tinjauan Pustaka

Untuk setiap input data yang masuk baik berupa BMP atau JPG akan dirubah ke bentuk bi-color. Hal ini dilakukan untuk memudahkan pengenalan program yang mengenali per-pixel. Setelah itu akan dilakukan filter terhadap noise.

Gambar 1. Contoh Tanda Tangan

Metode Stroke Histogram merupakan metode yang mengenali suatu tanda tangan dengan menghitung keseluruhan distribusi dari lekuk yang ada.

Lekuk dari suatu kurva pada setiap titik merupakan sudut dari garis singgung

(23)

terhadap kurva di titik itu. Suatu tanda tangan terdiri dari susunan kurva yang kompleks, dan itu seharusnya memungkinkan untuk mengukur lekuk di kebanyakan titik yang ada. Garis singgung tersebut dapat dihitung dengan meletakkan kotak kecil di tengah-tengah setiap batasan pixel, katakan 5*5 pixel. Semakin besar ukuran pixel yang digunakan akan semakin baik, seperti contohnya 11*11.

Berikut adalah contoh peletakan kotak kecil :

Gambar 2. Contoh Meletakkan Kotak Kecil

Idenya yaitu untuk menghitung sudut yang tampak dari garis singgung di setiap pixel dari image tanda tangan. Sudut yang digunakan yaitu -90 derajad sampai 90 derajad. Langkah pertama yaitu dengan membaca image lalu resolusinya diperkecil apabila image yang dibaca memiliki resolusi yang besar. Setelah itu baru dihitung sudutnya yaitu dengan menentukan parameter dari garis lurus yang kira-kira terbaik untuk pixel hitam di area 5*5 yang diletakkan di tengah-tengah pixel yang menjadi target.

Bentuk matematika yang umum untuk garis lurus yaitu : AX + BY + C = 0

Dimana A, B dan C adalah parameter yang mendefinisikan posisi dari garis dan orientasinya. X dan Y merupakan koordinat horizontal dan vertical.

Jika sudut dari garis yang terletak pada poros horizontal adalah Ø maka nilai yang terbaik untuk A yaitu cos ( Ø + PI/2 ) dan nilai B yaitu ( 1 – A*A )1/2.

(24)

Formula ini berarti bahwa A2 + B2 = 1. Lalu nilai konstan C dapat diketahui dengan rumus C = -AX – BY.

Garis yang terbaik dapat ditemukan dengan mencoba semua sudut antara -90 derajad sampai 90 derajad, dengan asumsi bahwa garis tersebut melewati paling tidak 1 buah pixel hitam dalam kotak berukuran 5*5 tersebut. Jika semua pixel hitam terbujur tepat pada garis, maka jumlahnya 0 dan dengan memilih garis yang memiliki jumlah paling sedikit maka garis tersebut merupakan garis yang terbaik.

Nilai yang didapatkan akan ditampilkan di dalam bentuk histogram.

Jadi nantinya, untuk setiap tanda tangan akan memiliki histogram dan histogram tersebut yang akan dibandingkan untuk mengecek keaslian tanda tangan.

Gambar 3. Contoh Hasil Gambar Ke Bentuk Histogram

D = a.b / a.a+b.b-a.b

Rumus ini digunakan untuk menghitung jarak atau perbedaan antara 2 histogram. Nilai dari D akan berada diantara 0 dan 1. Jika D bernilai tepat 0

(25)

maka kedua tanda tangan tersebut benar-benar berbeda atau palsu, sedangkan bila D nilai nya tepat 1 maka kedua tanda tangan itu benar-benar sama atau asli.

7. Metode Penelitian

Langkah-langkah dalam pengerjaan Tugas Akhir:

1. Studi Literatur

Dilakukan studi literatur untuk mempelajari algoritma Stroke Histogram (algoritma yang digunakan untuk identifikasi tanda tangan), pemakaian Microsoft Visual C++ 6.0, serta library tambahan yaitu Intel Image Processing Library (IPL), dan Intel Open Source Computer Vision (OpenCV).

2. Analisa dan Desain

Dilakukan analisa dan desain terhadap penerapan algoritma tersebut ke dalam perangkat lunak.

3. Pengkodean

Dilakukan proses pengkodean dengan memakai bahasa pemrograman Microsoft Visual C++ dengan bantuan beberapa library tambahan seperti yang telah dijelaskan sebelumnya.

4. Pembuatan Database

Dilakukan pembuatan database tanda tangan yang akan digunakan sebagai acuan dalam implementasi program, dan melakukan training database.

5. Implementasi

Dilakukan implementasi terhadap perangkat lunak yang telah dibuat.

6. Pengujian Sistem

Dilakukan pengujian sistem, yaitu terhadap sistem pengenalan tanda tangan, toleransi slope, variasi noise.

7. Kesimpulan

Dilakukan evaluasi hasil pengujian perangkat lunak sampai didapatkan hasil yang optimal.

(26)

8. Relevansi

Aplikasi pelacakan dan pengenalan tanda tangan ini dapat diterapkan dalam kehidupan sehari-hari, misalnya untuk memberikan ijin mencairkan cek terhadap seorang nasabah yang bersangkutan, atau dapat juga dipakai untuk pengesahan suatu dokumen-dokumen penting seperti surat kuasa, surat warisan.

Aplikasi ini dapat dikembangkan lebih lanjut dengan mengenali beberapa objek sekaligus.

9. Jadwal Kegiatan

10. Daftar Pustaka

Intel Open Source Computer Vision Library – Reference Manual. Intel Corporation, U.S.A, 2001. PDF

“Biometric Research” Parker J.R . University of Calgary.

<http://pages.cpsc.ucalgary.ca/~parker/biometrics>.

Deitel, Harvey M. and Deitel, Paul J. C++ How To Program Third Edition.

New Jersey: Prentice-Hall Inc., 2001.

Intel Image Processing Library – Reference Manual. U.S.A: Intel Corporation, 2000.

KEGIATAN BULAN I II III IV Studi Literatur

Analisa dan Desain

Pengkodean Pembuatan Database

Implementasi Pengujian Sistem

Kesimpulan

Gambar

Gambar 1. Contoh Tanda Tangan
Gambar 2. Contoh Meletakkan Kotak Kecil
Gambar 3. Contoh Hasil Gambar Ke Bentuk Histogram

Referensi

Dokumen terkait

Jika pekerja Anda telah datang dengan saran yang berharga selama pertemuan, atau telah mengingatkan Anda untuk bahaya keamanan tertentu, catat mereka di bagian bawah

1. Prosedur 1 yaitu Pengelolaan data pembayaran pajak, yang memiliki proses Penerimaan data pembayaran pajak, Pemberian validasi pada data SSPD dan Pembuatan STS. 1)

Mengenai kasus yang pertama, yaitu mengenai hukum perempuan yang berkhianat di medan perang, menurut ulama Hanafi berdasarkan pengertian qiyas menurut mereka,

Rencana pengembangan jaringan trayek cabang berdasarkan data jumlah volume lalu lintas skala sedang (263-848 smp/jam) yang terdiri dari 4 rute yang dilayani oleh

Bagaimana memilih tsunami source Yang tepat untuk Selatan Jawa???..

REKOMENDASI HASIL ANALISIS PENGARUH KAJIAN KUALIFIKASI PESERTA PELELANGAN PENGADAAN JASA KONSTRUKSI TERHADAP PENINGKATAN KINERJA PEMBANGUNAN PROYEK “PENINGKATAN JALAN

Dengan mengetahui secara tepat tingkat kemampuan suatu jalan dalam menerima suatu beban lalu lintas, maka tebal lapisan perkerasan jalan dapat ditentukan dan umur

Hasil skrining fitokimia menunjukkan bahwa ekstrak etanol daun pepaya (Carica papaya L.) yang diperoleh dari daerah Ubud, Kabupaten Gianyar, Bali mengandung golongan