gpt4 book ai didi

Opencv:从 IP cam 使用 RTSP 时图片失真

转载 作者:太空宇宙 更新时间:2023-11-03 21:08:09 27 4
gpt4 key购买 nike

我写了一个程序,它成功地获取了树莓派摄像头视频并对其应用了一些图像处理,如下所示:

#include <opencv2/opencv.hpp>
VideoCapture vcap;
Mat Frame;
...
vcap.open(0);
while(true)
{
vcap >> Frame;
...
imshow("Output Window", Frame);
waitKey(1);
}

由于树莓派摄像头(勒克斯、快门等)的限制,我买了一个 IP 摄像头并尝试通过 rtsp 使用它的视频:

vcap.open("rtsp://admin:123456@192.168.1.65");

我收到了视频,但它像下图一样失真:

enter image description here

如图所示,控制台出现错误:

error while decding MB n, bytestream m 
cabac decode of gscale diff failed at n m

我在树莓派上用 VLC 进行了测试,但它只能得到一个单帧,CPU 占用 100%,即使降低分辨率,比特率,fps 也没有改变。我可以在树莓派中观看 rtsp 视频使用 omxplayer。我的电脑也没有任何问题。

我已经在我的树莓派上安装了 Raspbian Jessie。

我还使用 GStreamer 代替 FFMPEG 重新编译了 OpenCV,但没有改变任何东西:

cmake ... -D WITH_FFMPEG=OFF -D WITH_GSTREAMER=ON ...

最佳答案

编译安装OpenCV 3.2解决了这个问题,终于成功从我的网络摄像头中获取了图片。

我测试过但没有任何结果的其他方法包括编译和安装最新的 FFMPEG 包,还安装了 this site 建议的所有依赖项。 .

关于Opencv:从 IP cam 使用 RTSP 时图片失真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41073925/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com