我正在通过现场网络摄像头录制来检测和跟踪QR标签。我决定使用线程来创建一个单独的线程来连续读取/分配帧到全局变量图像,并使主线程循环连续通过图像处理循环,根据需要采用每个帧(图像)来识别标记。我使用线程(上一个解释)实现了这一点,并且没有线程化(在循环外部记录初始化,csv.read()在图像处理循环中调用当前帧)。两个版本都输出实时录制并突出显示QR码的边缘。
我希望线程版本更有效,但似乎线程效率不是那么高(可能更差)。线程版本更多" flickery"。为什么会这样?我的实施不正确吗?
提前致谢!
更新:我在线程版本中实现了相同的功能,而没有使用全局变量。相反,我使用了一个使用cv2.read()的方法框架的类。看起来我可能会得到更好的结果,但可能与我没有穿线的东西相提并论。