讓現實世界的情感為人工智能所用(一)
發布時間:2019-12-11 來源:Michael Parks 責任編輯:wenwei
【導讀】guoqushushiwannianlai,rennaoyizhikanchengdiqiushangzuiqiangdadejisuanji。womendedanaoshiwuyulunbidejinhuajiezuo,tabujinjuyouluojihetuilinengli,gengjuyouchuangzaoliheqinggan。shizhirujin,kexuejiayiranrezhongyurennaodeshengwuxueyanjiu,ergongchengshizeshizhongzhiliyucaiyongguidianziheruanjianjishulaifukerennaodegongneng。
深度學習(DL)是一種機器學習(ML)技術。作為一項新興的人工智能(AI)技術,深度學習在第二代英特爾NCS(NCS2)中居於核心地位。深度神經網絡依靠ML算(suan)法(fa)和(he)樣(yang)本(ben)訓(xun)練(lian)數(shu)據(ju)來(lai)生(sheng)成(cheng)數(shu)學(xue)模(mo)型(xing)。要(yao)生(sheng)成(cheng)經(jing)過(guo)訓(xun)練(lian)的(de)模(mo)型(xing),需(xu)要(yao)非(fei)常(chang)大(da)量(liang)的(de)計(ji)算(suan)工(gong)作(zuo),隻(zhi)有(you)專(zhuan)用(yong)於(yu)重(zhong)度(du)計(ji)算(suan)的(de)硬(ying)件(jian)才(cai)能(neng)勝(sheng)任(ren),但(dan)訓(xun)練(lian)完(wan)成(cheng)後(hou)的(de)模(mo)型(xing)卻(que)可(ke)以(yi)運(yun)行(xing)在(zai)樹(shu)莓(mei)派(pai)(Raspberry Pi)、NCS2等相對低成本的硬件上。通過推測技術,這些模型在遇到新的現實世界輸入時便可以迅速作出預測。
例如,如果讓一個視覺模型處理成千上萬的紅色和綠色蘋果圖片,就可以訓練這個模型識別這兩種顏色的蘋果。然後,在NCS2上運行訓練過的模型,並將通過網絡攝像頭獲取的新圖像輸入到模型中,此時神經網絡便可以對攝像頭視野中的蘋果進行識別和分類。
物理計算:讓技術與現實更息息相關
就在不久前,創建人工大腦的想法還純粹是科幻小說中的腦洞。如今,雖然我們距離真正的通用AI還hai有you很hen長chang的de路lu要yao走zou,但dan技ji術shu正zheng持chi續xu以yi疾ji速su發fa展zhan,這zhe是shi不bu可ke否fou認ren的de。不bu過guo,雖sui然ran追zhui求qiu技ji術shu成cheng就jiu本ben質zhi上shang就jiu值zhi得de我wo們men為wei之zhi付fu出chu,但dan我wo們men不bu能neng忘wang了le生sheng活huo中zhong不bu可ke或huo缺que的de藝yi術shu和he創chuang造zao。物wu理li計ji算suan可ke以yi在zai無wu形xing的de數shu字zi技ji術shu與yu有you形xing事shi物wu的de更geng直zhi觀guan本ben質zhi之zhi間jian建jian立li起qi一yi座zuo橋qiao梁liang,並bing且qie項xiang目mu中zhong的de「黑科技」本身就有助於化解公眾接受新技術的障礙,而人工智能顯然就是一項可以從這種相關性中受益的創新。
在本文所述的項目中,我們將采用尖端的AI驅動機器視覺新技術,並將物理計算為人與技術間交互帶來的樂趣和新奇之處融會於其中。我們將使用兩個NCS2、一台樹莓派、yitaishexiangtouheshugesifudianjilaigoujianyitaimianbubiaoqingshibieshebei,takeyiguanchayigerendemianbubingquedingqibiaoqing,ranhougenjutedingzhongleidebiaoqingzaixianshishijiezhongzhixingmouxiedongzuo。
背景
如果您從沒有接觸過神經網絡或從未使用Python編寫過程序,那麼這個項目就非常適合用來了解這兩項技能,而且嚐試在一個項目中集成英特爾第二代神經計算棒(NCS2),這本身也是一種不錯的學習體驗。在此過程中,當您看到機器學習、深度學習、神經網絡等術語時,與其說它們寫在數據表或應用筆記裏麵,更不如說它們就好像從科幻小說的書頁裏飛出來一般。

