OpenCV滑动条Trackbar的使用

OpenCV滑动条Trackbar的使用

  • 滑动条Trackbar
  • 亮度滑动条效果
  • 代码

滑动条Trackbar

在 OpenCV 中,滑动条(Trackbar)是一个很有用的工具,它允许用户通过滑动条来实时地调整参数值,这在图像处理中特别有用,比如调整亮度、对比度、阈值等

亮度滑动条效果



代码

python 复制代码
import cv2
import numpy as np

# 读取图像
img = cv2.imread('liu_1.jpeg', 1)

# 初始化亮度值
brightness = 50


# 定义回调函数,用于处理滑动条值的变化
def brightness_change(value):
    # 创建一个 HSV 颜色空间的副本
    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

    # 计算 V 通道的新值
    h, s, v = cv2.split(hsv)
    v = cv2.add(v, value)
    v[v > 255] = 255
    v[v < 0] = 0

    # 将新的 V 通道与 H 和 S 通道合并
    final_hsv = cv2.merge((h, s, v))

    # 将图像从 HSV 转换回 BGR
    img_brightness = cv2.cvtColor(final_hsv, cv2.COLOR_HSV2BGR)

    # 显示调整亮度后的图像
    cv2.imshow('Brightness Adjustment', img_brightness)


# 创建窗口和滑动条
cv2.namedWindow('Brightness Adjustment')
cv2.createTrackbar('Brightness', 'Brightness Adjustment', brightness, 255, brightness_change)

# 显示原始图像
cv2.imshow('Brightness Adjustment', img)

# 等待键盘输入,按 'q' 键退出
while True:
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

    # 关闭所有窗口
cv2.destroyAllWindows()
相关推荐
Fr2ed0m1 分钟前
卡尔曼滤波算法原理详解:核心公式、C 语言代码实现及电机控制 / 目标追踪应用
c语言·人工智能·算法
AndrewHZ15 分钟前
【图像处理基石】如何在图像中实现光晕的星芒效果?
图像处理·opencv·计算机视觉·cv·图像增强·算法入门·星芒效果
熊猫_豆豆16 分钟前
神经网络的科普,功能用途,包含的数学知识
人工智能·深度学习·神经网络
笨蛋不要掉眼泪26 分钟前
deepseek封装结合websocket实现与ai对话
人工智能·websocket·网络协议
hesorchen37 分钟前
算力与数据驱动的 AI 技术演进全景(1999-2024):模型范式、Infra 数据、语言模型与多模态的关键突破
人工智能·语言模型·自然语言处理
你也渴望鸡哥的力量么1 小时前
基于边缘信息提取的遥感图像开放集飞机检测方法
人工智能·计算机视觉
xian_wwq1 小时前
【学习笔记】深度学习中梯度消失和爆炸问题及其解决方案研究
人工智能·深度学习·梯度
StarRocks_labs1 小时前
StarRocks 4.0:Real-Time Intelligence on Lakehouse
starrocks·人工智能·json·数据湖·存算分离
Tracy9731 小时前
DNR6521x_VC1:革新音频体验的AI降噪处理器
人工智能·音视频·xmos模组固件
weixin_307779132 小时前
基于AWS Lambda事件驱动架构与S3智能生命周期管理的制造数据自动化处理方案
人工智能·云计算·制造·aws