基于keras框架的MobileNetV3深度学习神经网络花卉/花朵分类识别系统源码

第一步:准备数据

12种花卉数据:向日葵, 梨花, 水仙, 牡丹, 玉兰花, 玫瑰, 睡莲, 美人蕉, 荷花, 菊花, 郁金香, 鸡蛋花,总共有7017张图片,每个文件夹单独放一种花

第二步:搭建模型

本文选择MobileNetV3Small,其网络结构如下:

由于是十二分类问题,直接套用网络肯定是不行,因此会在全连接部分做手脚,参考代码如下:

python 复制代码
    x = base_model.output
    x = GlobalAveragePooling2D()(x)
    x = Dense(256)(x)
    x = Activation('relu')(x)
    x = Dense(64)(x)
    x = Activation('relu')(x)
    x = Dense(class_num)(x)
    predictions = Activation('softmax')(x)

    # for layer in base_model.layers:
    #     layer.trainable = True

    model = Model(inputs=base_model.input, outputs=predictions)
    return model

第三步:训练代码

1)损失函数为:交叉熵损失函数

2)MobileNetV3Small可以从头训练或者利用预训练模型进行训练:

python 复制代码
    w = 1
    if w:
        base_model = MobileNetV3Small(weights='imagenet', include_top=False, input_shape=(width, height, 3))
    else:
        base_model = MobileNetV3Small(weights=None, include_top=False, input_shape=(width, height, 3))

第四步:统计正确率

|----------------------------------------------------------------------------------|
| |

正确率高达94.5%

第五步:搭建GUI界面

第六步:整个工程的内容

有训练代码和训练好的模型以及训练过程,提供数据,提供GUI界面代码,主要使用方法可以参考里面的"文档说明_必看.docx"

项目完整文件下载请见演示与介绍视频的简介处给出:➷➷➷

https://www.bilibili.com/video/BV18QUaYMEf1/

相关推荐
智驱力人工智能19 分钟前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
人工不智能57725 分钟前
拆解 BERT:Output 中的 Hidden States 到底藏了什么秘密?
人工智能·深度学习·bert
h64648564h1 小时前
CANN 性能剖析与调优全指南:从 Profiling 到 Kernel 级优化
人工智能·深度学习
心疼你的一切1 小时前
解密CANN仓库:AIGC的算力底座、关键应用与API实战解析
数据仓库·深度学习·aigc·cann
学电子她就能回来吗3 小时前
深度学习速成:损失函数与反向传播
人工智能·深度学习·学习·计算机视觉·github
爱吃泡芙的小白白3 小时前
突破传统:CNN卷积层(普通/空洞)核心技术演进与实战指南
人工智能·神经网络·cnn·卷积层·空洞卷积·普通卷积
Coder_Boy_3 小时前
TensorFlow小白科普
人工智能·深度学习·tensorflow·neo4j
大模型玩家七七3 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
kkzhang4 小时前
Concept Bottleneck Models-概念瓶颈模型用于可解释决策:进展、分类体系 与未来方向综述
深度学习
程序员打怪兽5 小时前
详解YOLOv8网络结构
人工智能·深度学习