Kami memiliki beberapa hari di antara proyek-proyek besar, dan kami memutuskan untuk mengejek pintu kepala unit. Hanya untuk bersenang-senang. Karena drone sudah mengenali kita di wajah kita - apa yang membuat pintu lebih buruk?
Pada saat dimulainya proyek TI, kami sudah memiliki panel patch yang dicetak pada printer 3D. Dalam dua hari, kami membuat prototipe perangkat dari besi, perpustakaan siap pakai, dan beberapa ibu, yang memperhitungkan karyawan akun atau memungkinkan kami memverifikasi bahwa seseorang melewati pintu putar melalui karyanya.
Tidak ada uang Kami hanya menggunakan sumber terbuka.
Anda dapat mengulangi ini dalam 15-20 menit dengan skrip kami.
Gagasan dan pendekatan implementasi
Semuanya dimulai dengan kediaman musim panas, di mana kami beristirahat setelah selesainya satu proyek besar. Ada saat-saat ketika sangat sulit untuk mencapai gerbang dengan kunci. Dalam arti bahwa kami segera berpikir bahwa mengeluarkan tangan dari kantong kami di musim dingin adalah buruk, yah, kami membuat banyak aplikasi lain, hingga memeriksa kartu staf dan identitas.
Sebenarnya, kami ingin membuat koridor dengan sinar laser, seperti dalam film Resident Evil, tetapi kami tidak punya waktu. Secara umum, saya ingin efek interaksi dengan sistem sehingga juga merespons dengan suara.
Karena kami menginginkan prototipe, berikut ini adalah orientasi maksimum pada fungsi dan hasil yang cepat sehingga merusak penampilan, dimensi, dan arsitektur yang indah. Ternyata menakutkan, tetapi dengan cepat dan berhasil.
Pertama, kami memecah kontrol pintu menjadi modul dan masing-masing mulai menulis sendiri. Modul pengakuan pada hari pertama adalah eksternal dari layanan web mitra, masih ada mesin jaringan saraf internal lama kami dari proyek lain, ditambah ada solusi open source. Akibatnya, ia memenangkan open source: mesin kami sendiri membutuhkan refactoring dan pembaruan (ini butuh waktu lama), sumber daya web mitra menginginkan uang dan tidak membiarkannya masuk, tetapi open source adalah open source.
Elektronik dan perumahan
Awalnya, mereka mempertimbangkan opsi untuk hanya membeli kunci yang dikontrol secara elektronik dan menggantinya dengan kunci pintu internal standar. Tetapi karena kehadiran kaca dengan daun jendela di pintu, kunci internal luar biasa sempit dan tidak ada penggantian elektronik di pasaran. Oleh karena itu, insinyur kami mencetak gembok yang dapat dilepas, menyediakan wadah untuk unit kontrol dan unit pembuka kunci di dalamnya.
Jadi, proyek bangunan:
Kami mencetaknya dari model yang telah kami lakukan sendiri sebelum proyek (pemodelan dan pemasangan membutuhkan lebih banyak waktu daripada menulis kode):
Desain case dibuat dalam Compass-3D. Alhasil, Dima membuat 3 versi kasing, asalkan ia bisa memilih susunan elemen dan pengencang yang optimal.
Di dalam kotak kunci, motor MG-995 dengan kekuatan 10 kg (gaya engkol sebenarnya adalah 5-7 kg), sepasang sensor inframerah untuk mengontrol otomatisasi di pintu masuk dan keluar, mikrokontroler Esp8266 dengan modul Wi-Fi dan server web yang, untuk kesederhanaan, menerima perintah kontrol untuk membuka dan menutup pintu melalui http. Pengontrol yang sama memutar persneling kunci.
Bagian perangkat lunak mikrokontroler ditulis dalam C.
Tenggelam dalam perincian pembuatan kasing dan isiannya, kami tanpa sadar memikirkan kerumitan benda yang tampaknya sederhana.
Total: unit kontrol kunci dapat menerima perintah pembuka melalui Wi-Fi.
Bagian Pengenalan Wajah
Kita membutuhkan unit pengenal wajah yang akan mengirim perintah "terbuka" ke kastil jika perlu dibuka. Karena arsitektur modular, ini dapat bekerja pada server mini di rumah pintar atau menjadi layanan web di Internet. Kami juga membutuhkan titik Wi-Fi di jaringan lokal dengan unit kontrol kunci: itu adalah thin client atau server rumah. Kami menyebarkan server secara langsung pada laptop lama, yaitu, kami menggabungkan server dan thin client. Mereka menghubungkan kamera ke laptop melalui USB.
Untuk pengakuan itu sendiri, kami berhenti di
pengenalan wajah perpustakaan Python di bawah lisensi terbuka dari Massachusetts University of Technology.
Beberapa foto dari masing-masing peserta proyek diunggah ke model - di depan, di profil dan di alam. Secara teori, semakin banyak foto yang Anda unggah ke model, semakin tinggi akurasinya, tetapi dalam kebanyakan kasus ada cukup avatar dari Facebook atau gambar dari database eychars.
Kami menggunakan infrastruktur sebagai layanan di
Technoserv Cloud kami dan dengan cepat melakukan debug. Menyebarkan mesin virtual baru dengan semua layanan membutuhkan waktu 20 menit. Kemudian mereka mengunggah semua kode dengan perpustakaan ke laptop yang berfungsi untuk pekerjaan otonom.
Sistem memilih wajah terbesar dalam bingkai dan mengenalinya 2 kali dengan frekuensi 0,5 detik.
Kamera web keluar dari kotak hal-hal yang terlupakan dari tahun 90-an. Apa yang sudah, tapi itu sudah cukup.
Total waktu pengenalan adalah lebih dari tiga detik. Ini karena laptop sudah sangat tua dan tidak memiliki kartu video. Dengan vidyuha dan kecepatan pengenalan web-kamera yang cepat akan meningkat secara signifikan.
Mereka segera menulis konektor untuk pengenalan suara, karena hanya wajah yang agak tidak dapat diandalkan (lebih lanjut tentang ini nanti), dua faktor diperlukan.
Butuh 6 jam untuk prototipe yang kurang lebih debugged setelah memilih perpustakaan.
Kami juga menghubungkan speaker bluetooth ke laptop sehingga dia bisa berbicara. Laptop itu sendiri disembunyikan di lemari dengan surat ucapan terima kasih, seperti perangkat tertanam.
Tes
Deskripsi perpustakaan mengatakan: βDibangun menggunakan pengenalan wajah canggih
dlib yang dibangun dengan pembelajaran yang mendalam. "Model ini memiliki akurasi 99,38% pada
label berlabel di benchmark
Wild ." Secara alami, tidak ada 99,38%, tetapi jauh lebih sedikit. Karena Anda perlu memuat foto normal (dan banyak lagi), atur kamera normal dan samakan lampu. Tetapi karena, saat Anda menggali di pintu, ia berhasil membuat 4-5 bingkai, biasanya terbuka hampir seketika.
Kesalahan: beberapa kali pintu menjadi bingung dan tidak membiarkan kami segera pergi. Orang asing dari departemen lain tidak bisa masuk.
Anda dapat membuat wajah di pintu, dia mengerti segalanya dan terbuka.
Menurut foto karyawan itu, tentu saja, itu terbuka. Kami menambahkan modul pengenalan orang secara keseluruhan di versi berikutnya (di luar beberapa hari ini), dan modul itu mulai terbuka hanya untuk bust.
Kemudian mereka memutar tes untuk warna (perpustakaan downsamplit dan mengambil gambar hitam dan putih ke dalam pemrosesan), gerakan wajah dan berkedip - Anda perlu kamera yang lebih baik untuk melihat seseorang ketika dia masih sehat, dan semuanya akan menjadi.
Artinya, sebagai pengganti kunci, tentu saja tidak, karena faktor kedua diperlukan - misalnya, suara. Tetapi cocok untuk pintu tidak kritis. Untuk memperhitungkan karyawan yang lewat di pintu juga. Untuk memeriksa apakah seorang karyawan cocok dengan pass di pos pemeriksaan juga. Anda juga dapat mengenali anjing yang kembali ke rumah di dekat pintu. Jika Anda ingat sejarah pengenalan pola, maka salah satu aplikasi industri pertama adalah bahwa pengembang Amerika mendapat kucing tetangga, omong kosong di halaman. Dia membuat pengakuan kucing di semi-squat dan menghubungkan sistem irigasi ke mini-server-nya. Setelah beberapa hari, kucing itu menyadari bahwa lebih baik tidak omong kosong. Tidak pernah. Tidak ada tempat
Kasingnya ternyata futuristik dan besar, dalam versi komersial tidak boleh ada apa-apa di pintu, kecuali untuk kamera dengan mikrofon dan layar kecil dengan asisten visual dan audio.
Ulangi di rumah
Tautan ke perpustakaan di atas.
Dalam skrip itu sendiri, nama-nama karyawan (Emp1, Emp2) sesuai dengan file dengan foto mereka di direktori, Anda perlu menambahkan sendiri. Resolusi tidak masalah, Anda setidaknya dapat 640x480. Ada dua kategori karyawan - yang ditargetkan, siapa yang dilewati, dan mereka yang segera mengirim pulang.
Sebagai kamera, kami menggunakan webcam logitech paling sederhana. Alih-alih laptop, sangat mungkin untuk menggunakan mikrokontroler, tetapi Anda perlu memahami cara menempatkan python dan perpustakaan yang dipilih di atasnya.
Hasil
Teknologi itu dirasakan oleh penjual departemen tetangga yang bekerja bersama kami di lantai yang sama. Kotak kunci yang dilapis terlihat sangat keren, dan dengan bunyi apa itu membuka pintu! Jangan percaya, tapi promosi internal teknologi sama pentingnya dengan promosi eksternal.
Kami ditanya beberapa kali mengapa kami melakukan ini setelah jam.
Jawabannya adalah karena saya benar-benar ingin menghibur teman-teman kami sehingga mereka merasakan teknologi yang kami gunakan pada perangkat yang berfungsi. Karena ini adalah prototipe pada perangkat keras dan perangkat lunak segera dan itu adalah sesi pelatihan kecil sebelum proyek yang lebih besar. Tidak mungkin prototipe itu sendiri akan digunakan di suatu tempat, tetapi ia memiliki fungsi dan moralitas pendidikan.
Kami memastikan seberapa cepat prototipe industri dapat dibuat. Kami biasanya melakukan proyek percontohan cepat (2-3 minggu) untuk produksi. Ngomong-ngomong, jika menarik untuk cepat menghitung sesuatu dalam hal otomatisasi dan membuat pilot - ini hanya spesialisasi tim kami.
Email tmishin@technoserv.com jika itu.
Terasa seperti setelah hackathon yang baik.
Dan sekarang kita punya mainan.
Seorang rekan datang berlari kemarin dan menunjukkan video
drone dengan penyembur api . Kami tampaknya memiliki beberapa ide ...
Saya juga mengatakan semua ini pada kenyataan bahwa secara harfiah 3-4 tahun yang lalu sangat mahal dan lama untuk menulis detektor industri untuk pengawasan video. Untuk mengontrol ukuran fraksi material pada sabuk konveyor, untuk berhenti jika ada benda asing, untuk mematikan ketika bekerja di zona bahaya dan sebagainya. Hari ini sedang dilakukan sangat, sangat cepat. Dan jauh lebih murah. Tidak secepat pintu, tetapi seorang pilot dalam 2 minggu adalah perkiraan yang sangat realistis.