因为最近手头的活基本搞完了,人也闲了下来,这么热的天气,突然想写这么一篇文章。不过首先声明的是我对H264并不是太熟悉。但多多少少也学习了这么久了,写点心得出来对自己是个交待,同时也希望给新手们一点帮助,只要对大家有一点点帮助,也就很满足了。
好,闲话少说。如果大家是刚开始进入图象领域,那么先看一看"计算机图象处理"方面的教材还是有必要的.不过稍微了解一下就好了,不用太深入,在以后的对264的学习中,自然会对这些基本概念有进一步的了解.然后,是对264的了解,推荐3篇文章.
1、Halsted.Press.H.264.And.MPEG-4.Video. Compression. Video. Coding. For. Next. Generation。
对视频编解码原理讲得比较详细
2、Video coding using the H.264 MPEG-4 AVC compression standard。
更加关注于编解码的各个模块的实现方式
3、Overview of the H.264/AVC Video Coding Standard。
是Thomas Wiegand的大作,对264较之以往标准的新特性都作了说明。
这三篇文章绝对是了解264的经典文章,论坛上好像也有下载的地址。这些都是e文文章,不过相信对大多数人难度都不大。
细心将这三篇文章看完。对264就有了一个比较清楚地认识了。对一个这么大的东西,不可能说要在短时间内全部搞懂它,因此就要根据当前自己的情况,选择一个具体的研究方向,比如说运动估计、熵编码等等。我现在以我自己的研究方向运动估计作为例子,来说一下我的学习方法,当然肯定有班门弄斧的嫌疑,但是既然大家都不认识我,我也就不客气了。
从入门的3篇文章中可以看出,帧间编码(运动估计)是264的运算复杂度的“主力”部分。那么首先要对传统的那些运动估计方法作一个了解,如果是教育网的朋友再ieee的网站上拿motion estimation一搜就能搜到一大堆文章了,我的建议是选一篇比较新而且比较长的文章,就是那种regular paper 而不是short paper。这些文章中一般会对本研究方向的经典方法作一个回顾和比较,这样,从这篇文章的参考文献中再进一步把本研究方向的历史和现状作一个了解。
所谓对264的研究的话,基本上就是用更加好的算法来降低264本身的计算复杂度。能够做到不提高码率当然好,但码率稍微有点上升也没有关系,不过那就要在编码速度上有优势,这样就可以说“本方法利于实时实现“啦,哈哈。就运动估计来说,传统的3ss,4ss,ds都要知道是怎么回事,然后像被大家奉为经典的mvfast,pmvfast就要专心的看一下了。最好呢,是在这些方法上,能够提出自己的新观点、新方法。当然,这就不是一个纯粹看论文能够解决的问题了。大家需要对264的新特点有一个清楚了了解,然后考虑的方向可以是以前的方法应该怎么改善再用在264上,能够更好地发挥作用,向连续消方法,half-way stop的方法,好像国内的都有人出论文。因为264的帧间预测采用了可变块大小,因此又引出了一个问题:按什么方法来分块是最好的?大家在看那3篇入门的文章时,就要边看边思考,里面说采用可变块大小,就要想到我怎么知道该怎么分块;里面提到4*4块帧内预测有9种模式,就要想到这9种模式如何决策。也就是说,大家再看这些文章时,要想一下,我该怎么去实现它。这些问题其实很容易就能提出来,但要解决却是一个大问题。
比如说分块吧,VBSME(variable block size motion estimation),ieee上可有不少文章,台湾国立成功大学(?好像是这个名字)的一篇硕士论文就写的是这个,可见264有好多东西可以去做,养几个博士绝对绰绰有余啊,赫赫。其实研究方向越细,就能够对这个方向把握得越准确,成天看着,总会有些新想法出来吧,嗬嗬,开玩笑的说。选好了一个大的研究方向,然后就要知道现在这个方向大家都是在那些细节上做工作。像运动估计的话,多帧预测,可变块大小的分法,1/4像素估计精度等等都是热门的东西,那基本上来说,跟着大家走就好了。了解哪些东西是热门,基本上*多看文章,同时建议大家多看e文的,最好是ieee的。我的一个博士师兄告诉我说,如果你想发某一个档次的文章,你就应该看比这个杂志高一个档次的文章。而且他说一般看个15篇左右,就应该要能够出一篇自己的东西了。这个师兄现在毕业了,他发了好多EI的,羡慕!
如果“不幸”有了自己的新想法,那么就需要验证了。简单一点的验证呢,可以放在c语言或者matlab平台下进行,但是如果要发论文的话,基本上还是要放在JM下才有说服力。而且试验序列最好采用标准序列。这既涉及到一个读JM源码和修改JM源码的问题。我看了一段时间,实在是好烦啊,所以,对不起,在这方面我没有太多好的建议。但是我在修改一个帧内预测算法时,反而把预测速度减慢了,哈哈,按照常理来说,我的方法应该比JM里的方法好才对,而且我在matlab下的仿真结果的确如此,很郁闷,希望大家推荐一个看源码的方法给我,谢谢先。
除去以上说的这些,看标准也是很必要的。200503的那个prepublished版本好像是最新的,对于翻译标准,我认为不是太必要,但对了解标准也还是有点帮助,可以放在正常工作时间以外进行,如果大家有这么努力的话。
分享到:
相关推荐
### H264学习指南介绍 H.264,也称为MPEG-4 Part 10或AVC(Advanced Video Coding),是一种广泛使用的视频压缩标准。它在视频编码技术中占据着举足轻重的地位,被应用于各种场景,如视频会议、流媒体服务以及移动...
1、《H.264_MPEG-4 Part 10 White Paper 2、《Video coding using the H.264 MPEG-4 AVC compression standard》 3、《Halsted.Press.H.264.And.MPEG- 4.Video.Compression.Video.Coding.For.Next.Generation....
分享H.264学习的学习经验
《H.264学习指南》这个压缩包文件包含了多个文本文件,旨在帮助学习者系统地了解和掌握H.264的相关知识。以下是对这些文件名的解读及可能包含的学习内容: 1. **如何读标准和代码.txt**:学习H.264,首先需要理解其...
一些很好的264学习文档,和学习建议。包括:H.264学习建议,H.264学习资源等。
总的来说,这个项目涵盖了C++编程、视频编码原理、FFmpeg解码库的使用,以及文件处理等多个方面,是深入学习和实践H264解码的一个好例子。通过深入研究`H264ExtractFrame.cpp`的代码,我们可以更深入地理解H264的...
网上收集来的h.264的学习指南,包括学习建议、学习资源和如何读标准和代码,相信对h.264的学习者,尤其是初学者会有帮助
通过这个项目,学习者可以深入理解H.264标准在硬件上的实现细节,使用MATLAB进行仿真实验,同时也可能利用到OpenCores社区的资源和讨论。对于希望将H.264编码集成到自定义硬件系统的人来说,这是一个宝贵的参考资料...
3. **文档(AVC_codec_manual_v11.doc)**:这份文档很可能是H264编码器和解码器的详细使用手册或者开发指南,涵盖了H264标准的技术细节、编码流程、接口说明等内容,对于理解和开发H264相关项目非常有价值。...
- **“Halsted Press H.264 and MPEG-4 Video Compression: Video Coding for Next-Generation Multimedia”**:这本书是一本详尽的指南,涵盖了H.264在多媒体应用中的使用,适合想要将其应用于实际场景的学习者。...
推荐使用JM测试模型,配合《H.264_MPEG-4 AVC Reference Software Manual》进行学习,这将指导你理解编解码过程中的各个参数和函数。 - 研究代码时,重点关注整体框架,了解各模块之间的关系和流程,不必一开始就...
根据给定的文件信息,我们将深入探讨H.264 PC解码库软件开发的关键知识点,...通过对这些知识点的学习和掌握,开发者可以更好地理解H.264的工作原理,提高解码效率和解码质量,从而满足不同应用场景下的视频解码需求。
详细解释的中文协议,描述了解码规则及方法,希望对大家有用”表明这份文档是一份关于H.264视频编码标准的解码手册,它包含中英文对照内容,对于了解和实现H.264标准的解码过程具有指导作用。 H.264是一种广泛应用...
提供的.chm文件是工具的离线帮助文档,包含了详细的使用指南、功能解释和故障排除步骤,对于初次使用者和需要深入学习的专家来说都是宝贵的资源。 综上所述,Elecard StreamEye Tools是一个全面的H264视频分析解决...
描述部分提到的“tcpdump the stream, save as file with suffix .cap, then open it.”指导了如何使用tcpdump工具来捕获网络上的H.264流数据。tcpdump是一款网络协议分析工具,它可以捕获网络上的数据包并将其保存...
|--------- ffmpeg H264学习指南介绍 |--------- android opencore框架下的视频编码源码实现 android 视频监控的,开启本地摄像机,设置好端口即可 |--------- android 视频实时采集并上传到服务器上 android的...
新一代编码标准H264,全称为Advanced Video Coding(高级视频编码...在“新一代视频压缩编码标准H.264.pdf”这份文档中,你可以深入学习H264的详细技术原理和应用场景,对于理解和应用这一编码标准有着重要的指导意义。
在IT领域,视频编码与解码是至关重要的技术,特别是...总之,“H264decDemo”是一个学习H.264解码技术的宝贵资源,结合VS2010的开发环境,开发者可以亲手实现从H.264到YUV的转换,进一步提升其在多媒体处理领域的技能。
综上,H264规范文档中文版为学习和研究H264提供了详尽的指导,涵盖了编码的基础理论、技术细节以及实际应用,是深入理解和应用H264不可或缺的参考资料。通过阅读这份文档,读者可以了解到如何利用H264进行高效的视频...