資料介紹
描述
Teachable Machine 是一種創(chuàng)建機(jī)器學(xué)習(xí)模型的簡單但強(qiáng)大的工具。它允許輕松捕獲數(shù)據(jù)以創(chuàng)建訓(xùn)練數(shù)據(jù)集,并使用最先進(jìn)的算法在您的瀏覽器中訓(xùn)練機(jī)器學(xué)習(xí)模型。它是在一個非常直觀的網(wǎng)絡(luò)界面中完成的。您可以生成圖像、聲音或姿勢檢測模型。在這個項目中,我將為您提供設(shè)置 OpenCV/TensorFlow Python 開發(fā)環(huán)境和 Python 腳本框架的分步指南,以便輕松地將 Teachable Machine 圖像模型整合到您的項目中。
該項目的目標(biāo)是大大降低使用機(jī)器學(xué)習(xí)的準(zhǔn)入門檻。本教程應(yīng)該為您提供制作一些令人興奮的機(jī)器學(xué)習(xí)項目所需的工具。希望以后能用這個開發(fā)環(huán)境和框架做一些更有趣的教程和demo。
您可以跟隨并生成自己的模型,也可以使用我生成的 Teachable Machine 模型。我提供的模型可以檢測您的 La Croix 風(fēng)味。
該項目的 Github 存儲庫:https ://github.com/mjdargen/Teachable-Machine-Object-Detection
編輯:我現(xiàn)在創(chuàng)建了一個在 Raspberry Pi 上設(shè)置相同環(huán)境的版本:https ://www.hackster.io/mjdargen/easy-object-detection-on-rpi-la-croix-flavor-detector-93f0a4
補(bǔ)給品:
- 計算機(jī)(在 Windows 10、Ubuntu 18.04、MacOS High Sierra 10.13 中測試)
- Python 3(經(jīng)過測試的 Python 3.6 和 Python 3.7)
- 攝像頭
第 1 步:使用可教機(jī)器生成模型

