当前位置: 首页 > news >正文

回顾 — SFA:简化快速 AlexNet(模糊分类)

模糊图像的样本

一、说明

        在本文回顾了基于深度学习的模糊图像分类(SFA)。在本文中:Simplified-Fast-AlexNet (SFA)旨在对图像是否因散焦模糊高斯模糊雾霾模糊运动模糊而模糊进行分类。

二、大纲

  1. 图像模糊建模简要概述
  2. 简化快速 AlexNet (SFA):网络架构
  3. 数据集
  4. 实验结果

三、图像模糊建模概述

  • 图像模糊问题可以看作是从高质量图像到低质量模糊图像的图像退化过程:

  • 其中F表示退化图像,f是无损图像,h 表示模糊核,又名点扩散函数(PSF),*表示卷积算子,n表示附加噪声,这里,n是高斯白噪声。

3.1. 高斯模糊

  • 在许多实际应用中,例如遥感和卫星成像,高斯核函数被视为大气湍流的核函数:

  • 其中,σ为核半径,R为支撑区域,通常满足3σ标准

3.2. 运动模糊

  • 运动模糊是另一种需要考虑的模糊,它是由目标和相机之间的相对线性运动引起的:

  • 其中M表示运动长度(以像素为单位),ω表示运动方向与x轴之间的角度。

3.3. 散焦模糊

  • 散焦模糊是日常生活中最常见的,可以通过柱面函数来建模:

  • 其中r表示 模糊半径,与散焦程度成正比。

3.4. 雾霾模糊

  • 雾霾模糊是由自然雾的干扰造成的。在本文中,雾霾模糊没有通过任何PSF来模拟,因为现实生活中存在大量样本并且易于收集用于实验应用。

四、简化快速AlexNet(SFA):网络架构

简化快速 AlexNet (SFA):网络架构

  • 5个卷积层1个全连接层
  • AlexNet每个卷积层的输出数按0.5的比例进行比例压缩。这样做的原因是,与 2012 年 ImageNet 分类竞赛中数千个图像类别相比,四种模糊类型分类是一个相对简单的任务。
  • 另一方面,由于80%以上的参数存储在FC中,因此从AlexNet的原始模型中删除了前两个FC,以提高速度和实时性。
  • 在第 1、2 和 5 层使用批量标准化,而不是原始的局部响应标准化。
  • 输入:输入图像的大小为227×227×3。
  • 第一层:Conv_1:48 个大小为 11×11 的核,步长为 4 像素,pad 为 0;MaxPool_1:大小为 3×3 的内核,2 个像素的步长和 0 的填充。获得 48×27×27 的特征图作为输出。
  • 第二层:Conv_2 使用大小为 5×5 的内核、1 像素的步长和 2 像素的垫;MaxPool_2:大小为 3×3 的内核,步长为 1 像素,填充为 0。
  • 第三层:Conv_3:尺寸为 5×5 的内核,1 像素的步长和 2 像素的填充。
  • 第 4 层:Conv_4 为:尺寸为 3×3 的内核,2 像素的步长和 0 的填充。
  • 第5层:Conv_5:尺寸为3×3的内核,1像素的步长和1的垫;MaxPool_5:内核大小为 3×3,步长为 2 像素,pad 为 0。
  • 第 6 层:全连接层和 ReLU。
  • 因此,SFA不同隐藏层的数据流如下: 227×227×3 > 27×27×48 > 13×13×128 > 13×13×192 > 13×13×192 > 6×6× 128 > 1×1×4。
  • 使用咖啡。

五、数据集

5.1. 训练数据集

  • 使用200,000 个 128×128×3 全局模糊块进行训练。
  • 简而言之,这些补丁是从牛津建筑数据集和加州理工学院 101 数据集应用的合成高斯模糊、运动模糊和散焦模糊中裁剪出来的,以及从在线网站收集的真实雾霾模糊图像中裁剪出来的。

5.2. 测试数据集1

  • 选择 Berkeley 数据集 200 张图像和 Pascal VOC 2007 数据集作为测试数据集。
  • 总共获得了22,240 个全局模糊测试样本块,其中 5560 个雾霾模糊图像块与训练样本具有相同的来源。

5.3. 测试数据集2

  • 构建了由10,080 个自然全局模糊图像块组成的数据集。这些样本都是从与训练数据集中的雾霾模糊样本相同的网站收集的。

六、实验结果

6.1. 损耗曲线和精度曲线

