基于多种CNN网络(Alexnet_vgg_resnet_Mobilenetv_Efficientnet等)实现鱼类分类识别并做指标对比(附源码链接+鱼类识别数据集+模型文件)

68 篇文章 2 订阅
32 篇文章 0 订阅

9类鱼类识别模型搭建,从网上爬取9类鱼,对爬取的数据进行数据清理等操作;搭建AlexNet等经典的分类网络,对数据集进行训练。

一、效果展示

说明:训练数据集50个epoch,其他参数不变的情况下得到如下结果:

训练集精度验证集精度
AlexNet99.4782.76
Googlenet97.0284.84
VGG1696.5384.46
MobilenetV397.0685.79
ShufflenetV296.7785.60
Resnet50(加预训练)100.098.29

1、AlexNet

在这里插入图片描述在这里插入图片描述

2、Googlenet
在这里插入图片描述

在这里插入图片描述

3、VGG16

在这里插入图片描述

4、Resnet50(使用了预训练权重)

在这里插入图片描述
在这里插入图片描述

5、MobilenetV3

在这里插入图片描述
在这里插入图片描述

6、ShufflenetV2

在这里插入图片描述
在这里插入图片描述

二、环境介绍

  • 配置:tensorflow==2.11.0、Cuda 10.1
  • 数据集(9类):河豚、蝴蝶鱼、金鱼、鲫鱼、龙鱼、罗汉鱼、鲇鱼、清道夫、石板。4777张训练集, 528张验证集。

三、项目相关数据准备

  • 鱼类数据集下载:

    链接:https://pan.baidu.com/s/14YDm-wv5036ygL9MbRxxPg

  • 预训练权重下载(用于模型训练):

    链接:https://pan.baidu.com/s/15NhHPP08CjLl6wk8vSgZtQ
    提取码:cewz

  • 预测权重下载(用于模型预测):

    链接:https://pan.baidu.com/s/15hfxuz4sCEJR79S1c6a15Q
    提取码:cipk

四、模型预测

在命令行运行:

python predict.py

可以通过修改predict.py里面的model_name来调用不同模型进行预测

# -------------------------------- 训练参数配置 --------------------------------------# 
im_height = 224 # 输入图片的高
im_width = 224  # 输入图片的宽
model_name = "AlexNet" # 模型名称"AlexNet"、"VGG"、"Googlenet","Resnet","MobilenetV3"、"Shufflenet"
img_path = r"fish_data\test\longyu.jpg" # 预测的图片
# ------------------------------------------------------------------------------------# 

五、模型训练

在命令行运行:

python train.py

可以通过修改train.py里面的model_name来调用不同模型进行训练

# -------------------------------- 训练参数配置 --------------------------------------# 
im_height = 224 # 输入图片的高
im_width = 224  # 输入图片的宽
num_classes = 9   # 识别的种类
batch_size = 4 # 训练的批次图片数
epochs = 50     # 训练迭代次数
model_name = "Shufflenet" # 模型名称"AlexNet"、"VGG"、"Googlenet","Resnet","MobilenetV2","MobilenetV3"、"Shufflenet"、"EfficientnetV1","EfficientnetV2"
log_draw_loss_suc = True # 是否需要通过日志绘图
# ------------------------------------------------------------------------------------# 

六、项目结构

Project:

├─checkpoints # 预训练权重

├─fish_data # 数据集

│ ├─fish_photos # 完整数据集

│ ├─test # 自己准备测试集

│ ├─train # 划分训练集

│ └─val # 划分验证集

├─img # 运行mardown显示

├─logs # 训练日志

├─nets # py模型文件

├─save_weights # 保存训练模型文件

└─predict.py # 预测脚本

└─train.py # 训练脚本

└─split_data.py # 数据集划分

└─Reptiles.py # 数据集爬取

└─class_indices.json # 种类字典

└─requirements.txt # 项目环境文件

部分算法源码下载链接

https://download.csdn.net/download/DeepLearning_/87805569
https://download.csdn.net/download/DeepLearning_/87805564
https://download.csdn.net/download/DeepLearning_/87805553

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客程序设计

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值