二维DCT变换

写这篇文章的目的主要是为了给x264打好基础,x264用的是整数DCT变换,所以就先来说说DCT变换吧。 DCT(Discrete Cosine Transform),又叫离散余弦变换,它的第二种类型,经常用于信号和图像数据的压缩。经过DCT变换后的数据能量非常集中,一般只有左上角的数值是非零的,也就是能量都集中在离散余弦变换后的直流和低频部分,下面我会用matlab来演示整个过程。

阅读全文 2012年11月30日 分类:学习笔记x264图像处理

c#解析FLV文件

在上一篇FLV文件格式解析中,我们对FLV的文件结构有了一定了解,现在我们就可以对FLV文件解析解析了。我这里用的是c#,只要理解了过程java、c++都是可以的。

1.工具类

在解析的过程中,我们会和byte做各种运算,所以我定义了一个byte工具类ByteUtils:

阅读全文 2012年09月24日 分类:学习笔记C#图像处理

FLV文件格式解析

最近要用到flv,整理了一些flv格式的资料,供参考。 flv文件主要由两部分组成:header和body。

1.header

header部分记录了flv的类型、版本等信息,是flv的开头,一般都差不多,占9bytes。具体格式如下:

阅读全文 2012年08月30日 分类:学习笔记图像处理

位图结构简介

一个BMP文件包括位图文件头结构BITMAPFILEHEADER、位图信息头结构BITMAPINFOHEADER、调色板PALETTE 和位图像素数据4个部分。
第一部分为位图文件头结构BITMAPFILEHEADER,其结构为:

阅读全文 2012年06月21日 分类:图像处理

视频编码基础--帧的类型

自从上次编译x264之后一直在看x264的技术手册,专业名词太多了。没办法,从头学起吧,先从最基本的学起--帧的类型。
我们都知道视频是由图片构成的,就像早期的胶片电影一样,一幅幅图片连续播放就形成了视频,在视频中我们管这些图片叫帧。在x264中有三种基本的帧类型:I帧、P帧和B帧。

阅读全文 2012年01月03日 分类:学习笔记x264图像处理