?-【學習資料】
子豪兄的零基礎樹莓派教程https://github.com/TommyZihao/ZihaoTutorialOfRaspberryPi/blob/master/%E7%AC%AC2%E8%AE%B2%EF%BC%9A%E6%A0%91%E8%8E%93%E6%B4%BE%E6%96%B0%E6%89%8B%E6%97%A0%E7%97%9B%E5%BC%80%E6%9C%BA%E6%8C%87%E5%8D%97.md#%E7%83%A7%E5%BD%95%E9%95%9C%E5%83%8F第2講:樹莓派新手無痛開機指南【子豪兄的樹莓派零基礎教程】https://www.bilibili.com/video/BV1ab411x7aC/?spm_id_from=333.999.0.0?樹莓派4b開發(fā)之開發(fā)環(huán)境搭建 - 飛起的小田 - 博客園https://www.cnblogs.com/tianxxl/p/13587054.html
基于樹莓派4B的OpenCV安裝與簡單應用(真速通版)https://blog.csdn.net/black_sneak/article/details/131343797?《樹莓派快速上手》 說明 (itprojects.cn)https://doc.itprojects.cn/0007.zhishi.raspberrypi/02.doc/index.html#/READMEYOLOv8應用及解析https://www.youtube.com/watch?v=ydC9x1L5SJU目標檢測---教你利用yolov5訓練自己的目標檢測模型https://blog.csdn.net/didiaopao/article/details/119954291yolov5 訓練結果解析https://blog.csdn.net/sinat_37322535/article/details/117260081?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169080317916800186567366%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=169080317916800186567366&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~sobaiduend~default-2-117260081-null-null.268%5Ev1%5Ekoosearch&utm_term=yolov5%E7%BB%93%E6%9E%9C%E5%88%86%E6%9E%90&spm=1018.2226.3001.4450
-【超詳細 Python+PyCharm的安裝步驟及PyCharm的使用】
(超詳細)Python+PyCharm的安裝步驟及PyCharm的使用(含快捷鍵)_pycharm python_IT路上的軍哥的博客-CSDN博客https://blog.csdn.net/JunLeon/article/details/120698578?ops_request_misc=%7B%22request_id%22%3A%22168955879816800222871340%22%2C%22scm%22%3A%2220140713.130102334..%22%7D&request_id=168955879816800222871340&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~sobaiduend~default-1-120698578-null-null.268%5Ev1%5Ekoosearch&utm_term=python%E4%B8%8Epycharm&spm=1018.2226.3001.4450
-?【python安裝包不要放在python在install選擇路徑的文件夾里】
否則pycharm在配置python環(huán)境時會一直顯示重新安裝python
-【cmd安裝pip和setuptools但pycharm的setting中檢測不到這兩個工具包,重點在于修改pycharm中python的安裝路徑(Pycharm cannot set up a python SDK問題解決方法)】Pycharm cannot set up a python SDK問題解決方法_山河不見老的博客-CSDN博客https://blog.csdn.net/weixin_42212872/article/details/122405569
-【第三方工具包清華大學鏡像網(wǎng)站cmd用安裝指令(以安裝TensorFlow為例)】
pip install TensorFlow -i https://pypi.tuna.tsinghua.edu.cn/simple
-【最好用16GB的SD卡下載系統(tǒng)鏡像,淚的教訓?。?!為了配置用戶名及密碼,最新版本只能用樹莓派官方的鏡像下載器下載鏡像】
-【插上SD卡后紅燈常亮,綠燈閃爍;網(wǎng)線綠燈不亮,橘燈常亮;此時需要重啟樹莓派;即安裝好系統(tǒng)后樹莓派需要兩次開機!?。?/strong>】
-【同一局域網(wǎng)下查找樹莓派ip,在cmd中(管理員身份運行)輸入ping -4 raspberrypi.local】
-【VNC連接樹莓派出現(xiàn)cannot currently show the desktop問題的解決方法】樹莓派默認分辨率模式為Default 720×480,這可能造成VNC顯示異常,在putty中用sudo raspi-config修改相關設置,以更換到其他更高的分辨率模式。
-【由于ip分配是隨機的,每次更換wifi后vnc都需要重新查找樹莓派ip】
-【sudo = superuser do】
-【使用putty重啟樹莓派時,如果卡了需要手動拔掉充電線;使用reboot重啟不需要拔掉充電線】
-【使用camera后如果VNC不能打開,需要在putty中用sudo?nano /boot/config.txt刪除文件中hdmi_force_hotplug前的#符號(不要再添加其他語句?。?!),然后ctrl+x再按y回車后退出,拔線重啟樹莓派;若仍舊不行,則查看分辨率是否又被更改】
-【更換國內鏡像源】
注意下載的樹莓派系統(tǒng)版本用戶是什么,三種用戶有三種不同的鏡像源,本機用戶為aarch64
如何查看本機用戶,在終端輸入 uname -m樹莓派換源_code artist的博客-CSDN博客https://blog.csdn.net/qq_55542305/article/details/125921513?ops_request_misc=%7B%22request_id%22%3A%22168990724916800185836822%22%2C%22scm%22%3A%2220140713.130102334.pc_all.%22%7D&request_id=168990724916800185836822&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-4-125921513-null-null.142%5Ev90%5Econtrol_2,239%5Ev3%5Econtrol&utm_term=%E6%A0%91%E8%8E%93%E6%B4%BE%E6%9B%B4%E6%8D%A2%E6%BA%90&spm=1018.2226.3001.4187
-【樹莓派如果可以正常import cv2但是無法用print(cv2.__version__)語句查看opencv版本,可使用下面這個語句】
import pkg_resources
pkg_resources.get_distribution("opencv-python").version
-【樹莓派使用opencv環(huán)境安裝(實際上不知道到底有沒有關系,主要還是跟著老師的教程做了一遍,估計是安裝的軟件包太多了,出了什么錯,以至于把系統(tǒng)都搞崩了一次,重裝系統(tǒng)后,按王銘東老師的步驟安裝opencv(4.8.0)與numpy(1.25)等皆正常)】
sudo apt-get install libjpeg-dev libatlas-base-dev libjpeg-dev libtiff5-dev libpng12-dev libqtgui4 libqt4-test libjasper-dev? (后來安裝的部分軟件包,不知道安裝成功和這些有沒有直接關系)
-【一些linux終端的命令】
? ? ? ? - 以管理員身份運行終端
? ? ? ? ? ? ? ? sudo -s
? ? ? ? -?終端運行桌面上的python代碼
????????????????cd Desktop/? ? ? ?
????????????????Python camera.py
? ? ? ? - 終端打開桌面上的xxx.txt文件
? ? ? ? ? ? ? ? cd Desktop/xxx.txt/
? ? ? ? - 查看文件目錄
? ? ? ? ? ? ? ? ?ll或者ls
? ? ? ? - 打開桌面上Data文件夾中的command.txt文件
? ? ? ? ? ? ? ? cd Desktop/Data/
? ? ? ? ? ? ? ? cat command.txt
-【使用OpenCV在樹莓派上實時顯示攝像頭畫面的Python代碼示例】
import cv2
# 創(chuàng)建攝像頭對象
cap = cv2.VideoCapture(0)
#調用攝像頭‘0’一般是打開電腦自帶攝像頭,‘1’是打開外部攝像頭
# 檢查攝像頭是否成功打開
if not cap.isOpened():
????print("無法打開攝像頭")
????exit()
# 循環(huán)讀取攝像頭畫面
while True:
????# 讀取一幀圖像
????ret, frame = cap.read()
????# 檢查圖像是否成功讀取
????if not ret:
????????print("無法獲取圖像幀")
????????break
????# 在窗口中顯示圖像
????cv2.imshow("Camera", frame)
????# 按下 'q' 鍵退出循環(huán)
????if cv2.waitKey(1) & 0xFF == ord('q'):
????????break
# 釋放攝像頭資源
cap.release()
# 關閉窗口
cv2.destroyAllWindows()
這段代碼首先創(chuàng)建一個攝像頭對象 `cap`,然后通過 `cap.read()` 循環(huán)讀取攝像頭畫面的每一幀圖像。每次讀取到圖像后,使用 `cv2.imshow()` 在窗口中顯示圖像。通過按下 'q' 鍵可以退出循環(huán),最后釋放攝像頭資源并關閉窗口。
請確保已經(jīng)安裝了OpenCV庫,并且攝像頭設備正確連接并且具有適當?shù)臋嘞?。可以將代碼保存為 `camera.py`,然后在終端中運行 `python camera.py` 來執(zhí)行代碼。
?文章來源地址http://www.zghlxwxcb.cn/news/detail-785753.html
- 【模型訓練,文件修改】
文件目錄
- yolov5-master
????????- data
????????????????- GarbageClassify(新建文件夾,存放訓練圖片和配置路徑文件等)
????????????????????????- images
????????????????????????????????- test(模型訓練好后測試時圖片)
????????????????????????????????- train(模型訓練時所用的訓練圖片)
????????????????????????????????- val(模型訓練時所用的驗證圖片)
????????????????????????- labels
????????????????????????????????- train(模型訓練時所用的訓練標簽)
????????????????????????????????- val(模型訓練時所用的驗證標簽)
????????????????????????????????- GarbageClassify(ymal文件,根據(jù)注釋修改路徑、檢測類別等內容)
?????????????????????????- .......(固定文件)
????????- model(固定文件夾)
????????- runs(新建文件夾,存放訓練結果)
????????- detect(新建文件夾,存放訓練結果)
????????- train(新建文件夾)
????????- segments(固定文件夾)
????????- utils(固定文件夾)
? ? ? ? - ......一堆固定文件(注意有一個train.py文件,具體看下面)
????????- train.py
(按照路徑提示①把yolov5s.pt預訓練模型放在一級文件夾下②查看model文件夾中是否包含yolov5的各種ymal文件③【最重要】data中的yaml文件路徑)
- 【labelimg標記】VOC更換成YOLO才能把標記結果的xml轉換成txt文件
- 【樹莓派運行yolo時,模型文件放置位置】訓練好的模型文件best.pt(最好更改一個名稱,因為每次訓練模型文件都分為best和last)放置在整個文件夾的根目錄下
- 【command命令】樹莓派終端cd Desktop/yolo文件夾名稱/
訓練的命令:(云服務器上)
python3 train.py --weights yolov5s.pt --data data/GarbageClassify/GarbageClassify.yaml?--workers 4 --batch-size 2 --epochs 50
(workers同時訓練目標;batch訓練批次;epochs訓練輪次)
識別的命令:(樹莓派上)
python3 detect.py --weight best.pt --source data/GarbageClassify/images/test
-【樹莓派攝像頭實時識別出現(xiàn)0: 480x640 (no detections), 2073.9ms】
????????-?情況1:模型問題。第一輪僅用90張圖片訓練50輪,結果不是很理想;第二輪用300張圖片訓練100輪,準確率有明顯提升
????????-?情況2:攝像頭問題。重新檢查了一遍攝像頭,包括連接、設置、固件等,均無問題。后面用第二次訓練的模型實時測試時,正常識別了
????????-?情況3:光線問題。第二次測試時也出現(xiàn)了同樣有時無法識別的問題,主要在于周圍雜物太多,放在干凈的桌面上,準確率也會變高些,但主要還是在于模型訓練的程度?。?!需要增加數(shù)據(jù)集優(yōu)化模型。
- 【多個種類訓練時,總是第一個類別精確度高,且大多數(shù)都被認為是第一個類別】
添加數(shù)據(jù)集后需要手動標注每一張圖,但由于每次只添加一個類別進行標注,故標號全成了0,后來更改txt文件中相應序號,就恢復正常了
所以標注時最好收集到全部類別,進行同一批次的標注,這樣才能保證類別的序號不會對應錯誤
- 【YOLOv8目標檢測,路徑正確但找不到測試圖片】
終端命令:yolo task=detect predict model=yolov8_train2_best.pt source=datasets/test/images
原因:images文件夾中的圖片出現(xiàn)了非英文字符命名,在圖像讀取時出現(xiàn)問題
解決方案:重命名圖片,且僅包含英文字符文章來源:http://www.zghlxwxcb.cn/news/detail-785753.html
?
到了這里,關于【問題記錄】樹莓派+OpenCV+YOLOv5目標檢測(Pytorch框架)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!