您的位置:首页 > 编程语言 > Python开发

基于YUV图像的色彩调节

2017-09-18 22:31 169 查看
#!/usr/bin/python
#coding:utf-8

import cv2
import numpy as np

def cb():
pass

if __name__ == "__main__":

img = cv2.imread("test.jpg")
assert img is not None, "test.jpg can not be opened!"
img = cv2.cvtColor(img, cv2.COLOR_BGR2YUV)
dst = np.array(img.shape, np.uint8)

cv2.namedWindow('image')
cv2.createTrackbar('U', 'image', 10, 20, cb)
cv2.createTrackbar('V', 'image', 10, 20, cb)

kernel = np.array([[0.299, 0.587, 0.114],
[-0.1678, -0.3313, 0.5],
[0.5, -0.4187, -0.0813]])

while(1):
cv2.imshow('image', dst)
k=cv2.waitKey(1)&0xFFFF
if k == 27:
break

u = cv2.getTrackbarPos('U', 'image')
v = cv2.getTrackbarPos('V', 'image')

print u,v

#tmp = (img -[0, 127, 127])* [ 1, u/10.0 , v/10.0] + [0, 127, 127]
tmp = img + [0, (u-10)*10.0, (v-10)*10.0]
tmp2 = np.array(tmp, np.uint8)

dst = cv2.cvtColor(tmp2, cv2.COLOR_YUV2BGR)

cv2.destroyAllWindows()

效果:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python opencv