• 正文
    • 圖片標注分類
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

利用Yolo模型實現(xiàn)圖像分類的迅速上手Blog!

02/10 08:42
4138
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

最近要做一個有關(guān)于圖像分類的項目,大體需要區(qū)分下面三種圖像,分別是模糊的PCB孔,外孔清晰照片,內(nèi)孔清晰照片。

三種圖像

為了實現(xiàn)這一目的,于是我想到了利用Yolo(You only Look Once)模型來實現(xiàn)圖像實時識別。

本期我們就介紹如何快速上手使用Yolo訓練自己的實時分類模型。

環(huán)境要求

YOLO模型對硬件的要求相對靈活,最低配置下,CPU需要4核,內(nèi)存至少16GB。

除此之外,推薦安裝Python 3.6及以上的版本的來使用。

下載和安裝Python可以前往Python官網(wǎng)下載與安裝,本文使用的Python環(huán)境是Python 3.9

編譯器使用的PyCharm 2023,也可自行搜索PyCharm進行安裝。

除了環(huán)境要求之外,準備好我們需要檢測的圖片,接下來我們將對圖片進行標簽分類

圖片標注分類

標注工具我們使用開源LabelImg,在CMD窗口輸入以下代碼,即可安裝Labelimg(這里也可以用虛擬環(huán)境)

pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple

完成后,即可在Python的根目錄中找到LabelImag的啟動程序了。

可以開啟自動保存

接下來在圖片中,選中待識別圖片的路徑,打開圖片,挨個對其進行標注了。

保存完后我們就可以得到圖片標注信息了,包括“類別索引”,標注框信息的歸一化數(shù)據(jù)等。

創(chuàng)建一個訓練文件夾和預(yù)測文件夾(注意,標簽也要創(chuàng)建),分別放入圖片和標注結(jié)果(txt文件),這里我分別放置了70張圖片用作訓練,10張圖片用作預(yù)測

Yolo使用

接下來利用Pycharm創(chuàng)建一個新的工程,在終端中可以輸入如下代碼安裝Yolo。

pip install ultralytics

如果出現(xiàn)了pip版本太低了,可以按照它的方式升級

之后創(chuàng)建一個Yolo的配置文件,描述一下我們要訓練數(shù)據(jù)情況。

py文件中的代碼非常非常的簡單,只需要下面一段即可。

import torchfrom ultralytics import YOLO# 加載模型model = YOLO('yolov8n.yaml') ?# 使用 YoloV8 的預(yù)訓練模型
# 訓練模型results = model.train( ? ?data='./dataset.yaml', ?# 數(shù)據(jù)集配置文件路徑 ? ?epochs=100, ?# 訓練輪數(shù) ? ?imgsz=800,#圖片大小 800*800像素 ? ?batch=16,#一次訓練的圖片批次 ? ?name='yolov8_custom', ? ?save_dir="ModeSave", ? ?#模型保存路徑 ? ?save_period=10 ?#每十輪保存一次)
# 評估模型results = model.val()

接著開始運行,下面是訓練過程部分截圖

一百次訓練大概花了一個多小時,十四張用于預(yù)測的圖片全部識別成功。

我這里的標簽是:blur是模糊的照片,clear1是外孔清晰照片,clear2是內(nèi)孔清晰照片,數(shù)字是置信度,除了第五張圖片的置信度為0.3之外,其他的都非常準確。

大家有啥推薦做的歡迎留言?。?!

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