【发布时间】:2012-08-05 21:34:47
【问题描述】:
我的目标是使用 OpenCV 尽可能高效地从网络摄像头捕获帧。目前,我能够使用标准绘图上下文 (BufferedPaintDC) 将 30FPS 6408*480 绘图直接捕获到 wxPython 面板上,CPU 使用率约为 15%(较旧的 Core Duo 处理器)。我很好奇的是,如果我在 wxPython 框架中嵌入 PyGame 画布并直接绘制到 PyGame 画布上,我会看到什么样的性能提升(如果有的话)。
我不确定瓶颈是否是 wxPython 框架,以及嵌入 PyGame 画布是否真的可以做任何事情。还是 wxPython 框架只是像一个容器一样,对 PyGame 画布没有影响?我希望我在这里说得通。
另一种选择是专门使用 PyGame,但我真的很喜欢 wxPython 小部件的功能,所以我不想失去它。
或者是否有更快的画布可以集成到我不知道的 wxPython 中?
想法?谢谢。
【问题讨论】:
-
我想单独使用 PyGame 会比 wxPython 更快,因为 CPU 不必渲染 wxPython 画布和 PyGame 画布,而只需渲染 PyGame 画布。另外,我假设 6408*480 为 640*480,对吧?
-
另外,我认为这可能与 如何 您正在执行绘制例程以及大部分是否在优化的 C 调用中完成有关跨度>
-
是的 640*480,哈哈。我进行了几次测试,它出现在 OpenCV 中并直接绘制到 PyGame 画布上,我无法检测到效率的任何改进。也许坚持使用 wxPython 是最好的选择。
标签: python opencv wxpython pygame