樱花草在线观看播放WWW,欧美日韩综合精品无人区,亚洲精品AV中文字幕在线,熟妇高潮喷沈阳45熟妇高潮喷

您好,上海自動化儀表自儀銷售網歡迎您!

官方微信|聯系我們|

上自儀微信

上海自動化儀表股份有限公司,上海自動化儀表有限公司

上海自動化儀表自儀銷售網熱線:

021-56413113021-56725115

您是否在找: 上海自動化儀表廠膜片壓力表|上海自動化儀表廠不銹鋼壓力表|
上海自動化儀表四廠簡介

在嵌入式IoT節點中運行機器學習代碼以輕松識別對象

來源:上海自動化儀表有限公司作者:發表時間:2020-10-13 13:55:03

 在動態環境中運行的物聯網(IoT)網絡已從對象檢測擴展到了在安全性,環境監控,安全性和工業物聯網(IIoT)等應用程序中包括可視對象識別。由于對象識別是自適應的,并且涉及使用機器學習(ML)模型,因此這是一個復雜的領域,可能很難從頭開始學習并難以有效實施。

 
困難源于一個事實,即ML模型僅與其數據集一樣好,并且一旦獲取了正確的數據,就必須對該系統進行適當的培訓以使其起作用,以使其實用。
 
本文將向開發人員展示如何將Google的TensorFlow Lite for Microcontrollers ML模型實現到Microchip Technology微控制器中。然后,它將說明如何在TensorFlow Lite中使用圖像分類和對象檢測學習數據集,以最少的自定義編碼輕松識別對象。
 
然后,它將引入Adafruit Industries的TensorFlow Lite ML入門套件,該套件可使開發人員熟悉ML的基礎知識。
 
嵌入式視覺系統的ML
廣義上講,ML為計算機或嵌入式系統提供了類似于人的模式識別功能。從人類感覺的角度來看,這意味著使用諸如麥克風和攝像機之類的傳感器來模仿人類對聽覺和視覺的感覺感知。盡管傳感器很容易用于捕獲音頻和視頻數據,但是一旦將數據數字化并存儲起來,就必須對其進行處理,以便可以與代表已知聲音或對象的存儲模式進行匹配。挑戰在于,例如,攝像機為視覺對象捕獲的圖像數據將與對象內存中存儲的數據不完全匹配。需要在視覺上識別對象的ML應用程序必須處理數據,以便它可以準確有效地將相機捕獲的圖案與存儲在內存中的圖案進行匹配。
 
有不同的庫或引擎用于匹配傳感器捕獲的數據。TensorFlow是一個用于匹配模式的開源代碼庫。TensorFlow Lite for Microcontrollers代碼庫專為在微控制器上運行而設計,因此減少了內存和CPU要求以在更有限的硬件上運行。具體來說,它需要一個32位微控制器,并使用少于25 KB的閃存。
 
但是,雖然TensorFlow Lite for Microcontrollers是ML引擎,但系統仍需要學習要識別的模式的數據集。不管ML引擎有多好,該系統僅與其學習數據集一樣好,對于視覺對象,某些學習數據集對于許多大型模型可能需要數GB的數據。更多數據需要更高的CPU性能才能快速找到準確的匹配項,這就是為什么這些類型的應用程序通??梢栽诠δ軓姶蟮挠嬎銠C或高端筆記本電腦上運行的原因。
 
對于嵌入式系統應用程序,僅應將應用程序必需的那些特定模型存儲在學習數據集中。如果系統應該識別工具和硬件,則可以刪除代表水果和玩具的模型。這減小了學習數據集的大小,從而降低了嵌入式系統的內存需求,從而在降低成本的同時提高了性能。
 
ML微控制器
為了運行用于微處理器的TensorFlow Lite,Microchip Technology的目標是使用基于Arm®Cortex®-M4F的ATSAMD51J19A-AFT微控制器在微控制器中進行機器學習(圖1)。它具有512 KB的閃存和192 KB的SRAM存儲器,并以120兆赫(MHz)的速度運行。ATSAMD51J19A-AFT是Microchip Technology ATSAMD51  ML微控制器系列的一部分。它符合汽車AEC-Q100 1級質量標準,并在-40°C至+ 125°C的溫度范圍內運行,使其適用于最苛刻的IoT和IIoT環境。它是一種低壓微控制器,在120 MHz下運行時的工作電壓為1.71至3.63伏。
ATSAMD51J19A基于以120 MHz運行的Arm Cortex-M4F內核。
 
