gpt4 book ai didi

c++ - OpenCV 和 4K 视频

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:15:05 27 4
gpt4 key购买 nike

我正在尝试使用 OpenCV 读取和显示 4K 视频文件。同一程序(附录 A 中显示的一个非常简单的程序)在显示 1080 视频时工作正常,但在升级到 4K 视频时有明显的延迟。

显然,现在任何操作中的像素都多了 16 倍。

现在,我通常在规范不高、内置显卡、4Gb RAM 和 i3 CPU 以及 HDD(不是 SSD)的 PC 上运行。我已经在配备 8GB RAM、i5 和 SSD 的 PC 上对此进行了测试,尽管使用了 3.XGb 的 RAM,但它似乎主要是一个 CPU 密集型程序,即使在性能更好的 PC 上,我的所有内核也会以 100% 的速度最大化。

我的问题是:(使这篇文章具体化)

  1. 使用 GPU 操作会有所帮助吗?
  2. 这个问题是否可以通过升级到配备更好 CPU 的 PC 来解决?实际上,此应用程序只能在 i7 上运行,因为我不认为我们会购买服务器 CPU...
  3. 是绘图到屏幕操作还是只是从磁盘读取导致速度变慢?

如果任何人过去有在 OpenCV 中使用 4K 的经验,那也将是有用的信息。

附录 A

int main()
{
VideoCapture cap(m_selected_video);
if (!cap.isOpened()) // check if we succeeded
{
std:cout << "Video ERROR";
}

while (_continue)
{
Mat window1;
cap >> window1; // get a new frame from camera
imshow("Window1", window1);
if (waitKey(30) >= 0) break;
}
}

最佳答案

这个问题的答案很有趣,但我认为归结为视频的编解码器或编码。

我使用的第一个视频是 this one (虽然这可能不是我使用的确切下载)它似乎在 VLC 或 OpenCV 中播放得不是很好但在 Windows 媒体播放器中播放得很好。我认为这是因为它是在 MPEG AAC 音频中编码的。

然后我下载了an elysium 4k trailer这是 h264 编码的,似乎在 VLC 和 OpenCV 中都能正常工作。所以 Hooray 4K 在 OpenCV 中不是问题!

所以我认为这可能是文件大小。我支付并下载了 7Gb 6 分钟 4K 视频。这在 OpenCV 和 VLC 中都可以正常播放,即使将它绘制到屏幕上三次也没有延迟。这是一个 .mov 文件,我目前无法访问编解码器(当我这样做时我会更新这个位)。

所以 TL:DR: 导致问题的不是文件大小或容器类型,而是某些编解码器似乎确实存在问题。这只是一个小探索,可能存在不同的问题。

附录:感谢评论中 Jade 米杆的帮助,他们指出 WMP 可能内置 GPU 支持并在 VLC 中进行任何测试,这非常有帮助

关于c++ - OpenCV 和 4K 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34694310/

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