• Tidak ada hasil yang ditemukan

PEMBUATAN WEB SERVICE SEBAGAI LAYANAN PENDETEKSI KONTEN PORNOGRAFI PADA CITRA DIGITAL DENGAN METODE IMAGE ZONING

N/A
N/A
Protected

Academic year: 2021

Membagikan "PEMBUATAN WEB SERVICE SEBAGAI LAYANAN PENDETEKSI KONTEN PORNOGRAFI PADA CITRA DIGITAL DENGAN METODE IMAGE ZONING"

Copied!
54
0
0

Teks penuh

(1)

PEMBUATAN

WEB SERVICE

SEBAGAI

LAYANAN PENDETEKSI KONTEN

PORNOGRAFI PADA CITRA DIGITAL

DENGAN METODE

IMAGE ZONING

Oleh:

Lourensius Bisma (5210100155)

Dosen Pembimbing:

Dr.Eng. Febriliyan Samopa, S.Kom., M.Kom.

Radityo Prasetianto Wibowo, S.Kom, M.Kom.

(2)

Gambaran Umum Sistem

Atribut Keterangan

Cara kerja Mendeteksi citra yang tersimpan dalam sebuah server dalam jaringan internet

Bentuk Web Service

Inputan Url citra

Output “Porn” => jika citra memiliki konten pornografi “Not Porn” => jika citra tidak memiliki konten pornografi

Pesan error => jika url tidak valid atau terjadi kesalahan dalam proses

(3)

Pemilihan Fitur

Metode Fitur Diselesaikan dengan

Analisis Warna Skin count Kode Perhitungan Skin

Count

Skin percentage Kode Perhitungan Skin

Percentage

Analisis Tekstur Contrast Kode Perhitungan

Contrast

Correlation Kode Perhitungan

Correlation

Homogeneity Kode Perhitungan

Homogeneity

Energy Kode Perhitungan

Energy

Analisis Bentuk 7 Hu Moment Kode Perhitungan 7 Hu

(4)

Metode Penyelesaian

Skin

Detection

cb = 128 − 0.169𝑅 − 0.332𝐺 + 0.500𝐵; cr = 128 + 0.500𝑅 − 0.419𝐺 − 0.081𝐵; if cb < 80 and cb > 120 and cr < 133 and cr > 173: set pixel to not skin;

(5)

Ilustrasi

Image Zoning

pada zona 3

(6)

Ilustrasi

Image Zoning

seluruh zona (cont)

(7)

Konsep

Skin Count

1. Menelusuri semua pixel dalam citra

2. Jika ditemukan pixel kulit maka dilakukan penelusuran ke seluruh

arah (8 arah mata angin) untuk mengetahui area mana saja yang

termasuk ke dalam pixel kulit tersebut

3. Jika pixel kulit tidak ditemukan lagi maka seluruh area yang telah ditelusuri tersebut dihapus dan jumlah kulit (skin count) ditambah dengan 1 (satu)

4. Melanjutkan penelusuran sampai semua pixel selesai diselidiki dengan tahap ke (2) dan (3)

(8)

Konsep

Skin Percentage

1. Menelusuri seluruh pixel pada citra

2. Jika pixel termasuk ke dalam pixel kulit maka

persentase kulit (skin percentage) ditambah dengan 1 (satu)

3. Melanjutkan penelusuran sampai semua pixel selesai diselidiki dengan tahap ke (2)

4. Membagi skin percentage dengan luas dari citra (panjang x lebar)

(9)

Konsep

Gray Level

Co-Occurences Matrix

(GLCM)

1. Citra harus dalam konversi grayscale

2. Mencari jumlah variasi warna pixel pada citra yang diinisialisasikan dengan nama N

3. Mengkonversi nilai warna pixel menjadi nilai integer

4. Membuat matrix N x N dan mengisi nilai pada setiap cell dengan nilai 0 (nol)

5. Menelusuri setiap pasangan pixel pada citra dalam 8 arah mata angin

6. Menambahkan 1 (satu) pada cell dengan koordinat (x,y) dengan x adalah nilai integer pada pasangan pixel pertama dan y adalah yang kedua

(10)

Metode GLCM dengan arah 0, 45,

90, 135, 180, 225, 270, dan 315

• Arah 0o adalah ke kanan, 45o ke kanan bawah, dan

seterusnya mengikuti arah jarum jam

• Langkah pertama adalah membuat GLCM pada setiap arah

