資料介紹
描述
您是否知道社區和企業的平均污染率高達 25%?這意味著您丟棄的每四件可回收物品中就有一件不會被回收。這是由于回收中心的人為錯誤造成的。傳統上,工人會根據材料將垃圾分類到不同的垃圾箱中。人類必然會犯錯誤,最終無法正確分類垃圾,從而導致污染。隨著污染和氣候變化在當今社會變得更加重要,回收在保護我們的星球方面發揮著重要作用。通過使用機器人分揀垃圾,污染率將大幅下降,更不用說更便宜和更可持續了。為了解決這個問題,我創建了一個回收分揀機器人,它使用機器學習在不同的回收材料之間進行分類。
代碼:
第 1 步,獲取數據:
為了訓練可以檢測和識別不同回收材料的對象檢測模型,我使用了包含 2527 張圖像的垃圾網數據集:
- 501玻璃
- 594 紙
- 403紙板
- 482塑料
- 410金屬
- 137 垃圾
這是一個示例圖像:
該數據集非常小,無法訓練對象檢測模型。只有大約 100 張垃圾圖像太少而無法訓練準確的模型,所以我決定將其排除在外。
您可以使用此 google drive文件夾下載數據集。確保下載 dataset-resized.zip 文件。它包含已經調整為較小尺寸的圖像集,以允許更快的訓練。如果您想根據自己的喜好調整原始圖像的大小,請隨時下載 dataset-original.zip 文件。
第 2 步,標記圖像:
接下來,我們需要標記不同回收材料的幾張圖像,以便我們可以訓練對象檢測模型。為此,我使用了免費軟件labelImg,它允許您在圖像中標記對象邊界框。
用適當的標簽標記每個圖像。本教程向您展示如何。確保使每個邊界框盡可能靠近每個對象的邊界,以確保檢測模型盡可能準確。將所有 .xml 文件保存到一個文件夾中。
以下是如何標記圖像:
這是一個非常乏味和令人麻木的體驗。感謝您,我已經為您標記了所有圖像!你可以在這里找到它。
第三步,訓練:
在訓練方面,我決定使用 Tensorflow進行遷移學習。這使我們能夠在沒有大量數據的情況下訓練出相當準確的模型。
我們有幾種方法可以做到這一點。我們可以在云上的本地桌面計算機上完成。在我們的本地機器上進行訓練將需要很長時間,具體取決于您的計算機有多強大以及您是否擁有強大的 GPU。在我看來,這可能是最簡單的方法,但同樣存在速度的缺點。
關于遷移學習,有一些關鍵的事情需要注意。您需要確保用于訓練的預訓練模型與 Coral Edge TPU 兼容。您可以在此處找到兼容的型號。我使用了 MobileNet SSD v2 (COCO) 模型。也可以隨意嘗試其他人。
要在本地機器上進行訓練,如果在 Windows 10 上運行,我建議遵循Google 的教程或EdjeElectronics教程。就我個人而言,我已經測試了 EdjeElectronics 教程并在我的桌面上取得了成功。我無法確認 Google 的教程是否有效,但如果沒有,我會感到驚訝。
要在云中訓練,您可以使用 AWS 或 GCP。我找到了這個教程,你可以試試。它使用谷歌的云 TPU,可以超快速地訓練你的對象檢測模型。也可以隨意使用 AWS。
無論您是在本地機器上還是在云端進行訓練,最終都應該得到一個經過訓練的 tensorflow 模型。
第 4 步,編譯訓練模型:
為了使您的訓練模型能夠與 Coral Edge TPU 一起使用,您需要對其進行編譯。
這是工作流程的圖表:
訓練后,您需要將其保存為凍結圖(.pb 文件)。然后,您需要將其轉換為 Tensorflow Lite 模型。請注意它是如何說“訓練后量化”的。如果您在使用遷移學習時使用了兼容的預訓練模型,則無需這樣做。在此處查看有關兼容性的完整文檔。
使用 Tensorflow Lite 模型,您需要將其編譯為 Edge TPU 模型。在此處查看有關如何執行此操作的詳細信息。
回收檢測模型:
如果您不想重復訓練、轉換和編譯對象檢測模型的麻煩,請在此處查看我的回收檢測模型。
第 5 步,部署模型:
下一步是設置 Raspberry Pi (RPI) 和 Edge TPU 以運行經過訓練的對象檢測模型。
首先,使用本教程設置 RPI 。
接下來,按照本教程設置 Edge TPU 。
最后,將 RPI 攝像頭模塊連接到樹莓派。
您現在已準備好測試您的對象檢測模型!
如果您已經克隆了我的存儲庫,您將需要導航到 RPI 目錄并運行test_detection.py文件:
python test_detection.py --model recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/detect_edgetpu.tflite --labels recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/labels.txt
應該會彈出一個小窗口,如果你放一個塑料水瓶或其他回收材料,它應該像這樣檢測它:
按鍵盤上的字母“q”結束程序。
第 6 步,構建機械臂:
機械臂是我在這里找到的 3D 打印手臂。只需按照教程進行設置即可。
我的手臂是這樣的:
確保將伺服引腳連接到我的代碼中根據 Arduino I/O 引腳。從下往上依次連接舵機:3、11、10、9、6、5。不按這個順序連接會導致舵機移動錯誤的舵機!
通過導航到 Arduino 目錄并運行basicMovement.ino文件來測試它是否正常工作。這將簡單地抓住一個放在手臂前面的物體并將其放在后面。
第 7 步,連接 RPI 和機械臂:
我們首先需要將攝像頭模塊安裝到爪子的底部:
盡量將相機對齊,以盡量減少抓取已識別回收材料時的錯誤。您將需要使用材料列表中顯示的長相機模塊帶狀電纜。
接下來,您需要將robotsArm.ino文件上傳到 Arduino 板。
最后,我們只需在 RPI 的 USB 端口和 Arduino 的 USB 端口之間連接一根 USB 電纜。這將允許他們通過串行通信。請按照本教程進行設置。
第 8 步,最后潤色:
這一步是完全可選的,但我喜歡將我所有的組件放入一個漂亮的小項目框中。
這是它的外觀:
您可以在材料清單上找到項目框。我剛剛鉆了一些孔并使用黃銅支架來安裝電子設備。我還安裝了 4 個冷卻風扇,以在熱時保持通過 RPI 和 TPU 的恒定氣流。
第 9 步,運行:
您現在可以啟動機械臂和 RPI!在 RPI 上,您可以簡單地運行recycle_detection.py文件。這將打開一個窗口,機械臂將開始運行,就像在演示視頻中一樣!按鍵盤上的字母“q”結束程序。
隨意玩弄代碼并玩得開心!
未來的工作:
我希望用 ROS 來控制機械臂,動作更精確。這將能夠更準確地拾取物體。
問題?
如果您有任何問題,請隨時在下面發表評論!
- 使用Google Coral搜索和救援無人機
- 瞳步迎賓講解機器人
- 了解機器人電子教材下載 19次下載
- 機器人無線充電電路設計 47次下載
- 基于Matlab的機構與機器人分析資料下載 11次下載
- 基于DSP和PC的農業機器人控制系統 17次下載
- 基于DSP芯片的足球機器人實現與設計 26次下載
- 使用并聯機器人和機器視覺技術實現自動分揀機器視覺軟件系統的設計 26次下載
- 使用機器視覺進行工業機器人分揀技術的研究資料分析 31次下載
- 智能分揀機器人系統設計的流程原理圖免費下載 27次下載
- Tripod機器人視覺系統 0次下載
- 高速機器人分揀系統機器視覺技術的研究(1) 11次下載
- 基于機器人大賽的分揀機器人優化設計_許鳳慧 4次下載
- 基于機器視覺的工業機器人分揀系統的研究 8次下載
- 基于遺傳算法的分揀機器人最優路徑規劃_文生平 6次下載
- 鑄造機器人是什么?選擇工業機器人應該考慮的方向 1137次閱讀
- 面對疫情 醫療機器人能幫上什么忙? 2126次閱讀
- 工業機器人技術應用 5176次閱讀
- 工業機器人編程入門_工業機器人的編程要求 9571次閱讀
- 醫用機器人的定義_醫用機器人發展 3122次閱讀
- 醫用機器人的功能_醫用機器人分類 2227次閱讀
- 機器人控制器有哪些類型_機器人控制器發展 1.1w次閱讀
- 協作機器人的起源_為什么需要協作機器人 8127次閱讀
- 并聯機器人應用日益從廣泛 已成為工業機器人需求增長的新生力量 3742次閱讀
- 并聯機器人的應用 7242次閱讀
- 機器視覺的機器人取代四臺傳統的火焰處理機器人 3270次閱讀
- 服務機器人的主要應用領域,科學和技術挑戰 7846次閱讀
- 如何區分機器人、協作機器人和移動機器人? 6828次閱讀
- 軟體機器人 前所未見的機器人 3692次閱讀
- 機器人的最佳編程語言是什么?機器人十大流行編程語言匯總 3.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次下載 | 免費
評論
查看更多