loading...

Jumat, 24 Agustus 2018

BAB 1 - Olah Citra

Konsep Olah Citra Digital

Olah citra (image processing) sebagai dasar dalam computer vision merupakan bidang yang telah banyak diterapkan dalam dunia industri misalnya
pada sistem biometrik, recognition, detection, kendali gesture gerak tangan, optical character recognition (pengenal tulisan baik tangan atau cetakan dari printer), optical mark recognition (scan lembar jawab komputer) sehingga dengan kemajuan teknologi computer vision dapat mempermudah dan memperakurat pemrosesan data citra digital. Citra digital didefinisikan sebagai function f(x,y) berukuran I (baris) dan J (kolom) dengan x dan y adalah koordinat spasial dan value dari tiap koordinat x, y disebut sebagai intensitas / kedalaman warna. Misalkan kedalaman (bit deep) aras keabuan dinyatakan dengan satuan nilai bit yaitu 1byte (1byte=28)-1 = 255 kombinasi warna hitam sampai putih yang berpengaruh terhadap kedalaman warna

Tingkat kerapatan seringkali disebut resolusi dengan satuan dpi (dot per inchi) yang berpengaruh terhadap kehalusan (ketajaman) citra. Ilustrasi dibawah menunjukan ukuran 6 dpi

Jenis citra / format citra berdasarkan nilai pixelnya dapat dibagi menjadi 3 yaitu

  1. Citra biner : terdiri dari MxN matrix bernilai 1 dan 0 yaitu putih dan hitam yang digunakan untuk operasi morphologi sehingga untuk bisa ditampilkan kedalam citra yang sesungguhnya maka dilakukan konversi yaitu jika 1 maka diubah ke 255 dan 0 akan tetap bernilai 0
  2. Citra grayscale : terdiri dari MxN matrix bernilai 0 (hitam) sampai 255 (putih)
  3. Citra truecolor : terdiri dari MxNx3(dimensi yaitu red;green;blue) matrix bernilai 0 sampai 255

Jenis format file citra dapat dibagi menjadi 2 yaitu

  1. Tanpa kompresi yaitu bmp (loss less)
  2. Kompresi yaitu jpeg, jpg, png (lossy)

Jenis penyajian ruang warna yaitu

  1. RGB yaitu format penyajian warna menggunakan kombinasi warna red, green, dan blue
  2. HSV yaitu dibentuk dalam 3 komponen hue (menunjukan warna merah, biru, dan kuning), saturation (menunjukan tingkat kemurnian warna), dan value (intensitas atau ukuran kecerahan dari suatu warna)

Sekilas tentang .Net

Berbicara tentang bahasa C# maka tidak terlepas dari .Net.  Source code yang dibuat menggunakan platform .Net akan dikompilasi kedalam MSIL (microsoft intermediate languange) atau juga disebut sebagai Intermediate Languange (IL) atau Common Intermediate Language (CIL). MSIL sendiri merupakan suatu set instruksi CPU yang bersifat independent OS yang dapat dikonversikan kedalam kode mesin, selain itu metadata juga diciptakan dalam proses kompilasi bersamaan dengan proses kompilasi MSIL dan disimpan dengan kode dikompilasi. Metadata disimpan dalam sebuah file yang bernama Manifest, dan berisi informasi tentang anggota, jenis, referensi dan semua data lainnya yang dibutuhkan Common Language Runtime (CLR) untuk eksekusi. CLR menggunakan metadata untuk menemukan dan mengambil class, menghasilkan kode asli, memberikan keamanan, eksekusi manage code. Baik MSIL dan metadata berkumpul bersama-sama dikenal sebagai Portable Executable (PE) file. Runtime (CLR) pada Just In Time (JIT) compiler mengubah MSIL ke dalam Kode Mesin Sistem Operasi yang bersifat independent dan kode ini dikenal sebagai Managed Code, yang dapat berjalan diatas .NET Framework.  .Net yang dikenalkan oleh pihak Microsoft sebagai perangkat lunak kerangka kerja yang mendukung kebutuhan program pada bidang user interface (GDI+), pengaksesan data, koneksi basis data, kriptografi, pembuatan aplikasi berbasis web, algoritma numerik, dan komunikasi jaringan. GDI+ (graphics device interface plus) merupakan library untuk pengembangan aplikasi berbasis GUI dan pemrosesan berbasis gambar (citra). Library GDI+ secara default sudah terinstal pada sistem operasi berbasis windows yaitu XP, Vista, dan Windows 2003 dengan nama Gdiplus.dll dan GDIPlusImage.dll.

Fitur dari GDI+

  1. 2D Vector : Komponen pembentuk base shape (bentuk dasar) seperti kotak, lingkaran, elips yang dibentuk dari kumpulan titik pada sistem koordinat.
  2. Imaging:  Merupakan fitur untuk melakukan manipulasi image dengan berbagai format citra yaitu .bmp; .jpg; .gif;  dan .png.
  3. Typography:  Digunakan untuk desain, jenis, dan tata letak font.






Namespace dan class dalam .Net







Struktur color pada GDI+ mempunyai empat komponen warna yaitu: alpha, red, green, dan blue. Setiap warna mempunyai 255 atau 1byte (1byte=28-1) kombinasi warna, sehingga kombinasi tiga komponen RGB tersebut mempunyai kombinasi warna 255x255x255. Alpha komponen mewakili aspek transparan dari warna yang akan terlihat ketika beberapa warna digabungkan. Sistem Koordinat Standar GDI+ tidak seperti sistem kartesian, pada perangkat tampilan seperti monitor sumbu (0,0) terletak pada pojok kiri atas.


 Komponen Warna

Koordinat

Tools

Tentunya berbicara tentang olah citra digital diperlukan tools (perkakas). Tools dalam arti luas bukan saja tentang bahasa tapi juga IDE (Integrated Development Environment), SDK (Standard Development Kit), dan framework. Banyak tools pengembangan yang digunakan dalam olah citra yaitu Matlab, Scilab, Octave, Lab View (komputasi teknis) ataupun menggunakan bahasa program yang bersifat umum seperti C/C++ (openCV, CImage), java (ImageJ, Maven Framework), C# dengan AForge.Net dan Accord.Net tentunya dalam menggunakan sebuah tools dipengaruhi oleh kasus dan tujuan dari pengembangan serta implementasi dari aplikasi misalkan untuk embedded system, pengembangan prototype algoritma ataupun aplikasi akan berbeda dikarenakan tools tertentu akan lebih cepat atau mudah bila digunakan dalam pengembangan prototype tapi akan sulit untuk diimplementasikan (terlalu mahal) kedalam embedded system. Bahasa C# adalah salah satu tools yang mumpuni karena dukungan library yang lengkap serta beragam framework yang berkaitan sudah banyak dikembangkan salah satunya yaitu framework AForge.net, Accord.net serta IDE yang banyak digunakan yaitu Sharp Develop. Berikut daftar tools yang digunakan dalam buku ini

  1. .Net sebagai framework aplikasi
  2. IDE Sharp Develop sebagai lingkungan pengembangan
  3. AForge dan Accord sebagai framework core olah citra
  4. Zedgraph sebagai component chart



Tidak ada komentar: