DCT变换及matlab实现

1.一维DCT变换

一维的DCT变换共有8种,其中最实用的是第二种形式,公式如下:



其中c(u)是加上去一个系数,为了能使DCT变换矩阵成为正交矩阵,在后面二维变换将看到他的作用。N是f(x)的总数。相比其他几种形式,他的运算还是比较简单的,因此也用的比较广。
clc
clear
in=1:8;
N=8;
for i=0:N-1
    if i==0
        a=sqrt(1/N);
    else
        a=sqrt(2/N);
    end 
    sum=0;
    for j=0:N-1     
        sum=sum+in(j+1)*cos(pi*(j+0.5)*i/N);
    end
    F(i+1)=a*sum;
end
F
FF=dct(in)

F是使用上面的公式进行变换,FF是用matlab自带的dct函数变换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值