压缩感知中DCT变换矩阵的构造

本文探讨了在压缩感知中DCT变换矩阵的构造,包括一维和二维DCT变换矩阵的MATLAB实现,并解释了为何反变换是其转置。通过公式分析和代码验证,证明了自定义矩阵与标准DCT变换矩阵功能相同。
摘要由CSDN通过智能技术生成

在视频压缩感知领域,信号的稀疏表示始终都是一个很核心的问题,在OMP算法和BCS-SPL算法等算法中,都会涉及到DCT变换矩阵的构造,但是其往往和我们所了解的DCT变换的定义(DCT变换的定义可以参考之前的博文离散傅立叶变换DFT和离散余弦变换DCT)有所不同。

考虑到这些算法代码中DCT矩阵的构造都显得晦涩难懂而且基于定义构造的DCT变换矩阵和它们的功能又完全一样(且更容易理解),因此我们从DCT的定义出发给出DCT变换矩阵的构造代码。

一维DCT变换矩阵

参考之前的博文离散傅立叶变换DFT和离散余弦变换DCT中一维DCT的定义可以得到如下实现代码(直接拷贝保存为.m文件即可在MATLAB环境中使用):

function [Phi] = DCT_1D_Matrix(m)

%
%
% 该函数产生1维DCT-II变换矩阵,左乘对信号进行DCT-II变换,转置后左乘对信号进行IDCT-II逆变换
% 输入参数:
%           m:信号的长度
% this function return 2D DCT-II transform matrix,
%       
%       left multiply: transform the signal into dct domain
%
%       transpose and left multiply: transform the coefficient into
%       pixel domian
%
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值