计算机视觉-卷积

        卷积-图像去噪

一、图像

        二进制   灰度   彩色

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高斯核参数

        窗宽固定

        方差的影响:方差\sigma越大,自己的权值占比就越小,被影响的越大,滤波强,平滑的结果越强(越模糊)

        滤波效果强,大\sigma

        滤波效果弱,小\sigma

        方差固定

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

        滤波效果强,窗宽大

        滤波效果弱,窗宽小

不管是方差固定还是窗口固定,想让图片更模糊,就把另一个值变大

        已知σ,则窗口应为7*7

 大约99.73%的数据会落在\left( \mu -3\sigma ,\mu+3\sigma \right)区间内,归一化都可以省略了

        指定窗宽/σ就可以得到对应的σ/窗宽,就可以算出高斯核

4.4高斯核总结

        1.滤除高频(把周围突兀的点给滤掉)

        2.一个大高斯核的卷积效果可以由两个小高斯卷积核连续操作得到(勾股定理计算得到)

        eg:小的高斯核是σ=2和σ=3,则大的高斯核σ=\sqrt{13}

        3.高斯核可以分解

        分解性质有什么作用?

        计算复杂度降低

        卷积操作的n*n次操作保留,不再需要m个相加的操作,只需要m个分解和求和的操作,所以不再是m*m而是m

五、噪声

5.1噪声

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

5.2高斯噪声

        噪声是服从N\left ( 0,\sigma ^{2} \right )点加上原始图像

 5.3高斯滤波器

        用高斯滤波器去除噪声

        图片右边一列的σ是滤波器的参数,σ=1时,高斯核窗口宽度为7*7

        噪声的σ值越小,用小的高斯滤波器很容易滤掉,当噪声的σ值比较大时,需要增大滤波器的参数σ

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

 5.4中值滤波器

        没有权值,

        将模版套进带噪声的图像中,把这些值从小到大排序,然后选取中值(代替这个点),不会改变周围值

        针对椒盐噪声

中值滤波不改变整体形状

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

        中值滤波器的窗口越大,图片会模糊,更平滑

不管什么滤波器,尺寸太大都会模糊


 原始图像-平滑后图像=边缘

原始图像+α倍边缘细节=锐化后图片

        α=1时,就等于2e-g

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

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

相关文章

mybatis(78/134)

前天学了很多&#xff0c;关于java的反射机制&#xff0c;其实跳过了new对象&#xff0c;然后底层生成了字节码&#xff0c;创建了对应的编码。手搓了一遍源码&#xff0c;还是比较复杂的。 <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE …

Vuex 的核心概念:State, Mutations, Actions, Getters

Vuex 的核心概念&#xff1a;State, Mutations, Actions, Getters Vuex 是 Vue.js 的官方状态管理库&#xff0c;提供了集中式的状态管理机制。它的核心概念包括 State&#xff08;状态&#xff09;、Mutations&#xff08;变更&#xff09;、Actions&#xff08;动作&#xf…

1.23 补题 寒假训练营

E 一起走很长的路&#xff01; 输入描述 第一行输入两个整数 n,q&#xff08;1≤n,q≤210^5&#xff09;&#xff0c;代表多米诺骨牌的个数和询问次数。 第二行输入 n 个整数 a1,a2,…,an​&#xff08;1≤ai≤10^9&#xff09;&#xff0c;表示多米诺骨牌的重量。 此后输入…

自定义数据集使用框架的线性回归方法对其进行拟合

代码 import torch import numpy as np import torch.nn as nncriterion nn.MSELoss()data np.array([[-0.5, 7.7],[1.8, 98.5],[0.9, 57.8],[0.4, 39.2],[-1.4, -15.7],[-1.4, -37.3],[-1.8, -49.1],[1.5, 75.6],[0.4, 34.0],[0.8, 62.3]])x_data data[:, 0] y_data data…

数据库-MySQL-事务-事务隔离级别的可重复读是如何实现的?

MySQL 事务隔离级别中的“可重复读”&#xff08;Repeatable Read&#xff09;是如何实现的 在MySQL中&#xff0c;可重复读&#xff08;Repeatable Read&#xff09;是默认的事务隔离级别&#xff0c;特别是在使用InnoDB存储引擎时。这个隔离级别通过多版本并发控制&#xff…

DDD架构实战第七讲总结:分层模型和代码组织

云架构师系列课程之DDD架构实战第七讲总结:分层模型和代码组织 一、引言 在前几讲中,我们介绍了领域驱动设计(DDD)的基本构造块和生命周期模型中的聚合。本讲将重点讨论如何将这些构造块和代码组织起来,探讨分层架构和六边形模型,以及如何组织代码结构。 二、工厂和资…

【中间件快速入门】什么是Redis

现在后端开发会用到各种中间件&#xff0c;一不留神项目可能在哪天就要用到一个我们之前可能听过但是从来没接触过的中间件&#xff0c;这个时候对于开发人员来说&#xff0c;如果你不知道这个中间件的设计逻辑和使用方法&#xff0c;那在后面的开发和维护工作中可能就会比较吃…

