英特爾邊緣軟體中心(Edge Software Hub)開箱即用的AI軟體解決方案實作

什麼是英特爾邊緣軟體中心?



您是否在使用OPENVINO開發AI專案時,需要花時間設計軟體架構,或因為之前所使用的環境參數,版本不同,比如cmake, 或python,而需要使用虛擬環境或是再找新的機器安裝的困擾呢?
英特爾邊緣軟體中心或許可以幫您解決這個問題。

英特爾邊緣軟體軟件包和產品使用英特爾® 優化架構的邊緣解決方案(包括電腦視覺和深度學習應用程式)更加簡單。如下圖首先依照您所需架構類型,然後從英特爾、第三方或開源軟件中選擇您需要的應用軟體方案。







英特爾邊緣軟體加快開發,減少實驗、測試和創作時的準備工作。相對于原來的方式,這個方式解決了部署安裝效率問題
因為所有組件,包含Inference的對象都已經在包中,只要STEP完,即可演示


為了達到這個目的,英特爾邊緣軟體軟體方案使用容器(Docker container),在單個融合邊緣系統上運行多個工作負載(workloads),並管理傳感器和應用程序之間的數據流。無論是從頭構建還是定制預製的參考實施,我們都提供有用的資源來加快您的開發。

瀏覽英特爾邊緣軟件中心

點選進入英特爾邊緣軟體中心後,首先您會看到多個選項,包含使用案例,軟件包,硬件。 點選案例您可以按照分類搜尋您有興趣的方案。如下圖,參考的執行案例可分為兩部分一部分是範例應用程式(Real Sample Applications),這些真正落地過的範例應用程式允許使用者依照需求自行變更及客製化。另
一部分稱為使用者案例(User Cases),提供所有必要並預先設定好的軟體,依照各自需求重頭架構起一個完整的應用方案 。




點選軟件包,您可以找到有用的教學資源,和開發工具。

點選硬件如下圖,您可以找到英特爾預先驗證過的效能硬件平台。您可以依照您的需要點選適合您的選項。


在英特爾邊緣軟體中心網頁末端,有個英特爾邊緣軟體中心專屬論壇的超連結,如果您有任何安裝上的問題,英特爾的技術人員會提供有用的協助。


英特爾邊緣軟件中心配置和下載過程

在我們展示如何安裝並執行英特爾邊緣軟體中心軟體解決方案前,我們必須先前往下載所需要的軟體。首先,點選想要的範例應用程式(Real Sample Applications)或是使用者案例(User Cases)您會被要求登入英特爾的帳號如下圖。不用擔心,註冊英特爾帳號不需要任何費用或條件
,您只要按照指示填入空格資料便可以完成註冊跟下載。


一旦填入了正確地的註冊資料後,下載頁面就會出現,這時候要注意下載的作業系統和您要安裝的作業系統及OpenVino版本是否相符,另外您也可以點選硬體的支援規格,查看您要安裝的硬體是否符合標準以期達到安裝後的方案效能,確認後點選下載,便會進入License的頁面,點選確認後便會出現下載進
頁面並下載至您的下載預設路徑下。下載後,系統會依照您提供的email寄送一組product key至您的email,請妥善保管,在下章節安裝時會用的。

在容器 (Container) 中安裝和運行智能流量管理的案例實作

英特爾邊緣軟體中心的運行智能流量管理方案是一個使用OpenVino開箱即用的軟體方案案例,如下圖,這套系統允許我們偵測交通流量,包含行人及車輛經過的數量(Tracking),並提供一個資料庫(influx DB)結合的 Dash Board(Grafana)可以即時顯示數據。運行智能流量管理方案並可以偵測車輛的碰撞
(Collision detection),並在Dash Board上面做統計,使用者也可以依需要規劃電子圍籬(Areas of interest),只有在指定的範圍內才會被系統偵測,並統計數量。


下載的軟體通常是一包*.zip的檔案,請將下載的檔案,如下圖放在您要安裝專案的位置並且準備您的product key。


