資料介紹
描述
介紹
警告:目前 Home Assistant 中的 Tensorflow 集成存在問題,這是由于在多個平臺上支持 Tensorflow 的復(fù)雜性而出現(xiàn)的。除非您對調(diào)試安裝問題非常有信心,否則我不建議您嘗試遵循本指南。另請注意,Hassbian 不再由 Home Assistant 維護。
TensorFlow是一種流行的開源機器學(xué)習(xí)框架,可用于圖像處理中的廣泛應(yīng)用,特別是用于對象檢測。家庭自動化項目中有許多對象檢測應(yīng)用,例如在攝像頭輸入中定位車輛或?qū)櫸锏葘ο螅缓蟾鶕?jù)這些對象的存在執(zhí)行操作(使用自動化)。Home-Assistant是一個流行的開源 Python 3 家庭自動化平臺,可以在 Raspberry Pi 上運行。TensorFlow 對象檢測在一些設(shè)置后可在 Home-Assistant 中使用,允許人們在他們的家庭自動化項目中開始使用對象檢測,而無需大驚小怪。Home-Assistant 文檔提供了開始使用 TensorFlow的說明對象檢測,但所描述的過程比典型的家庭助手組件要復(fù)雜一些。如文檔所述,此組件需要下載文件,在您的計算機上編譯,并添加到 Home Assistant 配置目錄。我在 GitHub 上托管了一些代碼來簡化設(shè)置過程,本指南將介紹熟悉的 Raspberry Pi 硬件上的簡化設(shè)置過程。
家庭助理設(shè)置
我在 Raspberry Pi 4 上使用 Home-Assistant 0.98 版的 Hassbian 部署,但請注意,其他 Home-Assistant 部署的步驟應(yīng)該相同(警告,Hassio 還不允許安裝 TensorFlow,所以不要嘗試它)。關(guān)于硬件的說明,TensorFlow 模型需要大約 1 GB 的 RAM,因此雖然可以在 RPI3 上運行,但體驗太差了,我什至不建議嘗試。作為最低要求,我推薦具有 > 2GB RAM 的 RPI4。
有關(guān)設(shè)置的更多信息,請參閱Hassbian 文檔,但基本過程是:
- 將 Hassbian 磁盤映像閃存到 SD 卡(我使用Etcher )
- 將您的 Wifi 憑據(jù)添加到 SD 卡上的文本文件中
- 將 SD 卡插入您的 Pi
- 插入鍵盤并顯示到 Pi 以監(jiān)控安裝過程
您可以通過連接到 Pi 的鍵盤來完成整個 TensorFlow 設(shè)置,但我建議通過 Hassbian 腳本安裝Cloud9 Web IDE。此 IDE 允許您從網(wǎng)絡(luò)上的任何計算機通過 Home-Assistant 前端執(zhí)行 TensorFlow 設(shè)置過程。按照此處的說明安裝 Cloud9 ,然后導(dǎo)航到http://hassbian.local:8181您現(xiàn)在可以使用面板 iframe在 Home-Assistant GUI 上顯示 Cloud9 IDE ,通過添加到 Home-Assistant configuration.yaml文件進行配置(通過 Cloud9 IDE 編輯):
panel_iframe:
cloud9:
title: cloud9
icon: mdi:wrench
url: http://hassbian.local:8181/ide.html
編輯文件后,最好使用配置驗證工具。要使用它,從側(cè)面板,配置 -> 常規(guī) -> 檢查配置(在配置驗證下))。

如果您從配置檢查工具中獲得確定,則需要重新啟動 Home-Assistant 以使更改生效(從側(cè)面板配置 -> 常規(guī) -> 重新啟動(在服務(wù)器管理下))。重新啟動時,您應(yīng)該看到以下內(nèi)容:

