FCN代码及效果展示

news2024/10/7 12:25:11

1. 代码获取

代码地址: https://github.com/Le0v1n/ml_code/tree/main/Segmentation/FCN

2. 从头开始训练

2.1 测试平台

  • GPU:NVIDIA RTX 3070
  • CPU: Intel I5-10400F
  • RAM: 16GB
  • OS: Windows 11
  • Dataset: VOC2012
  • Class num: 21(20+1)
  • Batch size: 4
  • Learning Rate: 0.1
  • Epoch: 35

2.2 结果

[epoch: 35]
train_loss: 2.1653
lr: 0.073090
global correct: 73.2
average row correct: ['94.7', '43.9', '0.0', '0.1', '0.6', '0.0', '10.3', '4.0', '0.0', '0.0', '0.0', '0.0', '0.0', '0.0', '2.0', '55.5', '0.0', '7.3', '0.1', '11.1', '0.9']
IoU: ['77.1', '18.3', '0.0', '0.1', '0.6', '0.0', '8.3', '3.7', '0.0', '0.0', '0.0', '0.0', '0.0', '0.0', '1.9', '23.0', '0.0', '6.6', '0.1', '8.1', '0.8']
mean IoU: 7.1

自己的机器跑VOC确实有点慢,跑了35个就停了,感觉不怎么好训练。

3. 预训练

确切来说就是一个简单的断点续训

3.1 测试平台

  • GPU:NVIDIA RTX 3070
  • CPU: Intel I5-10400F
  • RAM: 16GB
  • OS: Windows 11
  • Dataset: VOC2012
  • Class num: 21(20+1)
  • Batch size: 4
  • Learning Rate: 0.0001
  • Epoch: 3

3.2 结果

[epoch: 0]
train_loss: 1.0305
lr: 0.000100
global correct: 92.9
average row correct: ['96.1', '90.7', '77.2', '83.4', '73.8', '61.4', '94.0', '82.9', '94.5', '61.6', '61.1', '67.4', '81.5', '88.6', '88.5', '94.8', '70.6', '86.4', '69.0', '91.8', '80.6']
IoU: ['93.0', '84.3', '38.2', '77.9', '66.1', '57.5', '88.6', '74.3', '77.4', '39.9', '59.5', '53.6', '67.6', '70.9', '76.9', '86.4', '55.5', '69.2', '48.8', '83.8', '72.4']
mean IoU: 68.7

[epoch: 1]
train_loss: 0.8678
lr: 0.000054
global correct: 92.7
average row correct: ['96.3', '87.2', '78.1', '82.4', '76.3', '74.9', '90.8', '84.7', '94.7', '59.5', '58.5', '67.1', '79.5', '73.4', '84.3', '94.5', '76.8', '81.8', '71.3', '84.5', '87.0']
IoU: ['93.0', '83.9', '38.4', '77.6', '67.2', '65.5', '85.1', '75.0', '75.9', '40.3', '54.5', '53.8', '62.3', '66.5', '76.8', '87.0', '56.3', '67.0', '49.7', '79.2', '67.4']
mean IoU: 67.7

[epoch: 2]
train_loss: 0.7631
lr: 0.000000
global correct: 93.0
average row correct: ['96.5', '90.7', '76.9', '73.4', '77.2', '78.9', '85.7', '84.2', '93.8', '58.0', '74.6', '67.0', '82.8', '63.5', '88.0', '94.8', '71.3', '85.2', '71.5', '87.1', '88.0']
IoU: ['93.2', '85.3', '38.8', '71.2', '68.4', '67.6', '83.0', '76.2', '79.1', '40.7', '63.4', '54.6', '67.3', '60.7', '78.3', '86.9', '57.4', '66.0', '50.3', '79.6', '69.0']
mean IoU: 68.4

4. 测试效果图展示

4.1 飞机

在这里插入图片描述

4.2 人物

在这里插入图片描述

4.3 街道中的人

在这里插入图片描述

4.4 盆栽

在这里插入图片描述

5. 总结

从测试效果图可以看到,FCN网络的效果还是不错的,但从头开始训练需要进一步训练,目前欠拟合比较严重,和PyTorch官方提供的权重文件效果差距很大!

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

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

相关文章

嘉兴经开区第四届创新创业大赛总决赛成功举办

12月21日至12月22日,嘉兴经济技术开发区第四届创新创业大赛总决赛成功举办,经过激烈角逐最后共有10家企业分别获得大赛初创组和成长组的一二三等奖。 总决赛现场 嘉兴经开区第四届中国创新创业大赛于6月正式启动,陆续在嘉兴、成都、北京、西…

【详细学习SpringBoot源码之内嵌Tomcat启动原理分析编译部署Tomcat源码过程解析-9】

一.知识回顾 【0.SpringBoot专栏的相关文章都在这里哟,后续更多的文章内容可以点击查看】 【1.SpringBoot初识之Spring注解发展流程以及常用的Spring和SpringBoot注解】 【2.SpringBoot自动装配之SPI机制&SPI案例实操学习&SPI机制核心源码学习】 【3.详细学…

12-RabbitMq概述与工作模式深度剖析

MQ概述 MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。 MQ 的优势 应用解耦:提高系统容错性和可维护性 异步提速:提升用户体验和系统吞吐量 削峰填谷&#xff1…

unity中使用代码接绘制三维模型

一 模型的构成 在三维世界中,绘制一个模型并不是什么很复杂的问题。只要知道了基本原理一切需求便迎刃而解。 如下图所示,任何模型都是由点线面构成的,而面的最小单位是三角形。 任何一个多边形的面,都是由多个三角形构成的。比…

