資料介紹
描述
我的妻子對我不斷地打開車庫門感到沮喪。老鼠會在一夜之間進(jìn)來,我們會在房子的陷阱里找到它們。當(dāng)然,我可以為我的車庫開門器買一個便宜的 Wifi 適配器,然后通過應(yīng)用程序遠(yuǎn)程關(guān)閉它們,但那有什么樂趣呢?我想我可以使用我新購買的 Google AIY Vision 套件,看看我可以用計算機(jī)視覺做什么!
對于那些想要熟悉 Vision Kit 的人,它由一個 Raspberry Pi Zero WH、一個 Raspberry Pi V2 相機(jī)和一個 Vision Bonnet(一個 Myriad 2450 ML 加速器)以及其他一些東西(LED、蜂鳴器)組成。在嘗試了微笑檢測器和其他示例之后,我想使用該套件。
我將套件放在一個小架子上,??該架子安裝在車庫中,面向車庫門。完全可選,但我將套件插入智能插頭,因此它可以在晚上斷電并在早上啟動(它在一夜之間運(yùn)行有什么意義?)。
首先,我需要為計算機(jī)視覺模型收集一些數(shù)據(jù)。我編寫了一個簡單的 Python 腳本來拍攝照片并使用時間戳保存。然后我設(shè)置了一個 cron 作業(yè),從日出到日落每小時運(yùn)行一次該腳本。我這樣做了大約一周,以獲得模型的良好照明范圍和不同狀態(tài)(一扇門打開,兩扇門打開,兩扇門都關(guān)閉,車庫空,車庫里有 1 或 2 輛車)。Python腳本代碼如下:
#!/usr/bin/env python3
#Take some photos of the garage to further improve the image classifier
#Run hourly as a cron job during daylight hours
from datetime import datetime
from picamera import PiCamera, Color
#set the filename path for the garage photos
timenow = datetime.now()
timeStr = timenow.strftime("%m-%d-%Y-%H%M%S")
file_path = '/home/pi/garage_screenshots/garage_' + timeStr + '.jpg'
with PiCamera(sensor_mode=4, resolution=(1640, 1232), framerate=30) as camera:
camera.capture(file_path)
一旦我有足夠的照片,我就利用了 Vision Kit教程中的Google Colab 。它運(yùn)行一個默認(rèn)的花卉分類模型,所以我不得不用我車庫里的照片替換花卉照片。鑒于 Colab 只是一個臨時實例,您必須在每次運(yùn)行時將照片上傳到 Colab。能夠使用 Google GPU 來訓(xùn)練您的模型需要付出很小的代價。我創(chuàng)建了一個帶有 2 個子文件夾的garage_photos 文件夾:打開和關(guān)閉。這些子文件夾與您將從模型中獲得的推理標(biāo)簽對齊。我在打開的文件夾中填充了至少一個車庫門打開的照片,并在關(guān)閉的文件夾中填充了兩扇門都關(guān)閉的照片這是我在 Colab 中所做的更改:
python scripts/retrain.py \
--bottleneck_dir=tf_files/bottlenecks \
--how_many_training_steps=500 \
--model_dir=tf_files/models/ \
--summaries_dir=tf_files/training_summaries/$ARCHITECTURE \
--output_graph=tf_files/retrained_graph.pb \
--output_labels=tf_files/retrained_labels.txt \
--architecture=$ARCHITECTURE \
--image_dir=tf_files/garage_photos
所有其他步驟保持不變。我將 Google Colab 的本地副本保存到我的 Google Drive,這樣我就不必每次運(yùn)行 Colab 時都更新它。根據(jù)輸出,我的模型在驗證和測試數(shù)據(jù)方面的準(zhǔn)確度低于 90 年代。對我來說已經(jīng)足夠好了,我可以不斷添加更多照片來改進(jìn)模型結(jié)果。
Colab 完成后,我下載了模型(創(chuàng)建了兩個文件:retrained_graph.binaryproto 和 retrained_labels.txt)并將它們復(fù)制到 Raspberry Pi Zero。
現(xiàn)在,檢查車庫門狀態(tài)的腳本!我也保持這個簡單,添加一個 cron 作業(yè)來只運(yùn)行一次腳本(接近黃昏,所以我改變時間,因為我們得到更多或更少的陽光)。我*大量*利用 Google 的mobilenet_based_classifier.py Python 腳本來輸入模型參數(shù)并運(yùn)行推理。結(jié)果出來后,我拍攝了一張相機(jī)(只是為了驗證推理結(jié)果)并使用 smtplib 將車庫門的狀態(tài)和照片通過電子郵件發(fā)送給我和我的妻子。我還設(shè)置了一個 Twilio 試用帳戶,以使用 Twilio API 發(fā)送車庫門狀態(tài)的文本消息(雖然沒有圖像,以保持更便宜)。當(dāng) cronjob 運(yùn)行時,成功!


