single
Sfida: SVD per la compressione delle immagini
Scorri per mostrare il menu
Basandoti sulla comprensione delle operazioni matriciali e della decomposizione ai valori singolari (SVD), sei pronto ad applicare questi concetti a uno scenario pratico: la compressione delle immagini. La SVD è uno strumento potente per ridurre la dimensionalità dei dati ed è ampiamente utilizzata nell'elaborazione delle immagini per comprimere le immagini mantenendo quante più informazioni originali possibile. In questa sfida, utilizzerai scipy.linalg.svd per comprimere una matrice di immagine in scala di grigi troncando i suoi valori singolari, quindi ricostruirai l'immagine dai dati ridotti. Questo approccio dimostra come la SVD possa bilanciare la qualità dell'immagine e l'efficienza di archiviazione.
Scorri per iniziare a programmare
Implementare una funzione che comprime una matrice di immagine in scala di grigi utilizzando la decomposizione ai valori singolari (SVD). La funzione deve:
- Ricevere in input un array NumPy 2D che rappresenta un'immagine in scala di grigi e un intero
k. - Decomporre la matrice dell'immagine utilizzando
scipy.linalg.svd. - Truncare la decomposizione mantenendo solo i primi
kvalori singolari e i vettori corrispondenti. - Ricostruire e restituire la matrice dell'immagine compressa utilizzando i componenti ridotti.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione