高斯滤波的开始——高斯核的计算

首先先说说高斯滤波的含义:高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。(来源于百度)
对于高斯核的计算,网上有许多,但都讲的马马虎虎,因此,个人写了一个基于matlab,简单,易懂的方法。话不多说,直接上代码;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                计算高斯核                 %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
pi=3.1415926;%高斯公式中Π的值
sum=0;%计算累计权重的值
d=1.5;%高斯核标准差
size=3;%高斯核大小
center=(size/2)+0.5;%模板的中心,这里取整
A=1/(2*pi*d*d);%高斯公式指数前面的系数
for i=1:3x2=(i-center)*(i-center);for j=1:3y2=(j-center)*(j-center);B=exp(-(x2+y2)/(2*d*d));C(i,j)=A*B;sum=sum+C(i,j);end
end
%整数形式的高斯核,需要进行归一化,即把左上角的值化为1
%下面进行归一化
k=1/C(1,1);
for i=1:3for j=1:3D(i,j)=C(i,j)*k;%进行归一化后整数形式的高斯核end
end
%若是小数形式的高斯核,则在不需要归一化,而需要进权重分配,高斯核的每个系数要除以所有系数的和。
%下面进行权重分配
for i=1:3for j=1:3E(i,j)=C(i,j)/sum%进行归一化后整数形式的高斯核end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%截至这里,高斯核以计算完毕%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

下面是输出的结果:标准差=1.5,模板大小为3



所谓权重分配,就是把高斯核的每个系数乘以所有系数的和,重新输出。

高斯滤波的开始——高斯核的计算相关推荐

  1. 使用matlab生成高斯滤波模板_高斯滤波matlab及FPGA实现

    高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程.通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到. ...

  2. 高斯模糊为什么叫高斯滤波_为什么高斯是所有发行之王?

    高斯模糊为什么叫高斯滤波 高斯分布及其主要特征: (Gaussian Distribution and its key characteristics:) Gaussian distribution ...

  3. 【图像处理】【计算机视觉】线性邻域滤波专场:方框滤波、均值滤波与高斯滤波...

    首先注意点:关于OpenCV中的函数,有老的数据结构,还有新的opencv2的数据结构,一般地区别就是IplImage*与Mat的区别,两者大致分别对应着C和C++内的两个功能一样,但是函数名称有别. ...

  4. python高斯滤波和降噪_高斯滤波原理及python实现

    高斯滤波器时一种线性平滑滤波器,主要适用处理高斯噪声,所以在了解高斯滤波之前,我们首先熟悉一下高斯噪声.噪声在图像中表现的通常是引起视觉效果的孤立像素点和像素块,简单说噪声点就是会给图像带来干扰,让图 ...

  5. 图像处理中的滤波器之均值滤波,中值滤波,高斯滤波

    1.均值滤波 原理: 均值滤波采用线性的方法,使用模板内所有像素的平均值代替模板中心像素灰度值 特点: 不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去 ...

  6. 高斯滤波与双边滤波原理、MATLAB实现及结果对照

    本文详细介绍高斯滤波和双边滤波的原理并给出MATLAB实现,最后对照高斯滤波与双边滤波的效果. 目录 一.滤波原理 1.1 一维高斯分布 1.2 二维高斯分布 1.3 高斯滤波总结 二.双边滤波 1. ...

  7. [Python从零到壹] 五十五.图像增强及运算篇之图像平滑(均值滤波、方框滤波、高斯滤波)

    又是一年1024,首先,祝大家节日快乐! 欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界 ...

  8. 图像滤波【一】:从高斯滤波到引导滤波

    前言:最近在做一个图像的作业, 要求python实现双边滤波和引导双边滤波. 可以使用opencv,numpy.不能用opecv增强库(ximageproc之类的就用不了啦), 这里记录一下学习心得. ...

  9. 高斯滤波 java_Canny边缘检测java实现

    Canny边缘检测算法(基于OpenCV的Java实现) 绪论 最近在学习ORB的过程中又仔细学习了Canny,故写下此篇笔记,以作总结. Canny边缘检测算法的发展历史 Canny边缘检测于198 ...

最新文章

  1. windows下nginx安装、配置与使用
  2. offsetLeft 、offsetWidth、scrollHeight等的区别
  3. 火蚁机器人_适度偷懒提高整体效率:火蚁工作方式启发机器人群组协作
  4. 我用的 cordova 插件
  5. 用微型“缝纫机”把芯片无痛“打”进大脑,Elon Musk的脑机帝国拉开序幕!|湾区人工智能...
  6. AD教程系列 | 2-认识其他电子元器件的封装
  7. S-function入门及案例详解(1)——S-function基础介绍及基本案例
  8. 解决tomcat内存溢出问题
  9. python语言基础(傻瓜式文档)
  10. 读书笔记 - 机器学习实战 - 4 利用概率理论进行分类:朴素贝叶斯
  11. 螃蟹保存方法保存时间_活面包蟹怎么保存?面包蟹能保存多久
  12. 自动白平衡技术(AWB)
  13. 华文慕课计算机组成结构第二章课后习题解析
  14. 计算机专利英语笔译,基于Trados2014的专利翻译实践报告-英语笔译专业论文.docx...
  15. 银河系中一定有生命存在
  16. win10不识别移动硬盘
  17. PTA 10-43 计算xsda表中最矮同学的身高
  18. 什么叫「人的格局」?是否有必要培…
  19. 如何录制电脑正在播放的声音及音乐?
  20. App Store审核条款(2016.06.21更新)

热门文章

  1. org.eclipse.core.runtime.IPath报错
  2. Android后台监听耳机(线控、蓝牙)按键事件
  3. 五分钟学会python函数_Python——带你五分钟了解函数式编程与闭包
  4. Java找出游戏的获胜者leetcode_1823
  5. 地理坐标系与投影坐标系的区别以及投影变换与定义投影的区别
  6. 北京大学人工智能研究院落户武汉,致力于打造一流人工智能研发机构
  7. 互联网行业,回暖了?
  8. Spring 基本配置
  9. java 数字翻译成英文_AcWing 59. 把数字翻译成字符串--Java代码
  10. android阿拉伯数字1 to一,英文数字的阿拉伯数字android