圖1:人工智能是一個廣泛而深入的研究領域,本項目實現的是卷積神經網絡(CNN)
本項目的核心是NCS2。這是一款USB 3.0設備,嵌入式係統開發人員若要在自己的產品中實現基於視覺的智能,便可以通過這款設備獲得近乎即插即用的AI推理功能。NCS2基於Movidius Myriad X視覺處理單元(VPU)構建,這是一款針對AI優化的芯片,對基於卷積神經網絡(CNN)的視覺計算可以起到加速作用。使用此技術可以進行對象識別和分類(即識別攝像頭視野中是否存在人臉以及這張臉是否在微笑)。
如果您對這一切都感到陌生,無法理解一個想法如何最終變成一套使用NCS2並借助攝像頭來識別和分類物體,並且還真的能夠運行起來的係統,那麼我們不妨花點時間來厘清其中涉及的工作流程。
1、訓練神經網絡(NN):神經網絡的訓練可以采用多種機器學習框架來進行,包括Caffe、TensorFlow、Kaldi、MXNet和開放神經網絡交換(ONNX),其中部分框架可以在台式計算機上運行,還有一些能夠以容器的形式借助AWS或Google Compute Engine等雲服務來運行。對訓練神經網絡而言,算力(CPU和GPU)是最重要的因素;投入的算力越多,最終得出的模型就越快、越yue靠kao譜pu,因yin為wei要yao讓rang神shen經jing網wang絡luo檢jian測ce一yi種zhong物wu體ti,就jiu必bi須xu要yao用yong這zhe種zhong物wu體ti的de圖tu片pian來lai訓xun練lian它ta,而er且qie至zhi少shao需xu要yao用yong到dao數shu千qian張zhang描miao繪hui簡jian單dan物wu體ti的de圖tu片pian,因yin而er算suan法fa需xu要yao處chu理li大da量liang數shu據ju,最zui終zhong導dao致zhi的de結jie果guo就jiu是shi訓xun練lian神shen經jing網wang絡luo需xu要yao極ji高gao的de處chu理li能neng力li。如ru果guo使shi用yong監jian督du學xue習xi模mo式shi進jin行xing訓xun練lian,那na麼me訓xun練lian圖tu像xiang的de數shu據ju集ji必bi須xu事shi先xian進jin行xing標biao注zhu,這zhe也ye極ji有you可ke能neng耗hao費fei掉diao訓xun練lian人ren員yuan的de大da量liang時shi間jian。
2、下載模型:要yao讓rang我wo們men的de設she備bei檢jian測ce出chu攝she像xiang頭tou拍pai攝she到dao的de物wu體ti,模mo型xing訓xun練lian隻zhi是shi第di一yi步bu,無wu論lun它ta執zhi行xing起qi來lai是shi多duo麼me的de費fei時shi。在zai本ben文wen所suo述shu的de項xiang目mu中zhong,該gai模mo型xing將jiang檢jian測ce人ren臉lian,並bing對dui人ren臉lian所suo表biao現xian的de情qing感gan進jin行xing分fen類lei。英ying特te爾erNCS2可以和多種流行的框架一起使用,這些框架包括.caffemodel(Caffe)、.pb(TensorFlow)、.params(MXNet)、.onnx(ONNX)和.nnet(Kaldi)。
不過在這裏要告訴大家一個好消息:一些大神已經分享了他們以往訓練並生成的模型,並通過網絡提供下載;但(dan)就(jiu)和(he)采(cai)用(yong)其(qi)它(ta)預(yu)先(xian)構(gou)建(jian)的(de)軟(ruan)件(jian)一(yi)樣(yang),由(you)於(yu)每(mei)個(ge)用(yong)戶(hu)的(de)具(ju)體(ti)情(qing)況(kuang)各(ge)不(bu)相(xiang)同(tong),最(zui)終(zhong)的(de)效(xiao)果(guo)便(bian)會(hui)因(yin)人(ren)而(er)異(yi),也(ye)許(xu)並(bing)不(bu)一(yi)定(ding)如(ru)預(yu)期(qi)那(na)樣(yang)理(li)想(xiang)。不(bu)過(guo),在(zai)許(xu)多(duo)情(qing)況(kuang)下(xia),直(zhi)接(jie)使(shi)用(yong)預(yu)先(xian)訓(xun)練(lian)好(hao)的(de)庫(ku)就(jiu)已(yi)經(jing)足(zu)夠(gou)。在(zai)本(ben)文(wen)所(suo)述(shu)的(de)項(xiang)目(mu)中(zhong),我(wo)們(men)將(jiang)會(hui)用(yong)到(dao)人(ren)臉(lian)檢(jian)測(ce)模(mo)型(xing),並(bing)對(dui)檢(jian)測(ce)到(dao)的(de)人(ren)臉(lian)所(suo)做(zuo)出(chu)的(de)表(biao)情(qing)進(jin)行(xing)分(fen)類(lei)。
3、為推測硬件準備模型:獲取到經過訓練的模型後,下一步就是通過一定的準備工作讓它運行在選定的終端設備上。英特爾的OpenVINO工具套件正是為此準備的。該套件提供的模型優化器(Model Optimizer)可讀取Caffe、TensorFlow等神經網絡框架產生的數據,然後輸出中間表示(Intermediate Representation, IR)數據,其中包含一個.xml文件和一個.bin文件,前者包含了描述神經網絡拓撲結構的代碼,後者包含了二進製的權值和閾值數據;換言之,.xml文件描述了神經網絡內部如何互聯,.bin文件則表明了分配給每條路徑的值(權重)。
4、推測:目前為止,我們還沒有用上英特爾NCS2。正如前麵說的那樣,訓練模型需要由非常「高大上」的計算硬件來做。至於「推測」,說白了就是把新的輸入內容交給神經網絡來辨識、分類和處理,這就是NCS2發揮作用的地方了。OpenVINO將會讀取IR內容,對神經網絡執行準備工作,然後將之加載到選定的終端設備(本例中為NCS2)上,並設置所需的配置參數。隨後,NCS2上搭載的推理引擎(Inference Engine, IE)將執行該深度學習模型,並在提供輸入數據時對其進行推測。它還提供了一組便於使用的庫,以便將IE的輸出集成到定製的應用程序中。
5、使用API開發增值功能:數十年來,嵌入式係統的固件開發一直由C編程語言主導,但近年來Python在應用程序開發方麵越來越受到關注。隨著MicroPython和CircuitPython分支的創建,Python也開始涉足嵌入式開發領域。在本文所述的項目中,我們將采用英特爾的Python API與推理引擎進行交互。對於希望繼續使用C/C++的人士,英特爾還提供了一個C++庫。借助這套Python API,與推理引擎的交互問題便可轉化為簡潔的函數調用。
物料
本項目將使用4GB版本的樹莓派4單板機作為係統核心,此外還包括以下關鍵組件:

