图像分类之花卉识别实验验证

        本实验基于37种主流的图像分类算法模型,对64种花卉进行识别。使用包括vgg、resnet、densenet、efficientnet、inception、mobilenet等37种图像分类模型进行实验,评估各种模型对花卉的识别准确度、计算量、参数量,对比不同模型的性能和优缺点。

1、数据集

        数据集包含的花卉种类一共有64种,共32000张尺度为224x224的彩色图像,其中训练集为25600张,测试集为6400张。如下图所示,为64种花卉的示例图,包含的花卉种类名称为:诸葛菜、鬼针草、油菜花、蒲公英、三角梅、三叶草、两色金鸡菊、婆婆纳、石龙芮、滨菊、剑叶金鸡菊、一年蓬、蓝蓟、绣球小冠花、全叶马兰、全缘金光菊、狗尾草、马鞭草、曼陀罗、千屈菜、旋覆花、狼尾草、射干、桔梗、蒲苇、秋英、粉黛乱子草、黄金菊、芒草、石竹、棣棠、红花酢浆草、长柔毛野豌豆、小苜蓿、草甸鼠尾草、蓝花鼠尾草、玫瑰、大花耧斗菜、北香花介、美丽芍药
、美丽月见草、小果蔷薇、高羊茅、线叶蓟、蛇莓、泽珍珠菜、小蜡、粉花绣线菊、天人菊、石榴、锦带花、山桃草、南天竹、细齿草木樨、矢车菊、紫菀、兔儿尾苗、松果菊、华水苏、三肋果、锦葵、水葱、堪察加费菜、夹竹桃。数据集+训练源码下载地址

2、结果分析

        一共测试了37种主流的图像分类模型,模型的参数和性能如下表所示。模型训练架构为pytorch架构,一共集成了37种模型,可以根据模型名称选择指定的模型,源码+数据集已经打包,点击这里下载。

各模型在花卉识别任务上的性能
模型计算量[G]参数量[M]Top1 准确度
alexnet2.5272 17.7085 0.9413
densenet_1217.2888 6.9460 0.9820
densenet_1698.7874 12.4468 0.9830
densenet_20111.4791 18.0038 0.9823
densenet_26415.7301 30.4447 0.9844
efficientnet_b01.1330 7.2038 0.9650
efficientnet_b11.6814 12.1062 0.9683
efficientnet_b21.9493 14.3259 0.9594
efficientnet_b32.8565 20.0478 0.9686
efficientnet_b44.4744 33.1864 0.9553
efficientnet_b57.0376 54.1427 0.9566
efficientnet_b69.8001 76.6058 0.9594
efficientnet_b715.5002 123.2917 0.9478
inception_resnet_v110.6189 21.8683 0.9672
inception_resnet_v215.9665 31.9694 0.9683
inception_v13.6633 6.0392 0.9780
inception_v23.8100 7.8637 0.9789
inception_v38.8643 21.8995 0.9791
inception_v419.6164 41.3695 0.9766
lenet1.0318 78.4591 0.7633
mnist56.2191 214.4706 0.9195
mobilenet_v11.6834 3.2616 0.9702
mobilenet_v20.9391 2.8031 0.9617
resnet_183.879011.20870.9770
resnet_347.785721.31320.9764
resnet_5010.241023.57470.9700
resnet_10119.639342.54070.9706
resnet_15229.039558.16130.9717
squeezenet_v11.7934 0.7683 0.9736
squeezenet_v21.7944 0.7683 0.9766
squeezenet_v319.0263 9.9594 0.9825
tsl_1624.9182 116.9690 0.9500
vgg_1116.1756 129.0285 0.9422
vgg_1323.9902 129.2131 0.9311
vgg_1632.7775 134.5228 0.9286
vgg_1941.5648 139.8324 0.8912
zfnet2.8317 72.1543 0.9453

       特别说明,以上表格中,计算量是指浮点操作的次数,单位是GFlops,参数量是指可训练的参数数目,单位是M。

        64种花卉识别,经过测试37种主流的图像分类模型,从识别准确度上来看,densenet系列、inception系列、mobilenet系列、resnet系列、squeezenet系列均表现不错。考虑到计算量和参数量直接影响模型在边缘端的部署性能,因此需要在准确度和推理速度之间权衡,综合考虑下,densenet_121、incepton_v1、inception_v2、mobilenet_v1、mobilenet_v2、resnet_18、squeezenet_v1、squeezenet_v2等模型在计算量较小的情况下,仍能保持较高的准确率,是边缘端部署的优先选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/17322.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Linux基础开发工具使用

目录 1. 软件包管理器yum 1.1 概念介绍 1.2 更换镜像源(可选) 1.3 工具的搜索/查看/安装/卸载 1.4 优势 2. vim编辑器 2.1 vi和vim 2.2 三种常用模式和操作 2.3 配置vim 3. Linux编译器-gcc/g 4. Linux调试器-gdb 5. make和Makefile 6.…

电脑怎么自动切换IP地址

在现代网络环境中,电脑自动切换IP地址的需求日益增多。无论是出于网络安全、隐私保护,还是为了绕过地域限制,自动切换IP地址都成为了许多用户关注的焦点。本文将详细介绍几种实现电脑自动切换IP地址的方法,以满足不同用户的需求。…

PMBOK® 第六版 控制进度

目录 读后感—PMBOK第六版 目录 制定了明确的计划后,对计划的控制尤为重要。例如,经常提到的“累积效应”,如果某个阶段的评分仅为0.9分,那么五个得分为0.9分的阶段,最终结果可能只是一个0.5分。 特别是在当今这个时…

linux001.在Oracle VM VirtualBox中ubuntu虚拟系统扩容