TensorFlow 設(shè)置
確保您正在運行 Home-Assistant 的最新版本。我建議您閱讀TensorFlow 組件文檔以了解設(shè)置過程,但在本指南中,我們跳過了幾個步驟,因為我在 GitHub 上提供了所需的代碼。
第 1 步:安裝 TensorFlow。我們需要 TensorFlow 可用于 Home-Assistant。從 Cloud9 IDE 中的命令行:
-
sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5
-
從 Pi 切換到 homeassistant 用戶 ->
sudo -u homeassistant -H -s
-
激活homeassistant python環(huán)境->
cd /srv/homeassistant/
然后source bin/activate
-
從 pypi -> 安裝 tensorflow
pip3 install tensorflow==1.13.2
(檢查當(dāng)前版本要求)
第 2 步:從我的 GitHub 獲取 TensorFlow 需要的文件。在任何計算機上,導(dǎo)航到:https ://github.com/robmarkcole/tensorflow_files_for_home_assistant_component并下載 ZIP 文件或克隆存儲庫。使用 Cloud9 IDE 將tensorflow/object_detection
存儲庫中的文件夾復(fù)制到 Home-Assistant 的配置文件夾中。生成的文件夾結(jié)構(gòu)如圖 2 所示。
第 3 步:為目標(biāo)檢測選擇合適的模型。我給這個步驟一個單獨的部分。
型號選擇
TensorFlow“模型”是具有擴展名的二進制文件,.pb
其中包含 TensorFlow 將用于執(zhí)行對象檢測的神經(jīng)網(wǎng)絡(luò)的權(quán)重。這是您無需擔(dān)心的細節(jié),但需要的是選擇合適的模型并將其放置在配置目錄中。正如組件文檔所建議的那樣,互聯(lián)網(wǎng)上有一系列可用的模型,或者您甚至可以創(chuàng)建自己的模型。一般來說,模型的準(zhǔn)確性和速度之間需要權(quán)衡取舍。由于 Raspberry Pi 的 CPU 和 RAM 有限,我們應(yīng)該選擇輕量級的型號,例如為手機設(shè)計的型號。TensorFlow 模型動物園提供可下載模型的列表,因此請導(dǎo)航至動物園自述文件并選擇模型。在這里,我們將遵循文檔建議并選擇ssd_mobilenet_v2_coco
模型。從命令行,并注意到我們?nèi)栽谑褂?/font>homeassistant
用戶配置文件:
TENSORFLOW_DIR="/home/homeassistant/c9workspace/homeassistant/tensorflow"
cd $TENSORFLOW_DIR
curl -OL http://download.tensorflow.org/models/object_detection/ssd_mobilenet_v2_coco_2018_03_29.tar.gz
tar -xzvf ssd_mobilenet_v2_coco_2018_03_29.tar.gz
請注意,我們設(shè)置環(huán)境變量TENSORFLOW_DIR
以確保將下載的文件放在本文中配置說明所需的位置。現(xiàn)在我們有一個可用的模型文件,我們可以配置 TensorFlow 組件。
TensorFlow 組件配置
您將需要一個相機源來提供圖像。我只是設(shè)置了一個local_file 相機,但您可以使用任何相機源。請注意您的相機的 entity_id(我的是camera.local_file
)并將以下內(nèi)容添加到您的 configuration.yaml 文件中:
image_processing:
- platform: tensorflow
scan_interval: 20000
source:
- entity_id: camera.local_file
model:
graph: /home/homeassistant/c9workspace/homeassistant/tensorflow/ssd_mobilenet_v2_coco_2018_03_29/frozen_inference_graph.pb
再次檢查您的配置更改是否有效并重新啟動 Home-Assistant。
TensorFlow 組件使用
現(xiàn)在是有趣的部分,使用 TensorFlow 組件!請注意,在重新啟動時 Home-Assistant 將在其日志中發(fā)出有關(guān)未安裝 OpenCV 的警告,您可以忽略此,因為 TensorFlow 可以改用 Pillow。另請注意,我們進行了配置scan_interval: 20000
,這意味著 TensorFlow 圖像處理不會自動執(zhí)行(默認(rèn)每 10 秒一次),而是僅在我們通過調(diào)用scan
服務(wù)觸發(fā)它時執(zhí)行,您可以從 Home-Assistant 前端的服務(wù)開發(fā)人員工具中執(zhí)行此操作. 下圖向您展示了 TensorFlow 組件如何顯示其結(jié)果:
?