AlexNet和SFA的损失曲线和准确率曲线

  • 尽管AlexNet和SFA这两个模型的细节有所不同,但损失和准确率都达到了相似的值,这表明两个模型在分类准确率标准方面的性能相当。

6.2. 与AlexNet的比较

与AlexNet的比较

  • P_N:模型参数编号。
  • L_N:模型深度。
  • F_T:单幅图像的前向传播时间。
  • B_T:单幅图像的误差后向传播时间。
  • CLF_T:识别单张图像的时间。
  • Tr_T:模型训练时间。
  • 错误:测试数据集1的分类错误率。

AlexNet的P_N大约是SFA的1000倍。

SFA的CLF_T比AlexNet经济0.5s ,这表明SFA更适合实际应用。

SFA的总训练时间不到一天,而AlexNet则需要大约两天。

SFA的分类错误率仅比AlexNet大0.0105 。

6.3. SOTA比较

  • 两步法[4]、单层神经网络[8]和DNN[9]的分类精度来自原始文章。(这很奇怪,因为数据集不同。但可以理解的是,可能无法重新实现。)
  • Accuracy1 是在测试数据集 1 上进行测试,Accuracy2 是在测试数据集 2 上进行测试。
  • 基于学习特征的方法的预测精度(>90%)通常优于手工制作特征的方法(<90%)。
  • SFA在模拟测试数据集上的分类准确率为96.99%,略低于AlexNet的97.74%,但仍然优于DNN模型的95.2%。
  • 此外,SFA在自然模糊数据集上的最佳性能为93.75%,略低于94.10%,但SFA的速度和实时性明显优于AlexNet

七、参考

[2017 ISA] [SFA]
基于深度学习的模糊图像分类 
曾锡豪

相关文章:

回顾 — SFA:简化快速 AlexNet(模糊分类)

模糊图像的样本 一、说明 在本文回顾了基于深度学习的模糊图像分类&#xff08;SFA&#xff09;。在本文中&#xff1a;Simplified-Fast-AlexNet (SFA)旨在对图像是否因散焦模糊、高斯模糊、雾霾模糊或运动模糊而模糊进行分类。 二、大纲 图像模糊建模简要概述简化快速 AlexNet…...

基于51单片机PCF8591数字电压表数码管显示设计( proteus仿真+程序+设计报告+讲解视频)

PCF8591数字电压表数码管显示 1.主要功能&#xff1a;讲解视频&#xff1a;2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单&&下载链接资料下载链接&#xff08;可点击&#xff09;&#xff1a; 基于51单片机PCF8591数字电压表数码管设计( proteus仿真程序设计报告讲…...

分发饼干(贪心算法+图解)

455. 分发饼干 - 力扣&#xff08;LeetCode&#xff09; 题目描述 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最…...

vue项目路由使用history模式,nginx配置,刷新页面显示404

需要在配置项中添加 try_files $uri $uri/ /index.html;...

redis的redis.service配置

在CentOS中&#xff0c;可以使用以下步骤配置redis.service&#xff1a; 创建redis用户和组 在终端中执行以下命令&#xff1a; 复制插入 sudo useradd -r -s /bin/false redis复制插入 这将创建一个名为redis的系统用户&#xff0c;并禁止该用户登录系统。 安装Redis 在…...

高频SQL50题(基础版)-3

文章目录 主要内容一.SQL练习题1.1174-即时食物配送代码如下&#xff08;示例&#xff09;: 2.550-游戏玩法分析代码如下&#xff08;示例&#xff09;: 3.2356-每位教师所教授的科目种类的数量代码如下&#xff08;示例&#xff09;: 4.1141-查询近30天活跃用户数代码如下&…...

OpenMMlab导出yolov3模型并用onnxruntime和tensorrt推理

导出onnx文件 直接使用脚本 import torch from mmdet.apis import init_detector, inference_detectorconfig_file ./configs/yolo/yolov3_mobilenetv2_8xb24-ms-416-300e_coco.py checkpoint_file yolov3_mobilenetv2_mstrain-416_300e_coco_20210718_010823-f68a07b3.pth…...

单链表的插入删除

#include <iostream>#include <stdio.h> #include <stdlib.h>using namespace std;//带头指针的单链表typedef struct LNode{int data;struct LNode *next;}LNode, *LinkList;bool InitList(LinkList &L){L (LNode *) malloc(sizeof(LNode));if(L NUL…...

github使用手册

