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网络编程学习笔记(九):数据库客户端 DB-API
Jun 09 Python
Python 读写文件的操作代码
Sep 20 Python
python 拼接文件路径的方法
Oct 23 Python
python openpyxl使用方法详解
Jul 18 Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 Python
Python3如何对urllib和urllib2进行重构
Nov 25 Python
python科学计算之numpy——ufunc函数用法
Nov 25 Python
详解python常用命令行选项与环境变量
Feb 20 Python
Python3操作YAML文件格式方法解析
Apr 10 Python
python 识别登录验证码图片功能的实现代码(完整代码)
Jul 03 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
Jan 06 Python
解决Pycharm 运行后没有输出的问题
Feb 05 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传输数据的代码
2007/11/13 PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
2016/01/05 PHP
PHP实现对数组分页处理实例详解
2017/02/07 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
提高网站性能之 如何对待JavaScript
2009/10/31 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
解决jquery的.animate()函数在IE6下的问题
2010/12/03 Javascript
JQuery实现当鼠标停留在某区域3秒后自动执行
2014/09/09 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
js流动式效果显示当前系统时间
2016/05/16 Javascript
JS中常用的输出方式(五种)
2016/06/12 Javascript
JavaScript中ES6 Babel正确安装过程
2016/07/18 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
JS实现css hover操作的方法示例
2017/04/07 Javascript
bootstrap table sum总数量统计实现方法
2017/10/29 Javascript
Node.js log4js日志管理详解
2018/07/31 Javascript
浅谈vue中组件绑定事件时是否加.native
2019/11/09 Javascript
在JavaScript中实现链式调用的实现
2019/12/24 Javascript
[00:10]DOTA2全国高校联赛速递
2018/05/30 DOTA
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
python sys,os,time模块的使用(包括时间格式的各种转换)
2018/04/27 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
django rest framework使用django-filter用法
2020/07/15 Python
python 统计list中各个元素出现的次数的几种方法
2021/02/20 Python
一文彻底解决HTML5页面中长按保存图片功能
2019/06/10 HTML / CSS
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
老总助理工作岗位职责
2014/02/06 职场文书
企业文化建设实施方案
2014/03/22 职场文书
授权委托书公证
2014/09/14 职场文书
小学校园广播稿(3篇)
2014/09/19 职场文书
收费员岗位职责
2015/02/14 职场文书
大学生受助感言
2015/08/01 职场文书
2016高考寄语集锦
2015/12/04 职场文书
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers