- Proyek prototipe yang membuat MacBook bekerja seperti layar sentuh hanya dengan komponen seharga 1 dolar dan teknologi computer vision
- Dengan memasang cermin kecil di depan webcam bawaan, sistem mengenali layar dari sudut miring dan mendeteksi sentuhan melalui titik perpotongan jari dan bayangannya
- Melalui pemfilteran warna kulit dan analisis kontur, sistem menghitung titik sentuh·hover lalu memetakannya ke koordinat layar dengan koreksi homografi
- Input yang terdeteksi diubah menjadi event mouse sehingga aplikasi yang ada pun bisa langsung dioperasikan dengan sentuhan
- Tetap bekerja pada kamera 480p, dan dengan kamera resolusi lebih tinggi atau cermin melengkung, jangkauan pengenalan dapat diperluas sebagai contoh implementasi layar sentuh berbiaya rendah
Gambaran Project Sistine
- Menggunakan perangkat keras seharga 1 dolar dan teknik computer vision sederhana untuk mengubah MacBook menjadi layar sentuh
- Prototipe proof-of-concept yang dibuat oleh 4 orang dalam sekitar 16 jam
- Namanya terinspirasi dari rekreasi lukisan 'The Creation of Adam' di Kapel Sistina
Prinsip dasar
- Memanfaatkan fenomena jari dan bayangannya terlihat bersama karena pantulan cahaya saat layar dilihat dari sudut miring
- Sistem menentukan apakah terjadi sentuhan dengan mendeteksi saat jari menyentuh bayangannya
- Idenya diambil dari proyek ShinyTouch yang sebelumnya dibuat Kevin
- Pendekatan yang memakai webcam eksternal diganti dengan webcam bawaan MacBook dan cermin kecil
- Cermin kecil dipasang di depan kamera bawaan untuk mendapatkan sudut pandang yang melihat seluruh layar secara miring dari atas
- Gerakan jari pada video kamera dikenali lalu diubah menjadi event sentuh
Konfigurasi perangkat keras
- Bahan yang dibutuhkan hanyalah komponen sederhana seperti cermin kecil, piring kertas, engsel pintu, dan glue gun
- Cermin dipasang pada sudut yang tepat agar kamera bisa melihat seluruh layar
- Bisa dirakit dalam beberapa menit hanya dengan pisau dan glue gun
Algoritme deteksi jari
- Sistem mencari jari dan bayangannya pada video input untuk menghitung titik sentuh/hover
-
Pemfilteran warna kulit dan binerisasi → deteksi kontur → pemilihan dua kontur utama
- Kedua kontur harus saling tumpang tindih secara horizontal, dan kontur yang lebih kecil harus berada di bagian atas
- Titik tengah dari garis yang menghubungkan bagian atas dan bawah dua kontur ditetapkan sebagai titik sentuh/hover
- Jarak vertikal antardua kontur digunakan untuk membedakan sentuhan dan hover
- Pada video hasil, jari dan garis pantulan ditampilkan dalam hijau, kotak pembatas dalam merah, dan titik sentuh dalam magenta
Pemetaan dan koreksi
- Menghitung homografi (homography) untuk mengubah koordinat webcam menjadi koordinat layar
- Pengguna melakukan kalibrasi (calibration) dengan menyentuh titik tertentu di layar
- Berdasarkan pasangan koordinat yang dikumpulkan, matriks proyeksi diestimasi dengan algoritme RANSAC
- Setelah kalibrasi, garis merah di atas layar memvisualisasikan matriks proyeksi, dan titik sentuh hasil estimasi ditampilkan sebagai titik biru
Penerapan
- Prototipe ini mengubah hover dan sentuhan menjadi event mouse sehingga aplikasi yang ada bisa langsung mendukung interaksi sentuh
- Saat mengembangkan aplikasi sendiri, data sentuh yang lebih rinci seperti tinggi hover juga bisa dimanfaatkan langsung
Kesimpulan dan peluang pengembangan
- Project Sistine adalah implementasi eksperimental yang menjadikan laptop seperti layar sentuh dengan perangkat keras 1 dolar
- Tetap bekerja dengan kamera bawaan 480p, dan dengan kamera resolusi tinggi atau cermin melengkung, pengenalan seluruh layar dimungkinkan
- Berpotensi berkembang menjadi sistem layar sentuh yang praktis dengan biaya rendah
Kode sumber
- Prototipe Sistine dirilis sebagai open source berlisensi MIT
1 komentar
Komentar Hacker News
Steve Jobs mengatakan pada 2010 bahwa layar sentuh vertikal hanya keren untuk demo, tetapi dalam praktik lengan cepat lelah dan secara ergonomis sangat buruk
Ini adalah kutipan dari artikel Business Insider
Ponsel stylus Android murah zaman dulu atau tiruan Palm Pilot memang benar-benar buruk, tetapi bagi para seniman stylus dengan deteksi tekanan tetap merupakan alat yang berguna
(Sebagai referensi, istilah ‘gorilla arm’ berasal dari Jargon File pada 1980-an)
Perangkat digunakan dalam posisi datar atau diputar, dan saya juga memakai Kindle Scribe serta Galaxy Note 10+.
Saya ingin mencoba Apple Sidecar, tetapi masih ragu karena harus membeli stylus lain. Semoga suatu hari Apple merilis penerus Newton
Saya bahkan tidak mau MacBook Pro layar sentuh meski diberikan gratis. Semuanya sudah dioptimalkan dengan shortcut keyboard, jadi tidak ada alasan untuk menekan layar
Untuk pekerjaan, keyboard dan trackpad jauh lebih efisien daripada sentuhan
Monitor utama tidak punya sentuhan, dan layar laptop hanya sekunder sehingga tidak ada alasan untuk mengulurkan tangan. Karena itu saya juga merasa Touch Bar gagal
Proyek ini mengingatkan saya pada eksperimen Wii-mote Johnny Lee di masa lalu
johnnylee.net/projects/wii/
Laptop kantor yang dulu saya pakai punya layar sentuh, dan ternyata berguna sekali atau dua kali seminggu
Di kereta, untuk menghindari siku berbenturan dengan orang di sebelah, lebih nyaman langsung menyentuh layar, dan saat scroll pun terasa alami dilakukan dengan jari
Itu bukan perangkat input utama, tetapi sebagai opsi input sekunder cukup oke
Melihat frasa “skin color filtering” membuat saya bertanya-tanya. Berdasarkan warna kulit yang seperti apa filter itu bekerja, dan saya ingin melihat datanya, terutama seberapa baik ia bekerja pada kulit gelap
Pada laptop, layar sentuh itu tidak nyaman. Secara pribadi saya lebih suka tidak ada
Ini benar-benar contoh penerapan computer vision yang keren. Saya juga berterima kasih karena kodenya dibuka
Meski hanya prototipe sederhana, tetap menarik. Saya penasaran apakah pengenalannya akan berubah tergantung kondisi pencahayaan — apakah tetap bekerja baik di luar ruangan atau saat backlight?
Saya rasa menggunakan background subtraction alih-alih “skin color filtering” akan lebih stabil. Warna kulit terlalu beragam bergantung pada pencahayaan
Saya membayangkan kamera ditempatkan di antara layar saat MacBook ditutup, dan rasanya seperti layarnya akan pecah.
Saya suka Mac, tetapi hardware-nya terlalu rapuh dan bikin cemas. Karena ini laptop kantor, saya jadi lebih berhati-hati