【发布时间】:2020-12-12 07:38:54
【问题描述】:
我想用opencv和python在raspberry上写一个脚本,可以对直播视频应用效果, 一切正常,但问题是当它处于灰度模式时我无法将clahe应用于流,当流不是灰度时我可以应用clahe但是当我将其更改为灰度时clahe不起作用。 这是我的代码:
import cv2
cap = cv2.VideoCapture(0)
gray_flag=True
cl_flag = False
def clahe():
global frame
clahe = cv2.createCLAHE(20, tileGridSize=(8,8))
lab = cv2.cvtColor(frame, cv2.COLOR_BGR2LAB)
l, a, b = cv2.split(lab)
l2 = clahe.apply(l)
lab = cv2.merge((l2,a,b))
frame = cv2.cvtColor(lab, cv2.COLOR_LAB2BGR)
while True:
was_pressed = False
ret, frame = cap.read()
gray=cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
if c & 0xFF == ord('h'):
if not gray_flag:
gray_flag = True
else:
gray_flag = False
elif c & 0xFF == ord('d'):
if not cl_flag:
cl_flag = True
else:
cl_flag = False
if gray_flag:
if cl_flag:
clahe()
else:
pass
cv2.imshow('a', gray)
else:
if cl_flag:
clahe()
else:
pass
cv2.imshow('a', frame)
cap.release()
cv2.destroyAllWindows()
有人知道如何在灰度和彩色中应用clahe吗?
【问题讨论】:
标签: python opencv raspberry-pi3