圖2:樹莓派4依舊保持了小巧的尺寸,但硬件進行了大幅度升級
1、兩個英特爾NCS2
2、一個OV5647攝像頭(也可采用USB攝像頭)
3、三個伺服電機
物料清單(BOM)
本項目的物料清單如表1所示。或者,您可以單擊此處訪問mouser.com加載預定義的購物車,一次性買齊這些部件。本文撰寫時,以下物料清單不含運費和稅費的總價約為370美元。
表1:AI+物理計算項目物料清單

工具和其他資源
以下所列是完成本項目推薦使用的工具:
● 基於Windows,運行OpenVINO工具套件的計算機
● 帶有HDMI端口的電腦顯示器或電視機
● 無線或有線Internet連接
● USB 3.0集線器
● USB鍵盤
● USB鼠標
● USB攝像頭(可選項,不使用OV5647攝像頭時需要使用)
● 剝線鉗
● 數字萬用表
● 尖嘴鉗
係統概覽

圖3:構思想法時,隨筆畫是一種不錯的做法
該係統由五個主要部件構成:
1、樹莓派:新款樹莓派可謂單板機(SBC)中的實力派,它搭載了一顆主頻1.5GHz的Broadcom BCM2711四核Cortex-A72 64位SoC,這裏我們采用的是帶4GB LPDDR4-2400 SDRAM的型號。該產品采用已成為現行標準的40引腳GPIO接頭與伺服電機進行交互。同時,樹莓派還將用於運行Python腳本、攝像頭和HDMI監視器的主機,並與兩個NCS2設備配合工作。
2、神經計算棒:NCS2設備上將運行兩個神經網絡,其中一個神經網絡負責對攝像頭獲取的視頻流進行分析,檢測視頻幀中是否出現人臉;另一個神經網絡則負責推測這個人的臉上流露出怎樣的表情。
3、攝像頭:攝像頭會將圖像流輸入到NCS設備進行分析。本項目中可以使用USB攝像頭,也可以使用Raspberry Pi OV5647攝像頭。運行Python腳本時,可以借助一個命令行標誌來設置使用的攝像頭。
4、伺服電機:三(san)個(ge)伺(si)服(fu)器(qi)將(jiang)與(yu)機(ji)械(xie)滑(hua)塊(kuai)一(yi)同(tong)使(shi)用(yong),以(yi)便(bian)與(yu)現(xian)實(shi)世(shi)界(jie)互(hu)動(dong)。具(ju)體(ti)而(er)言(yan),本(ben)項(xiang)目(mu)將(jiang)根(gen)據(ju)用(yong)戶(hu)對(dui)攝(she)像(xiang)頭(tou)呈(cheng)現(xian)的(de)表(biao)情(qing)向(xiang)用(yong)戶(hu)展(zhan)示(shi)不(bu)同(tong)顏(yan)色(se)的(de)花(hua)朵(duo):黃色表示快樂,藍色表示悲傷,紅色則表示憤怒。
5、HDMI監視器:HDMI監視器將用於向用戶顯示終端和攝像頭的輸出內容。
構建電子元件

