• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

3.5.4-自行訓(xùn)練數(shù)據(jù)集-(openmv神經(jīng)網(wǎng)絡(luò)訓(xùn)練 openmv模型訓(xùn)練)

04/11 08:35
705
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

聯(lián)系方式.txt

共1個(gè)文件

**非常詳細(xì)的視頻和文字教程,講解常見的openmv教程包括 巡線、物體識(shí)別、圓環(huán)識(shí)別、閾值自動(dòng)獲取等。非常適合學(xué)習(xí)openmv、K210、K230等項(xiàng)目
視頻合集鏈接在


openmv教程合集 openmv入門到項(xiàng)目開發(fā) openmv和STM32通信 openmv和opencv區(qū)別 openmv巡線 openmv數(shù)字識(shí)別教程LCD

??痮penmv視覺(jué)文章鏈接:[https://blog.csdn.net/qq_46187594/category_12900902.html]

另外還有一個(gè):是全網(wǎng)最詳細(xì)的STM32項(xiàng)目教學(xué)視頻。
功能:PID速度控制、PID循跡、PID跟隨、遙控、避障、PID角度控制、openmv視覺(jué)控制、電磁循跡、FreeRTOS、

智能車第一篇在這里:
視頻在這里:


STM32智能小車V3-STM32入門教程-openmv與STM32循跡小車-stm32f103c8t6-電賽 嵌入式學(xué)習(xí) PID控制算法 編碼器電機(jī) 跟隨

3.5.4-自行訓(xùn)練數(shù)據(jù)集-(openmv神經(jīng)網(wǎng)絡(luò)訓(xùn)練 openmv模型訓(xùn)練)

1-使用訓(xùn)練集識(shí)別數(shù)字

本節(jié)這里我們使用線上訓(xùn)練的方式。

訓(xùn)練網(wǎng)站: Edge Impulse - The Leading Edge AI Platform https://edgeimpulse.com

注意此章節(jié)教學(xué)的采集-訓(xùn)練-識(shí)別過(guò)程不僅適用于openmv識(shí)別打印數(shù)字,也可以數(shù)字換成手寫體數(shù)字、也可以是把數(shù)字換成紅綠燈限速等交通標(biāo)志、要識(shí)別的一些垃圾比如殘缺的蘋果和易拉罐等垃圾分類場(chǎng)景、還可以識(shí)別色環(huán)定位、兩個(gè)及其以上不同顏色的小球識(shí)別、手勢(shì)識(shí)別、特定兩個(gè)及其以上物體抓取識(shí)別等。后面也會(huì)更新大家想看的垃圾分析、或者人形識(shí)別等。

由于模型訓(xùn)練是線上網(wǎng)站訓(xùn)練,所以可能網(wǎng)站布局可能發(fā)生變化,如果復(fù)現(xiàn)不了,筆記的教程,也可以嘗試搜索,其他相關(guān)最新或者之前的文檔或者視頻教程,下面一些參考教程鏈接,推薦大家出問(wèn)題后也可以看一下下面的視頻:

訓(xùn)練神經(jīng)網(wǎng)絡(luò)目標(biāo)檢測(cè)實(shí)際道路環(huán)境交通標(biāo)志: https://www.bilibili.com/video/BV1Qr4y177xi/?share_source=copy_web&vd_source=f5d5850ab773377dff308188468fbc77

38-OpenMV4 Plus訓(xùn)練神經(jīng)網(wǎng)絡(luò)進(jìn)行口罩識(shí)別: https://www.bilibili.com/video/BV1uU4y1M71J/?share_source=copy_web&vd_source=f5d5850ab773377dff308188468fbc77

如果線上訓(xùn)練方式出現(xiàn)特殊情況,比如Edge Impulse 網(wǎng)站停止服務(wù)或者使用人數(shù)較多排隊(duì)擁擠現(xiàn)象,大家可以嘗試用自己電腦本地訓(xùn)練,由于本地訓(xùn)練對(duì)筆記本性能還有相關(guān)系統(tǒng)硬件要求高,所以我們暫時(shí)不更新本地訓(xùn)練方式,下面提供一些相關(guān)網(wǎng)站參考了解的鏈接:使用tensorflow2.3訓(xùn)練數(shù)字識(shí)別模型并量化為tflite后部署到openMV上_openmv部署識(shí)別模型-CSDN博客

獲得訓(xùn)練數(shù)據(jù)集

這里我們先采集數(shù)據(jù)集,可以使用別人采集好的、網(wǎng)絡(luò)下載收集、手機(jī)拍攝、openmv采集。

建議使用openmv+openmv IDE 根據(jù)小車實(shí)際使用環(huán)境采集數(shù)據(jù),比如小車上的openmv識(shí)別數(shù)字,那么可以把openmv安裝在小車上,然后采集數(shù)字照片數(shù)據(jù)

使用openmv IDE采集數(shù)據(jù)集

先在openmv上執(zhí)行下面代碼

# This work is licensed under the MIT license.
# Copyright (c) 2013-2023 OpenMV LLC. All rights reserved.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Hello World Example
#
# Welcome to the OpenMV IDE! Click on the green run arrow button below to run the script!

import sensor # 引入感光元件的模塊,用于操作攝像頭傳感器
import time # 引入時(shí)間模塊,用于控制時(shí)間延遲和FPS計(jì)算

# 初始化傳感器
sensor.reset()  # Reset and initialize the sensor. 重置并初始化傳感器
sensor.set_pixformat(sensor.RGB565)  # Set pixel format to RGB565 (or GRAYSCALE) 設(shè)置像素格式為RGB565(或者灰度)
sensor.set_framesize(sensor.QVGA)  # Set frame size to QVGA (320x240) 設(shè)置幀大小為QVGA(320x240分辨率)
#***************************如果不需要鏡像就注釋掉 下面 的代碼********************
# 設(shè)置攝像頭鏡像/翻轉(zhuǎn)操作,根據(jù)攝像頭安裝的方向決定是否需要
sensor.set_vflip(True)  # 垂直方向翻轉(zhuǎn)。根據(jù)實(shí)際攝像頭模塊的安裝位置調(diào)整是否需要此操作
#!?。≈匾翰煌瑪z像頭是否需要鏡像,根據(jù)實(shí)際情況定。如果不需要鏡像,請(qǐng)注釋掉以下代碼:
sensor.set_hmirror(True)  # 水平方向反轉(zhuǎn)。根據(jù)實(shí)際攝像頭模塊的安裝位置調(diào)整是否需要此操作
#?。?!重要:不同攝像頭是否需要鏡像,根據(jù)實(shí)際情況定。如果不需要鏡像,請(qǐng)注釋掉上述代碼。
#***************************如果不需要鏡像就注釋掉 上面 的代碼********************
sensor.skip_frames(time=2000)  # Wait for settings take effect. 等待2秒鐘讓設(shè)置生效
clock = time.clock()  # Create a clock object to track the FPS. 創(chuàng)建一個(gè)時(shí)鐘對(duì)象,用于追蹤FPS(每秒幀數(shù))



while True:
    clock.tick()  # Update the FPS clock. 更新FPS時(shí)鐘
    img = sensor.snapshot()  # Take a picture and return the image. 拍攝一張照片并返回圖像
    print(clock.fps())  # 輸出當(dāng)前的幀率(FPS),用來(lái)衡量攝像頭的拍攝速度
    # Note: OpenMV Cam runs about half as fast when connected
    # to the IDE. The FPS should increase once disconnected.
    # 注意:當(dāng)OpenMV相機(jī)連接到IDE時(shí),速度大約是平時(shí)的一半。斷開連接后,F(xiàn)PS應(yīng)該會(huì)提高。

點(diǎn)擊
在這里插入圖片描述
在這里插入圖片描述
如果使用的攝像頭需要鏡像畫面,我們就增加畫面鏡像的代碼增加到下面照片紅色圈出的位置

#***************************如果不需要鏡像就注釋掉 下面 的代碼********************
# 設(shè)置攝像頭鏡像/翻轉(zhuǎn)操作,根據(jù)攝像頭安裝的方向決定是否需要
sensor.set_vflip(True)  # 垂直方向翻轉(zhuǎn)。根據(jù)實(shí)際攝像頭模塊的安裝位置調(diào)整是否需要此操作
#!?。≈匾翰煌瑪z像頭是否需要鏡像,根據(jù)實(shí)際情況定。如果不需要鏡像,請(qǐng)注釋掉以下代碼:
sensor.set_hmirror(True)  # 水平方向反轉(zhuǎn)。根據(jù)實(shí)際攝像頭模塊的安裝位置調(diào)整是否需要此操作
#!??!重要:不同攝像頭是否需要鏡像,根據(jù)實(shí)際情況定。如果不需要鏡像,請(qǐng)注釋掉上述代碼。
#***************************如果不需要鏡像就注釋掉 上面 的代碼********************

在這里插入圖片描述
然后點(diǎn)擊新建數(shù)據(jù)文件夾
在這里插入圖片描述
在這里插入圖片描述
采集中盡量變化你的光照環(huán)境、還有可能拍攝的物體角度,和物體之間的距離。

每種要要識(shí)別的種類需要100張,比如能夠標(biāo)注出1的也就是要有100張。

比如室內(nèi)開燈、拉開窗簾,關(guān)閉窗簾、左邊傾斜一些角度、右邊傾斜一些角度、攝像頭距離近些、攝像頭距離遠(yuǎn)些、然后后面背景是黑色,或者灰色白色等。

如果訓(xùn)練后發(fā)現(xiàn)某個(gè)訓(xùn)練數(shù)字訓(xùn)練識(shí)別結(jié)果不好或者某種使用場(chǎng)景識(shí)別結(jié)果不好,可以再多補(bǔ)一下這個(gè)

數(shù)字或者場(chǎng)景的訓(xùn)練數(shù)據(jù)集。

這里我?guī)в?234的照片拍了大概100多張
在這里插入圖片描述
然后繼續(xù)采集5 6 7 8數(shù)字的