• Langkah terakhir adalah menjumlahkan setiap GLCM dari setiap arah sehingga didapatkan GLCM dari setiap arah

(11)

Ilutrasi GLCM dengan arah 0

o

• Jumlah variasi warna yang terbentuk adalah 4 (putih, abu-abu, coklat, dan kuning)

• Warna putih diberikan nilai 0 • Warna abu-abu diberikan nilai 1 • Warna coklat diberikan warna 2 • Warna kuning diberikan nilai 3

• Dibentuk matriks 4 x 4 dengan nilai dari setiap cell adalah 0

(12)

Ilutrasi GLCM dengan arah 0

o

(cont)

Matrix pada cell (0,0) bertambah 1 Matrix pada cell (0,2) bertambah 1

(13)

Ilustrasi GLCM dengan arah 0

o

(cont)

(14)

Texture Analysis

• Menggunakan GLCM sebagai input

Terdiri dari contrast, correlation, homogeneity, dan energy

Nilai baris didefinisikan sebagai i

Nilai kolom didefinisikan dengan j

(15)
(16)

Konsep

Hu Moment

Hu Moment hanya mengidentifikasi nilai 0 dan 1

• Maka pixel kulit akan diberikan nilai 1 dan pixel non-kulit akan diberikan nilai 0

Pasangan pq yang dibutuhkan adalah 20, 02, 11, 12, 21, 30, 03

Langkah pertama adalah mencari nilai centroid yaitu i’ dan j’

• Kemudian dimasukkan ke dalam rumus-rumus sebagai berikut:

(17)

7 Hu Moment

𝜑1 = 𝑛20 + 𝑛02 𝜑2 = (𝑛20 − 𝑛02)2+4𝑛 112 𝜑3 = (𝑛30 − 3𝑛12)2+(3𝑛 21 − 𝑛03)2 𝜑4 = (𝑛30 + 𝑛12)2+(𝑛21 + 𝑛03)2 𝜑5 = 𝑛30 − 3𝑛12 𝑛30 + 𝑛12 [(𝑛30 + 𝑛12)2 − 3 𝑛21 + 𝑛03 2] + (3𝑛21 − 𝑛03)(𝑛21 + 𝑛03[3 𝑛30 + 𝑛12 2 − 𝑛21 + 𝑛03 2]) 𝜑6 = 𝑛20 − 𝑛02 [(𝑛30 + 𝑛12)2 − 𝑛21 + 𝑛03 2] + 4𝑛11(𝑛30 + 𝑛12)(𝑛21 + 𝑛03) 𝜑7 = 3𝑛21 − 𝑛03 𝑛30 + 𝑛12 [(𝑛30 + 𝑛12)2 − 3 𝑛21 + 𝑛03 2] − (𝑛30 − 3𝑛12)(𝑛21 + 𝑛03)[3 𝑛30 + 𝑛12 2 − 𝑛21 + 𝑛03 2])

(18)

Pengumpulan Data / Citra

Jenis data Jumlah data Total

Porno Tidak porno

Training 1000 1000 2000

Testing 547 551 1098

(19)

Desain Aplikasi

Pembuatan Model

Berbasis Desktop

• Tujuan pembuatan aplikasi berbasis desktop adalah untuk mengumpulkan fitur dari training data

• Kumpulan nilai dari fitur ini kemudian diproses hingga membentuk model yang digunakan oleh LibSVM untuk memprediksi

(20)

Application Workflow

Perolehan inputan berupa direktori dari gambar yang akan diekstrak

Inisiasi semua citra yang terdapat pada direktori dan membuat file baru yang akan diisi oleh fitur hasil

ekstraksi

(21)

Application Workflow

(cont)

Inisiasi citra

Pengubahan resolusi menjadi 256 x 256 pixel Skin detection

Ekstraksi fitur skin count dan skin percentage Konversi citra ke grayscale

(22)

Application Workflow

(cont)

Pembentukan GLCM

Ekstraksi fitur contrast, correlation, homogeneity, dan energy

Ekstraksi 7 Hu Moment

(23)

Web Service Workflow

Validasi inputan url

Ekstraksi 13 fitur

(24)

Workflow

Komputasi SVM

Perolehan nilai 13 fitur

Perolehan file range dan training.txt.scale.model

Scaling terhadap nilai fitur

(25)

Server Web Service Deployment

Web Service build code WEB-INFweb classes range Training.txt.scale. model

(26)

Deployment Diagram

(Jaringan)

deployment Netw ork