核心代码 配置用户名/邮箱 best practice git init #在本地初始化一个仓库 git add . #将当前目录所有的文件加入&#xff08;注意这里是加入&#xff09;到缓存区 git commit -m "xxx" #将当前缓存区里的内容提交到本地仓库 git remote add <remote_rep_name&g…...

怎样做ChatGPT应用开发?

要开发一个基于ChatGPT的应用&#xff0c;你可以按照以下步骤进行&#xff1a; 步骤1&#xff1a;了解ChatGPT API ChatGPT的使用通常通过API进行。你需要了解ChatGPT的API文档&#xff0c;包括如何进行请求、API端点、身份验证等信息。在开发之前&#xff0c;确保你已经获取了…...

漏洞-任意账号注册

一漏洞介绍 1.未验证邮箱/手机号 情景&#xff1a;应用为了方便用户记录用户名&#xff0c;使用邮箱和手机号作为用户名&#xff08;因此很多应用在注册的时候就要求用户填写&#xff0c;多数时候都会给用户发送激活信息&#xff0c;激活后才能登录&#xff09; 缺陷&#xff…...

一个关于jdbc操作mysql和java基础练手的通讯录管理系统小项目

首先 : 整个项目的项目结构为 : 1.第一步先导入数据库的驱动&#xff0c;我的mysql数据库是8.0以上版本&#xff0c;然后导入的驱动就是8.0.16版本的jar包&#xff1b; 1.JdbcBase : JDBC基础操作封装成了JdbcBase类,在里面先静态定义了数据库连接对象和DQL查询结果&#x…...

C++用条件变量实现线程安全的queue容器

#include <queue> #include <memory> #include <mutex> #include <condition_variable> template<typename T> class threadsafe_queue { private:mutable std::mutex mut; // 1 互斥量必须是可变的 std::queue<T> data_queue;std::condi…...

EDA实验-----3-8译码器设计(QuartusII)

目录 一. 实验目的 二. 实验仪器 三. 实验原理及内容 1.实验原理 2.实验内容 四&#xff0e;实验步骤 五. 实验报告 六. 注意事项 七. 实验过程 1.创建Verilog文件&#xff0c;写代码 ​编辑 2.波形仿真 3.连接电路图 4.烧录操作 一. 实验目的 学会Verilog HDL的…...

NFTScan | 11.06~11.12 NFT 市场热点汇总

欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总。 周期&#xff1a;2023.11.06~ 2023.11.12 NFT Hot News 01/ 《辛普森一家》提及 NFT 及区块链&#xff0c;相关 NFT 地板价涨至 0.35 ETH 11 月 6 日&#xff0c;据 Coindesk 报道&#xff0c;美国时间周…...

2022年12月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 下面哪个语句正确定义了元组类型数据tuple1?( ) A: tuple1=[“张三”,“李四”,“王五”] B: tuple1=(“张三”;“李四”;“王五”) C: tuple1=(张三,李四,王五) D: tuple1=(“张三…...

第三章 将对象映射到 XML - 使用列表或数组定义的属性

文章目录 第三章 将对象映射到 XML - 使用列表或数组定义的属性使用列表或数组定义的属性%ListOfDataTypes 或 %ArrayOfDataTypes 类型的属性%ListOfObjects 或 %ArrayOfObjects 类型的属性 第三章 将对象映射到 XML - 使用列表或数组定义的属性 使用列表或数组定义的属性 对…...

C/S架构学习之基于TCP的本地通信(客户机)

基于TCP的本地通信&#xff08;客户机&#xff09;&#xff1a;创建流程&#xff1a;一、创建字节流式套接字&#xff08;socket函数&#xff09;&#xff1a; int sock_fd socket(AF_LOCAL,SOCK_STREAM,0);二、创建客户机和服务器的本地网络信息结构体并填充客户机和服务器本…...

CCF 备忘

一、不错的网站 CCF CCSP 竞赛历年资料 官网 http://118.190.20.162/home.page 二、基础套路 循环输入 数组标记法&#xff08;数组下标-数值 的映射&#xff09; 两个矩阵相乘 map<long long, map<long long, long long> > ans; for(int i1;i<d;i){for(int…...

Spring Framework中的依赖注入:构造器注入 vs. Setter注入

前言 构造器注入和Setter注入是依赖注入&#xff08;Dependency Injection&#xff0c;DI&#xff09;中两种常见的方式&#xff0c;用于向一个对象注入其所依赖的其他对象或数值。这两种注入方式有各自的特点和用途。 构造器注入&#xff08;Constructor Injection&#xff…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...