ImageMagick – Tiedostojen koon pienentäminen

Imagemagick Tiedostojen Koon Pienentaminen



Kaunis ja suuri kuva on melkein mahtava; siihen liittyy yleensä valtava laatu. Kuitenkin on monia, monta kertaa, jolloin sinulla ei ole varaa ottaa kuvia, jotka ovat kooltaan liian suuria. Joskus haluat vain sopivan kokoisen kuvan tai jopa sellaisen, joka on pienempi kuin tietty koko. Tällaisissa tapauksissa ohjelmoija toivoo vain tavan löytää keskitie laadun ja koon välillä. Teoriassa, jos luovut laadusta kokonaan, tiedostokoon ei pitäisi olla ongelma, mutta todellinen asia on löytää kompromissi laadun ja tiedostokoon välillä. Tässä opetusohjelmassa keskustelemme tavoista pienentää kuvien tiedostokokoa ImageMagickilla (laadusta tinkimättä liikaa).

ImageMagickin asentaminen

Tarvitsemme ImageMagickin tähän, joten asenna se ensin:







sudo apt-get install imagemagick



Laatukytkin

Ensimmäinen ja helpoin tapa pienentää valokuvan/kuvan/videon kokoa on heikentää valokuvan laatua. Laatukytkin edustaa JPEG/MIFF/PNG-pakkaustasoa. JPEG:ssä ja MPEG:ssä laatu 1 edustaa korkeinta pakkaustasoa ja alhaisinta kuvanlaatua, kun taas 100 tarkoittaa pienintä pakkaustasoa ja parasta laatua.



Katsotaanpa siis esimerkkiä; puusta ottamani kuva on resoluutioltaan 4624×3468 ja 5,70226MiB. Tämä on alkuperäinen kuva, tarkemmin sanottuna JPEG.






Nyt pointti on, että haluamme pienentää kuvan kokoa. Yritetään siis asettaa laatukytkimen asetukset hieman erilaisiksi ja katsotaan mitä tapahtuu.

muuntaa tree_4624x3468.jpg -laatu 75 tree_4624x3468_quality75.jpg
muuntaa tree_4624x3468.jpg -laatu 25 tree_4624x3468_quality25.jpg



Yhden kuvan laadun laskin 75:een ja toisen 25:een. Alkuperäinen kuva oli 5,70226 MiB, mutta kuvan, jonka laatu oli 75, tuli 2,74664 MiB, kun taas laadusta 25 tuli 1358250 (1,295 MiB). Tässä valitsen henkilökohtaisesti 75 prosentin laadun.



Nyt, koska välitämme myös valokuvan todellisesta laadusta, näytän sinulle kuvat:


tree_4624x3468_quality75.jpg


tree_4624x3468_quality25.jpg

Kuten näet, laatu ei ole vaikuttanut liikaa, mutta tiedostokoko on pienempi.

Nyt yritin tehdä samaa PNG:n kanssa, ja sain tämän:


Joten se muuttui 23501600B:stä (22.413MiB) 22.2854MiB:iin. JPEG:ssä se muuttui 5,70226 MiB:stä 1,295 MiB:iin. Häviöttömässä muodossa, kuten PNG, laadun vaihto on paljon tiukempi.

Kuvien koon muuttaminen

Kuvien koon muuttaminen on toinen tapa. Esimerkiksi:

muuntaa tree_4624x3468.jpg -muuta kokoa viisikymmentä % x50 % tree_4624x3468_resize50 % .jpg



Kuten näet selvästi, kuva, joka oli 4624×3468, oli 5,70226 MiB, kun taas kuva, joka oli 2312×1734, on vain 1,56287 MiB.

Määritä-kytkin

Määrityskytkintä seuraa avain ja sen annettu arvo.

-määritä avain{=arvo}…

Luettelo mahdollisista avainarvoista löytyy osoitteesta .

PNG:lle voit käyttää png:compression-level=value. Arvo voi olla mikä tahansa välillä 0 - 9. Arvo 0 tarjoaa vähiten pakkausta, mutta se on nopeaa, ja arvo 9 tarjoaa parhaan pakkauksen, mutta on hitain. Kaikki siltä väliltä käy myös.

Esimerkiksi:

muuntaa tree_4624x3468.png -määritellä png:pakkaustaso= 9 tree_4624x3468_compression9.png



Useimmissa tapauksissa ohjelmoija haluaa asettaa valokuvalle enimmäiskoon. Oletetaan siis, että haluat määrittää valokuvan enimmäiskoon. Voit tehdä tämän käyttämällä määrityskytkintä.

-define jpeg:extent={size}

muuntaa  puu_4624x3468.jpg -määritellä jpeg: laajuus =1 Mt tree_4624x3468_extent1MB.jpg