Serv er Client «executionEnvironment» Client Application Soap Code Jaringan (LAN, WAN,

Internet)

«executionEnvironment»

PornImageDetectionWS w sdl

(27)

Lingkungan

Implementasi

Spesifikasi Detail Spesifikasi Komputer

personal

Processor Intel Core i5 2450M @ 2.50 GHz RAM 2048 MB

Sistem Operasi Windows 7 Ultimate

Library Komputasi SVM LibSVM

Face detection Jon’s Java Image Library

Perangkat Lunak

Java Development Kit

(JDK) jdk 1.7

Editor Netbeans 7.4 Java Web Service Server GlassFish 4.0

Infrastruktur Jaringan

Jenis Koneksi Proxy berautentikasi Konfigurasi Proxy proxy.its.ac.id:8080 Bandwidth 100 MBps

(28)

Pengujian Kode

Skin

Detection

(29)

Pengujian Kode Untuk

Mengkonversi Citra Menjadi

Grayscale

(30)

Pengujian Kode

Image

Zoning

(31)

Pembuatan File

training.txt

(32)

Pembuatan File

training.txt.scale

dan File

(33)

Pemilihan Parameter SVM

• Agar terbentuk model yang paling optimal untuk

melakukan prediksi maka pemilihan kombinasi nilai fitur dilakukan.

Hal ini dilakukan dengan menggunakan algoritma Grid Search dengan bantuan file grid.py dari LibSVM

• Pemrosesan grid.py menghasilkan nilai C = 128.0 dan γ = 2.0

(34)

Parameter Penggunaan

Web Service

Informasi Isi Keterangan Link wsdl http://<nama domain>/PornIma geDetectionWS/P ornImageDetectio nWSService?wsd l

Link ini perlu diinputkan dapat menggunakan fungsi SOAP

Method checkImageString

([parameter]) [parameter] diganti dengan variabel bertipe arraydengan isi sesuai dengan parameter yang

didefinisikan

Parameter imageURL Adalah parameter yang berfungsi untuk

(35)

Pengujian Citra Non Pornografi

dengan Hasil Benar

(36)

Pengujian Citra Non Pornografi

dengan Hasil Benar (cont)

(37)

Pengujian Citra Pornografi

dengan Hasil Benar

(38)

Pengujian Citra Pornografi

dengan Hasil Benar (cont)

(39)

Pengujian Citra Non Pornogafi

dengan Hasil Salah

(40)

Pengujian Citra Pornogafi

dengan Hasil Salah

(41)

Analisis Keberhasilan dan Kegagalan

Sistem dalam Memprediksi

• Analisis bentuk berhasil dalam kasus ini karena citra yang terprediksi benar 100% areanya memiliki pixel kulit

• Namun analisis bentuk ternyata masih menganggap adanya retakan termasuk ke dalam citra yang memiliki konten

pornografi

(42)

Analisis Keberhasilan dan Kegagalan

Sistem dalam Memprediksi

• Analisis warna dan bentuk masih menganggap adanya mode wajah penuh sebagai citra yang memiliki konten pornorgafi

(43)

Analisis Keberhasilan dan Kegagalan

Sistem dalam Memprediksi (cont)

• Sistem belum mampu mendeteksi adanya konten pornorgafi dengan skala kecil pada citra

(44)

Analisis ROC

Prediksi

Total

Porno Tidak porno

Aktual Porno 512 35 547

Tidak porno 171 380 551

(45)

Analisis ROC (cont)

Variabel Nilai Accuracy 0.812 Sensitivity 0.749 Specificity 0.916 FPR 0.084 FNR 0.251 PPV 0.936 NPV 0.689

(46)

Penerapan

face detection

untuk Optimasi Performa

Menggunakan library bernama Jon’s Java Image Library (JJIL)

• Jika citra terdeteksi memiliki konten pornografi maka diterapkan face detection

• Jika area wajah ditemukan dan persentasenya terhadap luas keseluruhan citra lebih dari 50% maka citra tidak memiliki konten pornografi

(47)

Contoh penerapan

face

(48)

Analisis ROC Setelah

Penerapan

face detection

Variabel Nilai Accuracy 0.878 Sensitivity 0.838 Specificity 0.928 FPR 0.072 FNR 0.162 PPV 0.936 NPV 0.820

(49)

Analisis Performa

Web

Service

No Resolusi Size (KB) User Sample Avg (ms) Err (%)

1 320 x 400 88.5 1 1 1368 0.00

2 320 x 400 88.5 10 100 9202 0.00

