Dict.CN 在线词典, 英语学习, 在线翻译

学海苦作舟,书山勤为径

留下点回忆

常用链接

统计

积分与排名

Denoise

English study

Web技术

数据压缩

一些连接

最新评论

Hadamard变换

Hadamard变换作为变换编码的一种在视频编码当中使用有很久的历史。在近来的视频编码标准中,Hadamard变换多被用来计算SATD(一种视频残差信号大小的衡量)。

H.264中使用了4阶和8阶的Hadamard变换来计算SATD,其变换矩阵为:

H_4 = \begin{bmatrix}  1 &  1 &  1 &  1 \\  1 &  1 & -1 & -1 \\  1 & -1 & -1 &  1 \\  1 & -1 &  1 & -1  \end{bmatrix}
H_8 = \begin{bmatrix}   1 &  1 &  1 &  1 &  1 &  1 &  1 &  1 \\  1 & -1 &  1 & -1 &  1 & -1 &  1 & -1 \\  1 &  1 & -1 & -1 &  1 &  1 & -1 & -1 \\  1 & -1 & -1 &  1 &  1 & -1 & -1 &  1 \\  1 &  1 &  1 &  1 & -1 & -1 & -1 & -1 \\  1 & -1 &  1 & -1 & -1 &  1 & -1 &  1 \\  1 &  1 & -1 & -1 & -1 & -1 &  1 &  1 \\  1 & -1 & -1 &  1 & -1 &  1 &  1 & -1  \end{bmatrix}

SATD计算方法

当计算4x4块\begin{bmatrix}L_4\end{bmatrix}的SATD时,先使用下面的方法进行二维的Hadamard变换:

\begin{bmatrix}     L_4'   \end{bmatrix} =   \begin{bmatrix}     H_4   \end{bmatrix} \times   \begin{bmatrix}     L_4   \end{bmatrix} \times   \begin{bmatrix}     H_4   \end{bmatrix}

然后计算\begin{bmatrix}L_4'\end{bmatrix}所有系数绝对值之和并归一化。


类似的,当计算8x8块\begin{bmatrix}L_8\end{bmatrix}的SATD时,先使用下面的方法进行二维的Hadamard变换:

\begin{bmatrix}     L_8'   \end{bmatrix} =   \begin{bmatrix}     H_8   \end{bmatrix} \times   \begin{bmatrix}     L_8   \end{bmatrix} \times   \begin{bmatrix}     H_8   \end{bmatrix}

然后计算\begin{bmatrix}L_8'\end{bmatrix}所有系数绝对值之和并归一化。


posted on 2007-03-14 15:18 笨笨 阅读(2033) 评论(0)  编辑 收藏 引用 所属分类: 压缩算法


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理