新建一個(gè)文件夾

如果中間采集的圖片預(yù)覽都是灰色就重新啟動(dòng)
在這里插入圖片描述
創(chuàng)建文件夾
在這里插入圖片描述
然后大概采集了140張
在這里插入圖片描述
繼續(xù)采集0和數(shù)字9
在這里插入圖片描述
然后采集了140多張
在這里插入圖片描述

去網(wǎng)站 訓(xùn)練數(shù)據(jù)

我們使用的線上訓(xùn)練數(shù)據(jù)集網(wǎng)站是:Edge Impulse - The Leading Edge AI Platform https://edgeimpulse.com

由于網(wǎng)站是線上的,所以不定期操作網(wǎng)站的布局和操作會(huì)有更新,基礎(chǔ)差的朋友,仔細(xì)看課程多看幾遍,或者百度其他相關(guān)最新:openmv線上數(shù)據(jù)集訓(xùn)練教程,根據(jù)課程內(nèi)容和網(wǎng)站最新布局進(jìn)行操作訓(xùn)練數(shù)據(jù)。(課程也會(huì)不定期根據(jù)線上訓(xùn)練方法進(jìn)行更新,但是需要更新的其他教程也很多所以會(huì)有延遲,盡量遇到問(wèn)題可以借助AI和百度解決)

