计算机视觉-卷积
卷积-图像去噪
一、图像
二进制 灰度 彩色

1.1二进制图像
0 1
一个点可以用一个bit(0/1)来表示

1.2灰度图像
0-255
一个点可以用一个byte来表示

1.3彩色图像
RGB
表达一个彩色图像先说它的分辨率p/w(宽)和q/h(高)
一个点可以用3个byte(R的0-255、G的0-255、B的0-255)来表示

二、图像去噪
噪声点让我们看得难受是因为噪声点与周边像素差别很大

去噪常见:与周围点平均(加权平均)=卷积核=滤波核
三、卷积
3.1卷积

Q:下午两点这个人肚子里还剩多少东西?


A:把这三个计算出的值相加就是下午两点肚子里剩的食物
在t时刻胃里还剩下的食物,前面所有时刻都要计算一下

如果一个系统输入不稳定(f)、输出稳定(g),就可以用卷积求系统存量
卷积主要用于图像处理,要先寻找对于一个图像来说找什么是f,什么是g


3.2卷积操作
对于图片可以看作是一个一个的像素点,可以看作一个大表格,表格里就是这个像素的具体信息(RGB值、灰度值等等)
过去对现在的影响(周围像素点对当前像素点的影响)
g函数:如何影响的

用3×3的点阵(卷积核)和图像进行一个操作
卷积核:周围像素点与这个像素点进行平均(周围像素点如何对这个像素点产生影响,像素点高就拉低,低就拉高)

进行卷积操作前,在图像最外圈加上一圈0


平滑卷积核操作



3.3卷积神经网络
提取局部特征
不同的卷积核卷积后可以保留不同的特征,其他特征就被过滤掉了(这样的卷积核叫过滤器)

卷积核就是对周围像素点的一个主动的试探和选择,通过它(卷积核)把周围有用的特征给保留了下来。

先把卷积核模版倒过来,再对图像上的每一个点都套用卷积核的模版进行计算(对应相乘再累加起来)

3.4卷积的特性
线性和平移不变形
平移可以通过卷积来实现



真实运算的时候,对于没有像素的位置,要做填充,否则无法计算卷积,
最简单的办法,填充0。



3.5卷积的应用
卷积后没有变化

左移

平滑降噪

锐化(2e-g)

原图像-平滑后的(用5*5的卷积核)=边缘

四、振铃效应
4.1振铃效应
模板是一样的值(模板是方的),

怎么去除上面的振铃现象
用权重模板(离我近的点权值大、远的点权值小)

4.2高斯核
用高斯核产生滤波核
把x,y的坐标带入二维高斯公式中得到新的滤波核,滤波核中所有权重值加一起为1(不是1的话图像会衰减)
产生高斯卷积核的步骤:
①指定窗宽(eg:卷积核大小5*5,3*3)
②指定方差σ
③归一化

4.3高斯核参数
窗宽固定
方差的影响:方差越大,自己的权值占比就越小,被影响的越大,滤波强,平滑的结果越强(越模糊)
滤波效果强,大
滤波效果弱,小

方差固定
窗宽的影响:方差固定,窗宽越大,归一化计算的分母就大,权值就小,平滑就更厉害
滤波效果强,窗宽大
滤波效果弱,窗宽小

不管是方差固定还是窗口固定,想让图片更模糊,就把另一个值变大
已知σ,则窗口应为7*7

大约99.73%的数据会落在区间内,归一化都可以省略了
指定窗宽/σ就可以得到对应的σ/窗宽,就可以算出高斯核

4.4高斯核总结
1.滤除高频(把周围突兀的点给滤掉)
2.一个大高斯核的卷积效果可以由两个小高斯卷积核连续操作得到(勾股定理计算得到)
eg:小的高斯核是σ=2和σ=3,则大的高斯核σ=

3.高斯核可以分解


分解性质有什么作用?
计算复杂度降低
卷积操作的n*n次操作保留,不再需要m个相加的操作,只需要m个分解和求和的操作,所以不再是m*m而是m