使用Python和Qt6创建GUI应用程序--前言

如果想用Python开发GUI应用程序&#xff0c;要从知道哪里是难点和棘手开始。有很多新的概念需要了解和学习&#xff0c;以获得和学习到可以展开工作所需要的东西。但是&#xff0c;像以往在编码所遇到的问题一样&#xff0c;第一步是学习如何处理以正确的方式解决问题。在这本书…

金晟新能源由盈转亏:毛利率下滑产能利用率不佳,关联交易持续增加

《港湾商业观察》黄懿 近期&#xff0c;广东金晟新能源股份有限公司&#xff08;下称“金晟新能源”&#xff09;递交了招股书&#xff0c;拟冲刺港交所IPO&#xff0c;中金公司、招银国际为联席保荐人。 金晟新能源处于电池回收的新兴大势行业&#xff0c;但是&#xff0c;受…

RTMP|RTSP播放器只解码视频关键帧功能探讨

技术背景 我们在做RTMP|RTSP直播播放器的时候&#xff0c;遇到过这样的技术诉求&#xff0c;在一些特定的应用场景中&#xff0c;可能只需要关键帧的信息&#xff0c;例如视频内容分析系统&#xff0c;可能只对关键帧进行分析&#xff0c;以提取特征、检测对象或场景变化。鉴于…

Spring Boot 集成 WebClient 实战教程 实现同步、异步请求处理以及响应式编程、响应式流、响应式Mono

该项目介绍springboot集成WebClient 实现服务的请求操作 示例中演示了,如何配置WebClient的请求头,请求参数等相关参数,实现同步、异步请求处理以及响应式编程、响应式流、响应式Mono。 为什么使用WebClient 不用RestTemplate 在 Spring Framework 5.0 及更高版本中,Res…

统计学中的样本概率论中的样本

不知道当初谁想的把概率论和数理统计合并&#xff0c;作为一门课。这本身是可以合并&#xff0c;完整的一条线&#xff0c;看这里。但是&#xff0c;作为任课老师应该从整体上交代清楚&#xff0c;毕竟是两个学科&#xff0c;不同的学科合并必然会有各种不协调的问题。 举个最…

2K高刷电竞显示器怎么选?

2K高刷电竞显示器怎么选&#xff1f;哪个价格适合你&#xff1f;哪个配置适合你呢&#xff1f; 1.HKC G27H2Pro - 2K高刷电竞显示器怎么选 外观设计 - HKC G27H2Pro 2K高刷电竞显示器 电竞风拉满&#xff1a;作为猎鹰系列的一员&#xff0c;背部 “鹰翼图腾” 切割线搭配炎红…

STM32-时钟树

STM32-时钟树 时钟 时钟

基于SpringBoot+WebSocket的前后端连接,并接入文心一言大模型API

前言&#xff1a; 本片博客只讲述了操作的大致流程&#xff0c;具体实现步骤并不标准&#xff0c;请以参考为准。 本文前提&#xff1a;熟悉使用webSocket 如果大家还不了解什么是WebSocket&#xff0c;可以参考我的这篇博客&#xff1a; rWebSocket 详解&#xff1a;全双工…

技术速递|.NET 9 中的 OpenAPI 文档生成

作者&#xff1a;Mike Kistler 排版&#xff1a;Alan Wang .NET 9 中的 ASP.NET Core 通过引入全新的对 OpenAPI 文档生成功能的内置支持&#xff0c;简化了为 API 端点创建 OpenAPI 文档的过程。这项新功能旨在简化开发工作流程&#xff0c;并改善 OpenAPI 定义在 ASP.NET 应用…

StarRocks BE源码编译、CLion高亮跳转方法

阅读SR BE源码时&#xff0c;很多类的引用位置爆红找不到&#xff0c;或无法跳转过去&#xff0c;而自己的Linux机器往往缺乏各种C依赖库&#xff0c;配置安装比较麻烦&#xff0c;因此总体的思路是通过CLion远程连接SR社区已经安装完各种依赖库的Docker容器&#xff0c;进行编…

STM32 按键密码系统的实现

本次基于STM32F407开发板&#xff0c;来实现密码系统&#xff0c;输入四位密码&#xff0c;密码正确时LED1亮&#xff0c;密码错误时四个LED灯双闪。 LED双闪代码 简单的逻辑&#xff0c;让四个LED灯先亮然后再延时一会LED灯灭&#xff0c;循环4此实现双闪的效果。 按键密码的…

linux常用加固方式

目录 一.系统加固 二.ssh加固 三.换个隐蔽的端口 四.防火墙配置 五.用户权限管理 六.暴力破解防护 七.病毒防护 八.磁盘加密 九.双因素认证2FA 十.日志监控 十一.精简服务 一.系统加固 第一步&#xff1a;打好系统补丁 sudo apt update && sudo apt upgra…

hadoop==docker desktop搭建hadoop

hdfs map readuce yarn https://medium.com/guillermovc/setting-up-hadoop-with-docker-and-using-mapreduce-framework-c1cd125d4f7b 清理资源 docker-compose down docker system prune -f