python+opencv实现高斯平滑滤波


Posted in Python onJuly 21, 2020

功能:

创建两个滑动条来分别控制高斯核的size和σσ的大小,这个程序是在阈值分割的那个程序上改动的。阈值分割程序在这
注意:由于σ=0σ=0时,opencv会根据窗口大小计算出σσ,所以,从0滑动σσ的滑动条时,会出现先边清晰又变模糊的现象

(2016-5-10)到OpenCV-Python Tutorials's documentation!可以下载

代码:

# -*- coding: utf-8 -*- 

import cv2

#两个回调函数
def GaussianBlurSize(GaussianBlur_size):
 global KSIZE 
 KSIZE = GaussianBlur_size * 2 +3
 print KSIZE, SIGMA
 dst = cv2.GaussianBlur(scr, (KSIZE,KSIZE), SIGMA, KSIZE) 
 cv2.imshow(window_name,dst)

def GaussianBlurSigma(GaussianBlur_sigma):
 global SIGMA
 SIGMA = GaussianBlur_sigma/10.0
 print KSIZE, SIGMA
 dst = cv2.GaussianBlur(scr, (KSIZE,KSIZE), SIGMA, KSIZE) 
 cv2.imshow(window_name,dst)

#全局变量
GaussianBlur_size = 1
GaussianBlur_sigma = 15

KSIZE = 1
SIGMA = 15
max_value = 300
max_type = 6
window_name = "GaussianBlurS Demo"
trackbar_size = "Size*2+3"
trackbar_sigema = "Sigma/10"

#读入图片,模式为灰度图,创建窗口
scr = cv2.imread("G:\homework\lena.bmp",0)
cv2.namedWindow(window_name)

#创建滑动条
cv2.createTrackbar( trackbar_size, window_name, \
   GaussianBlur_size, max_type, GaussianBlurSize )
cv2.createTrackbar( trackbar_sigema, window_name, \
   GaussianBlur_sigma, max_value, GaussianBlurSigma )
#初始化
GaussianBlurSize(1)
GaussianBlurSigma(15)

if cv2.waitKey(0) == 27: 
 cv2.destroyAllWindows()

调用:

需要把图片和cv2.pyd与GaussianBlur.py放在同一文件夹下

>>> import os
>>> os.chdir("g:\homework")
>>> import GaussianBlur
5 15
5 1.5
5 1.6
5 1.9
5 2.4
5 2.5
5 2.9
5 3.0
5 3.3
5 3.6
5 3.9
5 4.1
5 4.2
5 4.3
5 4.4
5 4.5
5 4.6
5 4.7
5 4.8

效果图:

python+opencv实现高斯平滑滤波

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中常用检测字符串相关函数汇总
Apr 15 Python
Python抓取电影天堂电影信息的代码
Apr 07 Python
详解python基础之while循环及if判断
Aug 24 Python
Python线程之定位与销毁的实现
Feb 17 Python
详解Python 调用C# dll库最简方法
Jun 20 Python
python3实现带多张图片、附件的邮件发送
Aug 10 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
Feb 26 Python
使用 Python ssh 远程登陆服务器的最佳方案
Mar 06 Python
python中的对数log函数表示及用法
Dec 09 Python
Python+Appium实现自动抢微信红包
May 21 Python
用Python创建简易网站图文教程
Jun 11 Python
Python排序算法之插入排序及其优化方案详解
Jun 11 Python
python+opencv实现阈值分割
Dec 26 #Python
对python xlrd读取datetime类型数据的方法详解
Dec 26 #Python
Flask核心机制之上下文源码剖析
Dec 25 #Python
flask session组件的使用示例
Dec 25 #Python
python+opencv实现霍夫变换检测直线
Oct 23 #Python
python利用插值法对折线进行平滑曲线处理
Dec 25 #Python
基于Python对数据shape的常见操作详解
Dec 25 #Python
You might like
PHP 文件编程综合案例-文件上传的实现
2013/07/03 PHP
PHP实现全角字符转为半角方法汇总
2015/07/09 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
ZF框架实现发送邮件的方法
2015/12/03 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
smarty循环嵌套用法示例分析
2016/07/19 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
jQuery 渐变下拉菜单
2009/12/15 Javascript
js解析与序列化json数据(二)序列化探讨
2013/02/01 Javascript
JS Replace 全部替换字符的用法小结
2013/12/24 Javascript
jQuery匹配文档链接并添加class的方法
2015/06/26 Javascript
JS函数定义方式的区别介绍
2016/03/22 Javascript
详解百度百科目录导航树小插件
2017/01/08 Javascript
Vue 2.0 服务端渲染入门介绍
2017/03/29 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
vue+webpack实现异步加载三种用法示例详解
2018/04/24 Javascript
JS实现十分钟倒计时代码实例
2018/10/18 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
在Vue中实现随hash改变响应菜单高亮
2020/03/09 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
python Spyder界面无法打开的解决方法
2018/04/27 Python
Python3爬虫之urllib携带cookie爬取网页的方法
2018/12/28 Python
django和vue实现数据交互的方法
2019/08/21 Python
PyQt5连接MySQL及QMYSQL driver not loaded错误解决
2020/04/29 Python
opencv 实现特定颜色线条提取与定位操作
2020/06/02 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
python中用ggplot绘制画图实例讲解
2021/01/26 Python
魔幻般冒泡背景的CSS3按钮动画
2016/02/27 HTML / CSS
求职简历推荐信范文
2013/12/02 职场文书
幼儿园教研活动方案
2014/01/19 职场文书
农村结婚典礼司仪主持词
2014/03/14 职场文书
2014优秀党员事迹材料
2014/08/14 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
AJAX学习笔记
2021/05/18 Javascript