3 320 x 400 88.5 30 300 26881 0.00

4 320 x 400 88.5 50 500 30482 20.00

No Resolusi Size (KB) User Sample Avg (ms) Err (%)

1 1960 x 1307 276 5 150 9391 0.00 2 1960 x 1307 276 30 30 30479 0.00 3 1960 x 1307 276 30 30 30479 0.00 4 1960 x 1307 276 30 150 36849 30.67

(50)

Analisis Performa

Web

(51)

Kesimpulan

Didapatkan 2000 training data yang terdiri dari 1000 citra yang

memiliki konten pornografi dan 100 citra yang tidak memiliki konten

pornografi. Untuk testing, didapatkan 1098 citra yang terdiri dari 547 citra yang memiliki konten pornografi dan 551 citra yang tidak

memiliki konten pornografi.

Metode image zoning dengan fitur skin count, skin percentage,

contrast, correlation, energy, homogeneity, dan 7 Hu Moment dengan

algoritma pembelajaran (classifier) Support Vector Machine (SVM) dapat digunakan untuk mendeteksi adanya konten pornografi pada citra dengan baik. Terbukti dengan tingkat akurasi sebesar 0.812,

sensitivity sebesar 0.749, specificity sebesar 0.916, FPR sebesar

0.084, FNR sebesar 0.251, PPV sebesar 0.936, dan NPV sebesar 0.689.

(52)

Kesimpulan (cont)

Penerapan face detection mampu meningkatkan performa web

service dalam mendeteksi konten pornografi pada citra dengan

hasil akhir accuracy sebesar 0.876, sensitivity sebesar 0.838,

specificity sebesar 0.928, FPR sebesar 0.072, FNR sebesar

0.162, PPV sebesar 0.936, dan NPV sebesar 0.820.

Performa web service akan bagus diimplementasikan pada max

heap 512 MB jika jumlah user kurang dari 50 dan dengan

jumlah sample sebanyak 500 buah untuk resolusi sedang. Sedangkan untuk resolusi tinggi, performa web service akan bagus diimplementasikan dengan jumlah user kurang dari 30 buah dan sample sebanyak150 buah.

(53)

Saran

• Manusia terdiri dari berbagai macam anggota tubuh, seperti kepala, tangan, badan, kaki, dan lain sebagainya. Biasanya

pendekatan pornografi mengarah kepada bagian vital manusia. Untuk itu, sebaiknya metode pendeteksian konten pornografi pada citra seharusnya adalah metode yang mampu untuk

mendeteksi adanya bagian vital tersebut pada citra.

• Pembuatan sistem mandiri yang mampu untuk melakukan pembaruan secara berkala terhadap database citra.

• Adanya studi khusus yang mampu untuk mengetahui algoritma pembelajaran dan library yang paling efektif dan efisien untuk diterapkan pada sistem pendeteksi konten pornografi pada

(54)

Referensi

Dokumen terkait

④ Peserta wajib mengikuti segala tata tertib pelaksanaan seleksi yang

Sintaks model pembelajaran ini terdiri dari: (1) Issue, yaitu kegiatan pembelajaran untuk memunculkan ide-ide yang dimulai dengan memberikan masalah sederhana, (2) discussion, yaitu

Berdasarkan hasil penelitian yang telah dilakukan, dapat disimpulkan bahwa pembelajaran matematika menggunakan peta konsep untuk melatih kemampuan berpikir kreatif

Segala sesuatu yang hidup di dunia ini, apakah itu makhluk yang bernyawa maupun makhluk yang tidak bernyawa, pasti mempunyai latar belakang atau sejarahnya

Mulai tahun 2013, sesuai dengan ketentuan dalam Peraturan menteri keuangan Nomor 30 tahun 2012 tentang Tata Cara Pengelolaan Dana Cadangan Penjaminan Dalam Rangka Pelaksanaan

Hal serupa dilakukan pada ayam potong untuk menguji aktivitas tokoferol yang dikandung buah merah.. Ia mencampurkan ekstrak buah merah pada konsentrat keluaran

juga merancang kuesioner mengenai permasalahan dunia (Lihat Tabel 1) untuk diuji kepada responden sebagai pre-test sebelum penelitian dimulai yang mana akan diuji

Sehubungan dengan semakin dekatnya batas waktu pengoperasian PLTN pertama yang telah ditentukan oleh pemerintah yaitu pada tahun 2016, maka dapat disimpulkan bahwa lulusan