Please help me convert equation to matlab code.
2 次查看(过去 30 天)
显示 更早的评论
Deal all.
I need you help to convert this equation to matlab code to plot DCT basis function graph.
Equation is in
at equation (1) and (2).
*I'm not a student in this class but I need DCT concept to write code.
I spend a lot of time to write it but it doesn't work.
Please help me. I must have DCT basis function for my work.
Best regard.
ps. If you have DCT basis function, please share it to me.
0 个评论
回答(1 个)
Matt Tearle
2012-2-15
Assuming that x is a column vector
N = length(x);
k = 0:(N-1);
DCTbasis = cos(k'*(2*k+1)*pi/(2*N));
w = sqrt(2/N)*DCTbasis*x;
w(1) = w(1)/sqrt(2);
will do the job. If you have Signal Processing Toolbox, so will
w = dct(x);
:)
2 个评论
Matt Tearle
2012-2-15
I'm not sure what you're trying to achieve with your follow-up question. It looks a lot like Q 1.1 in the lab, but you already found a nice visualization. I don't see what recreating the visualization in MATLAB will gain you -- it's messy because the visualization is plotting the underlying continuous function, not just the 8 sample points. If you run the code I gave, with x being any 8-by-1 vector, then the rows of the DCTbasis matrix will be the values of the basis functions, at the sample locations.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!