- PabloNet adalah perangkat yang mengubah video webcam menjadi diffusion real-time dan menampilkannya pada LCD bergaya bingkai, sehingga gambar generatif terasa seperti objek fisik yang tergantung di dinding, bukan sekadar demo di laptop
- Implementasinya berupa gabungan server berbasis StreamDiffusion, klien Raspberry Pi 5, layar 10,1 inci, kamera Pi NoIR, pencahayaan inframerah, dan bingkai biasa
- Kendala terbesarnya adalah frame rate yang rendah; sudah ditingkatkan dengan TensorRT dan kompresi gambar input/output, tetapi masih ada ruang untuk meningkatkan responsivitas
- Gaya visual yang diinginkan sulit dibuat hanya dengan prompt, sehingga filter prapemrosesan juga ikut diuji; gaya Picasso biru didapat dari kombinasi Canny edge detection, pewarnaan biru, dan blur
- Pada pembaruan Januari 2025, setelah respons di HN memunculkan pesanan, proyek ini berkembang menjadi versi yang lebih rapi dan siap dikirim dengan Pi Zero, dudukan cetak 3D, panel belakang potong laser, dan dongle WiFi
Bingkai diffusion real-time yang tergantung di dinding
- PabloNet adalah perangkat yang menerima input webcam, melakukan transformasi gambar real-time, lalu menampilkan hasilnya pada LCD berbentuk bingkai
- Eksperimen awal yang menjalankan StreamDiffusion di laptop memang menyenangkan, tetapi form factor laptop merusak ilusi dan terasa sementara serta "geeky"
- Dengan mengubahnya menjadi bingkai LCD gantung, layar tidak lagi sekadar display, melainkan bertindak seperti objek yang punya kehadiran tetap
- Bisa ditemui lagi pada waktu, suasana hati, pencahayaan, objek, dan teman yang berbeda
- Disertakan video contoh interaksi dengan wajah, pencahayaan inframerah di tempat gelap, objek, dan teman
- Saat ini kendala terbesar adalah FPS yang rendah
- TensorRT digunakan dan gambar input/output dikompresi untuk meningkatkan frame rate
- Meski begitu, masih banyak ruang untuk perbaikan
Susunan hardware dan cara membentuk gaya visual
- Kode klien dan server dipublikasikan di pablonet agar orang bisa membuat sendiri atau berkontribusi
- Susunan hardware awal:
- Hosting server: RunPod
- Klien: Raspberry Pi 5
- Layar: 10.1" Pi screen
- Pencahayaan: infrared light
- Bingkai: generic frame
- Kamera: infrared Pi camera
- Lubang kamera dibuat pada karton bingkai menggunakan pelubang yang bisa memotong lebih rapi daripada bor
- Hasil visual tidak dibuat hanya dengan prompt; filter prapemrosesan juga sama pentingnya
- Saat memakai img2img tanpa prapemrosesan, hasilnya sering terlihat terlalu realistis
- Gaya Picasso biru dibuat dengan kombinasi Canny edge detection, pewarnaan biru, dan blur
Versi kedua yang siap dikirim setelah respons HN
- Setelah thread di Hacker News, proyek ini mendapat perhatian dan pesanan yang tak terduga, sehingga dibuat versi yang lebih rapi dan siap dikirim
- Versi kedua berubah ke arah yang mengurangi kerepotan perangkat asli
- Pada perangkat lama, komponen elektronik harus ditahan agar tidak jatuh sebelum dipasang ke dinding
- Untuk sekadar memanggil API dan menampilkan gambar, Pi biasa terasa berlebihan dan mahal
- Kondisi kabelnya juga kurang baik
- Komponen yang dibeli dimodelkan sebagai CAD di Fusion 360, lalu setelah empat iterasi komponen kustom, desainnya mengerucut menjadi 2 dudukan cetak 3D dan panel belakang potong laser
- Peran dudukan:
- Menahan layar agar pas dengan kaca bingkai dan karton
- Menahan Pi Zero dan kamera
- Berfungsi sebagai keyhole slot untuk pemasangan di dinding
- Memungkinkan rakitan dipasang ke bingkai dengan sekrup dan mur
- Memungkinkan panel belakang dipasang dengan threaded insert yang dimasukkan ke hasil cetak 3D menggunakan soldering iron, serta sekrup
Cara pengaturan agar pengguna bisa menanganinya sendiri
- Untuk meningkatkan kemungkinan pengiriman, affordance pengguna perlu diselesaikan
- Versi pertama memakai mouse dan keyboard Bluetooth yang telah dikonfigurasi sebelumnya melalui port USB Pi
- Dinilai tidak baik bila pengguna harus membuka panel belakang lalu menyiapkan sendiri USB hub, mouse dan keyboard berkabel, serta pairing Bluetooth
- Untuk menghindari itu, ditambahkan dongle WiFi agar Pi bisa berfungsi sebagai access point untuk koneksi SSH sambil tetap terhubung ke internet lewat antarmuka jaringan yang sudah ada
- Detail pembuatan sendiri bisa dilihat di repositori pablonet, dan permintaan pembuatan bisa diajukan lewat email
1 komentar
Komentar Hacker News
Keren. Setelah melihat sekilas kodenya, ada beberapa kiat yang tampak bisa meningkatkan frame rate yang rendah
Mengenkode byte JPEG ke Base64 membuat payload membesar hingga sekitar 30% dan memakai CPU di sisi klien maupun server. WebSocket bisa mengirim payload biner, jadi tidak perlu menjadikannya teks
Menghapus kompresi JPEG lossy juga patut dipertimbangkan, cukup kirim byte RGB mentah lewat jaringan. Di sisi server cukup panggil
Image.frombuffer(…)StreamDiffusion bisa mencapai frame rate tinggi karena melakukan batch processing secara luas di pipeline, tetapi di sini klien hanya mengirim satu frame sekali waktu lalu menunggu respons, sehingga manfaat itu tidak didapat. Untuk cara memasukkan frame input ke antrean dan mengonsumsinya dalam batch, lihat contoh ini https://github.com/cumulo-autumn/StreamDiffusion/blob/main/e...
Atau, model SDXL Turbo dan Lightning juga layak dilihat. Untuk img2img keduanya sangat cepat, tetapi masing-masing punya batas resolusi 512² atau 1024² piksel. Kelihatannya sedikit di bawah target, tetapi bisa berjalan real-time secara lokal di GPU konsumen kelas atas. Kode referensi ada di sini https://github.com/GradientSurfer/Draw2Img/tree/main
Terkait pernyataan “membuat seni itu sulit. Namun seni sebagian besar adalah soal mengungkap dunia batin, dan teknik hanya salah satu bagiannya. Sayang jika seni menyaring terlalu kuat berdasarkan teknik”, saya tidak ingin terdengar seperti Luddite, tetapi saya meragukan gagasan bahwa kesenjangan teknis hanyalah ketidaknyamanan sederhana
Menurut saya, proses belajar menggambar atau membuat musik mengubah sesuatu di dalam diri, dan mengajarkan pelajaran hidup yang lebih dalam
Saya pernah mendengar ungkapan bahwa “karya seni hebat bukan dibuat oleh seorang jenius, melainkan kejeniusan datang tak terduga seperti embusan angin kencang”. Hal terbaik yang bisa dilakukan seniman adalah memupuk peluang semacam itu, dan menghapus kesenjangan teknis tampak seperti menghapus proses pemupukan itu, yakni inti dari mengubah diri sendiri
Sepertinya ada beberapa prinsip kerja mendalam yang terus kembali kepada kita meski kita tidak tahu identitasnya dan tidak tahu bagaimana mengatakannya. Proyek ini menarik dan tampak berguna bagi banyak orang, tetapi sesekali membuat saya berpikir seperti ini
Apakah keseluruhan proyek memiliki sifat itu lebih ambigu, tetapi secara pribadi saya rasa tidak. Ini tampak sebagai pekerjaan yang digerakkan secara teknis, bukan psikologis. Tentu saja cermin punya simbolisme yang kuat, jadi orang bisa menulis catatan seniman yang mengklaimnya sebagai kerja psikologis
Meski begitu saya menyukainya, dan jika saya yang membuatnya, saya akan bangga. Hanya saja ini lebih dekat ke kecakapan teknis daripada seni
Kalau saya, alih-alih menaikkan frame rate, saya mungkin akan menurunkannya. Pendekatannya adalah memanfaatkan keterbatasan teknis, bukan melawannya. Saya akan membuat sistem hanya menampilkan gambar yang “bagus”, dan tidak memperbarui layar sampai gambar “bagus” berikutnya dihasilkan. Kode yang menilai apakah sebuah gambar “bagus” akan menjadi bagian paling menarik dari sistem, dan bisa dikatakan memuat niat sang seniman, sehingga lebih mendekati Art dengan A besar menurut standar pribadi saya
Saya juga akan bereksperimen dengan buffering stream gambar, seperti Light of Other Days karya Bob Shaw
Dan karena Halloween sudah dekat, godaan untuk sesekali melakukan inpainting sosok yang berdiri di belakang pengunjung pasti sangat besar
Untuk mendapatkan stabilitas gambar, mungkinkah alih-alih menghasilkan gambar acak, kita meminta LLM membuat kode filter video acak? Misalnya “tuliskan filter video yang membuat video input tampak seperti kubisme”, “seperti lukisan minyak”, “dengan estetika Flash”. Jika filternya berhasil dibuat dan benar-benar tidak crash, sistem beralih ke filter itu. Saya tidak tahu apakah itu mungkin
Mona Lisa bukan sekadar lukisan orang yang digambar dengan baik. Ia penuh detail dan makna yang hanya bisa dipahami oleh orang yang mempelajari seni lukis. AI bisa menghasilkan gambar yang lumayan atau menarik, tetapi tidak bisa berbicara dalam bahasa seni lukis. Untuk itu diperlukan usaha nyata untuk belajar dan mengapresiasi. Menyuntikkan keterampilan sapuan kuas ke otak manusia atau alat AI tidak lantas menjadikannya seniman
Kadang ada baiknya seseorang dengan mata baru, yang belum dibentuk oleh sejarah yang sudah ada selama puluhan tahun, memandang sesuatu
Sebagai catatan, tautan frame yang dipakai untuk memasang display memblokir akses
https://www.leroymerlin.fr/produits/decoration-eclairage/dec...
Buat yang penasaran, itu adalah frame hitam MILO 21 x 29,7 cm. Tautan di bawah ini bisa dibuka dari tempat saya
https://www.leroymerlin.pt/produtos/decoracao-e-tapetes/mold...
Selain itu, layar yang dipakai, HMTECH Raspberry Pi Screen 10.1, cukup sulit ditemukan. Ada rekomendasi layar dengan kualitas dan spesifikasi serupa?
Saya juga penasaran kenapa memakai lampu inframerah dan kamera inframerah
Terkait “seni sebagian besar adalah mengungkapkan dunia batin, dan teknologi hanya sebagian kecil”, saya selalu berpikir seni adalah sesuatu yang melestarikan dan menciptakan emosi. Jadi pisang yang ditempel di dinding pun seni, dan musik pop juga tetap seni
Mungkin karena pengaruh sekolah, tapi saya juga sering bertanya “kenapa?”
Penemuan ini sendiri jelas merupakan karya seni, tetapi output-nya, di mata saya, bukan. Itu seperti awan. Ia bisa membentuk berbagai rupa, sebagian lucu, sebagian bisa mengingatkan kita pada orang dekat, tetapi tetap saja itu keacakan yang dirata-ratakan
Namun, gagasan memantulkan realitas ke dalam keacakan digital ini tanpa ragu saya anggap seni. Dan meski tidak visual atau auditori, software, hardware, kode, dan desain juga merupakan seni. Karena sulit dibuat, ini juga menjadi contoh tandingan terhadap argumen di paragraf pertama
Pisang yang ditempel di dinding bukan seni. Itu hanya benda sehari-hari yang ditempatkan dalam susunan sehari-hari
Anda bisa merasa itu seni, tetapi kalau begitu mungkin Anda belum cukup bersentuhan dengan seni sungguhan sehingga tidak punya kumpulan pengalaman, atau sejauh ini hanya melihat contoh-contoh yang dangkal
Akan lebih keren kalau kameranya berada di tempat yang berbeda dari frame. Menatap ke cermin artistik terlihat agak membosankan
Bagaimana kalau membuat yang kedua, menaruhnya di rumah seseorang, lalu mengirim feed kamera dari satu sisi ke sisi lainnya. Kita melihat “pantulan” orang lain, dan muncul momen-momen kecil ketika keduanya menatap gambar itu pada saat yang sama. Bisa juga membuat beberapa unit agar tidak pernah tahu siapa yang sedang dilihat. Jadinya semacam Omegle versi bingkai foto
Seingat saya, hal seperti ini sudah pernah dibuat sebagai instalasi seni di ruang publik. Caranya memungkinkan orang melihat dan berinteraksi dengan orang lain di berbagai tempat di dunia
Contohnya ini https://www.inavateonthenet.net/news/article/vc-art-installa...
Kalau membeli beberapa bracket low-voltage old-work dan brush wall plate (https://www.homedepot.com/p/Carlon-1-Gang-Non-Metallic-Low-V..., https://www.homedepot.com/p/Commercial-Electric-1-Gang-Brush...) lalu menyalurkan kabel daya lewat dalam dinding, tampilannya akan jauh lebih rapi
Ide yang benar-benar keren, dan saya ingin punya satu di rak buku saya
Katanya “masalah utama konfigurasi saat ini adalah frame rate yang rendah”, tetapi saya ingin menyebut ini fitur, bukan keterbatasan. Tidak buruk kalau kita punya waktu sejenak untuk memproses dan menerima gambar
Justru saya ingin memperpanjang interval pembaruan menjadi 5–15 menit, lalu setiap kali ada sesuatu yang berubah atau gerakan terdeteksi, sistem menangkap gambar baru dan membuatnya
Pernah mempertimbangkan memasukkan efek morphing dengan frame rate tinggi di antara gambar? Sepertinya bisa meningkatkan frame rate yang terasa dan terlihat cukup keren
https://hardwork.party/aws-epoch-optimizer/
Saya sangat menyukai arah pemikiran, “Seni terlalu kuat menyaring teknologi. Bisakah keduanya dibuat tidak berkorelasi?”
Saya memahami alasan menentang pendekatan AI generatif, tetapi dalam praktiknya, kadang ada ide keren yang muncul, sementara saya tidak punya keterampilan untuk membuatnya sendiri. Tidak mungkin juga menginvestasikan berbulan-bulan atau bertahun-tahun untuk setiap ide seperti itu, dan ide-ide itu juga tidak sepenting sampai harus membayar ratusan dolar kepada seniman terampil
Sekarang orang punya cara untuk menghasilkan apa yang mereka inginkan dan menikmatinya, dan itu hal yang baik. Setidaknya untuk penggunaan pribadi; kalau untuk tujuan komersial, masalahnya jadi agak rumit
Karena itu, ketika seseorang berkata “itu ide yang bagus”, makna sebenarnya lebih dekat ke “itu karya yang bagus”
Waktu yang akan menjawab apakah orang akan menganggap ide yang didukung karya AI sebagai sesuatu yang bernilai. Bisakah kita membedakannya? Tidak ada yang tahu
Tidak sembarang orang bisa membuat apa yang ditampilkan di sini, dan ini justru secara tidak sengaja memverifikasi bahwa dibutuhkan teknologi untuk membuat mesin yang mendistorsi realitas. Foto-foto yang dihasilkan itu bukan seni
Jika masalah utama dari konfigurasi saat ini adalah frame rate yang rendah, mungkin justru lebih baik menurunkannya lagi ke sekitar 0,3~1 fps!