Discrete Cosine Transform

c[x_,n_]:=Cos[(Pi/8)n(x+1/2)];
i=Range[0,7];
c0=c[i,0];

Do[Print[
ListPlot[Transpose[{i,c[i,j]}],
Frame->True,Joined->True,PlotLabel->StringJoin["n=",ToString[j]]]
],{j,0,7}]

Some built-in functions :
	Import["image.tif"]
	Image[{{0,0,1},{1,0,1},{0,1,0}}]

image=RandomReal[1,{8,8}]

Image[image]

dct=FourierDCT[image]

Image[dct]

ListPlot3D[dct]

Are we having fun yet?