如果要用Python播放视频,或者打开摄像头获取视频流,我们可以用OpenCV Python。但是在视频帧获取的时候同时做一些图像识别和处理,可能会因为耗时多而导致卡顿。一般来说,我们首先会想到把这些工作放入到线程中处理。但是由于Python GIL的存在,用不用线程几乎没有区别。所以要解决这个问题,必须通过多进程。这里分享下使用Dynamsoft Barcode Reader开发Python条形码扫码的例子。
用Python和摄像头打造的桌面条形码扫码应用
安装Dynamsoft Barcode Reader:
pip install dbr
安装OpenCV Python
pip install opencv-python
在主程序中创建一个新的扫码进程和共享内存:
from multiprocessing import Process, Queue
frame