opencv(py) createTrackbar 基于滑动条来生成颜色

216 阅读1分钟
  •        Python : 3.8.11
  • opencv-python : 4.1.2.30
  • opencv-contrib-python : 4.1.2.30
  •          OS : Ubuntu Kylin 20.04
  •       Conda : 4.10.1
  •     Pycharm : 2021.1.3

代码示例

import cv2
import numpy as np


def trackbar_on_change(x):
    print(x)


image = np.zeros((256, 256, 3), np.uint8)

cv2.namedWindow("image")

# "Red" 滑动条名称
# "image" 窗口名称
#  0,255 最小值,最大值
# trackbar_on_change 回调函数
cv2.createTrackbar("Red", "image", 0, 255, trackbar_on_change)
cv2.createTrackbar("Green", "image", 0, 255, trackbar_on_change)
cv2.createTrackbar("Blue", "image", 0, 255, trackbar_on_change)

while True:
    cv2.imshow("image", image)

    key = cv2.waitKey(1)
    if key == ord("q"):
        break

    red = cv2.getTrackbarPos("Red", "image")
    green = cv2.getTrackbarPos("Green", "image")
    blue = cv2.getTrackbarPos("Blue", "image")

    image[:] = [blue, green, red]

cv2.destroyAllWindows()

运行结果

cv-trackbar-color-1.png

/home/coder/anaconda3/bin/python3.8 /home/coder/PycharmProjects/pythonProject2/main.py
3
4
5
7
9
11
12
13
16
17
20
21
23
26
27
28
30
31

......此处省略大部分内容......

108
105
104
103
100
99
97

Process finished with exit code 0

学习推荐


Python具有开源、跨平台、解释型、交互式等特性,值得学习。
Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
代码的书写要遵守规范,这样有助于沟通和理解。
每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。