随笔分类 -  H.264

摘要:在宏块的帧内预测过程中,有四种宏块类型:I_4x4,I_8x8,I16x16,I_PCM。他们都需要在相邻块做去块滤波之前进行帧内预测。 亮度帧内预测的总体流程 1-4获取当前block的帧内预测模式的预测,5-7获得最佳预测模式并对应预测模式的预测做后续处理 首先需要获得当前4x4(8x8)预测块 阅读全文
posted @ 2014-12-28 23:05 TaigaComplex 阅读(4062) 评论(5) 推荐(2)
摘要:帧内预测依赖于当前宏块的相邻宏块,如果任何一个相邻宏块不可用,那么会直接影响到当前宏块的预测方式。 那么宏块怎么才谓之可用? 满足以下几个条件的相邻宏块为不可用: 相邻宏块超出边界,即(x<0 || x>PicWidthInMbs),(y<0 || y>PicHeightInMbs) 相邻宏块与当前 阅读全文
posted @ 2014-12-07 21:48 TaigaComplex 阅读(2622) 评论(1) 推荐(0)
摘要:EPZS(Enhance Predictive Zonal Search) 增强预测区域搜索,是一种整像素运动估计的搜索算法。 EPZS采用的是相关性较高的预测方法。这里的相关性较高是指,更多地根据已有的条件,来进行运动向量的预测(如采用相邻块的mv作为当前搜索块的mv进行预测)。 Search S 阅读全文
posted @ 2014-10-17 00:39 TaigaComplex 阅读(2293) 评论(0) 推荐(1)
摘要:Hadamard Transform 在1/2,1/4像素运动估计这一阶段中,对于像素残差,可以选择采用哈达玛变换来代替离散余弦变换进行高低频的分离。 优点:哈达玛矩阵全是+1,-1,因此只需要进行加减法就可以得到变换结果,比离散余弦变换更高效 缺点:高低频分离效果没有离散余弦变换好,原始数据越是均 阅读全文
posted @ 2014-07-28 23:20 TaigaComplex 阅读(3614) 评论(0) 推荐(1)
摘要:Full Search 全搜索算法是最简单暴力的一种搜索算法,对搜索范围内的所有像素点都进行匹配对比,选出最合适的运动向量,以下就是一个搜索范围为4的全搜索范围(单个像素点) /*! ********************************************************** 阅读全文
posted @ 2014-07-20 00:24 TaigaComplex 阅读(4429) 评论(3) 推荐(0)
摘要:Rate Distortion Optimization 搜索时,一个不可避免的问题就是如何对mv进行比较,从而得到最优 对于同一压缩算法来说,码率越高表示图像质量越好、失真越小,但是码率越高要求更大的存储空间,也会增加网络传输的压力。因此在码率与失真中找出平衡点,使压缩效果最优,这种方法叫做R-D 阅读全文
posted @ 2014-06-18 00:16 TaigaComplex 阅读(6293) 评论(2) 推荐(0)
摘要:通过相邻块的预测得到mvp后,会以mvp为基础搜索最佳的匹配块,UMHexagonS就是h.264中用的一种搜索算法。 UMHexagonS是一种整像素搜索算法,也就是搜索过程中,参考图像一直都是原来的重构图像,并没有使用经过插值的图像进行搜索。 首先UMHexagonS会根据相关信息去得到比较有可 阅读全文
posted @ 2014-06-16 00:33 TaigaComplex 阅读(3242) 评论(0) 推荐(0)
摘要:h.264标准中由于分为宏块分割块(8x8),子宏块分割块(4x4),所以各种各样的求解过程比较繁琐 下面整理出标准中mvp的求解过程 8.4.1.3 已知条件有当前块的属性:位置、块类型需要得到当前块的mvp 已知条件(当前块位置,类型) | |8.4.1.3.2 (步骤1) |得到相邻块(ABC 阅读全文
posted @ 2014-06-06 22:27 TaigaComplex 阅读(2448) 评论(0) 推荐(1)
摘要:1.参考图像列表(reference picture list) 一般来说,h.264会把需要编码的图像分为三种类型:I、P、B,其中的B、P类型的图像由于采用了帧间编码的这种编码方式,而帧间编码又是以参考图像为基础进行的,因此需要有个参考图像列表来管理之前生成的参考图像,方便用于对当前图像进行编码 阅读全文
posted @ 2014-05-11 19:40 TaigaComplex 阅读(9768) 评论(1) 推荐(5)
摘要:直接预测是B帧上一种独有的预测方式,其中直接预测又分为两种模式: 时域直接模式(temporal direct)、空域直接模式(spatial direct)。 在分析这两种模式之前,有一个前提概念需要了解:共同位置4x4子宏块分割块(co-located 4x4 sub-macroblock pa 阅读全文
posted @ 2014-04-23 22:55 TaigaComplex 阅读(4521) 评论(0) 推荐(2)
摘要:在H.264之前的标准中,比如H.263,其比特流中的数据是按照一个宏块接一个宏块的方式排列的,一旦发生丢包,很多相邻宏块信息都会丢失,很难进行错误隐藏处理。在H.264中加入了一项新特性:把宏块在比特流中的数据按照一定的映射规则进行排列,而不一定按照原本的光栅扫描顺序排列,这种方称为灵活的宏块重拍 阅读全文
posted @ 2014-03-17 18:46 TaigaComplex 阅读(2596) 评论(2) 推荐(2)
摘要:帧间运动是基于视频亮度(luma)不发生改变的一个假设,而在视频序列中经常能遇到亮度变化的场景,比如淡入淡出、镜头光圈调整、整体或局部光源改变等,在这些场景中,简单帧间运动补偿的效果可想而知(实际编码中遇到亮度变化的宏块,R-D模型的最后结果通常都是用帧内预测编码),加权预测的提出就是为 了应对亮度 阅读全文
posted @ 2014-03-15 22:02 TaigaComplex 阅读(2569) 评论(0) 推荐(2)
摘要:h.264的码流传输是基于目前有限的网络带宽来进行的,以目前的压缩效率来说,运动不算剧烈、细节不多的影像,在720p的情况下,1000kbps压缩损耗较少(psnr较大),能达到比较好的观赏效果,1080p则需要2000kbps。当然,随着图像运动剧烈程度加大,细节增多的情况,则需要更大的bps来保 阅读全文
posted @ 2014-03-11 00:07 TaigaComplex 阅读(6436) 评论(0) 推荐(0)
摘要:哥伦布编码前言 在计算机中,一般数字的编码都为二进制,但是由于以相等长度来记录不同数字,因此会出现很多的冗余信息,如下: 如数字1,原本只需要1个bit就能表示的数据,如今需要8个bit来表示,那么其余7个bit就可以看做是冗余数据, 在网络传输时,如果以原本等长的编码方式来传输数据,则会出现很大的 阅读全文
posted @ 2014-02-27 15:34 TaigaComplex 阅读(6787) 评论(0) 推荐(2)
摘要:本文参考自http://wenku.baidu.com/link?url=ZPF0iSKzwLQg_8K02pnnd_-Zd6ISnsOGWsGYb98ucLkELZO4nOv-X-v2GKLzI3r0VMN4R0TC8cM6AQy7xOjDZ4AQJBYWT_-VOYlxQFCvaj_ 视频编码顺 阅读全文
posted @ 2014-02-15 23:41 TaigaComplex 阅读(11037) 评论(4) 推荐(4)