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