【OpenCV-Python】cvui 之 trackbar

news2025/1/24 9:24:49

CVUI 之 trackbar

cvui::trackbar() 渲染一个 trackbar, 可以左右拖动或点击对数字进行增加或减少的调整。

在这里插入图片描述

不使用离散间隔

在这里插入图片描述

使用离散间隔

在这里插入图片描述

Python

import numpy as np
import cv2
import cvui

def trackbar_test():
    WINDOW_NAME = 'Trackbar-Test'

    # 创建画布
    frame = np.zeros((400, 600, 3), np.uint8)

    # 读取图像
    cvui.init(WINDOW_NAME)

    # 
    cntvalue = [1.0]
  
    threshold = [128]

    while True:
        # 画布填色
        frame[:] = (128, 100, 128)

        '''
        > theWhere: 画布
        > theX: 绘制的 X
        > theY: 绘制的 Y
        > theValue: 值
        > theStep: 间隔
        > theFormat: 格式化的值或数字。例如,% d或 % .2f。
        > theFontScale: 字体大小
        > theInsideColor: 颜色
        '''
        cvui.counter(frame, 10, 10, cntvalue, 2, "%d")
      
      
        '''
        > **参数**
        > 发生改变时,返回 `True`;
        > *theWhere*: 画布
        > *theX*: 绘制的 x 
        > *theY*: 绘制的 y
        > *theWidth*: 宽度
        > *theValue*: 用户可以修改的值,任何数值型类型都可以
        > *theMin*: 允许的最小值
        > *theMax*: 允许的最大值
        > *theSegments*: 分段数
        > *theLabelFormat*: 格式化的值,默认为 `%.1Lf` 表示小数,
        > *theOptions*: 定制选项,可以用 `|` 扩展多个
        >   * `TRACKBAR_HIDE_SEGMENT_LABELS`: 显示最小最大值,不显示当前值
        >   * `TRACKBAR_HIDE_STEP_SCALE`: 不显示指示线
        >   * `TRACKBAR_DISCRETE`: 是否使用离散值 `theDiscreteStep` ;
        >   * `TRACKBAR_HIDE_MIN_MAX_LABELS`: 不显示最小最大值
        >   * `TRACKBAR_HIDE_VALUE_LABEL`: 不显示当前值
        >   * `TRACKBAR_HIDE_LABELS`: 不显示标签
        > *theDiscreteStep*: 使用离散的间隔,使用离散的操作看起来不是很平滑。
        '''
        cvui.trackbar(frame, 15, 180, 500, threshold, 10, 256, 3, "%d")
      
        # 显示
        cvui.imshow(WINDOW_NAME, frame)

        # ESC 退出
        if cv2.waitKey(20) == 27:
            break


if __name__ == '__main__':
    trackbar_test()

CPP

原型

template <typename T>
bool trackbar(cv::Mat& theWhere, int theX, int theY, int theWidth, T *theValue, T theMin, T theMax, int theSegments = 1, const char *theLabelFormat = "%.1Lf", unsigned int theOptions = 0, T theDiscreteStep = 1, double theFontScale = DEFAULT_FONT_SCALE);

参数
发生改变时,返回 True
theWhere: 画布
theX: 绘制的 x
theY: 绘制的 y
theWidth: 宽度
theValue: 用户可以修改的值,任何数值型类型都可以
theMin: 允许的最小值
theMax: 允许的最大值
theSegments: 分段数
theLabelFormat: 格式化的值,默认为 %.1Lf 表示小数,
theOptions: 定制选项,可以用 | 扩展多个

  • TRACKBAR_HIDE_SEGMENT_LABELS: 显示最小最大值,不显示当前值
  • TRACKBAR_HIDE_STEP_SCALE: 不显示指示线
  • TRACKBAR_DISCRETE: 是否使用离散值 theDiscreteStep ;
  • TRACKBAR_HIDE_MIN_MAX_LABELS: 不显示最小最大值
  • TRACKBAR_HIDE_VALUE_LABEL: 不显示当前值
  • TRACKBAR_HIDE_LABELS: 不显示标签
    theDiscreteStep: 使用离散的间隔,使用离散的操作看起来不是很平滑。

