Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Utmaning: SVD för bildkomprimering | Linjär Algebra och Matrismoduleringar
Introduktion till SciPy
Avsnitt 2. Kapitel 6
single

single

Utmaning: SVD för bildkomprimering

Svep för att visa menyn

Med din förståelse för matrismodifikationer och singulärvärdesuppdelning (SVD) är du nu redo att tillämpa dessa koncept i ett praktiskt sammanhang: bildkomprimering. SVD är ett kraftfullt verktyg för att minska datadimensionalitet och används ofta inom bildbehandling för att komprimera bilder samtidigt som så mycket som möjligt av den ursprungliga informationen bevaras. I denna utmaning kommer du att använda scipy.linalg.svd för att komprimera en gråskalebildmatris genom att trunkera dess singulärvärden och sedan rekonstruera bilden från den reducerade datan. Detta tillvägagångssätt visar hur SVD kan balansera bildkvalitet och lagringseffektivitet.

Uppgift

Svep för att börja koda

Implementera en funktion som komprimerar en gråskalebildmatris med hjälp av singulärvärdesuppdelning (SVD). Funktionen ska:

  • Ta en 2D NumPy-array som representerar en gråskalebild och ett heltal k som indata.
  • Dekomponera bildmatrisen med scipy.linalg.svd.
  • Trunkera uppdelningen så att endast de k största singulärvärdena och motsvarande vektorer behålls.
  • Återskapa och returnera den komprimerade bildmatrisen med hjälp av de reducerade komponenterna.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 6
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt