PENGOLAHAN CITRA DIGITAL

UNTUK KEYBOARD VIRTUAL SEBAGAI ANTARMUKA

PADA APLIKASI BERBASIS WEB




Oleh:
Raksaka Indra Alhaqq
09/281482/PA/12405


Latar Belakang


Akses PHP ke MySQL dibutuhkan:
  1. Host name
  2. Database name
  3. Database user
  4. Database password
<?php
  $dbhost = 'localhost';
  $dbuser = 'root';
  $dbpass = 'root';
  $dbname = 'stock_material';
  $conn   = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname); 
?>


Rumusan Masalah


Bagaimana membuat sebuah sistem yang mampu mengolah citra berupa ujung jari telunjuk dan menentukan posisi koordinatnya sehingga mampu digunakan untuk keyboard virtual sebagai antarmuka pada aplikasi berbasis web.


Halaman Login


  • Digunakan enkripsi menggunakan teknik MD5 yang dikombinasikan dengan $pengacak dan $password
  • Kode yang dihasilkan adalah 32bit data yang acak

<?php
 $pengacak  = "NDJS3289JSKS190JISJI";
 if (md5($pengacak.md5($password).$pengacak) == $data['password']) {
   $_SESSION['username'] = $username;
   header("location:home.php?v=Moulding");
 } else {
   require "head.php";
} ?>

Batasan Masalah


  1. Menggunakan image processing dalam mengenali dan mendeteksi posisi jari ujung jari telunjuk.
  2. Menggunakan satu jari telunjuk.
  3. Menggunakan webcam untuk menangkap citra berupa ujung jari telunjuk dan sebuah komputer untuk memprosesnya menjadi keyboard virtual.
  4. Digunakan di dalam ruangan yang tidak gelap.
  5. Digunakan sebuah browser Google Chrome versi 31+.
  6. Sistem dijalankan dengan satu komputer sebagai server localhost maupun client.
  7. Diperuntukkan untuk satu client saja.


Akses Pengguna


  • Digunakan teknik PHP Session untuk memberikan hak akses pada masing-masing pengguna
  • Hak akses ditandai dengan level, admin level = 0 dan user level = 1
<?php
 session_start();
 if (!isset($_SESSION['username'])) {
   $usr = $_SESSION['username'];
   $result = mysqli_query($conn, "SELECT level FROM en_user WHERE username = '$usr'");
   while($row = mysqli_fetch_array($result)) {
     $level = $row['level'];
} } ?>


Halaman Admin


Halaman User


Tujuan Penelitian



Merancang dan mengimplementasikan image processing agar dapat digunakan untuk keyboard virtual sebagai antarmuka komputer melalui aplikasi berbasis web.


Menampilkan Table dari Database


  • Untuk mengambil data data tabel database digunakan mysql_fetch_row yang dimasukkan dalam fungsi looping while
<?php
 $sql = "SELECT sap_number, material, unit, type, q_start, $rq q_end, price, val_tot_stock FROM material WHERE type = '$v'";
 $result = mysqli_query($conn, $sql);
   while($row = mysqli_fetch_row($result)) { ?>
     <tr>
       <td><?php echo "$nmb" ;?></td>
       <?php foreach($row as $value)
         echo '<td>' .$value. '</td>'; ?>
     </tr>
<?php } ?>

Tinjauan Pustaka



Form Input Data dan Request


  • Digunakan teknik PHP POST, yang berfungsi untuk memasukkan data ke tabel database MySQL
<?php
 if(isset($_POST['send'])) {
   $sap_number = $_POST['sap_number'];
   $usr = $_POST['username'];
   $qo = $_POST['qo'];
 } else { ?>
   <form class="entry" method="post" action="">
   <p>Material Number</p>
   <input name="sap_number" type="text" id="sap_number"> <p>Qty Out<p>
   <input name="qo" type="text" id="qty_out">
   <input name="send" type="submit" id="update" value="Send"> </form>
<?php } ?>

Blok Diagram Sistem Keseluruhan


Upload File untuk Rekap Data


  • Halaman upload digunakan untuk melakukan unggah file rekap data dari proyek ke server
  • Rekap data dapat dipantau dimana saja dan kapan saja, khususnya oleh pihak pusat (Warehouse)


Upload File untuk Rekap Data


  • Format file yang diijinkan: doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf
  • Ukuran maksimal file yang diupload: 2MB
<?php
 $file_type = array('doc','docx','xls','xlsx','ppt','pptx','pdf');
 $max_size  = 2000000; // 2MB
?>


Upload File untuk Rekap Data


  • Upload file menggunakan teknik PHP POST
  • Tipe form yang digunakan untuk upload adalah <input type = "file" />
  • Agar tidak terjadi kesamaan nama file yang menyebabkan file lama di replace file baru, diperlukan tambahan karakter yaitu: date_time_filename
<?php
  date_default_timezone_set("Asia/Jakarta");
  $rand = date("mdY_His", time());
  $file_name  = $rand."_".$_FILES['data_upload']['name'];?>


Pelatihan Pengenalan Ujung Jari Telunjuk



Export Table ke Excel


  • Digunakan bahasa pemrogaman jQuery untuk melakukan export tabel web ke format file .xls
var tableToExcel = (function() {
var uri = 'data:application/vnd.ms-excel;base64,'
, template = '{table}
' , base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) } , format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) } return function(table, name) { if (!table.nodeType) table = document.getElementById(table) var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML} window.location.href = uri + base64(format(template, ctx)) } })()


Export Table ke Excel



Menghindari Search Engine



Menghindari Search Engine


  • Untuk masalah keamanan, sistem informasi berbasis web harus bersifat private
  • Hindari search engine untuk mendeteksi web
  • Digunakan teknik robot.txt yang untuk melakukan pencegahan agar tidak terdeteksi search engine
 User-agent: *
 Disallow: /



Terima Kasih

Copy of Stock Material Information System

By Raksaka Indra

Copy of Stock Material Information System

Stock Material Information System

  • 403