快捷导航
初学者,型号是Evo-Xavier Jetpack 4.5 L4t 32.5.0,想要用硬件解码输入视频,拿到图片用于后续推理,为了能够直接用现有的推理框架,需要拿到cv::Mat
用gst-launch1.0 filesrc location=./sample_1080p_h264.mp4 ! qtdemux ! queue ! h264parse ! nvv4l2decoder ! nvvidconv ! nvoverlaysink 显示的视频是正常的3通道彩色
但是用opencv VideoCapture(filesrc location=./sample_1080p_h264.mp4 ! qtdemux ! queue ! h264parse ! nvv4l2decoder ! nvvidconv ! appsink),拿到的帧就成单通道黑白图像
如果用opencv VideoCapture(filesrc location=./sample_1080p_h264.mp4 ! qtdemux ! queue ! h264parse ! omxh264dec ! videoconvert ! appsink),拿到的帧是3通道,但是速度极慢
各位有什么好办法吗?
举报 使用道具
| 回复

共 3 个关于本帖的回复 最后回复于 2022-2-18 18:21

robovoid 会员 发表于 2022-2-18 16:32 | 显示全部楼层
opencv是在设备上重新编译的带GStreamer支持的
robovoid 会员 发表于 2022-2-18 17:49 | 显示全部楼层
找到问题了,nvvidconv需要指定输出的类型, gst-inspect1.0看后,只有BGRx,需要再用videoconvert转成BGR,输入VideoCapture
opencv VideoCapture(filesrc location=./sample_1080p_h264.mp4 ! qtdemux ! queue ! h264parse ! nvv4l2decoder ! nvvidconv ! video/x-raw, format=BGRx ! videoconvert ! video/x-raw, format=BGR ! appsink)
katsura 版主 发表于 2022-2-18 18:21 | 显示全部楼层
robovoid 发表于 2022-2-18 17:49
找到问题了,nvvidconv需要指定输出的类型, gst-inspect1.0看后,只有BGRx,需要再用videoconvert转成BGR ...

感谢您的回复,我们也会把该问题充实到我们的知识库中,以便未来提供更好的技术支持服务。
您需要登录后才可以回帖 登录 | 点我注册

精彩推荐

  • canbus与vcu相连接,出现bus-off状态
  • 有线连接失败
  • Apex 串口通讯
  • 关于SPI通信问题咨询
  • MIIVII APEX DUAL ORIN米文域控制器产品合

明星用户