Web前端105天-day64-HTML5_CORE

HTML5CORE04 目录 前言 一、复习 二、WebSocket 三、服务器搭建 四、聊天室 五、defineProperty 5.1.初识defineProperty 5.2.配置多个属性 5.3.可配置 5.4.赋值监听 5.5.练习 5.6.计算属性 总结 前言 HTML5CORE04学习开始 一、复习 SVG: 利用HTML的 DOM 来绘制图…

PCB贴片机如何送料?

1.常见的贴片机供料器四种形式 http://www.sz-bjzn.com/1547.html 2.模块化设计SMT贴片机送料器的操作方法 3.淘宝 https://item.taobao.com/item.htm?spma230r.1.14.98.33e41823OZ1zzn&id579043582781&ns1&abbucket20#detail 不错:https://item.tao…

distinct与group by 去重

distinct与group by 去重distinct 特点:group by 特点:总结:mysql中常用去重复数据的方法是使用 distinct 或者group by ,以上2种均能实现,但也有不同的地方。distinct 特点: 1、distinct 只能放在查询字段…

重新更新anaconda

更新anaconda问题阐述问题分析打开Anaconda Nvaigator打开文件所在位置复制文件所在路径找到此电脑或者打开设置找到高级系统设置环境变量添加环境变量打开scripts文件修改成功再一次启动感谢观看今天手贱,不小心删掉的anaconda,我想一不做二不休,直接重新重装了,就找到了anaco…

经典SQL语句大全(基础、提升、技巧、数据开发、基本函数)

目录 前言 正文 第一章:基础 第二章:提升 第三章:技巧 第四章:数据开发-经典​​​​​​​ 第五章:SQL Server基本函数 第六章:常识 第七章:SQLServer2000 同步复制技术实现步骤 总结…

juc-4-synchronized原理

目录 1、synchronized 作用于静态方法 总结 ​编辑 案例 静态成员变量 (synchronized锁非静态方法) 案例 静态成员变量 (synchronized锁静态方法 或 直接锁类) 2、监视器锁(monitor) 2.1 synchronized怎么实现的线程安全呢? 3、JDK6 synchronized 的优化 3.1 C…

互联网技术不再是统领,当下正在发生着一场深刻的变革

拥抱实体经济,绝对是当下互联网玩家们的首要选择。无论是头部的互联网企业来讲,还是新生的互联网玩家而言,它们都不约而同地将关注的焦点聚焦在了这样一个方向上。   透过这一点,我们可以非常明显地感受到,一个全新的…

圣诞节,记录前行中跨过的2022

2022年,我人生的第二十四年,是我大学生活的最后一年,是我职场生涯的第一年,这一年从学生到打工人,从实习生到职场员工,变化了许多,做了许多,收获了许多,同时也成长了许多…

m自适应FSK解调系统误码率matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 FSK信号的解调也有非相干和相干两种,FSK信号可以看作是用两个频率源交替传输得到的,所以FSK的接收机由两个并联的ASK接收机组成。 (1)相干解调 相干解调是利用乘法器&…

Minecraft(我的世界) Fabric 1.19.3 服务器搭建教程

Debian系统使用MCSManager9面板搭建MC Java版MOD服务器的教程,本教程用的Fabric1.19.3服务端,用其他服务端的也可以参考一下。 视频教程:https://www.bilibili.com/video/BV1Zd4y1h7zG/ 我的世界(MC) Fabric 1.19.3 开服教程,新手…

IDEA Git 选项栏各项功能详解

IDEA Git 选项栏各项功能详解 如图所示 Copy Revision Number 顾名思义 拷贝当前版本号 到剪切板 a8e4b86ce9ca01968629504a6e19b4b99d76a853 Create Patch 在 git 日志中选择要创建补丁的commit,右键选择Create Patch...同一个文件在多次commit中都存在&#xff…

DSP-离散时间系统

目录 概念: 累加器(Accumulator): N点滑动滤波器: 离散时间系统的分类 : 线性系统 Linear System 移不变系统 Shift-Invariant Systems 因果系统 Causal System 稳定系统 Stable System 无源(passive&#x…

蚂蚁感冒(第五届蓝桥杯省赛C++A/B组)

目录 题目详细:​编辑 题目思路: 两种情况: 代码详解: 题目详细: 题目思路: 这个题目的关键在于对蚂蚁相遇 的时候情况的看待 两个蚂蚁相遇时候的情况 我们可以看作 他们相互穿过了彼此 假设相遇…

基于CNN的MINIST手写数字识别项目代码以及原理详解

文章目录项目简介项目开发软件环境项目开发硬件环境前言一、数据加载的作用二、Pytorch进行数据加载所需工具2.1 Dataset2.2 Dataloader2.3 Torchvision2.4 Torchtext2.5 加载项目需要使用的库三、加载MINIST数据集3.1 数据集简介3.2 数据预处理3.3 加载数据集四、模型构建五、…

【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(Seata-终)

分布式事务中间件对⽐与选择 tx-lcnEasyTransactionByteTCCSeata Seata实现分布式事务 我们主要以Seata的分布式事务框架进行介绍分析,相关的并且针对于其三种模式进行分别说明介绍。 搭建Seata Server 前往https://github.com/seata/seata/releases 下载Seata安装…

TCP通信

目录 一.服务端 1.1创建套接字与绑定 1.2监听 1.3服务端获取连接 1.4服务端提供服务 二.客户端 2.1创建套接字 2.2客户端获取连接 2.3客户端发送需求 三.填充命令行参数 3.1客户端 3.2服务端 3.3结果测试 四.线程版本服务端 4.1线程版 4.2线程池版 一.服务端 与上文…