Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Gambar 1 menunjukkan komponen utama dari sistem operasi Android.
Gambar 1 Komponen sistem operasi Android (androidgen.fr).
Ekstraksi Ciri Tekstur
Tekstur adalah gambaran visual dari sebuah permukaan. Tekstur dapat dibentuk dari keragaman bentuk, pencahayaan, bayangan, penyerapan, dan refleksi. Dalam citra digital, tekstur dicirikan dengan variasi intensitas atau warna. Variasi intensitas disebabkan oleh perbedaan warna pada suatu permukaan. Penampilan tekstur dipengaruhi oleh skala, arah pandangan, kondisi pencahayaan (Mäenpää 2003).
Local Binary Patterns
Local Binary Pattern (LBP) digunakan untuk mencari pola-pola tekstur local pada citra (Mäenpää 2003). LBP bekerja dengan delapan ketetanggan yang tersebar melingkar (circular neighborhoods) dengan pusat pixel
berada di tengah. Notasi merupakan nilai
gray level piksel ketetanggannya. Untuk mendapatkan nilai LBP, dilakukan
thresholding pada pixel-pixel tetangga yang berbentuk circular dengan menggunakan
pixel pusat, kemudian mengalikannya dengan pembobotan biner. Perhitungan LBP dapat dilihat pada Gambar 2.
Thresholded bobot
Gambar 2 Perhitungan LBP. Nilai threshold = 4
Pola LBP = 11001011
Nilai LBP = 1+2+8+64+128 = 203 LBP dapat diformulasikan dengan rumus sebagai berikut: (1) dengan: (2)
Dengan dan adalah koordinat pusat piksel ketetanggaan, adalah circular sampling poins, P adalah banyaknya
sampling points, adalah nilai keabuan dari , adalah pixel pusat, dan adalah kode biner (sign).
Setelah mendapatkan nilai LBP, keseluruhan direpresentasikan dengan membentuk histogram:
(3)
dengan:
(4)
Nilai K merupakan nilai LBP terbesar dan
MxN piksel sebagai ukuran citra.
Notasi (P,R) akan digunakan untuk piksel ketetanggaan dengan P sebagai sampling points dan R adalah radius. Dapat dilihat pada Gambar 3 merupakan circular neighborhood tiga operator.
(8,1) (12,2.5) (16,4) Gambar 3 Beberapa ukuran circular
neighborhood.
Metode LBP sudah dikembangkan lebih lanjut dengan menjadi LBPV (LBP Variance) yang menggabungkan 2 metode dan VAR (Guo et al. 2010a).
Local Binary Patterns Variance (LBPV) Secara definisi, VAR mendeskripsikan
informasi kontras dan
mendeskripsikan informasi pola tekstur yang tidak dipengaruhi perubahan gray scale dan rotasi sehingga kedua operator tersebut bersifat komplemen. Variance berhubungan dengan fitur tekstur. Biasanya, frekuensi tekstur region yang tinggi akan mempunyai
variance yang lebih tinggi dan variance-variance tersebut lebih berkontribusi terhadap perbedaan tekstur suatu citra (Guo
et al. 2010b). Oleh karena itu, variance
dapat digunakan sebagai bobot yang dapat beradaptasi untuk mengatur kontribusi nilai LBP pada perhitungan histogram. Ojala
et al. (2002) melakukan joint distribution
pola LBP dengan kontras lokal sebagai
descriptor tekstur bernama LBPV. LBPV dimaksudkan menjadi sebuah descriptor
tekstur yang bisa menginformasikan pola tekstur dan kontras lokal. Histogram LBPV
dihitung menggunakan formula sebagai berikut:
(5)
Dengan:
(6)
Probabilistic Neural Network
PNN merupakan Artificial Neural Network (ANN) yang menggunakan teorema probabilitas klasik. PNN diperkenalkan oleh Donald Specht pada tahun 1990. PNN menggunakan pelatihan (training)
supervised. PNN merupakan jaringan syaraf tiruan yang menggunakan radial basis function (RBF). RBF adalah fungsi yang berbentuk seperti bel yang menskalakan variabel nonlinear. Keuntungan utama menggunakan arsitektur PNN adalah
Training data PNN mudah dan cepat (Wu et al. 2007).
Gambar 4 Struktur PNN.
Struktur PNN terdiri atas empat lapisan, yaitu lapisan masukan, lapisan pola, lapisan
penjumlahan, dan lapisan
keputusan/keluaran. Struktur PNN ditunjukkan pada Gambar 4. Lapisan-lapisan yang menyusun PNN adalah sebagai berikut: 1 Lapisan input (input layer)
Lapisan masukan merupakan inputx yang terdiri atas k nilai yang akan diklasifikasikan pada salah satu kelas dari
n kelas.
2 Lapisan pola (pattern layer)
Pada lapisan pola dilakukan perhitungan jarak antara input dengan vektor bobot
yaitu - simbol minus
menunjukkan jarak antara vektor. kemudian dibagi dengan bias tertentu σ
dan selanjutnya dimasukkan ke dalam
fungsi radial basis, yaitu
- Dengan demikian, persamaan yang digunakan pada lapisan pola adalah sebagai berikut:
- - - (7) dengan menyatakan vektor bobot atau vektor latih kelas ke-i urutan ke-j.
3 Lapisan penjumlahan (summation layer) Pada lapisan penjumlahan setiap pola pada masing-masing kelas dijumlahkan sehingga dihasilkan probability density function untuk setiap kelas. Persamaan yang digunakan pada lapisan ini adalah:
(8)
4 Lapisan keluaran (output layer)
Pada lapisan keluaran input x akan diklasifikasikan ke kelas I jika nilai paling besar dibandingkan kelas lainnya.
Temu Kembali Informasi
Sistem temu kembali informasi (Information retrieval system) merupakan sistem pencari pada sekumpulan dokumen elektronik yang memenuhi kebutuhan informasi tertentu sehingga lebih terstruktur (Manning et al. 2008). Sistem temu kembali informasi bertujuan menjembatani kebutuhan informasi pengguna dengan sumber informasi.
Chi-kuadrat ( )
Chi-kuadrat merupakan pengujian hipotesis mengenai perbandingan antara frekuensi observasi atau yang benar-benar terjadi dengan frekuensi harapan (ekspektasi). Bentuk distribusi tergantung dari derajat bebas (d.f). Di bawah ini adalah untuk menghitung derajat bebas.
Pengaruh antara frekuensi sampel dan frekuensi harapan dapat diuji menggunakan
suatu hipotesis . Hipotesis nol berarti tidak ada perbedaan yang signifikan antara frekuensi observasi dan frekuensi harapan. Hipotesis nol dapat diterima nilai peghitungan < nilai kritis pada derajat bebas dan nilai signifikansi tertentu. Hipotesis nol dapat ditolak jika nilai > nilai kritis pada derajat bebas dan tingkat signifikansi tertentu. Di bawah adalah perhitungan untuk mencari nilai .
Pada penelitian Herawan
(2011), digunakan mengukur derajat kebebasan antara kata penciri t dengan kelas
c agar dapat dibandingkan dengan nilai . Perhitungan nilai chi-kuadrat dapat dibantu dengan tabel kontingensi. Nilai pada tabel kontingensi merupakan nilai frekuensi observasi dari suatu kata terhadap kelas. Tabel 1 Tabel kontingensi antara kata
terhadap kelas
Kelas Kelas=1 Kelas=0
Kata Kata=1 A B
Kata=0 C D
Perhitungan nilai chi-kuadratberdasarkan tabel kontingensi disederhanakan sebagai berikut.
Nilai t merupakan kata yang sedang diujikan terhadap suatu kelas c, N merupakan jumlah dokumen latih, A merupakan banyaknya dokumen pada kelas c yang memuat kata t, B banyaknya dokumen yang tidak berada di kelas c namun memuat kata t, C merupakan banyaknya dokumen yang berada di kelas c namun tidak memiliki kata t, dan D merupakan banyaknya dokumen yang bukan merupakan dokumen kelas c dan tidak memuat kata t.
Pengambilan keputusan dilakukan berdasarkan nilai χ² dari masing-masing kata. Kata yang memiiki nilai χ² di atas nilai kritis pada tingkat signifikansi α adalah kata yang dipilih sebagai penciri dokumen sehingga kata yang dipilih sebagai penciri dokumen merupakan kata yang memiliki pengaruh terhadap kelas c.
Pembobotan BM25
Metode BM25 merupakan metode pembobotan kata yang memeringkatkan setiap kumpulan dokumen yang didasarkan pada kata dalam kueri yang muncul pada setiap dokumen. Rumus dalam menghitung skor pada algoritme BM25 ditunjukkan pada Persamaan 13 berikut
Persamaan 13 menjelaskan bahwa merupakan term frequency pada dokumen D, |D| merupakan banyaknya kata dalam dokumen D, dan avg dl merupakan rata-rata panjang dokumen dalam kumpulan teks dari dokumen tersimpan. k1 dan b
merupakan parameter bebas dengan nilai yang biasa dipilih untuk k1=2,0 dan b=0,75. IDF(qi) merupakan bobot dari kata qi. Rumus untuk menghitung IDF ditunjukkan pada Persamaan 14 sebagai berikut
N merupakan banyaknya koleksi dokumen, dan merupakan jumlah dokumen yang memuat kata qi.
Perhitungan yang digunakan untuk
ranking dokumen terhadap kueri
menggunakan pembobotan BM25 yang sudah disediakan Sphinx dengan rumus:
1 BM25 =0
2 foreach(keyword inmatchingkeywords){
3 n= totalmatchingdocuments(keyword)
4 N = total_documents_in_collection
5 k1 =1.2
6 TF = current_document_occurrence count(keyword)
7 IDF =log((N-n+1)/n)/log(1+N)
8 BM25 = BM25 + TF*IDF/(TF+k1) }
9 BM25 =0.5+BM25 /
(2*num_keywords(query))
Keterangan:
N : Total dokumen dalam korpus
n : Total dokumen yang memiliki kata kueri
TF : Frekuensi term t pada dokumen
IDF : Inverted indeks dokumen
K1 : Positif parameter (1.2)
Human Computer Interaction
User interface design adalah bagian dari bidang studi yang disebut Human Computer Interaction (HCI). Human Computer
Interaction adalah studi, perencanaan, dan desain bagaimana orang dan komputer dapat bekerja bersama sehingga kebutuhan seseorang dapat terpenuhi dengan cara yang paling efektif (Galitz 2007).
Evaluasi Heuristik
Evaluasi heuristik adalah panduan, prinsip umum, atau aturan yang dapat menuntun keputusan rancangan atau digunakan untuk mengkritik suatu keputusan yang sudah diambil. Ridwan (2007) mengatakan bahwa teknik ini dibuat oleh Jacob Nielsen dan Rolf Molich.
Evaluasi dilakukan dengan menggunakan 10 kriteria evaluasi heuristik yang dapat digunakan untuk menghasilkan gagasan. Adapun aturan-aturan tersebut adalah: 1 Visibility of system status
Sistem harus selalu memberikan informasi kepada pengguna tentang apa saja yang sedang terjadi.
2 Match between system and the real world
Sistem harus lebih menggunakan bahasa pengguna disbanding bahasa yang dimengerti oleh sistem.
3 User control and freedom
Baik secara sengaja atau tidak, pengguna sering membuat kesalahan dalam memilih fungsi atau tombol.
4 Consistency and standards
Keseragaman semua sistem navigasi. 5 Error prevention
Mengantisipasi munculnya masalah di tahap awal sistem. Perlu adanya
konfirmasi sebelum pengguna
melanjutkan aksinya.
6 Recognition rather than recall
Memudahkan pengguna dalam mengingat langkah-langkah yang dilakukan.
7 Flexibililty and efficiency of use
Sistem harus menggunakan fungsi-fungsi yang dapat dimengerti baik oleh pengguna yang berpengalaman ataupun tidak. 8 Aesthetic and minimalist design
Informasi yang lebih detail di dalam suatu analog harus disesuaikan dengan unitnya. 9 Help users recognize, diagnose, and
recover from errors
Pesan kesalahan harus dijelaskan serta menyarankan pemecahannya.
10 Help and documentation
Perlu menyediakan bantuan dan dokumentasi.