Python OpenCV 使用滑动条来调整函数参数的方法


Posted in Python onJuly 08, 2019

引言

在观察OpenCV中某个函数在不同参数的情况下,所得到的效果的时候,我之前是改一次参数运行一次,这样做起来操作麻烦,效率低下。为了更便捷的观察参数变化时带来的处理效果改变 可以使用滑动条来改变参数

具体思路

  1. 使用cv2.createTrackbar()创建滑动条,有几个参数就创建几个
  2. 对每个参数定义回调函数
  3. 在回调函数中显示图片

注意 滑动条的窗口名称 要与 图片显示的窗口名字相同

代码实现

import cv2

d = 0
color = 0
space = 0
def change_d(x):
  d = x
  blur = cv2.bilateralFilter(img,d,color,space)
  cv2.imshow("myImg",blur)

def change_color(x):
  color = x
  blur = cv2.bilateralFilter(img,d,color,space)
  cv2.imshow("myImg",blur)

def change_space(x):
  space = x
  blur = cv2.bilateralFilter(img,d,color,space)
  cv2.imshow("myImg",blur)

img = cv2.imread('car2.jpeg')
cv2.namedWindow('myImg')
cv2.createTrackbar('d','myImg',1,500,change_d)
cv2.createTrackbar('color','myImg',1,500,change_color)
cv2.createTrackbar('space','myImg',1,500,change_space)

while(1):
  k = cv2.waitKey(1)&0xFF
  if k==27:
    break
  d = cv2.getTrackbarPos('d','myImg')
  color = cv2.getTrackbarPos('color','myImg')
  space = cv2.getTrackbarPos('space','myImg')


cv2.destroyAllWindows()

效果展示

Python OpenCV 使用滑动条来调整函数参数的方法

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

Python 相关文章推荐
Python脚本实现网卡流量监控
Feb 14 Python
详解django中自定义标签和过滤器
Jul 03 Python
tensorflow: 查看 tensor详细数值方法
Jun 13 Python
详解python里的命名规范
Jul 16 Python
python中文编码与json中文输出问题详解
Aug 24 Python
python绘制直方图和密度图的实例
Jul 08 Python
python根据文本生成词云图代码实例
Nov 15 Python
Django-rest-framework中过滤器的定制实例
Apr 01 Python
Jupyter notebook如何修改平台字体
May 13 Python
Python生成随机验证码代码实例解析
Jun 09 Python
python自动化之如何利用allure生成测试报告
May 02 Python
Python 处理表格进行成绩排序的操作代码
Jul 26 Python
使用Python opencv实现视频与图片的相互转换
Jul 08 #Python
python基于paramiko将文件上传到服务器代码实现
Jul 08 #Python
Python脚本利用adb进行手机控制的方法
Jul 08 #Python
Python Pandas中根据列的值选取多行数据
Jul 08 #Python
详解python调用cmd命令三种方法
Jul 08 #Python
python3.7 使用pymssql往sqlserver插入数据的方法
Jul 08 #Python
Python绘制频率分布直方图的示例
Jul 08 #Python
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
Discuz! Passport 通行证整合
2008/03/27 PHP
PHP,ASP.JAVA,JAVA代码格式化工具整理
2010/06/15 PHP
PHP中error_reporting()用法详解
2015/08/31 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
PHP实现支付宝即时到账功能
2016/12/21 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
js form action动态修改方法
2008/11/04 Javascript
js 小数取整的函数
2010/05/10 Javascript
bootstrap datetimepicker实现秒钟选择下拉框
2017/01/05 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
webpack 代码分离优化快速指北
2019/05/18 Javascript
JavaScript实现拖动对话框效果的实现代码
2020/10/12 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
2020/11/06 Javascript
Vue 实现一个简单的鼠标拖拽滚动效果插件
2020/12/10 Vue.js
Django 前后台的数据传递的方法
2017/08/08 Python
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
Python动态导入模块的方法实例分析
2018/06/28 Python
带你认识Django
2019/01/15 Python
Python二维码生成识别实例详解
2019/07/16 Python
基于Numba提高python运行效率过程解析
2020/03/02 Python
PyCharm中Matplotlib绘图不能显示UI效果的问题解决
2020/03/12 Python
Python实现自动整理文件的脚本
2020/12/17 Python
HTML5地理定位实例
2014/10/15 HTML / CSS
ProBikeKit英国:在线公路自行车之家
2017/02/10 全球购物
Rhone官方网站:男士运动服装、健身服装和高级运动服
2019/05/01 全球购物
应届护士推荐信
2013/11/16 职场文书
安全教育心得体会
2013/12/29 职场文书
幼教求职信
2014/03/12 职场文书
会议室标语
2014/06/21 职场文书
于丹论语心得观后感
2015/06/15 职场文书
六一活动主持词
2015/06/30 职场文书
教师节表彰会主持词
2015/07/06 职场文书
在pycharm中无法import所安装的库解决方案
2021/05/31 Python
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL