Hvordan skalerer jeg ned et bilde til en mindre størrelse i GIMP uten unødvendig tap av oppløsning? Jeg vet at jeg mister for mye bildeoppløsning, fordi når jeg reduserer det samme bildet ved hjelp av HTML-kode og viser det i en nettleser, får jeg en merkbart skarpere oppløsning. Med merkbart skarpere mener jeg at detaljer som var helt fraværende i det nedskalerte bildet i GIMP vises slik de burde være i nettleseren, og forskjellen i oppløsning er lett synlig uten å zoome inn på bildet.
Jeg har allerede prøvd svarene på de følgende to spørsmålene, men ingen av svarene ga meg den samme bildeoppløsningen som jeg fikk med HTML-koden min.
Jeg leter ikke etter anbefalinger for webapplikasjoner eller tjenester. Jeg vil finne en måte å nedskalere bilder lokalt på datamaskinen min uten unødvendig tap av oppløsning.
Kommentarer
Svar
Skalering av bitmaps er aldri uten tap. Både oppskalering og nedskalering vil gi interpolasjonsgjenstander. Dette kan gjøres mye bedre med vektorgrafikk. Så hvis vi kan spore bitmappen, vil vi få bedre resultater.
Skaleringsartefakter blir enda tydeligere når du gjør det på et indeksert bilde. Vi kan ikke beregne interpolerte farger ved nedskalering av et indeksert bilde.
For fortsatt å kunne skalere et indeksert bilde, bør vi derfor endre bildemodus til RGB før vi skalerer det. Detaljer om nedskalering vil da være mye bedre bevart:
Hvis vi trenger en indeksert bildemodus, kan vi endre den tilbake etter skalering.
Kommentarer
- Å endre bildemodus til RGB var det jeg lette etter, så når du nedskalerer, vil du dekke tapet med semi-gjennomsiktige piksler for å simulere den originale glattheten . Modus kan byttes under Image- > Mode – > RGB
Svar
Dette svaret ble foreslått av Paolo Gibellini i to kommentarer. Det er også mulig å nedskalere et bilde uten å miste for mye oppløsning i GIMP ved å bruke en lignende metode, men jeg foretrekker å bruke Inkscape fordi det er mye lettere å gjøre det med Inkscape.
-
Originalbildet kan være et filformat som .png, .svg, .jpg, etc., helst .png eller .svg fordi Inkscape lagrer .jpg-bilder som .png-filer.
-
Åpne den originale bildefilen i Inkscape. Når du åpner filen, vil Inkscape åpne et lite vindu der du blir bedt om å velge enten lenke eller legge inn bilde. Klikk på alternativknappen for å velge embed.
-
Velg File -> Export Bitmap . Dette åpner et lite Export Bitmap-vindu.
-
Under Eksporter område i vinduet Eksporter bitmap, klikk på Side -knapp.
-
Under Bitmapstørrelse overskrift i vinduet Eksporter bitmap, velg nye verdier for bredde og høyde for å nedskalere bildet.
-
Klikk Bla gjennom -knappen og bla til mappen der filen lagres.
-
Skriv inn et navn for den eksporterte filen med en .png-utvidelse for å lagre den som en .png-fil eller med en .svg-utvidelse for å lagre den som en .svg-fil osv. .
-
Klikk på knappen Lagre .
-
Klikk på Eksporter -knapp.
Svar
Et svar som kun bruker rasterbildebehandling
Teknisk taper du oppløsningen når du nedskaler, siden du viser det samme bildet med færre piksler. Spørsmålet er derfor å unngå mer oppløsningstap enn strengt nødvendig. Det ekstra oppløsningstapet skyldes vanligvis romlig frekvensfolding , så disse høye frekvensene må fjernes før de skaleres ned. Og å undertrykke høye romlige frekvenser er bare å gjøre bildet uskarpt. Så:
-
Filter>Blur>Gaussian blur
- Bruk en uskarphedsradius som er lik skaleringsfaktoren din (1024-> 240, uskarphetsradius = 4,3 , vær oppmerksom på at Gimp lar deg angi radiusen som
1024/240
og gjøre beregningen for deg). - Når uskarpheten er påført,
Image>Scale image
- Du kan gjenopprette litt visuell pop ved hjelp av et slipefilter (her:
Filters>Enhance>Unsharp mask
med radius = 1 og amount = 1)
Svar
Jeg husker at jeg for lenge siden leste en artikkel der trinnene som ble foreslått var å endre størrelse i trinn på 0,5 ganger og bruke Unsharp Mask (0,6 radius, 1 terskel hvis jeg ikke husker riktig) .
For eksempel, hvis startbildet er 3300×3300 og du vil endre størrelsen på det til 200×200:
- Endre størrelse til 1650×1650 (us den beste interpolasjonsalgoritmen, f.eks. kubikk)
- Bruk Unsharp Mask 0.6 / 1 en gang.
- Endre størrelse til 825×825
- Bruk Unsharp Mask 0.6 / 1 en gang.
- Endre størrelse til 412×412
- Bruk Unsharp Mask 0.6 / 1 en gang.
- Endre størrelse til 200×200 (vil ikke endre størrelse på 206×206 og deretter 200×200 siden det mister kvaliteten)
Her er et eksempel på en artikkel som demonstrerer forskjellen mellom 1-trinns størrelse og størrelse i flere trinn. Det viser også forskjellen på bruke uskarp maske før hver størrelse mot etter. Merk at den bruker forskjellige parametere for Unsharp Mask, så du må kanskje eksperimentere.
Svar
Lærebokmetoden er Sinc / Lanczos nedprøvingsmetode på skala. Dessverre er denne fjernet i 2.10.
Noe som ligner Sinc er gaussisk uskarphet etterfulgt av skala med INGEN interpolering.
<img>
bredde- og høydeattributter.