Gegeven een 1-dimensionale NumPy-rij x
, bestaande uit float
s. Programmeer de
functies dct_1()
en idct_1()
met als enig argument deze rij. Het resultaat van
deze functies is respectievelijk de DCT-II van deze rij en de inverse DCT-II van deze rij. Het resultaat
is dus telkens een rij in 1 dimensie, met even veel elementen als x
(en elk element van de
resultaatrij is opnieuw een float
).
Programmeer deze functies ZONDER gebruik te maken van for
-lussen (het kan een goed
idee zijn om de originele formules als controle te programmeren).
x1 = np.array([-1., 5., 7., 12., 8., 5., 3., -2.]) print(x1) #[-1. 5. 7. 12. 8. 5. 3. -2.] X1= dct_1(x1) print(X1) #[ 37. 4.53522626 -22.77996298 -3.74256252 -2.12132034 2.31005877 -5.10620081 -3.17625204] x1d = idct_1(X1) print(x1d) #[-1. 5. 7. 12. 8. 5. 3. -2.]