如下圖,打開一個終端機程式,並變換到您放置*.zip的專案位置,然後使用unzip程式來解壓縮*.zip的檔案。之後,使用chmod 755指令將edgesoftware這支程式轉換為可執行的程式,然後執行edgesoftware,畫面會跳出輸入product key的訊息。這是將您所收到的或是下載頁面上的
product key拷貝並貼到終端畫面上並按下enter鍵,系統變會開始偵測,並判斷您目前的硬體是否適合執行目前這個方案。


如果環境沒問題,系統便開始下載並安裝,這時要確保網路的連接順暢,才能在最短的時間內安裝完成並出現以下的成功訊息。

安裝成功後,便能在intelligent_traffice_management下方看到已經建構好一樣但大寫名稱加版本的目錄,比如Intelligent_Traffice_Management_2004,裡面包含了另一個一樣大寫名稱但無版本的目錄Intelligent_Traffice_Management,如果裡面包含一個目錄和兩個檔案其中一個安裝解說的檔案如
下圖就對了。


再次看到一個intelligent-traffice-management,進入後可以看到如下圖的docker的執行檔案,在終端機上變換到此目錄下,


這時我們必須在我們的環境來執行smart city範例,要做這件事情,我們要在我們的平台上重新建置過smart city docker,在終端機下以root權限來執行以下build docker指令,

$sudo docker build --no-cache -t smart_city .

萬一在建置過程中出錯,請到官網上的trouble_shooting中看看是否有known issues的發生在這過程當中docker換安裝所需要的OpenVino版本,下載所需要的AI模型,測試影片和執行所需要的所有函示庫。一旦建置成功我們可以用下面的docker指令來看看這個範例的images, intelligent-
traffice-management-* 是否存在

$sudo docker images



此時我們可以更改執行 run.sh權限,並執行run.sh便會呼叫起範例影片如下圖,顯示對人和車輛的追蹤偵測(Tracking)



要執行物件碰撞偵測,並顯示bounding box,依照文件中的指示鍵入以下指令便可帶出範例影片並進行追蹤辨識

$sudo docker run -it --net=host --env DISPLAY=$DISPLAY --memory 500m --health-cmd='stat /etc/passwd || exit 1' --volume $HOME/.Xauthority:/root/.Xauthority:rw smart_city /bin/bash -c "source /opt/intel/openvino/bin/setupvars.sh && ./smart_city --input ../data/video82.mp4 --vp_model ../models/person-vehicle-bike-detection-crossroad-0078/FP16/person-vehicle-bike-detection-crossroad-0078.xml --vp_proc ../model_proc/person-vehicle-bike-detection-crossroad-0078.json --tracking --collision --threshold 0.7"



要執行電子圍籬的規劃,並顯示出bounding box,依照文件中的指示鍵入以下指令便可帶出範例影片並執行範圍的規劃

$sudo docker run -it --net=host --env DISPLAY=$DISPLAY --memory 500m --health-cmd='stat /etc/passwd || exit 1' --volume $HOME/.Xauthority:/root/.Xauthority:rw smart_city /bin/bash -c "source /opt/intel/openvino/bin/setupvars.sh && ./smart_city --input ../data/video82.mp4 --vp_model ../models/person-vehicle-bike-detection-crossroad-0078/FP16/person-vehicle-bike-detection-crossroad-0078.xml --vp_proc ../model_proc/person-vehicle-bike-detection-crossroad-0078.json --tracking --collision --show_selection"



最後針對剛剛展示影片中所收集的資料經過資料庫(influx DB)的處哩,我們可以將統計數續顯示在Grafana Dash Board上面,如下圖,要檢視Dash Board我們可以打開網頁並打入網址:

http://localhost:3000/login

內建帳號及密碼皆為 admin



經由以上的圖表,使用這可以清楚且即時的看到人數,車輛,碰撞的數字變化。

★博文內容參考自 網站,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論