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

九、初识卷积

文章目录

  • 1、通过边缘检测认识卷积
  • 2、Padding
  • 3、Strid Convelution
  • 4、RGB图像的卷积
  • THE END

1、通过边缘检测认识卷积

\qquad 在使用神经网络进行图像识别时,神经网络的前几层需要完成对图像的边缘检测任务,所谓的边缘检测就是让计算机识别出一张图片的垂直边缘和水平边缘,如下图所示:
在这里插入图片描述
\qquad 加入当前有一张661的灰度图像,图像中的数字越小,表示图像的颜色越深,则通过以下卷积(符号为*)计算,可以得到一张新的441的图像,新图像中的中间部分便可以直观表现出原始图像的垂直边缘。
在这里插入图片描述
\qquad其中,中间参与卷积运算的331的矩阵称为卷积核(kernal)或者过滤器(filter)。

2、Padding

\qquad 设定原图像的尺寸为n∗nn*nnn,卷积核的维度为f∗ff*fff,则经过卷积计算只有的输出图像的尺寸为(n−f+1)∗(n−f+1)(n-f+1)*(n-f+1)(nf+1)(nf+1)。从上述卷积计算过程可以发现,原图像边缘的像素点使用的次数远低于中间像素点的使用次数,为了充分利用边缘像素点的信息,可以通过Padding操作,在原图像的边缘添加额外的ppp层像素点,之后使用 Padding之后的图像进行卷积操作,操作过程如下图所示:
在这里插入图片描述
\qquadPadding到原图像上的图像的层数p=f−12p=\frac{f-1}{2}p=2f1时,Padding之后的图像经过f∗ff*fff卷积层的卷积操作之后,得到的结果图像恰好和原图像的尺寸相同,为n∗nn*nnn。卷积核的维度fff通常为奇数。

3、Strid Convelution

\qquad 在进行卷积操作时,卷积核每一次移动的步长(strid)不一定为1,也可以为大于1的其他数。则考虑了移动步长sss之后,一幅n∗nn*nnn的图像,经过ppp层padding操作,经过f∗ff*fff维度的卷积核进行卷积操作之后,可以得到结果图像的维度为:⌊n+2p−fs+1⌋∗⌊n+2p−fs+1⌋\lfloor{\frac{n+2p-f}{s}+1} \rfloor * \lfloor{\frac{n+2p-f}{s}+1}\rfloorsn+2pf+1sn+2pf+1。 Stride convelution的示意图如下图所示:
在这里插入图片描述

4、RGB图像的卷积

\qquad 对于RGB图像,令一幅RGB图像的输入维度为n∗n∗ncn*n*n_cnnnc其中,前两个nnn分别表示图像的高度和宽度,最后一个ncn_cnc维度表示图像的通道(channel)数量;对于RGB图像的卷积操作使用的卷积核的维度为f∗f∗ncf*f*n_cffnc。最终输出的图像维度为:(n−f+1)∗(n−f+1)(n-f+1)*(n-f+1)(nf+1)(nf+1)。可以使用不同类型的多个卷积核,从而增加输出图像的通道数,如使用2个不同的卷积核,则输出图像的维度为:(n−f+1)∗(n−f+1)∗2(n-f+1)*(n-f+1)*2(nf+1)(nf+1)2
在这里插入图片描述

THE END

相关文章:

九、初识卷积

文章目录1、通过边缘检测认识卷积2、Padding3、Strid Convelution4、RGB图像的卷积THE END1、通过边缘检测认识卷积 \qquad在使用神经网络进行图像识别时,神经网络的前几层需要完成对图像的边缘检测任务,所谓的边缘检测就是让计算机识别出一张图片的垂直…...

【Linux】【编译】编译调试过程中如何打印出实际的编译命令

🐚作者简介:花神庙码农(专注于Linux、WLAN、TCP/IP、Python等技术方向)🐳博客主页:花神庙码农 ,地址:https://blog.csdn.net/qxhgd🌐系列专栏:Linux技术&…...

linux安装jdk

step1 下载jdk 到下面的网站下载需要的jdk安装包版本。 Java Downloads | Oracle step2 复制到opt目录 其中user_name对应自己的home目录的用户文件夹 sudo cp /home/user_name//home/czh/Downloads/jdk-17_linux-x64_bin.tar.gz /opt/ step3 到opt目录解压安装包&#xf…...

迅为iTOP-3A5000龙芯开发板安装UOS操作系统

3A5000板卡采用全国产龙芯3A5000处理器,基于龙芯自主指令系统(LoongArch),市面上龙芯3A5000主板价格都在上万元,可以说是非常贵了, 迅为全新推出了款千元内的iTOP-3A5000开发板,这款板卡各方面的配置也是第…...

Firefox 110, Chrome 110, Chromium 110 官网离线下载 (macOS, Linux, Windows)

Mozilla Firefox, Google Chrome, Chromium, Apple Safari 请访问原文链接:https://sysin.org/blog/chrome-firefox-download/,查看最新版。原创作品,转载请保留出处。 作者主页:www.sysin.org 天下只剩三种(主流&am…...

