【问题标题】:How can i convert YUV into BGR in OpenCV when i use a video capture card当我使用视频采集卡时,如何在 OpenCV 中将 YUV 转换为 BGR
【发布时间】:2015-07-01 03:00:34
【问题描述】:

我们使用的是名为 AVerMedia CV710 的采集卡。当使用官方软件时,我们得到的视频很好。但是我们想通过 func 开发 Opencv 的视频。 “VideoCapture capture.open(0)”视频如下: CV710 的 Chroma Subsampling 是 YUV4:2:2。那么我们应该怎么做才能获得漂亮的视频。也许 DirectShow 或其他什么?

【问题讨论】:

  • opencv 有颜色转换函数 cv::cvtColor 这一些颜色模型的标志,如 CV_YUV2BGR

标签: c++ opencv image-processing video-capture yuv


【解决方案1】:

首先,我认为您应该检查您的相机流是否可以使用 AmCap 以正确的方式解码和显示。

其实OpenCV本身就是使用directshow来解码视频流的。不过,在您的情况下,流似乎没有以正确的方式解码。

opencv中使用的directshow图形是这样的

CAMERA --> SampleGrabber --> NullRender

您需要在 CAMERA 和 SampleGrabber 之间添加一个转换过滤器,以将 YUV 流转换为 RGB 数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    • 1970-01-01
    • 2022-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多