圖4:硬件之間的連接非常簡單明了
本項目組裝非常簡單明了,唯一需要提出的建議是等到樹莓派完全啟動後再將NCS2插入USB中;如果在初次啟動前插入NCS2,樹莓派可能會無法啟動,雖然我們並不清楚問題是不是出在這裏。後續的啟動沒有問題,並且也不會再重現該問題。
1、將micro-HDMI轉HDMI適配器插入樹莓派。
2、將HDMI數據線插入電腦顯示器或電視機的HDMI端口。
3、將刷入最新版Raspbian的MicroSD存儲卡插入到樹莓派。有關如何將Raspbian操作係統安裝到MicroSD存儲卡上的說明,請單擊此處。
4、將USB鍵盤和鼠標插入USB 2.0端口,也就是帶黑色塑料連接器的USB端口,而不是帶藍色塑料連接器的USB 3.0端口。
5、安裝攝像頭。
(1) 如果使用OV5647攝像機,請輕輕打開連接器,插入排線,然後合上連接器。
(2) 如果使用USB攝像頭,請將其插入樹莓派的USB 3.0端口。
6、將USB-C電源的一端插入交流電源插座。
7、將USB-C電源的另一端插入樹莓派的USB電源插孔。
8、啟動樹莓派並完成初始設置,然後關閉樹莓派。初始設置步驟至此完成。

圖5:樹莓派的PIO接頭引腳分布
完成初始設置後,下一步就是安裝伺服電機。我們將在樹莓派上安裝三個伺服電機。
9、使用連接線將樹莓派的GND引腳連接到迷你試驗板的GND(藍色)電極。
10、使用連接線將樹莓派的5V引腳連接到迷你試驗板的電源(紅色)電極。
11、將每個伺服電機的GND電纜連接到試驗板的GND電極。
12、將每個伺服電機的Vcc電纜連接到試驗板的電源電極。
13、將第一個伺服電機的控製信號連接到樹莓派的GPIO12引腳。此為「快樂」伺服電機。
14、將第一個伺服電機的控製信號連接到樹莓派的GPIO13引腳。此為「悲傷」伺服電機。
15、將第一個伺服電機的控製信號連接到樹莓派的GPIO18引腳。此為「憤怒」伺服電機。
現在,伺服電機接線完成,接下來要進行最後的組裝步驟,就是實現與兩個NCS設備共同工作。
1、將兩個英特爾神經計算棒插入USB 3.0集線器。暫時先不要把集線器插入到樹莓派。
2、再次啟動樹莓派並登錄。
3、安裝運行NCS設備所需的軟件(參見本文的“軟件”一節),然後再次重新啟動樹莓派。看到指示後,將USB 3.0集線器插入樹莓派的USB 3.0端口。
出處:貿澤電子公眾號
微信號:mouserelectronics
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 1200餘家企業齊聚深圳,CITE2026打造電子信息產業創新盛宴
- 掌握 Gemini 3.1 Pro 參數調優的藝術
- 築牢安全防線:電池擠壓試驗機如何為新能源產業護航?
- Grok 4.1 API 實戰:構建 X 平台實時輿情監控 Agent
- 電源芯片國產化新選擇:MUN3CAD03-SF助力物聯網終端“芯”升級
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
MHL
Micrel
Microchip
Micron
Mic連接器
Mi-Fi
MIPS
MLCC
MMC連接器
MOSFET
Mouser
Murata
NAND
NFC
NFC芯片
NOR
ntc熱敏電阻
OGS
OLED
OLED麵板
OmniVision
Omron
OnSemi
PI
PLC
Premier Farnell
Recom
RF
RF/微波IC
RFID