您現(xiàn)在可以在 Home-Assistant自動化中使用對象檢測數(shù)據(jù)。Home-Assistant論壇是獲取自動化想法的好地方,請查看。
概括
在本文中,我們介紹了設(shè)置 Home-Assistant 以使用 TensorFlow 執(zhí)行對象檢測的過程,然后在相機圖像上執(zhí)行對象檢測。希望這將使您能夠以最小的麻煩將尖端的 AI 技術(shù)投入到您的家庭自動化項目中的生產(chǎn)中。
故障排除
- 當(dāng)我使用 Tensorflow 時,Home-Assistant 崩潰了,為什么?您可能沒有足夠的可用內(nèi)存,因為模型需要約 1 GB 的 RAM。終止 pi 上的一些進程,然后重試
使用碼頭工人?
社區(qū)成員創(chuàng)建了輪子以在此處的 Alpine linux docker 容器中安裝 tensorflow
- 使用Tensorflow的Raspberry Pi Covid口罩檢測器
- 使用Teachable Machine和Python輕松進行對象檢測
- 使用Sipeed MaiX板進行對象檢測(Kendryte K210)
- 使用MTCNN和用于ESP32-S3的TensorFlow Lite進行人臉檢測
- Home Assistant添加ESPHome設(shè)備(IO控制繼電器)
- 使用Arduino和TensorFlow進行喚醒詞檢測
- 使用TensorFlow對自平衡機器人進行手勢控制
- 使用MobileNet Single Shot Detector進行對象檢測
- Windows下利用Anaconda安裝Tensorflow教程
- 深度學(xué)習(xí)在視頻對象分割中的應(yīng)用及相關(guān)研究 9次下載
- 什么是TensorFlow數(shù)據(jù)流圖?詳細TensorFlow數(shù)據(jù)流圖(動圖)免費下載 9次下載
- 人工智能深度學(xué)習(xí)之TensorFlow的介紹,安裝和基礎(chǔ)的詳細資料概述 25次下載
- DAQ_Assistant的使用 0次下載
- 面向對象軟件自動生成在檢測系統(tǒng)中的應(yīng)用
- 一種對虛擬對象進行控制的系統(tǒng)設(shè)計
- OpenCV4.8 C++實現(xiàn)YOLOv8 OBB旋轉(zhuǎn)對象檢測 1778次閱讀
- YOLOv8實現(xiàn)旋轉(zhuǎn)對象檢測 1933次閱讀
- TensorFlow Lite實現(xiàn)移植到ART-Pi Smart 2088次閱讀
- 如何在LiDAR點云上進行3D對象檢測 2211次閱讀
- 基于樹莓派的TensorFlow對象檢測系統(tǒng)設(shè)計方案 1536次閱讀
- 如何用TensorFlow進行機器學(xué)習(xí)研究 1982次閱讀
- TensorFlow安裝手冊之如何利用pip安裝 TensorFlow 1.2w次閱讀
- Keras和TensorFlow究竟哪個會更好? 2.1w次閱讀
- TensorFlow都有哪些功能,大家是否都全部了解呢? 2.1w次閱讀
- TensorFlow Lite是TensorFlow針對移動和嵌入式設(shè)備的輕量級解決方案 2.6w次閱讀
- TensorFlow是什么?如何啟動并運行TensorFlow? 1.6w次閱讀
- TensorFlow發(fā)表推文正式發(fā)布TensorFlow v1.9 3130次閱讀
- 如何結(jié)合TensorFlow目標(biāo)檢測API和OpenCV分析足球視頻 6403次閱讀
- TensorFlow的框架結(jié)構(gòu)解析 7124次閱讀
- tensorflow 訓(xùn)練模型之目標(biāo)檢測入門知識與案例解析 1.6w次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護等級說明
- 0.08 MB | 次下載 | 免費
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細說明
- 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藍牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
- 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免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論