設(shè)置項目
Teachable Machine 是一款非常易于使用的工具,具有非常直觀的界面。對于這個項目,我們將使用圖像檢測。轉(zhuǎn)到https://teachablemachine.withgoogle.com/并單擊開始。現(xiàn)在選擇圖像項目。這將打開圖像模型訓(xùn)練窗口。
創(chuàng)建數(shù)據(jù)集
您將添加并命名要訓(xùn)練模型以檢測的類(即對象)。用直觀的名稱很好地命名類。類的名稱是稍后程序在該對象出現(xiàn)在框架中時調(diào)用的名稱。
做一個“背景”類是個好主意。這可以幫助訓(xùn)練模型不將來自背景的細(xì)節(jié)歸因于其他類之一。如果你將這個類命名為“Background”,最終的程序,它使用文本到語音來說出框架中對象的名稱,將忽略背景類并且不會在每次它只是背景時調(diào)用“背景”在框架中。
要將圖像示例添加到課程中,您可以使用網(wǎng)絡(luò)攝像頭在 Teachable Machine 中捕獲圖像或從其他來源上傳圖像。為了生成模型,您需要大量高質(zhì)量的數(shù)據(jù)。你可以在我的“La Croix Flavor Detector Model”示例中看到,每個類我有不少于 600 個樣本。我使用網(wǎng)絡(luò)攝像頭快速捕獲了許多不同的樣本。我確保在具有各種背景的不同照明條件下從各個角度捕捉對象,以生成準(zhǔn)確的模型。
訓(xùn)練模型
設(shè)置好所有類并對數(shù)據(jù)集感到滿意后,就該訓(xùn)練模型了!點(diǎn)擊“火車模型”按鈕。為了訓(xùn)練模型,您必須在瀏覽器中打開該選項卡。訓(xùn)練模型可能需要一段時間。在這個項目中,我有 7 個班級,超過 600 個樣本,訓(xùn)練大約需要 20 分鐘。您的瀏覽器可能偶爾會抱怨“可教機(jī)器”選項卡會降低您的瀏覽器速度。只需確認(rèn)通知并說沒關(guān)系,這樣您的瀏覽器就不會取消培訓(xùn)(不同的瀏覽器對此通知的措辭不同)。完成后,就該測試您的模型了!
預(yù)覽模型
現(xiàn)在是時候測試你的訓(xùn)練模型了,看看它的效果如何!轉(zhuǎn)到“預(yù)覽”窗格并打開輸入。將各種對象呈現(xiàn)給網(wǎng)絡(luò)攝像頭,并查看模型是否準(zhǔn)確猜測幀中的對象。請記住,模型無法檢測到多個對象,除非您為兩個對象存在時創(chuàng)建了一個類。如果效果不佳,請嘗試為模型提供更多照片。如果您滿意,是時候?qū)С瞿P土耍?/font>
導(dǎo)出模型
要導(dǎo)出模型,請單擊“導(dǎo)出模型”按鈕。將彈出一個新窗口。點(diǎn)擊“Tensorflow”選項卡,選擇“Keras”模型轉(zhuǎn)換類型。現(xiàn)在單擊“下載我的模型”。壓縮模型并準(zhǔn)備下載可能需要大約一分鐘左右的時間。您應(yīng)該會看到一個彈出窗口,要求您保存一個 zip 文件。保存文件并解壓縮。您應(yīng)該會看到一個“keras_model.h5”文件和一個“l(fā)abels.txt”文件。堅持這些,一旦您在計算機(jī)上設(shè)置了 Python 環(huán)境,我們就會使用它們!
第 2 步:安裝 Python 3 和 Git
Python 3 安裝和設(shè)置
如果您的機(jī)器上尚未安裝 Python 3,您需要做的第一件事是安裝它。轉(zhuǎn)到https://www.python.org/downloads/并為您的操作系統(tǒng)下載并運(yùn)行正確的安裝。我已經(jīng)在 Python 3.6 和 Python 3.7 中測試了這個開發(fā)環(huán)境,一切似乎都正常工作。然而,Python 3.8 似乎還沒有完全支持其中一些庫。我建議為您的環(huán)境安裝最新版本的 Python 3.7。在安裝過程中,確保選中復(fù)選框以將 Python 添加到路徑。
完全安裝 Python 并將 Python 添加到 Path 后,打開終端或命令提示符并輸入“python --version”,然后輸入“python3 --version”。這很重要,因?yàn)槲覀兿胫馈皃ython”或“python3”命令是否映射到您的 Python 3 安裝。您需要知道這一點(diǎn)才能運(yùn)行您的 Python 腳本、安裝新的 Python 包等。如果沒有可執(zhí)行文件映射到 python 或 python3,請查找將環(huán)境變量添加到您的操作系統(tǒng)的路徑。
在上圖中的第一個示例中,您可以看到“python”調(diào)用 Python 3,而“python3”沒有調(diào)用任何內(nèi)容。在圖像的第二個示例中,“python3”調(diào)用您的 Python 3 安裝。這是因?yàn)橛幸粋€ Python 2 安裝映射到第二個示例中的“python”命令。
Git 項目文件
現(xiàn)在您需要從我的 Github 存儲庫中檢索安裝文件、機(jī)器學(xué)習(xí)模型和演示 Python 程序。您可以安裝 git 客戶端并克隆存儲庫,也可以從瀏覽器下載存儲庫的 zip 文件。
https://github.com/mjdargen/Teachable-Machine-Object-Detection
git clone https://github.com/mjdargen/RPi-La-Croix-Flavor-Detector
第 3 步:設(shè)置 Python 環(huán)境:OpenCV 和 TensorFlow

