计算机视觉-卷积
卷积-图像去噪
一、图像
二进制 灰度 彩色
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…...

OpenAI 发布首个 AI 智能体
OpenAI 发布首个 AI 智能体 当地时间 1 月 23 日,OpenAI 发布了首个 AI 智能体 Operator124。以下是关于它的详细介绍2: 功能用途 操作网页:可模拟人类操作网页浏览器,能进行点击、滚动、输入等操作,例如在 OpenTable…...

【Python】导入类
随着不断给类添加功能,文件可能变得很长,即便妥善地使用了继承亦如此。为遵循Python的总体理念,应让文件尽可能整洁。 Python在这方面提供了帮助,允许将类存储在模块中,然后在主程序中导入所需的模块。 导入单个类 下…...

Deepseek实现本地电影文件批量重命名为infuse格式,可匹配IMDB
import os from openai import OpenAI# 初始化DeepSeek客户端 client OpenAI(api_key"<DeepSeek API Key>", base_url"https://api.deepseek.com")def parse_filename_with_deepseek(filename):"""使用DeepSeek API解析文件名并生成…...

Nginx部署的前端项目刷新404问题
1,查看问题 我部署的81端口是监听tlias项目的,我直接访问端口页面可以出现内容。 我在浏览器舒服端口之后回车,会重定向页面。但是我在重定向之后的页面刷新浏览器就会出现404的问题。 下面是刷新浏览器后的效果 2,在nginx.cnf …...

Boot 系统选择U启动
1.进入Boot 系统 F2 或 Del Boot --->Boot 0ption Priorities #4 KingstwongDataTravele 是U盘 调整搭到#1 2.保持重启就好...

XSLT 编辑 XML:深度解析与实际应用
XSLT 编辑 XML:深度解析与实际应用 引言 XML(可扩展标记语言)和XSLT(可扩展样式表语言转换)是处理和转换XML数据的重要工具。本文将深入探讨XSLT在编辑XML文档中的应用,包括其基本概念、语法结构、以及实…...

项目文章 | PNAS 斑马鱼转录因子ChIP-seq助力解析GATA6突变相关的肝脏疾病机制
近日,西南大学阮华/黄红辉团队联合重庆大学邱菊辉/王贵学团队在PNAS发表了题为“An animal model recapitulates human hepatic diseases associated with GATA6 mutations”的研究论文。该研究构建了一个gata6敲除斑马鱼模型,它重现了gata6突变患者的大…...

easyexcel-导入(读取)(read)-示例及核心部件
文章目录 导入(读取)(read)-示例及核心部件导入(读取)(read)-核心部件EasyExcel(EasyExcelFactory) # 入口read() # read()方法用于构建workbook(工作簿)对象,new ExcelReaderBuilder()doReadAll()这里选XlsxSaxAnalyser这个实现类吧然后到这个类XlsxRowHandler&…...

作业day3
请使用dup2 fgets printf 实现文件拷贝功能、 文件1: 复后文件: #define BUFFER_SIZE 1024 void file_copy(const char* src_file, const char* dest_file) { int src_fd, dest_fd; char buffer[BUFFER_SIZE]; // 打开源文件 src_fd open(s…...

第五节 MATLAB命令
本节的内容将提供常用的一些MATLAB命令。 在之前的篇章中我们已经知道了MATLAB数值计算和数据可视化是一个交互式程序,在它的命令窗口中您可以在MATLAB提示符“>>”下键入命令。 MATLAB管理会话的命令 MATLAB提供管理会话的各种命令。如下表所示:…...