YOLO目标检测简单实现

安装labelImg

我们标注样本需要使用这个软件,我这里在anaconda中直接用下面代码进行安装和启动。

pip install labelImg #安装
labelImg # 启动

标注样本

首先我们看下界面,Open我们打开一张照片,Open Dir选你放所有图片的文件夹,Change Save Dir选择标记结果的文件夹。

接着我们勾选自动保存和YOLO模型,这样标注结果就能用yolo模型训练了。

最后通过Create RectBox画框标注就行了,可以看看生成的txt,类别和坐标。

配置环境和数据

我们通过下面代码安装和进行验证。

pip install ultralytics
pip install opencv-python pillow
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg #测试

要训练的数据结构如下

我这里在网上下了一些多啦A梦和哆啦美的照片。

配置文件data.yaml

path: datasets  # 数据集根目录
train: images/train  # 训练图片路径
val: images/val      # 验证图片路径

# 类别数
nc: 2

# 类别名称(必须和标注一致)
names:
  0: a   
  1: b 

训练和测试

from ultralytics import YOLO

# 加载预训练模型
model = YOLO('yolov8s.pt')

# 开始训练(CPU版)
model.train(
    data='datasets/data.yaml',
    epochs=100,
    imgsz=640,
    batch=8,         # CPU 可以保持 8,不报错就行
    patience=20,
    device='cpu',    # 👈 这里改成 cpu 就可以了
    name='ir_animal_model' #保持模型
)

最终模型保存在:runs/detect/ir_animal_model/weights/best.pt

我在找一张照片进行测试,使用下面代码。

from ultralytics import YOLO
import cv2

# 加载模型
model = YOLO('runs/detect/ir_animal_model/weights/best.pt')

# 预测
img_path = 'test.jpg'  
results = model(img_path)

annotated = results[0].plot()
cv2.imwrite('result.jpg', annotated)  # 保存到当前文件夹

print("检测完成!结果已保存为:result.jpg")
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容