张晖的专栏

一名在中国传媒大学搞视频技术的研究僧

如何在一天内为你的实验室做一个网站

首先介绍一下我们实验室新搭建的站点vqa-lib.github.io。 为什么需要搭建一个站点? 我认为大概有以下两点作用 - 宣传与分享。向外界展示自己的研究成果,而不用去在意水平的高低。高水平的研究自然能增光添彩,入门水平的研究也能为后来的新人指明道路。 - 记录与传承。每个人...

2018-05-31 10:02:59

阅读数:788

评论数:1

10bit YUV数据在内存中的存储格式

我们知道为了获得更好的动态范围,除了常见的8bit yuv外,还有10bit,16bit这样的yuv数据。8bit的yuv数据还好理解,每一个像素8bit,在内存中自然也就是一个字节一个字节的存储咯,16bit的也类似,每一个像素对应两个字节,在内存中存起来也非常方便,那么10bit呢?在不做任何...

2017-03-20 22:14:57

阅读数:4693

评论数:2

自适应流媒体传输(三)——和TS格式说再见

如果你读过MPEG-DASH(23009 - Dynamic Adaptive Streaming over HTTP)的spec,一定能感觉到整个标准对fMP4这种格式的强烈倾向性。HLS倒是一直喜欢和TS打交道,不过在最新的标准中,也加入了对fMP4的支持。大家可能会有疑惑,好好的TS格式已经...

2017-01-18 20:36:06

阅读数:4746

评论数:0

自适应流媒体传输(二)——为什么要使用fragmented MP4

在DASH(自适应流媒体传输)中推荐使用的是fragmented Mp4(fMp4)格式,那么这种格式和传统的mp4格式有什么区别呢?先说结论:在fMp4格式中包含一系列的segments(moof+mdat的组合),这些segments可以被独立的request(利用byte-range req...

2016-12-02 21:41:39

阅读数:4413

评论数:0

分享一些做课题调查的方法

马上就要毕业了,把自己做课题调查的方法分享一下。 拿到一个新的研究课题时,可以先去知网之类的地方搜索一些国内硕博士的毕业论文,通过他们的论文可以先对课题有一个初步的认知。但是再往后就建议选择在google scholar上搜索一些外文论文了,当然这里不是随便乱搜索,而是要找领域内的知名期刊、会议论...

2016-10-04 23:06:04

阅读数:2929

评论数:0

分享几个Linux下的码流分析工具

windows下的码流分析工具非常多,比如elecard streameye,当然还有众多开源贡献者制作的小工具,但是很多时候我们都需要在Linux下做开发,也可能需要做一些简单的码流分析工作,这里就分享几个常用的工具给大家.这些工具使用起来都很简单,不用输特别长的命令,也都有对应的windows...

2016-08-06 00:01:07

阅读数:5621

评论数:0

H.264码率控制算法研究及JM相应代码分析(三)

在前一篇文章的基础上继续往下讲。 基本单元层码率控制 如果不是选择一帧作为一个基本单元,还得添加上额外的基本单元层码率控制。 同帧层码率控制一样,I帧以单一的QP值编码,且这个QP值和帧层码率控制中的QP值求法一样。B帧也是以单一的QP值编码,以几乎和帧层中一样的方法求出,只是QP1和QP2由相应...

2015-07-07 15:12:09

阅读数:1401

评论数:0

H.264码率控制算法研究及JM相应代码分析(二)

在前一篇文章的基础上,现在先看一下MPEG4 编码标准中应用的码率控制算法,总结起来,各大算法都是在解决两个问题:RD 率失真的优化以及避免缓冲区的上溢下溢。 MPEG-4 VM8 码率控制算法 在这里要先介绍一个非常著名的二项式率失真模型,其实说来也简单,在前面我们提到拉普拉斯分布信源的概率密度...

2015-07-07 14:44:54

阅读数:1825

评论数:0

H.264码率控制算法研究及JM相应代码分析(一)

这是之前我们学校张远老师留的课程作业,要求个人整理分析H.264码率控制算法及JM相应代码,个人感觉自己做的还不错,所以发出来给大家分享一下。鉴于公式什么的太多了,我这里就直接从文档里截图了。 要明白码率控制算法,首先要理解率失真理论,定义如下 而要实现这一目标的基本方法有两个:拉格朗日乘子法...

2015-07-07 14:30:10

阅读数:3143

评论数:0

Visual Studio中/MD /MDd /MT /MTd的含义以及_ITERATOR_DEBUG_LEVEL错误的解决方法

先上结论,如果你遇到了_ITERATOR_DEBUG_LEVEL doesnt match error,那一定是你链接的库的DEBUG或RELEASE版本与你当前的项目活动配置不符。 网上流行的答案都是说在“项目属性/配置属性/ C,C++/预处理器/预处理器定义”这里加上"_ITERA...

2015-03-05 14:24:58

阅读数:1497

评论数:0

如何比较视频编码器的性能

在做编码器性能比较时需要考虑以下指标 1、 视频质量-码率 二者要结合起来考虑,可以称之为quality-size比。 视频质量无疑是最重要的考量指标,视频质量的比较可以采用主观评价方法也可以采用客观评价方法。 2、 编码器的性能特征 例如编解码(压缩\解压缩)速度、支持的型(profile)、支...

2015-03-01 20:17:25

阅读数:2832

评论数:0

如何求逆矩阵

作为一只数学基础一般般的程序猿,有时候连怎么求逆矩阵都不记得,之前在wikiHow上看了一篇不错的讲解如何求3x3矩阵的逆矩阵的文章,特转载过来供大家查询以及自己备忘。当然这个功能在matlab里面非常容易实现,只要使用inv函数或A^-1即可,但是有时候参加个考试什么的还是要笔算的哈哈~ ...

2015-02-28 14:43:24

阅读数:4277

评论数:0

Activex、 OLE、 COM、 OCX、 DLL之间有什么区别?

熟悉面向对象编程和网络编程的人一定对ActiveX、OLE和COM/DCOM这些概念不会陌生,但是它们之间究竟是什么样的关系,对许多人还是比较模糊的。 在具体介绍它们的关系之间,我们还是先明确组件(Component)和对象(Object)之间的区别。组件是一个可重用的模块,它是由一 组处理过程、...

2014-01-15 15:43:33

阅读数:927

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