五、噪声
5.1噪声
椒盐噪声、脉冲噪声、高斯噪声(叠加变量)

5.2高斯噪声
噪声是服从点加上原始图像

5.3高斯滤波器
用高斯滤波器去除噪声
图片右边一列的σ是滤波器的参数,σ=1时,高斯核窗口宽度为7*7
噪声的σ值越小,用小的高斯滤波器很容易滤掉,当噪声的σ值比较大时,需要增大滤波器的参数σ

高斯滤波对椒盐噪声效果并不好

5.4中值滤波器
没有权值,
将模版套进带噪声的图像中,把这些值从小到大排序,然后选取中值(代替这个点),不会改变周围值
针对椒盐噪声

中值滤波不改变整体形状
高斯滤波是均值,改变周围会将曲线变的平滑,而中值滤波是把突兀的点拉回来


中值滤波器的窗口越大,图片会模糊,更平滑
不管什么滤波器,尺寸太大都会模糊


原始图像-平滑后图像=边缘
原始图像+α倍边缘细节=锐化后图片
α=1时,就等于2e-g

相关文章:
计算机视觉-卷积
卷积-图像去噪 一、图像 二进制 灰度 彩色 1.1二进制图像 0 1 一个点可以用一个bit(0/1)来表示 1.2灰度图像 0-255 一个点可以用一个byte来表示 1.3彩色图像 RGB 表达一个彩色图像先说它的分辨率p/w(宽)和q/h(高…...
Spring Boot 自定义属性
Spring Boot 自定义属性 在 Spring Boot 应用程序中,application.yml 是一个常用的配置文件格式。它允许我们以层次化的方式组织配置信息,并且比传统的 .properties 文件更加直观。 本文将介绍如何在 Spring Boot 中读取和使用 application.yml 中的配…...
C++ list 容器用法
C list 容器用法 C 标准库提供了丰富的功能,其中 <list> 是一个非常重要的容器类,用于存储元素集合,支持双向迭代器。<list> 是 C 标准模板库(STL)中的一个序列容器,它允许在容器的任意位置快速…...
《 C++ 点滴漫谈: 二十四 》深入 C++ 变量与类型的世界:高性能编程的根基
摘要 本文深入探讨了 C 中变量与类型的方方面面,包括变量的基本概念、基本与复合数据类型、动态类型与内存管理、类型推导与模板支持,以及类型系统的高级特性。通过全面的理论讲解与实际案例分析,展示了 C 类型系统的强大灵活性与实践价值。…...
C语言初阶牛客网刷题—— HJ34 图片整理【难度:中等】
1. 题目描述 牛客网在线OJ链接 Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过C语言解决。 输入描述:Lily使用的图片包括 “A…...
小盒科技携手体验家,优化智能教育服务体验,打造在线教育新高度
北京小盒科技有限公司(简称“小盒科技”,由“作业盒子”更名而来)是一家专注于教育科技的公司,致力于利用人工智能、大数据等先进技术,为中小学教育提供创新的解决方案和产品。 近日,「小盒科技」携手体…...
一个简单的自适应html5导航模板
一个简单的 HTML 导航模板示例,它包含基本的导航栏结构,同时使用了 CSS 进行样式美化,让导航栏看起来更美观。另外,还添加了一些 JavaScript 代码,用于在移动端实现导航菜单的展开和收起功能。 PHP <!DOCTYPE htm…...
HttpClient学习
目录 一、概述 二、HttpClient依赖介绍 1.导入HttpClient4依赖 2.或者导入HttpClient5依赖 3.二者区别 三、HttpClient发送Get请求和Post请求测试 (一)通过HttpClient发送Get请求 (二)通过HttpClient发送Post请求 一、概述 HttpClient是 Apache 软件基金会提供的一…...
二级 二维数组3
对角线之和 题目描述 输入一个矩阵,输出右上-左下对角线上的数字和 输入 输入1个整数N。(N<10)表示矩阵有n行n列 输出 对角线的和 样例 输入复制 4 1 2 3 4 2 3 4 5 4 5 6 7 1 2 3 4 输出复制 14 #include<iostream> using namespace std; int main() {i…...
【PyTorch][chapter 29][李宏毅深度学习]Fine-tuning LLM
参考: https://www.youtube.com/watch?veC6Hd1hFvos 目录: 什么是 Fine-tune 为什么需要Fine-tuning 如何进行Fine-tune Fine-tuning- Supervised Fine-tuning 流程 Fine-tuning参数训练的常用方案 LORA 简介 示例代码 一 什么是 Fine-tune …...
javascript-es6 (一)
作用域(scope) 规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问 局部作用域 函数作用域: 在函数内部声明的变量只能在函数内部被访问,外部无法直接访问 function getSum(){ //函数内部是函数作用…...
数据结构——二叉树——堆(1)
今天,我们来写一篇关于数据结构的二叉树的知识。 在学习真正的二叉树之前,我们必不可少的先了解一下二叉树的相关概念。 一:树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层…...
window保存好看的桌面壁纸
1、按下【WINR】快捷键调出“运行”窗口,输入以下命令后回车。 %localappdata%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets 2、依次点击【查看】【显示】,勾选【隐藏的项目】,然后按【CtrlA】全部…...
docker安装Redis:docker离线安装Redis、docker在线安装Redis、Redis镜像下载、Redis配置、Redis命令
一、镜像下载 1、在线下载 在一台能连外网的linux上执行docker镜像拉取命令 docker pull redis:7.4.0 2、离线包下载 两种方式: 方式一: -)在一台能连外网的linux上安装docker执行第一步的命令下载镜像 -)导出 # 导出镜像…...
98.1 AI量化开发:长文本AI金融智能体(Qwen-Long)对金融研报大批量处理与智能分析的实战应用
目录 0. 承前1. 简介1.1 通义千问(Qwen-Long)的长文本处理能力 2. 基础功能实现2.1 文件上传2.2 单文件分析2.3 多文件分析 3. 汇总代码&运行3.1 封装的工具函数3.2 主要功能特点3.3 使用示例3.4 首次运行3.5 运行结果展示 4. 注意事项4.1 文件要求4.2 错误处理机制4.3 最佳…...
【自然语言处理(NLP)】长短期记忆网络(Long - Short Term Memory,LSTM)原理和代码实现(从零实现、Pytorch实现)
文章目录 介绍长短期记忆网络(Long - Short Term Memory,LSTM)结构原理候选记忆元符号含义公式含义 记忆元符号含义公式含义 隐状态符号含义公式含义 特点应用实现 LSTMpytorch实现 个人主页:道友老李 欢迎加入社区:道…...
八股学习 微服务篇
微服务篇 常见面试内容Spring Cloud 常见组件注册中心Ribbon负载均衡策略服务雪崩 常见面试内容 Spring Cloud 常见组件 Spring Cloud有5个常见组件: Eureka/Nacos:注册中心;Ribbon:负载均衡;Feign:远程调用;Hystrix/Sentinel:服…...
TCP协议:互联网数据传输的守护者
在互联网的浩瀚海洋中,数据如同涓涓细流,无时无刻不在流动。而这些数据的稳定、可靠传输,离不开一个重要的协议——TCP(Transmission Control Protocol,传输控制协议)。TCP协议作为互联网协议族中的核心成员…...
协助工具-任意门导航
任意门导航网址:随意门导航-最全的实用导航网站,好用简洁宝藏网址神器...
【MCAL实战】MCU模块配置实践
目录 前言 正文 1.硬件分析 1.1 MCU系统模式分析 1.2MCU晶振使用分析 2.MCU通用配置 2.1 McuGeneralConfiguration 2.2 McuModuleConfiguration 2.3 McuResetSettingConf 2.4 McuTrapSettingConf 2.4 其他 3.MCU模式配置 3.1 McuModeSettingConf_0 3.2 McuModeSe…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
GruntJS-前端自动化任务运行器从入门到实战
Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
windows系统MySQL安装文档
概览:本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容,为学习者提供全面的操作指导。关键要点包括: 解压 :下载完成后解压压缩包,得到MySQL 8.…...
破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...



