卷积和滤波对图像操作的区别

目录

问题引入

解释

卷积

滤波


问题引入

卷积和滤波是很相似的,都是利用了卷积核进行操作

那么他们之间有什么区别呢?

卷积:会影响原图大小

滤波:不会影响原图大小


解释

卷积

我们用这样一段代码来看

import torch.nn as nn
import torch
x = torch.rand(3,5,5)
print(x.shape)
# 卷积
conv = nn.Conv2d(3,3,kernel_size=3,stride=1)
y= conv(x)
print(y.shape)

我们可以看见图像的大小出现了变换,因为卷积操作舍去了一部分(这里是卷积最基本的原理,大家都明白)


滤波

我们也同样先用一段代码来展示

import cv2img = cv2.imread("te.png")
print(img.shape)
# print(img[:5,:,0])img1 = cv2.blur(img,(3,3))
print(img1.shape)
# print(img1[:5,:,0])img2 = cv2.GaussianBlur(img,(3,3),1)
print(img2.shape)
# print(img2[:5,:,0])img3 = cv2.medianBlur(img, 3)
print(img3.shape)
# print(img3[:5,:,0])

我们可以看见,图像的大小都没有发生变换,这是为什么呢?

原因: 滤波操作会保留图像的原大小 (这句话怎么理解呢,我们来看下面的滤波的原理)

我们以均值滤波为例子

img1 = cv2.blur(img,(3,3))

我们的卷积核设为3x3的

其实要理解这个很简单,主要看看是如何保留边缘的像素点的

如图所示,以18为中心3x3的区域,左上角的18就会替换为:(18+54+55+121)/4   没有的就都不用计算

因此其大小不会发生改变,把每个像素点都照顾到了

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

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

相关文章

黑豹程序员-MyBatisPlus封装SQL的where条件的对象 QueryWrapper

说明 我们使用MybatisPlus时,我们可以不直接通过SQL操作数据库,而使用面向对象的方式。 其中遇到一个问题,就是如何用面向对象的方式实现 SQL中的where条件拼接。 MybatisPlus很体贴,它提供了一个QueryWrapper,查询包…

【AI接口】语音版、文心一言大模型和AI绘图、图片检测API

文章目录 一、语音版大模型AI1、接口2、请求参数3、请求参数示例4、接口返回示例 二、AI图片鉴黄合规检测API1、接口2、请求参数3、请求参数示例4、接口返回示例5、报错说明6、代码开源 三、人工智能AI绘画API1、接口2、请求参数3、请求参数示例4、接口返回示例5、AI绘画成果展…

Gin 框架之用户密码加密

文章目录 一、引入二、密码加密位置三、如何加密四、bcrypt 库加密4.1 介绍4.2 优点:4.3 使用 五、小黄书密码加密实践 一、引入 Gin是一个用Go语言编写的Web框架,而用户密码的加密通常是在应用程序中处理用户身份验证时的一个重要问题。 通常敏感信息…

3D可视化:陶瓷烧制的未来之路

陶瓷,这一古老的艺术形式,见证了中华文明的辉煌。然而,随着时代的变迁,传统的陶瓷烧制过程正面临着诸多挑战。如何将这门千年技艺传承下去,并在现代社会中焕发新的光彩?3D可视化技术为我们打开了一扇通往未…

如何使用c++max函数

在 C 中&#xff0c;使用 max 函数通常意味着你想比较两个值并返回其中较大的一个。这个函数是标准库中 <algorithm> 头文件的一部分。下面是如何使用它的基本步骤&#xff1a; 包含 <algorithm> 头文件&#xff1a;这是使用 max 函数的先决条件&#xff0c;因为它…

基于springboot+vue的蜗牛兼职网的设计与实现系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

第02章_变量与运算符(关键字,标识符,变量,基本数据类型,进制,运算符,字符集)

文章目录 第02章_变量与运算符本章专题与脉络1. 关键字&#xff08;keyword&#xff09;2. 标识符( identifier)3. 变量3.1 为什么需要变量3.2 初识变量3.3 Java中变量的数据类型3.4 变量的使用3.4.1 步骤1&#xff1a;变量的声明3.4.2 步骤2&#xff1a;变量的赋值 4. 基本数据…

ROS学习笔记9——ROS三种通信机制的比较

三种通信机制中&#xff0c;参数服务器是一种数据共享机制&#xff0c;可以在不同的节点之间共享数据&#xff0c;话题通信与服务通信是在不同的节点之间传递数据的&#xff0c;三者是ROS中最基础也是应用最为广泛的通信机制。 这其中&#xff0c;话题通信和服务通信有一定的相…

net.ipv4.ip_forward