我已經(jīng)編寫了安裝腳本來簡化這個開發(fā)環(huán)境的安裝過程。上面列出了安裝腳本。只需為您的操作系統(tǒng)選擇適當(dāng)?shù)哪_本。
我現(xiàn)在在這里創(chuàng)建了一個在Raspberry Pi上設(shè)置相同環(huán)境的版本:https ://www.hackster.io/mjdargen/easy-object-detection-on-rpi-la-croix-flavor-detector-93f0a4
Windows 安裝
- 假設(shè)您已安裝 Python 3。
- 假設(shè)您的 Python 3 可執(zhí)行文件是使用“python”調(diào)用的。如果不是這種情況,您將需要編輯批處理腳本并將“python”命令的每個實(shí)例替換為“python3”。
- 從 Powershell 運(yùn)行批處理腳本:“./installation_scripts/windows_install.bat”(不要以管理員身份運(yùn)行)。
- 可能需要約 30 分鐘或更長時間,具體取決于您的系統(tǒng)和互聯(lián)網(wǎng)連接。
Mac 安裝
- 假設(shè)您已安裝 Python 3。
- 假設(shè)您的 Python 3 可執(zhí)行文件是使用“python3”調(diào)用的。如果不是這種情況,您將需要編輯 shell 腳本并將“python3”命令的每個實(shí)例替換為“python”。
- 導(dǎo)航到終端中存儲庫的文件夾。
- 您需要通過運(yùn)行以下命令使腳本可執(zhí)行:“sudo chmod +x./installation_scripts/mac_install.sh”
- 使用以下命令運(yùn)行 shell 腳本:“./installation_scripts/mac_install.sh”。
- 此安裝腳本還安裝Homebrew 包管理器。
- 可能需要約 30 分鐘或更長時間,具體取決于您的系統(tǒng)和互聯(lián)網(wǎng)連接。
Linux 安裝
- 假設(shè)您已安裝 Python 3。
- 假設(shè)您的 Python 3 可執(zhí)行文件是使用“python3”調(diào)用的。如果不是這種情況,您將需要編輯 shell 腳本并將“python3”命令的每個實(shí)例替換為“python”。
- 導(dǎo)航到終端中存儲庫的文件夾。
- 您需要通過運(yùn)行以下命令使腳本可執(zhí)行:“sudo chmod +x./installation_scripts/linux_install.sh”
- 使用以下命令運(yùn)行 shell 腳本:“./installation_scripts/inux_install.sh”。
- 可能需要約 30 分鐘或更長時間,具體取決于您的系統(tǒng)和互聯(lián)網(wǎng)連接。
使用 Python 虛擬環(huán)境
如果安裝腳本成功執(zhí)行,您現(xiàn)在已經(jīng)安裝了所有必要的依賴項,以便在您機(jī)器上的 Python 虛擬環(huán)境中運(yùn)行 OpenCV 和 Tensorflow。虛擬環(huán)境稱為 TMenv,位于克隆存儲庫的頂層目錄中,標(biāo)題為“Teachable-Machine-Object-Detection”。
Python 包安裝在虛擬環(huán)境中,以免破壞與 Python 的主要安裝相關(guān)的包,以防您有其他程序依賴于特定版本的包。
要使用您安裝的軟件包來運(yùn)行演示,您需要激活您的虛擬環(huán)境。
- Mac/Linux:“源 TMenv\bin\activate”
- Windows:“TMenv\Scripts\activate”
激活環(huán)境后,它將在終端提示之前的括號中顯示虛擬環(huán)境的名稱。此時您所做的與 Python 相關(guān)的任何操作都只會影響您的 TMenv 虛擬環(huán)境。您現(xiàn)在可以在虛擬環(huán)境中運(yùn)行 Python 腳本。要退出您的虛擬環(huán)境,只需運(yùn)行命令“deactivate”。
第 4 步:OpenCV 常見對象檢測測試