ATSAMD51J19A聯網選項包括用于工業聯網的CAN 2.0B和用于大多數有線網絡的10/100以太網。這使微控制器可以在各種IoT網絡上運行。USB 2.0接口支持主機和設備操作模式,可用于設備調試或系統聯網。
 
處理ML代碼時,4 KB的組合指令和數據緩存可提高性能。浮點單元(FPU)對于改善ML代碼的性能以及處理原始傳感器數據也很有用。
 
存儲學習數據集
ATSAMD51J19A還具有用于外部程序或數據存儲器存儲的QSPI接口。對于超出芯片上閃存容量的學習數據集的額外數據存儲,這很有用。QSPI還具有就地執行(XiP)支持,用于外部高速程序存儲器擴展。
 
ATSAMD51J19A還具有SD / MMC存儲卡主機控制器(SDHC),對于ML應用非常有用,因為它可以輕松地交換ML代碼和學習數據集。TensorFlow Lite for Microcontrollers引擎可以在ATSAMD51J19A的512 KB閃存中運行,而學習數據集則可以定期進行升級和改進。學習數據集可以存儲在外部QSPI閃存或QSPI EEPROM中,并且可以根據網絡配置通過網絡進行遠程升級。但是,對于某些系統,將存儲卡與另一個具有改進的學習數據集的存儲卡進行物理交換會更方便。在此配置中,開發人員需要確定是否應將系統設計為熱交換存儲卡,或者是否需要關閉IoT節點。
 
如果IoT節點受到空間的限制,那么最好使用盡可能多的應用程序放入微控制器存儲器中,而不是使用外部存儲器。Microchip Technology的ATSAMD51J20A-AFT與ATSAMD51J19A相似,并且引腳兼容,不同之處在于它具有1 MB的閃存和256 KB的SRAM,從而為學習數據集提供了更多的片上存儲空間。
 
使用TensorFlow Lite開發微控制器
Adafruit Industries利用4317 TensorFlow Lite for Microcontrollers開發套件支持ATSAMD51J19A的開發(圖2)。該評估板具有2 MB的QSPI閃存,可用于存儲學習數據集。該套件帶有用于ML音頻識別的麥克風插孔。它的1.8英寸彩色160 x 128 TFT LCD可用于開發和調試。當TensorFlow Lite for Microcontrollers與語音識別學習數據集一起使用時,該顯示器還可用于語音識別演示。當應用程序識別不同的單詞時,它們可以顯示在屏幕上。
 
Adafruit Industries套件還具有八個按鈕,一個三軸加速度計,一個光傳感器,一個微型揚聲器和一個鋰聚合物電池。ATSAMD51J19A的USB 2.0端口被引到用于電池充電,調試和編程的連接器。
 
Adafruit套件隨附了適用于微控制器的TensorFlow Lite的最新版本??梢允褂肬SB端口將學習數據集加載到ATSAMD51J19A微控制器的512 KB閃存中,或加載到外部2 MB QSPI存儲器中。
 
為了進行圖像識別評估,可以將TensorFlow對象檢測學習集加載到開發板上。開發板具有用于連接微控制器的并行和串行端口的端口,其中許多端口可用于連接外部攝像機。將對象檢測學習設置加載到微控制器上后,LCD可以用于顯示對象檢測ML處理結果的輸出,因此,如果識別出香蕉,則TFT顯示屏可能會顯示識別出的對象以及百分比置信度。結果顯示示例可能顯示為:
 
香蕉:95%
扳手:12%
眼鏡:8%
梳子:2%
 
對于物聯網對象檢測應用程序的開發,這可以加快開發速度并幫助診斷任何不正確的檢測結果。
 
結論
ML是一個不斷擴展的領域,需要專門技能才能從頭開發微控制器和模型,并在邊緣高效地實現它們。但是,在低成本,高效的微控制器或開發板上使用現有的代碼庫(例如TensorFlow Lite for Microcontrollers)可節省時間和金錢,從而產生了可用于快速檢測IoT節點中對象的高性能ML系統,可靠,高效。
 
相關產品推薦: 磁性翻板液位計、 超聲波流量計智能雷達物位計、 智能電磁流量計、 智能壓力變送器