net.ipv4.ip_forward 是 Linux 内核中的一个参数&#xff0c;用于控制 IP 转发功能。IP 转发是指在一个路由器或者网络设备上接收到一个 IP 数据包后&#xff0c;根据目标 IP 地址的路由信息将数据包发送到合适的接口&#xff0c;使其能够到达目标主机。 在 Linux 中&#xff…

Elastic Stack 8.12:通过对 ES|QL 等的改进增强了向量搜索

作者&#xff1a;来自 Elastic Tyler Perkins, Shani Sagiv, Gilad Gal, Ninoslav Miskovic Elastic Stack 8.12 构建于 Apache Lucene 9.9&#xff08;有史以来最快的 Lucene 版本&#xff09;之上&#xff0c;基于我们对标量量化和搜索并发性的贡献&#xff0c;为文本、向量和…

1818:红与黑【解析】-------深度优先搜索

1818:红与黑 描述 有一间长方形的房子&#xff0c;地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上&#xff0c;只能向相邻的黑色瓷砖移动。请写一个程序&#xff0c;计算你总共能够到达多少块黑色的瓷砖。 输入 包括多个数据集合。每个数据集合的第一行…

仿“今日头条”的开源多媒体资讯发布系统

伴随着互联网的普及、用户的时间碎片化&#xff0c;使得信息传播方式发生了巨大变化&#xff0c;因此我们看到微信、微博、今日头条、抖音、快手等平台迅速崛起。这些新的信息传播方式给广大用户带来了极大的便利&#xff0c;同时也给每个人的思想和生活带来了潜移默化的影响。…

代码随想录 Leetcode459. 重复的子字符串(KMP算法)

题目&#xff1a; 代码&#xff08;首刷看解析 KMP算法 2024年1月18日&#xff09;&#xff1a; class Solution { public:void getNext(string& s,vector<int>& next) {int j 0;next[0] j;for (int i 1; i < s.size(); i) {while (j > 0 && s…

三大3D引擎对比,直观感受AMRT3D渲染能力

作为当前热门的内容呈现形式&#xff0c;3D已经成为了广大开发者、设计师工作里不可或缺的一部分。 用户对于3D的热衷&#xff0c;源于其带来的【沉浸式体验】和【超仿真视觉效果】。借此我们从用户重点关注的四个3D视觉呈现内容&#xff1a; 材质- 呈现多元化内容水效果- 展…

Docker基本管理(2)

目录 一、资源控制 二、数据管理 三、端口映射 四、容器互联 Docker基本管理&#xff08;1&#xff09;&#xff1a;Docker基本管理&#xff08;1&#xff09;-CSDN博客 一、资源控制 1、cpu控制 cgroups的四大功能&#xff1a; 资源限制&#xff1a;可以将资源限制应用于…

【Git】常用的Git操作集合

常用的Git操作集合 1. 分支操作1.1 查看本地所有分支git branch 1.2 查看所有分支&#xff08;包含本地远程仓库&#xff09;git branch -a 1.3 切换分支git checkout test 2. 常用基本操作2.1 查看 git 各存储区内(文件)状态git status 2.2 查看工作区与暂存区文件差异git dif…

揭开UI设计的神秘面纱:如何打造一款让用户爱不释手的移动APP

文章目录 一、目标用户分析二、设计风格和色彩搭配三、布局和导航设计四、交互设计五、视觉元素设计六、响应式设计七、测试和优化八、持续更新和迭代九、团队协作和沟通十、学习和成长《移动APP UI设计与制作(微课版)》编辑推荐内容简介目录 《Flutter入门经典&#xff08;移动…

Linux/Uinx Makefile介绍以及使用方法和代码演示

Linux/Uinx Makefile介绍以及使用方法和代码演示 在写完我们的C语言程序之后&#xff0c;我们通常可以使用shell脚本来编译和链接C语言程序的源文件&#xff0c;但是这种方式有一个缺点&#xff1a;当我们更改了几个源文件的名称之后&#xff0c;shell脚本就会编译失败&#x…

【vue】ant-col多列栅格式的表单排列方式布局异常:

文章目录 一、效果&#xff1a;二、解决&#xff1a;三、问题&#xff1a; 一、效果&#xff1a; 二、解决&#xff1a; 在row中添加布局类型&#xff1a;type“flex” 三、问题&#xff1a; 后期正式环境还是存在该问题 >>>.ant-form-item {max-height: 32px; }多…

python期末:数据文件

文件和数据练习题 一、文件的打开、操作和关闭 1.以下关于文件的描述&#xff0c;错误的是&#xff08;&#xff09;。 A 二进制文件和文本文件的操作步骤都是“打开-操作-关闭”&#xff1b; B open() 打开文件之后&#xff0c;文件的内容并没有在内存中&#xff1b; C o…