如何使用ArcGIS转换坐标

1.概述大家都知道ArcGIS提供了坐标转换功能,在我们手里的数据坐标系千差万别,经常会遇到转换坐标的时候,那么是否可以用ArcGIS进行转换?答案是肯定的,但是转换的过程比较复杂,这里为大家介绍一下转换的方法…...

链表基本原理

链表基本原理1.链表1.1 基本原理1.2 链表大O记法表示2. 链表操作2.1 读取2.2 查找2.3 插入2.4 删除3.链表代码实现1.链表 1.1 基本原理 节点 组成链表的数据格子不是连续的。可以分布在内存的各个位置。这种不相邻的格子就叫结点。每个结点保存数据还保存着链表里的下一结点的…...

基于JAVA+SpringBoot+Vue+ElementUI中学化学实验室耗材管理系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 当前,中学…...

1.输入子系统学习-struct input_dev-2023.02

内核版本:4.4.194 平台相关:rk3399 目前主要是看的触摸屏的代码 目录 一、include/linux/input.h(struct_input_dev) 二、结构体的注释部分(百度翻译) 三、Documentation/input/event-codes.txt&…...

解决:PDFBox报的java.io.IOException: Missing root object specification in trailer

文章目录问题描述原因分析解决方案问题描述 使用pdfbox类库操作pdf文件时,遇到下面的报错信息: java.io.IOException: Missing root object specification in trailer PDFBox参考: https://pdfbox.apache.org/ Apache PDFBox 库是一个开源的…...

MAC OSX安装Python环境 + Visual Studio Code

MAC上开发python怎么能少得了python3环境呢,而安装python3环境的方式也有多种,这里仅选用并记录本人认为比较方便的方式 安装Homebrew Homebrew是macOS 缺失的软件包管理器, 使用它可以在MAC上安装很多没有预装的东西,详细说明可…...

音乐 APP 用户争夺战,火山引擎 VeDI 助力用户体验升级!

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 国内数字音乐市场正在保持稳定增长。 根据华经产业研究院数据报告显示,2020 年数字音乐市场规模为 357.3 亿元,到 2022 年市场规模已增长至 482.7 …...

CAP和BASE理论

CAP理论CAP是 Consistency、Availability、Partition tolerance 三个词语的缩写,分别表示一致性、可用性、分区容忍性。它指出一个分布式计算系统不可能同时满足以下三点:• 一致性(Consistency) :等同于所有节点访问同…...

基于商品理解的成交能力和成交满意度优化在Lazada的实践

作者:马蕊 Lazada推荐算法团队 在Lazada各域推荐场景中,既有优质商品优质卖家不断涌现带来的机会,也有商品质量参差带来的问题。如何才能为用户提供更好的体验,对卖家变化行为进行正向激励呢?下面本文将为大家分享我们…...

idea推送镜像到desktop报错:Cannot run program “docker-credential-desktop“ 系统找不到指定的文件。

windows Docker 搭建仓库 打开docker desktop 。 打开windows cmd窗口或powershell窗口。 输入"docker run -d -p 5000:5000 --name test registry:2 "运行一个名字叫test的registry容器。 idea配置springboot项目的docker插件 在pom.xml中的plugins中加入下面代码…...

hive开窗函数

hive开窗函数 窗口函数 数据准备 1 jx 20 2 zx 24 3 yx 18 4 wz 10 5 yy 34 6 wy 25create table t (> id int,> name string,> age int> )> row format delimited fields terminated by ; load data inpath /data/data.txt into table t;ROW_NUMBER ROW_N…...

安全多方计算系列笔记1——前世今生

这一系列笔记参考了绿盟科技研究通讯的安全多方计算文章,及其他。 首先看定义:在不泄露参与方原始输入数据的前提下,允许分布式参与方合作计算任意函数,输出准确的计算结果。 起源 安全多方计算问题及解首先由姚期智&#xff08…...

16- 梯度提升分类树GBDT (梯度下降优化) (算法)

梯度提升算法 from sklearn.ensemble import GradientBoostingClassifier clf GradientBoostingClassifier(subsample0.8,learning_rate 0.005) clf.fit(X_train,y_train) 1、交叉熵 1.1、信息熵 构建好一颗树,数据变的有顺序了(构建前&#xff0c…...

SpringCloud+Nacos+Gateway

SpringCloudNacosGatewaySpringBoot整合GatewayNacos一. 环境准备1. 版本环境2. 服务环境二. 实战1.创建用户服务2.创建订单服务3.创建网关服务4.测试三. 避坑指南问题1--503问题问题2--网关服务启动报错SpringBoot整合GatewayNacos 本篇文章只演示通过gateway网关服务访问其他…...

高通开发系列 - linux kernel内核升级msm-3.18升至msm-4.9(2)

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录 返回高通开发系列 - 总目录 前面我们升级了msm-4.9内核系统正常启动了,文件系统也正常工作,但那是使用了老基线的文件系统,其yocto…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

【Linux】Linux安装并配置RabbitMQ

目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...