CNN卷积网络基础-卷积核,padding,stride

2024-02-05 02:59

本文主要是介绍CNN卷积网络基础-卷积核,padding,stride,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用卷积网络来处理图像数据有两方面原因:
1.图像以像素点信息表示数据,数据之间的关联性由像素位置表征,图像数据中要观察的目标是一块像素区域,用卷积网络提取特征信息可以按块状提起
2.在DNN网络中,网络的架构与输入数据的维度有关,如果用来分析大分辨率的图像,那么网络将会包含很多参数,这样就需要有更多的训练样本来防止过拟合,如果用卷积网络就可以进行区域特征提取,而不用设计大输入维度的网络架构

边缘检测

卷积网络主要用于图像特征的提取,浅层的卷积网络提取边缘,也叫边缘检测,深层的卷积网络提取整体特征。
边缘检测可以参考下面这张图示,可以把有亮度信息的垂直边缘提取出来
在这里插入图片描述
由上面的垂直边缘检测器,可以联想到如下图所示的水平边缘检测器
在这里插入图片描述
早期的图像边缘提取还有经典的soble算子(着重考虑中间像素,提高鲁棒性)、scharr算子
在这里插入图片描述
在卷积网络中,该3x3的过滤器一共包含9个参数,通过反向传播计算就可以获取能提取任意角度的过滤器

padding和stride

在进行卷积操作时,有2个常用的参数设置,padding,stride。
padding有两个用途

1.解决图像经过卷积操作后图像缩小的问题
2.图像不进行padding的话,边缘处像素只会进行一次卷积操作,而中间的像素点则会进行多次卷积操作,这样边缘像素的信息就会有损失

在这里插入图片描述
下图展示了一个padding为1的图像卷积运算,经过卷积运算后,图像大小不变
在这里插入图片描述
( 6 + 2 ∗ p a d d i n g − k e r n e l + 1 ) → 6 ∗ 6 (6+2*padding-kernel+1)\rightarrow 6*6 (6+2paddingkernel+1)66
在一些深度学习网络框架中,在设置卷积层时,可设置不同的模式,常设置valid 和same,其中的区别可参考卷积的三种模式:full, same, valid

stride用于设置卷积移动的步幅,卷积特征图尺寸计算公式: F o = ⌊ F i n + 2 × p − k s ⌋ + 1 F_o=\lfloor \frac{F_{in}+2\times p - k}{s} \rfloor +1 Fo=sFin+2×pk+1 式中2p表示对图像的上下左右各填充p个像素,式中 ⌊ ⌋ \lfloor\rfloor 是向下取整的符号,意思是除不尽的时候向下取整,k代表卷积核的尺寸,s就是步长,在卷积网络中特征尺寸的计算可参考我的一篇博文深度学习网络-AlexNet

这篇关于CNN卷积网络基础-卷积核,padding,stride的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/679576

相关文章

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~

poj 3068 有流量限制的最小费用网络流

题意: m条有向边连接了n个仓库,每条边都有一定费用。 将两种危险品从0运到n-1,除了起点和终点外,危险品不能放在一起,也不能走相同的路径。 求最小的费用是多少。 解析: 抽象出一个源点s一个汇点t,源点与0相连,费用为0,容量为2。 汇点与n - 1相连,费用为0,容量为2。 每条边之间也相连,费用为每条边的费用,容量为1。 建图完毕之后,求一条流量为2的最小费用流就行了