c++ - 为什么 OpenCV 程序捕获视频帧会在几秒钟后卡住?

标签 c++ opencv raspberry-pi

我成功安装了cvBlob在我的 Raspberry Pi 上并使用提供的 Makefile 在其上编译 red_object_tracking.cpp(代码位于 here)

当我执行 ./red_object_tracking 时,我看到 GUI 弹出,我看到我的网络摄像头捕获的前几个视频帧,但是,5 秒后它卡住并且帧不再更新。该程序不会崩溃,因为当我执行“top”时,我可以看到它使用了 93% 的 CPU 和大约 30% 的内存。

当我尝试在我的 Mac 上构建和执行相同的程序时,它运行完美(即框架正在更新,当我将我的红笔放在相机前面时,它正确地只将红色部分框在一个矩形内。

有谁知道为什么它不能在我的 pi 上正常工作? 我正在运行最新版本的 Raspbian Wheezy 并使用 Open CV 2.3.1。

我应该尝试对 pi 的 CPU 或内存进行超频吗?

我应该在 pi 上运行不同的操作系统而不是 Raspbian Wheezy 吗?

感谢所有/任何输入

最佳答案

有一些known problems使用 USB,这可能会影响您的网络摄像头(通过 USB 连接)。还有一些outstanding issues related to cameras ,尽管其他人听起来很有效。尝试运行 rpi-update,看看是否能解决您的问题。

关于c++ - 为什么 OpenCV 程序捕获视频帧会在几秒钟后卡住?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12748115/

相关文章:

android - Android 和 Linux (RPi) 之间的蓝牙连接在第一次写入操作时丢失

c++ - 如何防止 GCC 为静态成员生成守卫

c++ - move 构造函数错误并使用 move 构造函数进行委托(delegate)

arrays - 使用python考虑每条线的交点对线进行分组

c++ - 调试断言失败!人脸识别openCv中的detectAndDisplay函数

c - 从 square.c 检测三角形

python - Subprocess.call 和 --stdout

c++ - 在编译时检测或避免对临时文件的无效引用

c++ - 为什么在 std::Optional 中调用虚拟类的虚拟方法会生成对基方法的调用,而不是重写?

python - 如何在 Python 中通过 ZeroMQ PUB/SUB 从 Raspberry Pi 接收图像?