跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 关于视频编解码的一些疑问,求大神解答
未分類
7 6 月 2020

关于视频编解码的一些疑问,求大神解答

关于视频编解码的一些疑问,求大神解答

資深大佬 : zpole 7

视频编码成 I P B 帧到变成一个文件这个过程中,有没有其他的压缩过程?编码后 I 帧是 rgb 或 yuv 等原始数据的图片还是像 jpg 之类的还有其他压缩?有没有可能不解码,在保留 p b 帧原始数据(即关于 i 帧的相对变化)时,换掉 i 帧,应用场景比如视频抠图,背景静止时只要 i 帧抠图换背景是不是就够了?

大佬有話說 (7)

  • 資深大佬 : coderluan

    I 帧也是压缩的, 比如这帧图像就是一面白墙, 不压缩得多蠢, 也就是说你不解码是得不到原始图像的.

  • 主 資深大佬 : zpole

    @coderluan 是呀。那我如何保证 decode 换完 i 以后,再 encode p b 不变呢

  • 資深大佬 : coderluan

    这个过程一般叫 intra prediction, 也就是帧内预测, 一般是先分块再压缩的, 具体的压缩算法看编码标准.

  • 資深大佬 : coderluan

    @zpole 没太弄明白你的需求, 播放视频和视频处理实际是不一样的, 实际上视频处理就是处理解码之后的图片, 然后再压缩, 所以和视频编码无关了, 而是视频处理软件自己提供一个复制操作的功能而已.

  • 資深大佬 : msg7086

    编码后的帧就是这个编码了呀。

    比如说,你用 JPG 编码器编码一张图片,编码完的数据就是「 JPG 」了。
    同理你用 x265 编码器编码一张图片,编码完的数据就是「 h.265 」了。

    PB 帧存储的是残差,你只替换 I 帧当然是可以的,替换完以后新的残差都会基于新的 I 帧来渲染。平时如果视频文件损坏,有时候你会看到有一段会出现画面一小部分在移动或者显露出原本画面的效果,这就是典型的参考帧没了,所以拿 buffer 里错误的帧作参考对象的结果。

    实际的视频里背景一般是不会静止的,会有摄影噪声。如果你提前用滤镜对噪声做过滤,或者在编码的时候在残差判定里直接跳过小容量残差的话,倒是可以做到的。但是画面编码的最小单位是块( h.264 是 mb,h.265 是 cu ),所以最少也是一块一块生效的。

    要达到你说的那种效果,替换帧的做法是非常不现实的,研发成本高得惊人,效果稀烂。

  • 資深大佬 : hanguofu

    问题比较多,我就以 264 为例解答一下: 编码后 I 帧是 rgb 或 yuv 等原始数据的图片还是像 jpg 之类的还有其他压缩?— 类似 jpg 之类的. 有没有可能不解码,在保留 p b 帧原始数据(即关于 i 帧的相对变化)时,换掉 i 帧——–不解码你是不会知道哪个是 IPB 帧 。 p b 帧 是必须以 i 帧为参考,如果你换掉 i 帧, p b 帧很可能解不出来。视频抠图还是要先解码的。背景静止时只要 i 帧换背景 —–你想得太简单了, 背景”静止“ 时,这时候也有可能编码器编出 p b 帧 , 而不是仅用 i 帧 描述背景静止时的图像。除非你在启动编码器的时候,就指明了编码器只允许编出 I 帧 。

  • 資深大佬 : wnpllrzodiac

    换背景还是要编码前做吧。后做是实时加绿幕?人工智能 segment 可以做。背景前景区分出来,加 mask 就可以了

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具