簡體   English   中英

Opencv 在我的筆記本電腦上為我的項目工作,但停止在樹莓派上工作

[英]Opencv is working for my project on my laptop but stop working on raspberry pi

大家早上好。 我絕望(這是我的第一篇文章)。 我正在嘗試使用 openvino 工具包設置人體檢測系統。 我在下面的openvino 多目標跟蹤中使用了由 openvino 提供的示例項目。 我首先在我的計算機(ubuntu)上測試了它們並且它有效。 我現在嘗試在樹莓派上運行該項目,但它卡在 opencv 級別。 我按照以下教程在 rasbian 上安裝 openvino來設置 openvino。 調試時,我意識到問題出在 cv2.videocapure (鏈接)。 顯然后端 ffmepg 和 GStreamer 都存在問題。

我運行以下命令

python3 multi_camera_multi_target_tracking.py     -i http://192.168.137.160:4747/video    --m_detector model/intel/person-detection-retail-0013/FP32/person-detection-retail-0013.xml     --m_reid model/intel/person-reidentification-retail-0031/FP32/person-reidentification-retail-0031.xml     --config config.py -l /opt/intel/openvino/deployment_tools/inference_engine/lib/intel64/libcpu_extension_avx2.so

我有以下結果

INFO: 2021-03-07 21:07:34: Opening file http://192.168.137.160:4747/video
[DEBUG:0] global ../opencv/modules/videoio/src/videoio_registry.cpp (171) VideoBackendRegistry VIDEOIO: Builtin backends(8): FFMPEG(1000); GSTREAMER(990); INTEL_MFX(980); MSMF(970); V4L2(960); CV_IMAGES(950); CV_MJPEG(940); UEYE(930)

[DEBUG:0] global ../opencv/modules/videoio/src/videoio_registry.cpp (195) VideoBackendRegistry VIDEOIO: Available backends(8): FFMPEG(1000); GSTREAMER(990); INTEL_MFX(980); MSMF(970); V4L2(960); CV_IMAGES(950); CV_MJPEG(940); UEYE(930)

[ INFO:0] global ../opencv/modules/videoio/src/videoio_registry.cpp (197) VideoBackendRegistry VIDEOIO: Enabled backends(8, sorted by priority): FFMPEG(1000); GSTREAMER(990); INTEL_MFX(980); MSMF(970); V4L2(960); CV_IMAGES(950); CV_MJPEG(940); UEYE(930)

[ WARN:0] global ../opencv/modules/videoio/src/cap.cpp (108) open VIDEOIO(FFMPEG): trying capture filename='http://192.168.137.160:4747/video' ...

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (359) getPluginCandidates VideoIO pluigin (FFMPEG): glob is 'libopencv_videoio_ffmpeg*.so', 1 location(s)

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (366) getPluginCandidates     - /opt/intel/openvino/opencv/lib: 1

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (370) getPluginCandidates Found 1 plugin(s) for FFMPEG

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (175) libraryLoad load /opt/intel/openvino/opencv/lib/libopencv_videoio_ffmpeg.so => FAILED

[ WARN:0] global ../opencv/modules/videoio/src/cap.cpp (170) open VIDEOIO(FFMPEG): backend is not available (plugin is missing, or can't be loaded due dependencies or it is not compatible)

[ WARN:0] global ../opencv/modules/videoio/src/cap.cpp (108) open VIDEOIO(GSTREAMER): trying capture filename='http://192.168.137.160:4747/video' ...

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (359) getPluginCandidates VideoIO pluigin (GSTREAMER): glob is 'libopencv_videoio_gstreamer*.so', 1 location(s)

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (366) getPluginCandidates     - /opt/intel/openvino/opencv/lib: 1

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (370) getPluginCandidates Found 1 plugin(s) for GSTREAMER

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (175) libraryLoad load /opt/intel/openvino/opencv/lib/libopencv_videoio_gstreamer.so => OK

[ INFO:0] global ../opencv/modules/videoio/src/backend_plugin.cpp (236) PluginBackend Video I/O: loaded plugin 'GStreamer OpenCV Video I/O plugin'

[ INFO:0] global ../opencv/modules/videoio/src/cap_gstreamer.cpp (711) open OpenCV | GStreamer: http://192.168.137.160:4747/video

[ INFO:0] global ../opencv/modules/videoio/src/cap_gstreamer.cpp (744) open OpenCV | GStreamer: mode - URI

該程序似乎卡在那里。 不會拋出異常。

問題可能是因為沒有安裝 FFmpeg 或者您的 FFmpeg 版本與 OpenCV 不兼容。 這是在 Raspberry Pi 上安裝 FFmpeg的指南。

GStreamer 是一個復雜的框架,包含數十個插件,用於構建復雜的視頻處理管道。 在您的情況下,通過 V4L2 接口執行的 MJPEG 解碼似乎有問題,這可能是由於缺少驅動程序或軟件包或配置問題引起的。 看看這個類似的問題: https://www.raspberrypi.org/forums/viewtopic.php?t=249377

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM