编码:
蓝色的前向编码流程:
以宏块为输入单位介绍优于以帧为单位介绍。
Fn为即将进行编码的宏块,由原始图像中16*16像素构成。每个宏块要么采用帧内模式编码,要么采用帧间模式编码。不管是哪种编码模式,预测宏块P都是基于重建帧生成的。在帧内模式中,预测宏块P是由当前帧经过编码、解码和重建生成的(注意,采用未经过滤波的样本uF`n来生成P)。在帧间模式中,预测宏块是通过一个或者多个参考帧经过运动补偿预测生成的。在图中,参考帧就是之前编码得到的帧F`n-1;不过,并不只是一个参考帧,每个预测宏块P都是由一个或者两个,之前或者之后的,已经经过编码和重建所生成的帧中的对应宏块所生成的。
当前宏块减去预测宏块P生成残差宏块Dn。残差宏块Dn经过变换、量化后生成X,由一系列变换量化系数组成。然后,对这些系数进行重排序和熵编码。熵编码生成的系数,附上解码宏块所需要的附加信息生成压缩比特流,(附加信息有宏块预测模式,量化步长,描述如何对宏块进行运动补偿的运动矢量信息,等等)。压缩比特流被传到网络抽象层(NAL)以发射或者储存。
粉红色的重建流程:
为了生成重建帧以编码以后的宏块,将量化后的宏块残差系数X进行解码。系数X经过反量化,反变换生成残差宏块Dn`。此时的残差宏块与原先的残差宏块Dn并不相同,原因是在量化过程中引入了失真。所以,Dn`是变形了的Dn。
预测宏块P与Dn`相加生成重建宏块uF`n(原宏块的变形了的宏块)。为了减小块效应失真,引入了专门的滤波器。滤波之后的宏块就是重建宏块F`n,一系列的重建宏块组成了参考帧。(实际上,这里的参考帧,与解码端生成的最终图像完全一致)
解码:
从NAL中,解码器取得压缩比特流。数据元素经过熵解码和重排序生成一系列量化后的系数X。经过反量化和反变换生成Dn`(与编码端的Dn`一致)。使用从比特流中解码出来的头信息,解码器生成预测宏块P,与先前在编码器中生成的预测宏块P一致。P与Dn`相加生成uF`n,然后经过滤波,生成解码宏块F`n。
从两幅图表和上面的讨论可以发现:编码器的重建流程的目的是为了确保编码端和解码端使用一致的参考帧来生成预测宏块P。如果参考帧不一致,那么编码端和解码端的预测宏块P就不一致,导致在编码端和解码端之间生成渐增的误差或者“漂移”。
分享到:
相关推荐
H.264编解码手册。介绍了H.264编解码的格式和流程等。
Linux系统中H.264编解码器的移植与应用.pdf
h.263编解码程序.VC++ 写的。供参考。
4.5 H.264实时视频编解码传输算法平台的实现 4.6 本章小结 5 基于感兴趣区域(ROI)的快速H.264编码 5.1 感兴趣区域技术简介 5.2 算法设计 5.3 基于ROI的快速H.264编码算法的实现 5.4 仿真实验与结果 5.5 本章...
学习JSVM 编解码器 整理了编码器和解码器中的流程和相关参数集
文件仅包含解决方案和流程,并非现成的代码,且方案为FPGA硬件实现H.264的方案,并非DSP等,具有一定的参考价值
包含了H。263的编解码程序,是直接从研究图像编解码的研究人员获得的,具有很好的可用性。参数可以更改。
MediaCodec 实现h264硬编解码全过程,视频数据从摄像头读出 yv12格式,转换为I420,投递给encoder,再从encoder取出编码后的h264数据投递给decoder后显示到surfaceView; 实现了udp将h264数据发送到指定主机,可通过...
264编解码的流程图,以图片的形式,展示了H264编解码框架,十分清晰!
本文主要介绍H264编解码的基本原理和算法,包括编解码的流程,以及各环节的基本原理以及对主观效果的影响,希望能对了解H264的读者启动一定帮助。
对H.264编解码过程的图文并茂的详细解释,比一般的书籍和资料讲的透彻,对研究H.264的朋友有很高的参考价值。PDF格式,E文。
H_264视频编解码传输算法平台及码率控制研究 上海交大优秀毕业论文 里面对x264的程序流程进行了详细的分析
分析了H.264编解码器的基本结构和实现流程,在细致的分析了其编解码器后,对于解码器,编码器都采用了多种方式进行优化。还将H.264做和MPEG4编码进行对比做性能分析。本系统开发的视频编码器具有高效,稳定,在保证...
H.264/AVC中Exp-Golomb解码器的硬件实现与优化,李万臣,陈宇贤,H.264代表了视频编码技术的最新进展,具有非常广阔的应用前景。在H.246/AVC中只描述了Exp-Golomb的编解码流程,并没有介绍其具体实现。我
H.264是在MPEG-4技术的基础之上建立起来的,其编解码流程主要包括5个部分:帧间和帧内预测(Estimation)、变换(Transform)和反变换、量化(Quantization)和反量化、环路滤波(Loop Filter)、熵编码(Entropy ...
FFmpeg视频编解码流程 H.264硬件编解码实现 运行测试
在MPSoC架构上实现新的高效视频编码(HEVC / h.265)编解码器成为一个有趣的研究点,可以降低其算法复杂度并解决实时约束。 该实现由一组步骤组成,这些步骤构成了嵌入式系统设计过程的协同设计流程。 协同设计流程...
中文的H.264标准将不会让你再有被英语所带来的困惑,我的H.264入门就是靠的它,相信对于想对H.264进行研究的你也会发现他的优点!
因此,要满足图像压缩的实时性要求,就需要对现有的H.264编解码器进行优化。本文主要讨论H.264系统的硬件平台和任务流程,并针对基于DSP硬件平台的特点,介绍了从代码级对算法进行优化,进一步提高编码算法的运算...