赞
踩
现有不同种类的鸟,每一类有5张图,要求是对每一幅图中的鸟进行准确定位,即用bounding box将图中的鸟框出来。演示如下:
使用Make Sense网站制作数据集,创建六类鸟的labels,并对图像进行标注,并将其导出为yolov所使用的文件形式
其中image的train和val文件夹中存放训练和预测的图片,labels下面存放制作好的数据集和用来预测的数据集(val下面的文件是后面运行过程中生成的),test文件夹下存放用来测试的图片。
!unzip -uq birds.zip
%cd /content/birds/yolov5-master/
!pip install -r requirements.txt
train: /content/birds/yolov5-master/mydata/images/train # train images (relative to 'path') 30 images
val: /content/birds/yolov5-master/mydata/images/val
# Classes
nc: 6 # number of classes
names: ["egrets family", "redshank", "avocet", "plover", "egret", "night heron"] # class names
parser = argparse.ArgumentParser()
parser.add_argument('--weights', type=str, default='/content/birds/yolov5-master/weighs/yolov5s.pt', help='initial weights path')
parser.add_argument('--cfg', type=str, default='/content/birds/yolov5-master/models/yolov5s_birds.yaml', help='model.yaml path')
parser.add_argument('--data', type=str, default='/content/birds/yolov5-master/data/birds.yaml', help='dataset.yaml path')
parser.add_argument('--hyp', type=str, default=ROOT / 'data/hyps/hyp.scratch-low.yaml', help='hyperparameters path')
parser.add_argument('--epochs', type=int, default=100)
parser.add_argument('--batch-size', type=int, default=32, help='total batch size for all GPUs, -1 for autobatch')
!python train.py
训练100轮后还行啦night heron的准确率不够,此时选择修改训练轮数为300,重新进行训练。
准确率得以提高。
tensorbord --logdir=runs/train
parser = argparse.ArgumentParser()
parser.add_argument('--weights', nargs='+', type=str, default='best.pt', help='model path(s)')
parser.add_argument('--source', type=str, default='F:/birds/yolov5-master/mydata/test/', help='file/dir/URL/glob, 0 for webcam')
白鹭家族
红脚鹬
反嘴鹬
环颈珩
小白鹭
夜鹭
总结:此项目是数字图像处理课程期末大实验,在实现过程中博主选择了使用yolov5来做,希望各位大佬批评指正
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。