Kuten yllä olevasta kuvasta näet, se asetti sen resoluutioon 4624 × 3468 ja kokoon 0,897 MiB. Joten, kuten pyysit, ImageMagick on luonut valokuvan, joka on pienempi kuin enimmäiskoko 1 Mt.

Nauhakytkin

Kameroilla ottamamme kuvien mukana tulee metatiedot. Metadatan poistaminen voi myös vapauttaa tilaa. ImageMagickissa teemme tämän nauhakytkimen avulla.

muuntaa tree_4624x3468.jpg - nauha tree_strip.jpg



Tässä, kuten näet, alkuperäinen kuva on 4624×3468 ja 5,7 MiB. Mutta kuva, jonka metatiedot on poistettu, on 4,65 MiB.

Väriavaruuden kytkin

Voit myös yrittää vaihtaa väriavaruutta ylöspäin. Tässä ensimmäisessä tapauksessa teen sen harmaaksi.

muuntaa tree_4624x3468.jpg -väriavaruus harmaa puu_harmaa.jpg -laatu 75



Kuten näette, kuvan koon pienennys ei ole liian suuri, mutta pienennystä tapahtuu - 5,70226 MiB:stä 4,44997 MiB:iin.

Vaihtoehtoisesti kokeilin myös seuraavaa:

muuntaa tree_4624x3468.png -väriavaruus harmaa puu_graypng.png



PNG:n tapauksessa alkuperäinen valokuvani, joka on 4624 × 3468, on 22,42 MiB, mutta kun teen sen harmaaksi, siitä tulee 8,88 MiB.

Värien kytkin

Voit myös muuttaa käytettyjen värien määrää. Tässä nimenomaisessa tapauksessa aion käyttää vain 16 väriä PNG-muodossa.

muuntaa tree_4624x3468.png -värit 16 tree_4624x3468_16colors.png



Alkuperäinen PNG oli 4624×3468 ja 22,42 MiB. Kuitenkin, kun vaihdoin värit vain 16:een, kuvasta tuli 4,27 MiB. Ja kuva näyttää tältä:


tree_4624x3468_16colors.png

Useiden kytkimien käyttäminen

Nyt sinun ei tarvitse käyttää yhtä kytkintä valokuvassa! Voit yhdistää kuvaan niin monta kytkimiä kuin haluat.

Joten esimerkissä 1 aion ottaa PNG-kuvan puusta. Tämä alkuperäinen valokuva on kooltaan 4624 × 3468 ja kooltaan 22,42 MiB, ja aion käyttää useita kytkimiä ja katsoa mihin se minut vie.

muuntaa tree_4624x3468.png - nauha -muuta kokoa 75 % x75 % -määritellä png:pakkaustaso= 9 -väriavaruus harmaa puu_4624x3468_reducedsize.png



Joten tämä PNG, jonka alkuperäinen koko oli 22,42 MiB, muuttui 5,3 MiB:n kuvaksi. Tuloksena oleva kuva on noin 23 % alkuperäisestä koosta.

Joten seuraavaksi katsotaan JPG.

muuntaa tree_4624x3468.jpg -laatu 75 -muuta kokoa 75 % x75 % - nauha -värit 16 tree_4624x3468_reducedsize.jpg



Joten tässä JPG:ssä siirryimme alkuperäisestä 5,7 MiB:n koosta noin 2,2 MiB värilliseen kuvaan.

Mutta jos se ei olisi värillinen:

muuntaa tree_4624x3468.jpg -laatu 75 -muuta kokoa 75 % x75 % - nauha -väriavaruus harmaa puu_4624x3468_reducedsize.jpg



Tässä siirryimme alkuperäisestä 5,7 MiB:n koosta 1,6 MiB:iin harmaan kuvan osalta.

Jos olisit halunnut, olisit voinut asettaa myös enimmäiskoon koolle. Pointti on, että voit pienentää kokoa, jos todella valitset sen.

Johtopäätös

Kun kirjoitamme koodia tiettyyn tarkoitukseen, käytämme yleensä myös kuvia, ja joskus meillä ei vain ole varaa kuviin, jotka ovat kooltaan liian suuria. Tällaisissa tapauksissa ohjelmoijan pääpaino on löytää kompromissi kuvan koon ja kuvan laadun välillä. Emme halua käyttää liian heikkolaatuisia kuvia, mutta meillä ei myöskään ole varaa suurikokoisiin kuviin. Tarvitsemme siis tapoja pienentää kuvan kokoa. ImageMagick tarjoaa useita tapoja pienentää kuvan kokoa erilaisten kytkimien muodossa – laatu, kokoa, määrittely jne. Voit käyttää yhtä tai useampaa niistä kuvan koon säätämiseen.