1.打开终端切换到virtualBox安装目录 2.输入命令扩容 如上终端中的代码解释: D:\Program Files\Oracle\VirtualBox>.\VBoxManage modifyhd D:\ubuntu18.04\Ubuntu18.04\Ubuntu18.04.vdi --resize 40960如上代码说明:D:\Program Files\Oracle\Virtual…

Web导出Excel表格

背景: 1. 后端主导实现 流程:前端调用到导出excel接口 -> 后端返回excel文件流 -> 浏览器会识别并自动下载 场景:大部分场景都有后端来做 2. 前端主导实现 流程:前端获取要导出的数据 -> 常规数据用插件处理成一个e…

函数栈帧的创建与销毁

我是目录 环境理解栈帧函数栈帧图预备知识寄存器MOV 指令SUB 指令PUSH 指令POP 指令LEA 指令CALL 指令REP STOS 指令 一个简单的C程序栈帧创建栈帧销毁 如何传参数值参数变量参数 如何返回值数值返回变量返回 环境 集成环境:VS2022 x86 编辑语言:C 汇…

服务端高并发分布式结构进阶之路

序言 在技术求知的旅途中,鉴于多数读者缺乏在中大型系统实践中的亲身体验,难以从宏观角度把握某些概念,因此,本文特选取“电子商务应用”作为实例,详细阐述从百级至千万级并发场景下服务端架构的逐步演变历程。同时&am…

Linux:版本控制器git和调试工具cgdb

✨✨所属专栏:Linux✨✨ ✨✨作者主页:嶔某✨✨ 版本控制器 为了能够更⽅便我们管理这些不同版本的⽂件,便有了版本控制器。所谓的版本控制器,就是能让你了解到⼀个⽂件的历史,以及它的发展过程的系统。通俗的讲就是⼀…

【0x001C】HCI_Write_Page_Scan_Activity详解

目录 一、命令概述 二、命令格式和参数说明 2.1. HCI_Write_Page_Scan_Activity命令格式 2.2. Page_Scan_Interval 2.3. Page_Scan_Window 三、响应事件及参数说明 3.1. HCI_Command_Complete事件 3.2. Status 3.3. 示例 四、命令执行流程 4.1. 命令发起阶段(主机端…

云原生之运维监控实践-使用Prometheus与Grafana实现对Nginx和Nacos服务的监测

背景 如果你要为应用程序构建规范或用户故事,那么务必先把应用程序每个组件的监控指标考虑进来,千万不要等到项目结束或部署之前再做这件事情。——《Prometheus监控实战》 去年写了一篇在Docker环境下部署若依微服务ruoyi-cloud项目的文章,当…

突破工业管理新高度:AI多模态引擎赋能设备维护管理

结合AI技术,可以帮助企业提升设备维护效率和管理复杂信息的能力。以下是一个详细流程和思路: 1. 项目背景概述 在高端制造业领域,如飞机、轮船、光刻机等设备的操作手册及零件图纸涉及大量的零配件信息和操作维护流程。传统方式难以高效管理…

C++重写和重定义和重载

重写 概念: 重写发生在类的继承体系中,是指在派生类中重新定义基类中已声明为虚函数(使用 virtual 关键字修饰)的函数。其目的是让派生类根据自身的需求对基类的虚函数提供不同的具体实现,从而实现运行时多态。 规则及…

centos7在使用yum源安装依赖时报错

1.在centos7中使用yum命令时候报错如下类似信息: Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release7&archx86_64&repoos&infrastock error was 14: curl#6 - "Could not resol…

小版本大不同 | Navicat 17 新增 TiDB 功能

近日,Navicat 17 迎来了小版本更新。此次版本新增了对 PingCap 公司的 TiDB 开源分布式关系型数据库的支持,进一步拓展了 Navicat 的兼容边界。即日起,Navicat 17 所有用户可免费升级至最新版本,通过 Navicat 工具实现 TiDB 数据库…

python 编程 在 Matplotlib 中 默认预定的所有颜色,可以使用多种方法来指定颜色,包括预定义的颜色名称、十六进制颜色代码、

在 Matplotlib 中,可以使用多种方法来指定颜色,包括预定义的颜色名称、十六进制颜色代码、RGB 元组等。如果你想要一个比较深的颜色,你可以选择一些预定义的深色名称,或者使用较低的亮度值来定义自己的颜色。 以下是一些预定义的…

【基于Java Springboot敬老院管理系统

一、作品包含 源码数据库设计文档万字全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据库…

JRebel插件,全教程

JRebel是一套JavaEE开发工具。相信大家都用过,但是频繁的需要激活,已经让java开发者烦不胜烦。 本篇文章来给大家解决这个烦恼。当然没有用过的同行,我也跟大家介绍一下: 简单来说,Jrebel 可快速实现热部署,在本地开发…

PPPoE技术详解

一 , 背景 随着运营商对宽带接入技术要求的不断提高,以xDSL,CableModem和以太网为主的几种宽带接入技术在用户管理和计费等方面的不足开始显露,已无法满足运营商的需求。 在众多的技术中,以太网接入方式经济实惠&…

[JAVA]MyBatis环境配置介绍

什么是MyBatis环境配置? MyBatis是基于JDBC对数据库进行操作,在我们进行数据操作时,我们需要告诉MyBatis我们连接哪个数据库,ip地址,数据库名称,用户名密码等。以此来进行环境配置。 首先,MyB…

Javascirpt时区——脱坑指南

最近业务反馈了一个约课功能的问题,澳大利亚的用户反馈,无法进行选课。排查之后发现是时区不对引起的,由于时区的偏差已经超过时间,导致无法选课。 这里对js中处理时区的问题做一些总结。 时区 时区(Time Zone&#xf…