- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
由于 Raspberry Pi 的处理能力有限,我需要在远程机器上处理相机输出。 native 是Linux服务器,应该使用OpenCV来处理视频数据。
我找到了一种解决方案,该解决方案在技术上可行,但在 1280x720 分辨率下会产生约 10 秒的延迟,在 640x360 分辨率下会产生约 17 秒的高延迟。这可能是某些缓冲区大小太大造成的?
到目前为止,我的解决方案:
首先在Raspberry PI上使用raspivid命令采集视频,将此数据输出到标准输出并使用netcat传输:
raspivid --timeout 0 --nopreview --intra 2 --width 1280 --height 720 --framerate 20 --output - | nc 192.168.1.108 5555
然后在接收部分(实际上是在发送前调用):
nc -l -p 5555 | ./receiver
其中接收方是具有以下源代码的 C++ 应用程序:
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
int main()
{
cv::VideoCapture cap("/dev/stdin");
if(!cap.isOpened())
{
std::cout << "Could not open '/dev/stdin'!" << std::endl;
return -1;
}
cv::namedWindow("Receiver");
cv::Mat frame;
while(cap.read(frame))
{
cv::imshow("Receiver", frame);
cv::waitKey(30);
}
cv::waitKey(0);
return 0;
}
问题
如何将我的 raspicam 输出传输到 (Linux) 服务器,并能够使用支持 OpenCV 的 C++ 应用程序处理此数据。要求帧传输和该帧的实际处理之间的低延迟(<400 毫秒是可接受的)。
编辑:还需要高分辨率(1280x720 或更高)。
如果有任何错误,请原谅我的英语!
最佳答案
您可以使用 QWebSockets (Qt5)。您只需要将图片从 cv::Mat 转换为 QByteArray 并进行流式传输。在 720p 下,我通过 LAN 连接获得了将近 15 FPS。
关于linux - 我如何远程处理(低延迟)Raspicam 输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23474161/
我在我的 Raspberry Pi 2 上安装 uv4l raspicam 时遇到问题。我已根据 http://www.linux-projects.org/modules/sections/inde
由于 Raspberry Pi 的处理能力有限,我需要在远程机器上处理相机输出。 native 是Linux服务器,应该使用OpenCV来处理视频数据。 我找到了一种解决方案,该解决方案在技术上可行,
我正在尝试使用 OpenCV 开发应用程序。我现在有一个 Raspberry Pi Camera 3 (Raspicam 3)。我正在尝试使用在 https://www.uco.es/investig
我正在尝试使用 OpenCV 校准 RaspiCam 鱼眼镜头相机。我正在使用 Python 示例代码,棋盘行号和列号也是正确的,但不知何故我无法获得成功的结果。我已经用下面的很多照片进行了测试,您可
我已经从 here 安装了 uv4l raspicam 驱动程序(rasberryPi 的摄像头 CSI 摄像头模块的驱动程序) .安装后我关注了this discussion在我使用 SimpleC
我想用我的 raspi cam 模块扫描二维码。为了检测和解码二维码,我想使用 zbar。我当前的代码: import io import time import picamera import zb
我正在尝试使用 cmake 编译一个简单的项目,同时使用 raspicam 库。项目编译完美;但是,最后我有 ld 错误。 Raspicam 从这里下载:http://www.uco.es/inves
在过去的 4 天里,我试图让 gstreamer1.0 与适用于 Raspberry Pi 相机的 v4l2 驱动程序一起工作,但没有成功。 我正在运行最新的 Raspbian 镜像(从 19.9.2
我正在使用 - 树莓派4 - 树莓相机ver2.1 - Python3 - OpenCV3 试图从电影中捕捉一种颜色并成功地用 this , 但由于 AWB/AE,有时会错过目标。 我试图阻止他们 O
我是一名优秀的程序员,十分优秀!