L'importanza della trigonometria in matematica e fisica
1 vettore rotante goegebra, 2 vettore rotante geogebra
https://www.jezzamon.com/fourier/
effetti sul suono di una chitarra elettrica al variare dello sfasamento tra 3 pickup (8:15)
Scrivi un codice in Python che utilizza la trasformata di Fourier fft per comprimere un file immagine. calcola la dimensione dei due file. visualizza le due immagini .
In questo esempio, viene utilizzata la libreria scipy.fft per eseguire la trasformata di Fourier sull'immagine. Successivamente, le dimensioni dei file di input e compresso vengono calcolate utilizzando il modulo os, e infine le due immagini vengono visualizzate utilizzando matplotlib.
python
import numpy as np
from scipy import fft
from PIL import Image
import os
import matplotlib.pyplot as plt
# Carica l'immagine
input_image = Image.open('input_image.jpg')
# Esegui la trasformata di Fourier sull'immagine
input_array = np.array(input_image)
compressed_array = fft.dctn(input_array, norm='ortho')
# Salva l'array compresso in un nuovo file
compressed_image = Image.fromarray(compressed_array)
compressed_image.save('compressed_image.jpg')
# Calcola le dimensioni dei due file
input_file_size = os.path.getsize('input_image.jpg')
compressed_file_size = os.path.getsize('compressed_image.jpg')
print(f"Dimensione del file di input: {input_file_size} byte")
print(f"Dimensione del file compresso: {compressed_file_size} byte")
# Visualizza le due immagini
fig, ax = plt.subplots(1, 2)
ax[0].imshow(input_image)
ax[0].set_title('Immagine di input')
ax[0].axis('off')
ax[1].imshow(compressed_image)
ax[1].set_title('Immagine compressa')
ax[1].axis('off')
plt.show()