高通滤波最主要的作用是检测边缘
Sobel(索贝尔)(高斯):
对噪音适用性很强,在内部首先使用了高斯滤波对噪音进行过滤,之后再通过一阶导求得图像边缘。【若卷积核size设置为-1,则自动使用的是沙尔滤波算法】
Scharr(沙尔) :
卷积核不可改变的一个3x3大小卷积核,可以检测出比较细小的边缘线(不常用,索贝尔可以代替沙尔)
索贝尔和沙尔的缺陷是只能检测一个方向的边缘,要么横轴,要么纵轴,所以调用 完后还需要自己把横轴和纵轴检测到的边缘线加起来才是最终结果
Laplacian(拉普拉斯):
可以把横轴和纵轴的边缘全部检测出来,但是对噪音比较敏感,在内部没有进行降噪操作,使用之前需要自己手工降噪

索贝尔api
Sobel(src, ddepth, dx, dy, ksize = 3,
scale = 1, detal = 0, boderType = BORDER_DEFAULT)

src : 原图片
ddepth :输出图片位深
dx = 1,则检测出y方向边缘
dy = 1,则检测出x方向边缘
ksize :卷积核大小,若=-1,则为沙尔算法
以下代码就是用索贝尔算法例子

import cv2
import numpy as npimg = cv2.imread('d:\\STUDY_OPENCV\\img\\sz.png')
#索贝尔算子y方向边缘
d1 = cv2.Sobel(img, cv2.CV_64F, 1, 0, ksize=5)#dx为1代表求得是y方向的边缘
#索贝尔算子x方向边缘
d2 = cv2.Sobel(img, cv2.CV_64F, 0, 1, ksize=5)
#dst = d1+d2 ,与下行代码功能一样
dst = cv2.add(d1,d2)
cv2.imshow('dst', dst)
cv2.imshow('d1',d1)
cv2.imshow('d2',d2)
cv2.imshow('img',img)
cv2.waitKey(0)


沙尔api
Scharr(src, ddepth, dx, dy,
scale = 1, detal = 0, boderType = BORDER_DEFAULT)
拉普拉斯api
Laplacian (src, ddepth, ksize = 1, scale = 1, boderType = BORDER_DEFAULT)

边缘检测小能手:canny

  1. 使用5x5高斯滤波消除噪声
  2. 调用索贝尔从四个方向上对图像计算检测(0°/45°/90°/135°)
  3. 在四个方向上取局部最大值
  4. 取出所有局部最大值之后进行阈值计算()

Canny(img, minVal, maxVal,…)
img :需要处理的图片
minVal :自己设定的最小阈值
maxVal :设定的最大阈值
【最小阈值和最大阈值中间范围过大时检测到的边缘比较少】

import cv2
import numpy as np
img = cv2.imread('d:\\STUDY_OPENCV\\img\\cdog.jpg')
dst = cv2.Canny(img, 120, 150)
cv2.imshow('img',img)
cv2.imshow('dst', dst)
cv2.waitKey(0)