用例

double value = 12.4;
cvui::trackbar(frame, 40, 30, 220, &value, (double)10.0, (double)15.0);

【参考】

cvui-trackbar

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/413732.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023-数据质量管理方法总结

一、数据质量保障原则 如何评估数据质量的好坏&#xff0c;业界有不同的标准&#xff0c;阿里主要从4个方面进行评估&#xff1a;完整性、准确性、一致性、及时性&#xff1b; 1.完整性 数据完整性是数据最基础的保障&#xff1b; 完整性&#xff1a;指数据的记录和信息是否…

Redis高级功能

目录 1.RDB 持久化 1.1生成RDB文件的命令 1.2RDB 文件结构 1.3RDB 文件结构 - database 部分 2.AOF 持久化 2.主从复制 2.1重同步 - 完整重同步 2.2重同步 - 部分重同步 2.2.1重同步 - 部分重同步的实现 - PSYNC的实现原理 3.复制的具体过程 3.Sentinel 哨兵模式 …

MySQL Workbench使用入门

软件介绍 MySQL Workbench 是可视化数据库设计软件&#xff0c;为数据库管理员和开发人员提供了一整套可视化的数据库操作环境&#xff0c;主要功能有数据库设计与模型建立、SQL 开发&#xff08;取代 MySQL Query Browser&#xff09;、数据库管理&#xff08;取代 MySQL Adm…

【Vue框架】Vue2中element-ui/mint-ui组件库——element-ui引入组件以及使用案例、mint-ui引入组件及使用案例

文章目录一、element-ui/mint-ui组件库1.1 element-ui使用步骤1.1.1 引入组件1.1.2 修改 .babelrc文件1.2 mint-ui的使用1.2.1 安装引入组件1.2.2 Mint-ui相关组件一、element-ui/mint-ui组件库 element-ui 提供了大量的组件&#xff0c;如&#xff1a;布局组件、表单组件、JS…

运行时内存数据区之虚拟机栈——动态链接、方法返回地址与一些附加信息

动态链接&#xff08;Dynamic Linking&#xff09;——指向运行时常量池的方法引用 每一个栈帧内部都包含一个指向运行时常量池中该栈帧所属方法的引用。包含这个引用的目的就是为了支持当前方法的代码能够实现动态链接(Dynamic Linking)。比如&#xff1a;invokedynamic指令。…

算法 DAY24 回溯 || 第77题. 组合 216.组合总和III 17.电话号码的字母组合 39. 组合总和

前置知识 回溯算法模板框架如下&#xff1a;void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择&#xff1a;本层集合中元素&#xff08;树中节点孩子的数量就是集合的大小&#xff09;) {处理节点;backtracking(路径&#xff0c;选择列表); // 递归回溯&am…

rk3568点亮LCD(lvds)

rk3568 Android11/12 适配 lvds 屏 LVDS&#xff08;Low Voltage Differential Signal&#xff09;即低电压差分信号。1994年由美国国家半导体&#xff08;NS&#xff09;公司为克服以TTL电平方式传输宽带高码率数据时功耗大、电磁干扰大等缺点而研制的一种数字视频信号传输方…

堆的实现

思维导图 堆的概念 普通的二叉树是不适合用数组来存储的&#xff0c;因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储&#xff0c;需要注意的是这里的堆和操作系统虚拟进程地址空间中的堆是两回事…

【LeetCode】剑指 Offer 50. 第一个只出现一次的字符 p243 -- Java Version

题目链接&#xff1a;https://leetcode.cn/problems/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof/ 1. 题目介绍&#xff08;50. 第一个只出现一次的字符&#xff09; 在字符串 s 中找出第一个只出现一次的字符。如果没有&#xff0c;返回一个单空格。 s 只包含小写字母。 【测…

al文章生成-文章生成工具

ai文章生成器 AI文章生成器是一种利用人工智能和自然语言处理技术生成文章的工具。它使用先进的算法、机器学习和深度学习技术&#xff0c;深度挖掘和提取大量数据背后的信息&#xff0c;自主学习并合并新的信息&#xff0c;生成优质、原创的文章。 使用AI文章生成器的优点如下…

