我正在尝试使用240v LED光源从OPENCV v4.0捕获Web图像以照亮该字段。我住在澳大利亚时,我们的主电源为50hz并运行Ubuntu 18.04
logitech C270网络摄像头似乎被限制为20fps,并且当LED指示灯亮起时,我一直在努力获取清晰的图像,水平条纹在显示窗口中向下滚动图像。
我已经尝试使用v4l2-ctl将电源线频率从60hz更改为50hz,但无济于事。当照明源为标准荧光灯时,不会出现条纹。
图像示例可以在这里看到:https://imgur.com/wyAN03X
非常感谢您的任何提示或技巧。非常感谢,并希望您在这个忙碌的时间内一切安好。
从代码角度看,我没有做任何花哨的事情:
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 800)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 600)
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
# Our operations on the frame come here
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# Display the resulting frame
#cv2.imshow('frame',gray)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()
V4ltc导出如下所示:https://imgur.com/hOZdvoP
结果是没有解决方案,因为这个特殊的网络摄像头由于使用年限已达到30fps,并且在澳大利亚,LED的频率为50hz。
移动到树莓派相机后,可以将fps设置为50,从而解决了问题。