OpenCV之高通滤波相关推荐

  1. 高通滤波器 python实现

    高通滤波器 高通滤波器(HPF)是检测图像的某个区域,然后根据像素与周围像素的亮度差值来提升像素的亮度. 用于:边缘提取与增强. 注意:通过高通滤波器进行滤波后,再和原图像叠加,可以增强图像中灰度级变 ...

  2. opencv学习笔记22:傅里叶变换,高通滤波,低通滤波

    傅里叶变换原理 任何连续的周期信号,都可以由一组适当的正弦曲线组合而成. 下列左上图由其他三图构成. 左图经过傅里叶变换,由时域图转换到频域图.相互可逆 相位:不是同时开始的一组余弦函数,在叠加时要体 ...

  3. 【OpenCV 例程200篇】88. 频率域拉普拉斯高通滤波

    [OpenCV 例程200篇]88. 频率域拉普拉斯高通滤波 欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列,持续更新中 4.3 ...

  4. OpenCV —— 频率域滤波(傅里叶变换,低通和高通滤波,带通和带阻滤波,同态滤波)

    频率域滤波 基本概念 傅里叶变换 二维离散的傅里叶变换 快速傅里叶变换 傅里叶幅度谱与相位谱 谱残差显著性检测 卷积与傅里叶变换的 频率域滤波 低通滤波和高通滤波 带通和带阻滤波 同态滤波 基本概念 ...

  5. opencv 四 Mat的基本操作3(高通滤波、低通滤波、对比度调节)

    图像滤波分为高通滤波和低通滤波,高通滤波用于求图形的边缘,低通滤波用于图像去噪.图像模糊化等.这里的频是指变化(相邻像素值的变化),高通滤波是指使变化大也就是图像的边缘)的通过(低通滤波是指使变化小( ...

  6. c++ opencv数字图像处理:频率域滤波--高通滤波--高斯高通滤波

    文章目录 前言 一.高斯高通滤波器(GHPF) 二.代码 前言 数字图像处理c++ opencv(VS2019 opencv4.53)持续更新 一.高斯高通滤波器(GHPF) D 2 ( u , v ...

  7. python高通滤波_理想高通滤波实现Python opencv示例

    理想高通滤波实现 python opencv import numpy as np import cv2 from matplotlib import pyplot as plt plt.rcpara ...

  8. 【opencv图像处理】--4. 低、高通滤波,卷积和各种算子

    "I listen to the radio" 一.低通滤波 1. 卷积 2. 方盒滤波与均值滤波 3. 高斯滤波 4. 中值滤波 5. 双边滤波 二.高通滤波 1. Sobel( ...

  9. OpenCv图像锐化及各种高通滤波

    目录 什么是图像锐化以及为什么要进行图像锐化 图像锐化的方法 1.空域滤波的可使用几种方法 1.1梯度法 1.2拉普拉斯算子法 1.3定向滤波法 2.频域方面的高通滤波 2.1理想高通滤波器 2.2巴 ...

最新文章

  1. OC系列foundation Kit基础-NSDate
  2. el-input怎么绑定回车事件
  3. MySQL Replace INTO的使用
  4. in the java search_elasticsearch which: no java in (/sbin:/bin:/usr/sbin:/usr/bin)
  5. P2522 HAOI2011 Problem b [莫比乌斯反演,数论分块]
  6. (转)淘淘商城系列——Redis持久化方案
  7. 蓝桥杯 ALGO-81 算法训练 动态数组使用
  8. MTK:架构和消息机制(必看)
  9. python里进度条编程_Python实现控制台中的进度条
  10. innerHTML、outerHTML、innerText、outerText的区别及兼容性问题
  11. Bootstrap入门!
  12. 做本地服务业O2O要点有哪些 O2O营销模式未来发展趋势是什么?
  13. 电子书格式转换方法集锦
  14. Vue教程(三十九)vue-cli2脚手架安装
  15. 固态硬盘有哪些协议知识点?
  16. OSPF的5、7类LSA中的FA、cost计算详解
  17. 什么是库存周转率周转天数?
  18. java 判断是否回文
  19. 360浏览器切换内核数据丢失
  20. 实现兼容各浏览器的背景渐变,透明度渐变,色彩渐变

热门文章

  1. [面试题]java中final finally finalized 的差别是什么?
  2. 【NLP】英文长文本分类
  3. Hadoop核心介绍课程笔记
  4. 笔记:谁说菜鸟不会数据分析(入门篇)-思维导图
  5. 图像处理中的振铃现象产生原因
  6. 2018年读《Java Restful Web Service 实战》笔记
  7. 《重新认识你自己》——拒绝向导,认识自己
  8. 如何写好年终工作总结?
  9. 泰拳的快感之一——我看《拳霸》
  10. 基于Docker和Golang搭建Web服务器