。您需要注釋掉“cv2.imshow”和“cv2.waitKey”行。該程序?qū)?biāo)記它識別的對象,并將使用文本到語音來說出對象的名稱。
cd ~/Documents/Teachable-Machine-Object-Detection # change directory to cloned repo
source TMenv/bin/activate # activate venv for Mac/Linux OR
TMenv/Scripts/activate # activate venv for Windows
python tm_obj_det.py # executes script, press ctrl+c to quit
deactivate # to exit the virtual environment
注意:Python 腳本將永遠(yuǎn)運(yùn)行,直到您按 ctrl+c 關(guān)閉程序。
第 7 步:混音!
這些安裝在你的虛擬環(huán)境中的包和我提供的腳本應(yīng)該會給你一個有用的框架來開發(fā)很多令人興奮的東西。您現(xiàn)在可以輕松地將對象檢測整合到您的所有項目中!我希望繼續(xù)在這個領(lǐng)域做更多的項目,以制作一些使用圖像檢測和利用這個框架的更有趣的項目。
這里有一些項目想法。隨意帶他們一起跑,或者想出你自己的!
- 一個程序來識別你的朋友并在他們來到你家時用名字打招呼。
- 一個程序,用于檢測您何時離開家,并要求您出示手機(jī)、鑰匙、錢包等,以確保您在離開家時擁有一切。
- 構(gòu)建一個分揀機(jī),該分揀機(jī)使用電機(jī)根據(jù)對象的特定方向?qū)ο筠D(zhuǎn)移到特定方向。
- 一個程序,它將檢測手語中的字母并將其寫入文本文件。
?
- 使用Home Assistant進(jìn)行TensorFlow對象檢測
- 使用MobileNet Single Shot Detector進(jìn)行對象檢測
- 使用opencv和python進(jìn)行智能火災(zāi)檢測
- Python學(xué)習(xí)手冊免費(fèi)下載 9次下載
- Python學(xué)習(xí)手冊免費(fèi)下載 26次下載
- Python進(jìn)行配置文件的教程免費(fèi)下載 6次下載
- Python的函數(shù)文件與模塊的程序說明 2次下載
- python的基礎(chǔ)知識培訓(xùn)教程課件免費(fèi)下載 73次下載
- Python語言的特點(diǎn)和使用Python對XML文件的數(shù)據(jù)進(jìn)行解析說明 6次下載
- 使用Python和OpenCV實(shí)現(xiàn)行人檢測的資料合集免費(fèi)下載 23次下載
-
如何利用Python Remote ob
jects技術(shù)實(shí)現(xiàn)分布式對象應(yīng)用系統(tǒng) 1次下載 - Python基礎(chǔ)教程之Python快速入門課件資料免費(fèi)下載 319次下載
- python基礎(chǔ)教程之如何使用python進(jìn)行環(huán)境搭建 32次下載
- python入門教程之Python語言及其系統(tǒng)的基本知識與概念 20次下載
- python中的字典(dict)對象以及其使用方法 1次下載
- 使用Python進(jìn)行Ping測試 568次閱讀
- YOLOv8實(shí)現(xiàn)旋轉(zhuǎn)對象檢測 1933次閱讀
- 如何進(jìn)行圖像邊緣的檢測 1285次閱讀
- 如何通過python輕松處理大文件 898次閱讀
- Python中的類和對象詳解 1181次閱讀
- 什么是python的類與對象 797次閱讀
- Python類的屬性和方法是什么 904次閱讀
- 如何在LiDAR點(diǎn)云上進(jìn)行3D對象檢測 2211次閱讀
- 詳談Python的數(shù)據(jù)模型和對象模型 2582次閱讀
- 如何利用Python和函數(shù)庫進(jìn)行簡單的人臉識別?(附源碼) 3160次閱讀
- 這可能是Python面向對象編程的最佳實(shí)踐 2696次閱讀
- Python語言在人工智能中的功能及優(yōu)勢 1.1w次閱讀
- 在Python中利用dlib進(jìn)行人臉檢測 6593次閱讀
- 如何快速學(xué)會Python?利用Python進(jìn)行數(shù)據(jù)分析 1.1w次閱讀
- 介紹Python 3 的功能 讓人輕松地從Python 2遷移到Python 3 4526次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊
- 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開關(guān)電源設(shè)計實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 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é)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論