首页 > 解决方案 > Jetson TX2 OpenCV GStreamer-CRITICAL 错误

问题描述

我现在正在尝试修复此错误几天,但没有任何进展。我想使用 OpenCV 和 GStreamer 访问我的 Nvidia Jetson Tx2 的相机。

(java:7468):GStreamer-CRITICAL **:gst_element_get_state:断言'GST_IS_ELEMENT(元素)'失败

 Videocapture cap = new VideoCapture();
cap.open("nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1280, height=
(int)720, format=(string)I420, framerate=(fraction)120/1 ! nvvidconv flip-
method=2 ! video/x-raw, format=(string)I420 ! videoconvert ! video/x-raw, format=
(string)BGR ! appsink");
    cap.read(...

这条管道运行良好,但是当我几天前启动我的 Jetson 时,它给了我这个错误。也许是因为我更新了一些东西……我不知道

信息

试图重建 OpenCV 但没有任何帮助

有谁知道如何解决这个问题?

标签: javaopencvgstreamernvidianvidia-jetson

解决方案


这是一个对我有用的示例管道:

cv2.VideoCapture((
  "nvarguscamerasrc ! "
  "video/x-raw(memory:NVMM), "
  "width=(int)%d, height=(int)%d, "
  "format=(string)NV12, framerate=(fraction)%d/1 ! "
  "nvvidconv flip-method=%d ! "
  "video/x-raw, width=(int)%d, height=(int)%d, format=(string)BGRx ! "
  "videoconvert ! "
  "video/x-raw, format=(string)BGR ! appsink "
  "wait-on-eos=false drop=true max-buffers=1"
  % (
      capture_width,
      capture_height,
      framerate,
      flip_method,
      display_width,
      display_height,
  )
), cv2.CAP_GSTREAMER)


推荐阅读