FFmpeg的与OpenCV进行格式转换/简单改造

问题描述 投票:4回答:1

我不得不创建一个可以实时处理图像的系统。 (:旋转和镜像现在)我在C ++中的像素格式转换系统,该系统还可以做一些简单的改造来实现。

该系统的输入/输出格式是在下列格式帧:

  • RGB(24,32)
  • YUYV420,SSE 422
  • JPEG
  • 原始灰度

举例来说,一个操作可以是:

  • YUYV422 - >旋转90 - >翻转卧式 - > RGB24
  • 灰度 - >旋转270 - >翻转韦尔 - > YUV420

该系统的目标是提供用于旋转/镜像和像素格式转换最佳性能。我当前的实现依赖于OpenCV的,但上面的处理2K分辨率的数据,当我从性能问题的影响。

当前实现使用CV ::垫和CV ::转/ CV ::翻转/ CV :: cvtColor,我优化了系统移除transitionnal缓冲器和复制尽可能多地。

不是很高兴推倒重来,我都知道,使用swscale和FFmpeg的一些过滤器,可以实现相同的结果。我的问题是:

  1. ffmpeg的系统是比较通用的,你认为我会从足迹/性能告诫患有这种解决方案?
  2. 格式转换似乎有点ooptimized在OpenCV的,但我不知道FFmpeg的执行理念......(注:我在x86_64英特尔平台SSE)
  3. 你知道的比可以处理这种即时简单改造的任何库?

谢谢

c++ performance opencv ffmpeg vision
1个回答
1
投票

OpenCV的实现您的配置进行了优化。不要指望从ffmpeg的改进。近日,OpenCV的切换到的libjpeg涡轮增压 与SSE优化 ,这样可以提高JPEG转换。

© www.soinside.com 2019 - 2024. All rights reserved.