Python OpenCV 使用滑动条来调整函数参数的方法
作者:灿若星空丶 发布时间:2022-05-20 06:43:48
标签:OpenCV,滑动,函数参数
引言
在观察OpenCV中某个函数在不同参数的情况下,所得到的效果的时候,我之前是改一次参数运行一次,这样做起来操作麻烦,效率低下。为了更便捷的观察参数变化时带来的处理效果改变 可以使用滑动条来改变参数
具体思路
使用cv2.createTrackbar()创建滑动条,有几个参数就创建几个
对每个参数定义回调函数
在回调函数中显示图片
注意 滑动条的窗口名称 要与 图片显示的窗口名字相同
代码实现
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()
效果展示
来源:https://segmentfault.com/a/1190000019694153


猜你喜欢
- 在pycharm中,可以通过venv来建立工程,运行等等。但是一旦把这个工程文件夹拿到其他地方运行,而且不是在venv环境中运行,就有可能遇
- 多表查询分类分类1:等值连接 vs 非等值连接1. 等值连接SELECT employees.employee_id, employees.
- 点击获取后,返回2s后的鼠标位置,显示在文本框(需要用pip命令安装所需的的库)(pip install 模块名比如 安装pyautogui
- 导言篇我的python环境是:python3.6.5这里我选择的GUI编程包是:tkintertkinker在python2.5以后就是自带
- 一般情况下编译安装python环境需要执行以下步骤:下载源码包解压源码包安装配置编译以及编译安装TALK IS CHEAP, SHOW YO
- 本文实例讲述了Sanic框架请求与响应。分享给大家供大家参考,具体如下:前面介绍了Sanic框架的路由,这里接着介绍Sanic框架的请求与响
- 第一次使用python写程序,确实比C/C++之类方便许多。既然这个抽奖的数据不大,对效率要求并不高,所以采用python写,更加简洁、清晰
- 本文实例讲述了Python打印斐波拉契数列的方法。分享给大家供大家参考。具体实现方法如下:#打印斐波拉契数列#!/usr/bin/pytho
- pandas 读取各种格式文件:前置工序: import pandas as pdcsv 文件读取中文错误处理: utf-8 codec c
- 介绍Prometheus 的基本原理是通过 HTTP 周期性抓取被监控组件的状态。任意组件只要提供对应的 HTTP 接口并且符合 Prome
- 最近做了一个项目其中有项目需求涉及到访问控制,在访问需要登录才能使用的页面或功能时,会弹出登录框:效果如下: 图 1-点击用户名时,如未登录
- Python IDLE Subprocess Connection Error的解决方法今天准备运行一个Python 文件时,IDLE突然报
- 我采用的是MySQLdb操作的MYSQL数据库。先来一个简单的例子吧: import MySQLdb try: conn=MySQLdb.c
- 发现问题最近在工作中遇到一个问题,后端写好,前端写好,postman测试做好,一切都没有问题,但是实际用axios来实现登陆功能的时候问题就
- 这份数据集来源于Kaggle,数据集有12500只猫和12500只狗。在这里简单介绍下整体思路处理数据设计神经网络进行训练测试1. 数据处理
- 本文实例讲述了Python删除windows垃圾文件的方法。分享给大家供大家参考。具体如下:#coding:utf-8import os#f
- 阅读上一篇:网马解密大讲堂——网马解密中级篇(Eval篇) 一.Document.write 函数简介:在Microsoft JScript
- 前言我们在使用vue-cli启动项目的时候npm run dev便可以启动我们的项目了,通常我们的请求地址是以localhost:8080来
- --禁用 alter table tb disable trigger tir_name --啟用 alter table tb enabl
- 要求利用python实现禁用键盘鼠标思路经过查阅资料目前最好的办法是采用ctypes中的dll文件进行编写from ctypes impor