登錄網(wǎng)站
在這里插入圖片描述
如果沒(méi)有注冊(cè)過(guò)需要注冊(cè)一下,如果注冊(cè)過(guò)直接登錄

這個(gè)是注冊(cè)的
在這里插入圖片描述
在這里插入圖片描述
點(diǎn)擊這個(gè),或者退到主頁(yè)
在這里插入圖片描述
選擇一下我們使用的板子

這里openmv 只有一個(gè)openmv cam h7 plus 所以我們無(wú)論使用openmv H7 和openmv H7 plus都選擇這個(gè)
在這里插入圖片描述
在這里插入圖片描述
選擇上傳文件
在這里插入圖片描述
在這里插入圖片描述
然后選擇文件
在這里插入圖片描述
每次上傳一些圖片,然后
在這里插入圖片描述
問(wèn)我們是否在圖像檢測(cè)可以點(diǎn)擊是
在這里插入圖片描述
繼續(xù)
在這里插入圖片描述
然后繼續(xù)上傳直到把 三個(gè)文件夾照片都傳上去
在這里插入圖片描述
如果中間有偶爾幾個(gè)文件沒(méi)有傳上去,也不用管

在這里插入圖片描述
在這里插入圖片描述
然后我們?nèi)タ匆幌挛覀冃枰獦?biāo)注的隊(duì)列
在這里插入圖片描述
使用鼠標(biāo)把數(shù)字部分選中(不需要選數(shù)字的框)

如果是數(shù)字1我們框選數(shù)字1 ,然后標(biāo)注標(biāo)簽,標(biāo)簽盡量簡(jiǎn)介比如1
在這里插入圖片描述
這樣
在這里插入圖片描述
在這里插入圖片描述
然后點(diǎn)擊保存后,自動(dòng)下一張會(huì)自動(dòng)標(biāo)注,如果不對(duì)去修改

當(dāng)標(biāo)注到 比如5678的時(shí)候 注意就新建5678標(biāo)簽了

在這里插入圖片描述
盡量不要標(biāo)錯(cuò),如果偶爾標(biāo)錯(cuò)一個(gè)也沒(méi)有關(guān)系

可以去網(wǎng)頁(yè)其他位置修改,或者偶爾一個(gè)標(biāo)錯(cuò)可以不修改。

標(biāo)記完成后就會(huì)顯示0個(gè)需要標(biāo)記的

標(biāo)記完畢,可以標(biāo)記你覺(jué)得不合適的標(biāo)記數(shù)據(jù)
在這里插入圖片描述
在這里插入圖片描述
我們這里設(shè)置訓(xùn)練模型的參數(shù)

這里我們?cè)O(shè)置 96* 96或128 *128

這里openmv H7 因?yàn)閮?nèi)存比較小所以設(shè)置96*96 才有可能跑起來(lái)

? openmv H7 plus 也推薦設(shè)置 96**96 因?yàn)檫@樣分辨率低 幀率會(huì)高

我們先演示96*96 裁剪
在這里插入圖片描述
選擇處理方式
在這里插入圖片描述選擇圖像
在這里插入圖片描述
目標(biāo)點(diǎn)檢測(cè)
在這里插入圖片描述

在這里插入圖片描述
保存然后
在這里插入圖片描述
太多了,大家可以從這個(gè)視頻下載文檔:


openmv教程合集 openmv入門到項(xiàng)目開發(fā) openmv和STM32通信 openmv和opencv區(qū)別 openmv巡線 openmv數(shù)字識(shí)別教程LCD

??痮penmv視覺(jué)文章鏈接:[https://blog.csdn.net/qq_46187594/category_12900902.html]

  • 聯(lián)系方式.txt
    下載

相關(guān)推薦

方案定制

去合作
方案開發(fā)定制化,2000+方案商即時(shí)響應(yīng)!