未來的改進(jìn)?
下一個是什么?我認(rèn)為下一步對我來說是自動化它!如果車庫門是開著的,我還是得下樓把它關(guān)上。那是多大的痛苦?:) 如果程序檢測到車庫門是打開的,為什么不讓程序關(guān)閉它呢?
這將是該項目的第 2 版。我開始使用視覺套件測試一個 2 通道繼電器開關(guān),并且我能夠運(yùn)行一個簡單的腳本來打開和關(guān)閉每個繼電器(但是男孩,鑒于它是一個Raspberry Pi 上帶有 3.3V 邏輯的 5V 繼電器!)。我計劃將繼電器的電線連接到車庫門開啟器的按鈕,并在程序檢測到門打開時觸發(fā)它們。我還必須更新模型以區(qū)分兩個車庫門。現(xiàn)在我的模型只關(guān)心一扇門是開著還是關(guān)著。

我希望你喜歡這個項目。了解 Vision Kit 的內(nèi)部工作原理,然后將其重新用于我家的實用工具,這很有趣。隨時給我留下任何評論和/或反饋。謝謝!
- 如何使用DTK開發(fā)應(yīng)用程序? 3次下載
- 毫米波傳感器跟蹤應(yīng)用程序下載 22次下載
- 顫振試驗應(yīng)用程序資源下載 7次下載
- 繼電器M掉電測試應(yīng)用程序下載 13次下載
- 電機(jī)正反轉(zhuǎn)互鎖控制應(yīng)用程序源碼下載 42次下載
- matlab應(yīng)用程序及源代碼下載 36次下載
- Visual C++和MFC創(chuàng)建的應(yīng)用程序基礎(chǔ)知識 0次下載
- 遠(yuǎn)程電腦桌面批量管理器應(yīng)用程序免費(fèi)下載 8次下載
- AVR程序編譯器avrubd應(yīng)用程序免費(fèi)下載 53次下載
- Xshell5遠(yuǎn)程連接工具應(yīng)用程序免費(fèi)下載 1次下載
- 關(guān)閉WIN10升級工具應(yīng)用程序免費(fèi)下載 2次下載
- Radmin遠(yuǎn)程控制軟件應(yīng)用程序免費(fèi)下載 6次下載
- 遠(yuǎn)程網(wǎng)絡(luò)處理器應(yīng)用程序和與自定義應(yīng)用程序的詳細(xì)資料免費(fèi)下載 3次下載
- 基本的遠(yuǎn)程控制器示例應(yīng)用程序的詳細(xì)資料免費(fèi)下載 4次下載
- 遠(yuǎn)程網(wǎng)絡(luò)處理器應(yīng)用程序的詳細(xì)資料免費(fèi)下載 7次下載
- AWTK-WEB 快速入門(1) - C 語言應(yīng)用程序 257次閱讀
- 【從0開始創(chuàng)建AWTK應(yīng)用程序】創(chuàng)建應(yīng)用程序并在模擬器運(yùn)行 541次閱讀
- SEW-MOVIPRO啟動應(yīng)用程序配置程序 846次閱讀
- PreEmptiveProtection:全面的移動應(yīng)用程序保護(hù) 683次閱讀
- 怎么使用uboot引導(dǎo)應(yīng)用程序? 1545次閱讀
- 聊聊PHP的web應(yīng)用程序開發(fā)框架存在的漏洞有哪些 1834次閱讀
- DPU編譯應(yīng)用程序的不同方法 1769次閱讀
- 如何通過網(wǎng)絡(luò)和openHAB控制車庫門的打開及關(guān)閉 3525次閱讀
- 淺談RAM 執(zhí)行應(yīng)用程序 3262次閱讀
- 利用Android應(yīng)用程序進(jìn)行智能燈泡的無線控制方案 4229次閱讀
- HarmonyOS應(yīng)用程序Ability的作用 2573次閱讀
- 八個將在未來發(fā)揮重要作用的Web應(yīng)用程序的API 2416次閱讀
- 基于LabVIEW和單片機(jī)實現(xiàn)DSP應(yīng)用程序代碼的自舉模塊設(shè)計 2093次閱讀
- 應(yīng)用程序安全怎樣來提供保障 1230次閱讀
- Windows應(yīng)用程序,操作系統(tǒng),計算機(jī)硬件之間的相互關(guān)系 1.2w次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費(fèi)
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費(fèi)
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費(fèi)
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費(fèi)
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費(fèi)
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費(fèi)
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護(hù)等級說明
- 0.08 MB | 次下載 | 免費(fèi)
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細(xì)說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍(lán)牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費(fèi)
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論