資料介紹
描述
介紹
最近,我參加了一項(xiàng)名為“ Azure Data and AI Challenge ”的云技能挑戰(zhàn)賽,該挑戰(zhàn)賽由微軟發(fā)起,旨在讓開(kāi)發(fā)人員在探索多樣性和包容性的旅程中學(xué)習(xí) Azure Data & AI 技術(shù)以及可訪問(wèn)性??捶?。就我而言,我非常喜歡這種學(xué)習(xí)形式,因?yàn)槊總€(gè)模塊都包含明確的目的、詳細(xì)的概念解釋、分步教程,以及免費(fèi)的 Azure 云資源供用戶練習(xí)。這讓我想起了我在課堂上的經(jīng)歷。我們不僅要知道“什么”,還要學(xué)會(huì)知道“怎么做”。
我遇到的一個(gè)特殊學(xué)習(xí)模塊稱為“使用自定義視覺(jué)分類瀕危鳥(niǎo)類”。在本模塊中,我們使用 Azure 認(rèn)知服務(wù)自定義視覺(jué)創(chuàng)建模型來(lái)識(shí)別鳥(niǎo)類的種類!更具體地說(shuō),我們可以構(gòu)建一個(gè)機(jī)器學(xué)習(xí)模型,該模型將按物種識(shí)別圖像中的鳥(niǎo)類。
巧合的是,上周有一個(gè)鴿子家庭加入了我們,并在我的窗前筑了一個(gè)巢。多么驚喜!今天早上他們?cè)诔怖锵铝藘蓚€(gè)蛋。這些小動(dòng)物給我們帶來(lái)了無(wú)盡的快樂(lè)。我兒子總是盡可能靠近窗戶仔細(xì)觀察它們。然而,當(dāng)人類靠近時(shí),鴿子看起來(lái)有點(diǎn)害怕。
完成學(xué)習(xí)后,我想到了一個(gè)主意。為什么不使用 Azure 自定義視覺(jué)來(lái)識(shí)別我們窗戶旁邊的鳥(niǎo)呢?但是,如果按照上面提供的學(xué)習(xí)路徑中的步驟,我們應(yīng)該在PC上上傳圖像并得到結(jié)果,這對(duì)于實(shí)時(shí)監(jiān)控來(lái)說(shuō)是相當(dāng)不便的。經(jīng)過(guò)一番思考,我決定用樹(shù)莓派和網(wǎng)絡(luò)攝像頭作為物聯(lián)網(wǎng)終端來(lái)實(shí)現(xiàn)日常監(jiān)控。然后,我們不必出現(xiàn)在窗戶旁邊看鳥(niǎo)。PIR 傳感器將觸發(fā)過(guò)程拍攝圖像,并將圖像傳輸?shù)?Azure 自定義視覺(jué)以獲取檢測(cè)結(jié)果。然后,Raspberry Pi 會(huì)將結(jié)果圖像上傳到 Azure Blob 存儲(chǔ),該存儲(chǔ)可從 Internet 隨處訪問(wèn)。
如果你對(duì)這個(gè)項(xiàng)目感興趣,你可以學(xué)習(xí)我在這個(gè)集合中創(chuàng)建的路徑:AI Bird的集合。我已邀請(qǐng)我的朋友在 Twitter:Twitter Post上完成學(xué)習(xí)模塊。完成這些模塊后,您就迫不及待地基于 Azure AI 和 IoT 技術(shù)制作自己的項(xiàng)目。
系統(tǒng)總覽
如圖2所示,整個(gè)系統(tǒng)由Raspberry Pi終端、Azure Custom Vision、Azure Blob Storage和用戶設(shè)備組成。我們將 USB 網(wǎng)絡(luò)攝像頭(或 Raspberry Pi 官方攝像頭)和 PIR 傳感器連接到 Raspberry Pi 以進(jìn)行圖像捕捉和鳥(niǎo)類檢測(cè)。一旦鳥(niǎo)靠近 PIR 傳感器,它就會(huì)向 Raspberry Pi 發(fā)送信號(hào),表明某種動(dòng)物正在接近。然后樹(shù)莓派會(huì)通過(guò)攝像頭拍照并發(fā)送到 Azure Custom Vision 服務(wù)獲取結(jié)果。我們將使用 PIL 庫(kù)繪制一個(gè)矩形來(lái)突出顯示我們?cè)趫D片中檢測(cè)到的對(duì)象。最后,樹(shù)莓派會(huì)將圖片上傳到 Azure Blob Storage 供用戶在任何地方查看。
硬件
微軟 LifeCam HD-3000
樹(shù)莓派
PIR 傳感器
HMDI 屏幕(可選)
Azure 資源
我們將在項(xiàng)目中使用 Microsoft 帳戶。如果沒(méi)有,請(qǐng)申請(qǐng)一個(gè)。我們?cè)谶@個(gè)項(xiàng)目中使用的所有資源都作為沙箱提供。沙盒只能用于完成 Microsoft Learn 培訓(xùn)。禁止出于任何其他原因使用,并可能導(dǎo)致永久失去對(duì)沙盒的訪問(wèn)權(quán)限。請(qǐng)注意,您沙箱中的所有資源在 4 小時(shí)內(nèi)可用。一旦時(shí)間到了,它們將被丟棄。
項(xiàng)目指導(dǎo)
步驟 1 至步驟 6 與模塊“使用自定義視覺(jué)分類瀕危鳥(niǎo)類”中的步驟非常相似。不同之處在于我們?cè)谶@里創(chuàng)建了一個(gè)對(duì)象檢測(cè)項(xiàng)目而不是分類項(xiàng)目。如果你只是想實(shí)現(xiàn)鳥(niǎo)類的分類,請(qǐng)參考學(xué)習(xí)模塊中提供的步驟。
1. 下載數(shù)據(jù)集
數(shù)據(jù)是我們創(chuàng)建機(jī)器學(xué)習(xí)模型所需的第一件事。我們將使用來(lái)自康奈爾實(shí)驗(yàn)室的 NABirds 數(shù)據(jù)集的一個(gè)子集來(lái)訓(xùn)練我們的模型。下載包含數(shù)據(jù)集的 zip 文件:bird-photos.zip
下載完成后,解壓縮文件,如圖 3 所示。記下文件夾位置,因?yàn)槟鷮⒃诤竺娴牟襟E中需要它。我們會(huì)發(fā)現(xiàn),這個(gè)褶皺里總共有 16 種鳥(niǎo)類。每種包括大約 120 張圖像。
2. 創(chuàng)建自定義視覺(jué) API 資源
接下來(lái),我們將在 Azure 認(rèn)知服務(wù)自定義愿景中創(chuàng)建一個(gè) API 資源。
在 Azure 門戶中,選擇“創(chuàng)建資源”。
搜索自定義視覺(jué)。在搜索結(jié)果的自定義視覺(jué)卡中,選擇創(chuàng)建。
在 Basics 選項(xiàng)卡上,輸入或選擇所需的值:
? 選擇您的 Azure 訂閱。如果我們使用沙盒,默認(rèn)訂閱是 Concierge Subscription。
? 默認(rèn)資源組為 learn-******
? 輸入新自定義視覺(jué)服務(wù)資源的名稱(例如,BirdCustomVisionDemo)。
? 在培訓(xùn)資源下:將培訓(xùn)位置設(shè)置為最近的點(diǎn)。
? 將培訓(xùn)定價(jià)層設(shè)置為免費(fèi) F0(每秒 2 次交易)。
? 在預(yù)測(cè)資源下:
? 將預(yù)測(cè)位置設(shè)置為我們?cè)谏厦孢x擇的位置。
? 將預(yù)測(cè)定價(jià)層設(shè)置為免費(fèi) F0(每秒 2 次交易)。
? 選擇查看 + 創(chuàng)建。
? 選擇創(chuàng)建。
詳情請(qǐng)參閱圖 4。
3.上傳數(shù)據(jù)
上傳圖片有兩種方式。首先,在自定義視覺(jué)門戶中,我們可以選擇、上傳、然后標(biāo)記圖像。或者,如果我們有大量數(shù)據(jù)、圖像類和標(biāo)簽要上傳,我們可以使用自定義視覺(jué) SDK。在這里,我們使用自定義視覺(jué)門戶進(jìn)行圖像上傳。
轉(zhuǎn)到https://www.customvision.ai/projects并登錄。選擇新建項(xiàng)目。
在創(chuàng)建新項(xiàng)目中:
? 對(duì)于名稱,輸入您選擇的項(xiàng)目名稱。
? 對(duì)于描述,輸入模型的簡(jiǎn)短描述。(例如,DetectBirds)。
? 對(duì)于資源組,選擇您在 Azure 門戶中創(chuàng)建的資源組。
? 對(duì)于項(xiàng)目類型,選擇對(duì)象檢測(cè)。
? 對(duì)于域,選擇常規(guī)。有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)圖 5。
選擇創(chuàng)建項(xiàng)目。
現(xiàn)在,是時(shí)候在圖片中為鳥(niǎo)類添加圖像和標(biāo)簽了。在您的自定義視覺(jué)項(xiàng)目中,選擇添加圖像。
在Open中,轉(zhuǎn)到從數(shù)據(jù)集 zip 文件中提取圖像文件的birds-photo 文件夾。
打開(kāi)鳥(niǎo)類物種文件夾。
選擇Ctrl + A以選擇物種文件夾中的所有圖像,然后選擇Open 。
上傳后,我們應(yīng)該在每張圖片中標(biāo)記對(duì)象。詳情請(qǐng)參閱圖 6。
重復(fù)上述步驟,上傳下載數(shù)據(jù)集中每個(gè)鳥(niǎo)類文件夾中的照片。
4. 訓(xùn)練數(shù)據(jù)
我們已經(jīng)在自定義視覺(jué)中創(chuàng)建了我們的數(shù)據(jù)集。現(xiàn)在,是時(shí)候訓(xùn)練我們的模型了。在自定義視覺(jué)門戶中,選擇我們的項(xiàng)目。在頂部菜單欄中,選擇訓(xùn)練。在選擇培訓(xùn)類型中,選擇快速培訓(xùn),然后選擇培訓(xùn)。如圖 7 所示。
訓(xùn)練完成后,有關(guān)模型如何為訓(xùn)練迭代執(zhí)行的信息如圖 8 所示。
當(dāng)我們測(cè)試您的模型時(shí),Custom Vision 會(huì)顯示三個(gè)指標(biāo)。指標(biāo)是可以幫助您了解模型執(zhí)行情況的指標(biāo)。這些指標(biāo)并不表明模型的真實(shí)性或準(zhǔn)確性。指標(biāo)僅告訴您模型對(duì)您提供的數(shù)據(jù)的執(zhí)行情況。模型在已知數(shù)據(jù)上的表現(xiàn)如何讓您了解模型在新數(shù)據(jù)上的表現(xiàn)。
精度:如果您的模型預(yù)測(cè)標(biāo)簽,則此指標(biāo)表明預(yù)測(cè)正確標(biāo)簽的可能性有多大。
回憶:在模型應(yīng)該正確預(yù)測(cè)的標(biāo)簽中,該指標(biāo)表示您的模型正確預(yù)測(cè)的標(biāo)簽的百分比。
平均精度:通過(guò)計(jì)算不同閾值的精度和召回率來(lái)衡量模型性能。
5. 測(cè)試模型
讓我們測(cè)試我們的模型,看看它在看不見(jiàn)的數(shù)據(jù)上的表現(xiàn)如何。我們將使用來(lái)自互聯(lián)網(wǎng)搜索的鳥(niǎo)的圖像。
在自定義視覺(jué)門戶中,選擇我們的項(xiàng)目。在頂部菜單欄中,選擇快速測(cè)試。在 Quick Test 中,將 URL 粘貼到 Image URL 中,然后按 Enter 以測(cè)試模型的準(zhǔn)確性。預(yù)測(cè)如圖 9 所示。我們會(huì)發(fā)現(xiàn)結(jié)果包括圖像中的對(duì)象坐標(biāo),用紅色矩形突出顯示。
6.部署模型
我們可以通過(guò)獲取預(yù)測(cè) URL 或在應(yīng)用程序中使用 API 來(lái)部署到端點(diǎn)。
在自定義視覺(jué)門戶頂部菜單欄中,選擇性能。選擇發(fā)布。在Publish Model中,選擇Prediction資源,然后為您的 Custom Vision 項(xiàng)目選擇預(yù)測(cè)的名稱。選擇發(fā)布。
選擇預(yù)測(cè) URL選項(xiàng)卡。在如何使用預(yù)測(cè) API中,我們可以得到如圖 10 所示的 Key。
此外,我們將獲取 Endpoint 和 Project ID 以供進(jìn)一步使用。可以在設(shè)置頁(yè)面上訪問(wèn)它們,如圖 11 所示。
7.組裝硬件
在這個(gè)項(xiàng)目中,需要一個(gè)樹(shù)莓派、一個(gè) USB 網(wǎng)絡(luò)攝像頭(樹(shù)莓派官方的攝像頭可以)和一個(gè) PIR 傳感器。如果您有 HDMI 屏幕,您可以直接在屏幕上看到結(jié)果。如果沒(méi)有,您可以在 Raspberry Pi 上安裝 VNC 服務(wù)器,并在您的 PC 或其他移動(dòng)設(shè)備上通過(guò) VNC 客戶端與它進(jìn)行交互。以下是我使用的模塊:
? 微軟 LifeCam HD-3000
? 樹(shù)莓派 4
? PIR 傳感器。
? Waveshare 7寸 HDMI LCD (B) (800*480)
PIR Sensor 配備三個(gè)引腳,即 Vcc、GND 和 Out。Vcc 和 GND 將連接到 Raspberry Pi 上的 5V 和 GND 引腳,而 Out 引腳將連接到 BCM 引腳 NO。4、原型如圖12所示。
8.安裝必要的庫(kù)
我們將使用 Azure 自定義視覺(jué) Python SDK、Azure 存儲(chǔ)博客 Python SDK 和 USB 攝像頭。然后我們將使用 pip 工具和 apt-get 安裝必要的組件,如下所示。
pip3 install azure-cognitiveservices-vision-customvision
pip3 install azure-storage-blob
pip3 install msrest
sudo apt-get install fswebcam
若要?jiǎng)?chuàng)建 Azure 存儲(chǔ)帳戶并查看有關(guān)如何使用適用于 Python 的 Azure 存儲(chǔ) Blob 客戶端庫(kù)的更多信息,請(qǐng)參閱此文檔:適用于 Python 的 Azure 存儲(chǔ) Blob 客戶端庫(kù)。
可以在 Azure 門戶上查看連接字符串,如圖 13 所示。
9.下載并運(yùn)行代碼
您可以從 Github 下載 python 代碼:https ://github.com/shijiong/AzureCustomVisionBirdDemo 。請(qǐng)確保您在第 14 行至第 17 行輸入了您的自定義視覺(jué)項(xiàng)目的預(yù)測(cè)密鑰、預(yù)測(cè)端點(diǎn)、項(xiàng)目 ID 和發(fā)布迭代名稱。第 19 行至第 21 行中的連接字符串、容器名稱和 blob 名稱應(yīng)為換成你的。詳情請(qǐng)參閱圖 14。
其次,在第 33 行,我們將圖像分辨率指定為 1280*720,這在您的項(xiàng)目中可能會(huì)有所不同。很重要的一點(diǎn)是,我們會(huì)根據(jù)第 46 行的預(yù)測(cè) API 的結(jié)果在圖像上繪制一個(gè)矩形。如果圖像的分辨率不同,我們應(yīng)該改變它,否則我們將無(wú)法獲得識(shí)別對(duì)象的正確位置在圖像上。
第三,我在第 41 行將預(yù)測(cè)概率的閾值設(shè)置為 0.9,您可以更改它以滿足您的場(chǎng)景。
最后,如果你想在樹(shù)莓派上查看預(yù)測(cè)圖像,你可以取消注釋第 49 到 52 行的代碼。但是,上傳過(guò)程將被阻止,直到你關(guān)閉圖像。
我將設(shè)備部署在我的窗戶旁邊。將代碼復(fù)制到您的 Raspberry Pi,使用 Thonny(Raspberry Pi 上預(yù)裝的 Python IDE)打開(kāi)它,然后運(yùn)行。觸發(fā) PIR 傳感器后,將捕獲圖像并將其傳輸?shù)?Azure 自定義視覺(jué)以獲取預(yù)測(cè)結(jié)果。如圖 15 所示,識(shí)別的對(duì)象將被紅色矩形突出顯示。
最后,圖像將被傳輸?shù)?Azure Blob Storage,如圖 16 所示。您可以在任何地方查看它。
概括
在本教程中,我們?cè)O(shè)計(jì)了一個(gè)基于 Azure Custom Vision、Azure Blob Storage 和 Raspberry Pi 的鳥(niǎo)類檢測(cè)器。然后給出了數(shù)據(jù)集上傳、數(shù)據(jù)訓(xùn)練、模型部署、硬件搭建和操作流程的演示。希望這對(duì)那些需要在 Raspberry Pi 設(shè)備上使用 Azure 自定義視覺(jué)服務(wù)的人有用。
- 使用Google Coral和Raspberry Pi進(jìn)行ML鳥(niǎo)類識(shí)別
- 克隆PI W Atmega8(Arduino)金屬探測(cè)器簡(jiǎn)短回顧
- 基于AVR微控制器的簡(jiǎn)單PI(脈沖感應(yīng))金屬探測(cè)器
- 具有Azure數(shù)據(jù)庫(kù)支持的Raspberry Pi無(wú)線家庭自動(dòng)化
- 基于ML的鳥(niǎo)類和松鼠檢測(cè)器(Raspberry Pi和AWS)
- 瀕臨滅絕鳥(niǎo)類探測(cè)器開(kāi)源分享
- 可視頻直播的Raspberry Pi網(wǎng)絡(luò)控制機(jī)器人 14次下載
- 《愛(ài)上Raspberry Pi》中譯版-電子書籍.pdf 0次下載
- 關(guān)于硅藍(lán)光探測(cè)器在醫(yī)療監(jiān)測(cè)中的應(yīng)用 1次下載
- 熱探測(cè)器和光電發(fā)射探測(cè)器等光輻射探測(cè)技術(shù)的解析 11次下載
- Instant Raspberry Pi Gaming 6次下載
- Raspberry_Pi詳解 15次下載
- SR紅外入侵探測(cè)器_WBPW_PI11_中文說(shuō)明書(12-7cm 0次下載
- raspberry_pi各版本差別 0次下載
- 紅外探測(cè)器電路圖
- 金屬探測(cè)器電路圖 帶Arduino的金屬探測(cè)器設(shè)計(jì) 876次閱讀
- 探索紅外熱成像探測(cè)器的基礎(chǔ)原理 549次閱讀
- 金屬探測(cè)器電路圖分享 5405次閱讀
- 基于零維材料的光電探測(cè)器原子結(jié)構(gòu) 982次閱讀
- 基于樹(shù)莓派產(chǎn)品 Raspberry Pi微控制器板的優(yōu)缺點(diǎn) 2710次閱讀
- 氣體探測(cè)器怎么接線 3.1w次閱讀
- 紅外線探測(cè)器距離_紅外線探測(cè)器安裝 1.3w次閱讀
- 金屬探測(cè)器怎么用_金屬探測(cè)器的使用方法 6.1w次閱讀
- 半導(dǎo)體探測(cè)器的工作原理_半導(dǎo)體探測(cè)器應(yīng)用領(lǐng)域 1.4w次閱讀
- 閃爍探測(cè)器探測(cè)原理_閃爍探測(cè)器的結(jié)構(gòu)組成 1.7w次閱讀
- 火焰探測(cè)器接線圖_火焰探測(cè)器設(shè)置要求 4.5w次閱讀
- 火焰探測(cè)器保護(hù)半徑_火焰探測(cè)器適用場(chǎng)所 1w次閱讀
- 剩余電流探測(cè)器原理_剩余電流探測(cè)器的應(yīng)用 9588次閱讀
- 火焰探測(cè)器工作原理 5.1w次閱讀
- 自制高頻振蕩金屬探測(cè)器 1.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多