Fórum Root.cz
Hlavní témata => Software => Téma založeno: barevnej 09. 06. 2020, 20:11:11
-
Asi zde jsou až příliš chytří lidé ale snad neurazím otázečkou.
Mám hromadu fotek a potřebuji aby byli přesný čtverec. Nechci fotku oříznout ale přidat bílé okraje, někdy nahoře a někdy dole.
Stahl jsem si http://www.fmwconcepts.com/imagemagick/aspect/index.php
(http://www.fmwconcepts.com/imagemagick/aspect/index.php)
použiji příkaz ve složce co mám ten "aspect" a jednu fotografii a provedu příkaz
./aspect 500x500 -m pad -c white *.jpg *.jpg
to funguje správně, původní fotografii včetně nezměněného názvu změní na novou kdy přidá logicky bílé pruhy a fotky vycentruje. SUPER
Pak to samé zkusím když je ve složce fotek víc a už to nefunguje.
./aspect 500x500 -m pad -c white *.jpg *.jpg
--- TOO MANY ARGUMENTS WERE PROVIDED ---
Nechce se mi stovky fotek dělat po jedné.
-
Napad me:
find . - name '*.jpg' -exec ./aspect 500x500 -m pad -c white {} {} \;
Ale psal sem to po pameti na telefonu...
Za vysledek ani ztratu fotek nerucim.
-
nebo
for img in *.jpg; do ./aspect 500x500 -m pad -c white $img $img; done
Ale psal sem to po pameti na telefonu...
Za vysledek ani ztratu fotek nerucim.
-
nebo
for img in *.jpg; do ./aspect 500x500 -m pad -c white $img $img; done
Ale psal sem to po pameti na telefonu...
Za vysledek ani ztratu fotek nerucim.
Doporučuji dávat kolem proměnných, které obsahují kdovíco (názvy souborů od uživatele), uvozovky. A možná předtím nastavit IFS na \n pokud jsou v názvech souborů mezery. Pokud jsou v názvech souborů newlines, tak máš smůlu tak jako tak.
-
man xargs a nastav si paralelizaci na pocet jader tvyho CPU
-
Pánové mockrát děkuji, obě verze fungují. Jen ta první v terminálu remcá s nějakými errory ale i tak svou práci udělá. Druhá verze udělá to samé ale bez remcání a je to o něco rychlejší.
Opravdu moc děkuji za pomoc. Skoro by se hodilo kdyby tento návod byl na této stránce aby věděli jak používat tyto skvělé nástroje hromadně. http://www.fmwconcepts.com/imagemagick/index.php (http://www.fmwconcepts.com/imagemagick/index.php)
-
Skoro by se hodilo kdyby tento návod byl na této stránce aby věděli jak používat tyto skvělé nástroje hromadně. http://www.fmwconcepts.com/imagemagick/index.php (http://www.fmwconcepts.com/imagemagick/index.php)
Ne, protože to je standardní funkce shellu a vůbec nijak to nesouvisí s těmi skripty.
-
Ale ImageMagick má svůj nástroj na zpracování více souborů naráz: mogrify
https://imagemagick.org/script/mogrify.php (https://imagemagick.org/script/mogrify.php)
Jestli to jde použít i pro váš případ nevím, možná -repage
-
Ale ImageMagick má svůj nástroj na zpracování více souborů naráz: mogrify
https://imagemagick.org/script/mogrify.php (https://imagemagick.org/script/mogrify.php)
Jestli to jde použít i pro váš případ nevím, možná -repage
1+ za mogrify - mogrify může nahradit leckterý skript, který volá imagemagick
-
Pokial sa naozaj jedna o vacsie mnozstvo suborov, odporucal by som pouzit nejaku paralelnu vec. Mogrify sa mi zda, ze vyuziva iba jedno jadro (a dnes je zvykom mat viac jadier).
Napriklad:
parallel convert {} {.}.jpg ::: *.png
# respektive:
parallel ./aspect 500x500 -m pad -c white {} {} ::: *.jpg
-
jo ten paralell je dobry nastroj na na spracovanie medii. oni tie linux utility niekedy nemaju implementovane spracovavanie viacerych objektov a pusti sa to cez paralel a zrazu procesor ide na 100%. odporucam tiez.