怎么用python制作滑动条形式的调色器

 时间:2024-10-23 09:56:50

1、先制作一个图像窗口:import cv2cv2.namedWindow('a')

怎么用python制作滑动条形式的调色器

2、在图像窗口里面插入一个滑动条:def nothing(x): passcv2.createTrackbar('R',媪青怍牙'a',99,255,nothing)这是创建滑动条的函数;参数“R”表示滑动条的名称;“a”表示这个滑动条放在图像窗口a里面;99表示滑动条的当前位置是99;255表示滑动条的最大值,这个滑动条的取值范围是0到255之间的整数;nothing是上面创建的自定义函数,暂时什么都不做。

怎么用python制作滑动条形式的调色器

3、拖动一下滑动条,会发现没变化,这是因为窗口里面还没有图像。

怎么用python制作滑动条形式的调色器

4、创建一个300*100的黑色img:img=np.zeros((100,300,3),np.uint8)注意此时加载了numpy模块;这是一个3通道的黑色图片,像素值都是0。

怎么用python制作滑动条形式的调色器

5、但是此时拖动滑块,图像颜色还是没有变化。因为: 滑动条的值还没有与图像像素值绑定。

怎么用python制作滑动条形式的调色器

6、下面把像素值与滑动值绑定:r=cv2.getTrackbarPos('R','a')img[:,:,2]=rcv2.i罪焐芡拂mshow('a',img)cv2.waitKey(0)cv2.destroyAllWindows()注意,cv2里面,默认的红色通道是第三通道,三通道的顺序为B、G、R。

怎么用python制作滑动条形式的调色器

7、但是,滑块还是无法改变图像颜色。这是因为,滑动条的值改变了,但是r的值并没有随之而改变,或者说,程序运行没有刷新。

怎么用python制作滑动条形式的调色器

8、用while循环加上一个switch语句,可以让程序保持随时可以刷新:switch屏顿幂垂='0:OFF\n1:ON'稆糨孝汶;cv2.createTrackbar(switch,'a',0,1,nothing)#上面这是一个开关(也是滑动条),只有0和1两个值;while(1): cv2.imshow('a',img) k=cv2.waitKey(1)&0xFF if k==27: break r=cv2.getTrackbarPos('R','a') s=cv2.getTrackbarPos(switch,'a') if s==0: img[:]=0 else: img[:]=[0,0,r]打开开关,滑动条才能起作用。

怎么用python制作滑动条形式的调色器

9、再加上绿色和蓝色滑动条。注意,img的大小被改了。

怎么用python制作滑动条形式的调色器

10、整体效果:

怎么用python制作滑动条形式的调色器
  • 如何用VB制作一个比赛评分系统?VB编程入门
  • edge浏览器如何开启阅读模式
  • 笔记本充手机伤电脑吗
  • Python编程:如何使用if语句进行条件判断
  • Edge浏览器怎么进入阅读模式
  • 热门搜索
    元旦节的手抄报 缅怀先烈手抄报简单又漂亮 教师节手抄报图片大全 楹联手抄报 有关绿色环保的手抄报 重阳节手抄报图片大全 父亲节手抄报图片 过年的手抄报 繁星春水手抄报 教师节的手抄报