liunx mysql 主从同步设置 关键点

主库MySQL配置文件&#xff1a;该配置文件默认是在 /etc/my.cnf [mysqld] max_allowed_packet256M server-id1 log-binmysql-bin replicate-do-dbweb auto_increment_increment2 auto_increment_offset1 binlog_ignore_dbsys general_logon general_log_file/v…

Qt下载以及调试

1.概念 Qt是一个跨平台的基于C图形用户界面应用程序框架。 常见GUI&#xff1a; Qt&#xff1a;支持多平台&#xff1b;支持css&#xff1b;面向对象特性体现突出&#xff1b;发展趋势良好&#xff1b; MFC&#xff1a;仅在Windows&#xff1b;运行程序效率高&#xff1b;库安…

外包干了四年,感觉废了..

先说一下自己的情况&#xff0c;大专生&#xff0c;18年通过校招进入湖南某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

如何利用ventoy制作Linux to go (把deepin放到U盘里)

准备工作 最新版本 – 深度科技社区 (deepin.org) deepin镜像官方下载即可 Releases ventoy/vtoyboot GitHub ventoy启动插件选择1.0.29版本 Downloads – Oracle VM VirtualBox VirtualBox虚拟机官网 ventoy下载 VentoyRelease (lanzoui.com) 选择下载1.0.29版本 vento…

表格软件界的卷王,Excel、access、foxpro全靠边,WPS:真荣幸

Excel和Access就是表格软件的选择&#xff1f; 现在&#xff0c;铺天盖地的Excel的技能教程可谓是满天飞&#xff0c;有网上的教程&#xff0c;也有视频直播课程。 很多办公人员用Excel这种表格软件与VBA结合&#xff0c;甚至用不遗余力去学习Python编程语法&#xff0c;但Exce…

2023年会计师事务所研究报告

第一章 行业发展概况 1.1 行业概况 会计师事务所是专门从事财务、税务等领域的专业服务机构&#xff0c;其服务范围涵盖了审计、会计、税务、咨询等多个方面。 近年来&#xff0c;随着全球经济的不断发展和国际贸易的增加&#xff0c;会计师事务所行业也得到了快速发展。据统…

G8期刊《全体育》期刊简介及投稿要求

G8期刊《全体育》期刊简介及投稿要求 《全体育》是由湖南体育产业集团有限公司主管、体坛传媒集团股份有限公司主办、中教体育 出版发行的体育综合性期刊。 主管&#xff1a;湖南体育产业集团有限公司 主办&#xff1a;体坛传媒集团股份有限公司 国内刊号&#xff1a;CN4…

「实战教程」如何使用POI读取模板PPT填充数据并拼接至目标文件

文章目录一、PPT文件格式介绍1、PPT文件格式的概述2、HSLF和XSLF的区别3、如何选择合适的POI类库二、SlideShow三、读取PPT文件1. 加载PPT文件2. 获取PPT文件中的幻灯片3. 获取幻灯片中的形状元素四、修改PPT文件内容1. 幻灯片操作1.1 新增幻灯片1.2 删除幻灯片1.3 移动幻灯片1…

MySQL中count(1)和count(*)哪个性能好?

当我们对某一张表中的数据需要统计数量的时候&#xff0c;我们通常会用到count(1)、count(*)或者count(字段)&#xff0c;而这三种哪个方式的count效率最高呢&#xff1f;先来说结论&#xff1a; count(1) count(*) > count(字段) 为什么会得到如上的结论&#xff0c;下面来…

xilinx FPGA FIFO IP核的使用(VHDLISE)

1.新建工程和ip核文件 下图显示了一个典型的写操作。拉高WR_EN&#xff0c;导致在WR_CLK的下一个上升边缘发生写入操作。因为FIFO未满&#xff0c;所以WR_ACK输出1&#xff0c;确认成功的写入操作。当只有一个附加的单词可以写入FIFO时&#xff0c;FIFO会拉高ALMOST_FULL标志。…