Sziasztok!
Szeretnék az Imagemagick program convert parancsával képekből levágni bizonyos részeket (az alját, mert végig ott figyel egy fekete csík). Így próbáltam:
/usr/bin/convert file.jpg -crop 1024x760 ./kesz/file.jpg
Meg is csinálja szépen, de eredményül 2 db fájlt kapok, egy file-0.jpg (ez ami maradt) és egy file-1.jpg (ezt vágta le). Mivel sok kép van, ezért nem szeretnék mazsolázni hogy melyik az eredeti és melyik a levágott. Hogy lehet megadni a convert -nek, hogy ne mentse lemezre a levágott részt?
Előre is köszönöm!
Laci
- 1772 megtekintés
Hozzászólások
Egyszerűbb lenne scriptelni ezt szerintem.
--
A nyúl egy igazi jellem. Ott ül a fűben, de akkor sem szívja!
- A hozzászóláshoz be kell jelentkezni
A megoldás:
/usr/bin/convert file.jpg -crop 1024x760 +delete ./kesz/file.jpg
A +delete kapcsoló törli a második, levágott darabot.
Laci
- A hozzászóláshoz be kell jelentkezni
Jó tudni, nem rossz tool.
--
A nyúl egy igazi jellem. Ott ül a fűben, de akkor sem szívja!
- A hozzászóláshoz be kell jelentkezni
Eddig én sem nagyon foglalkoztam vele, de nagyon komoly program, nagy tudással és sok doksival. Nézz körül az IBM fejlesztői oldalán is mert ott is találtam leírásokat.
Laci
- A hozzászóláshoz be kell jelentkezni
Ha az eltolásokat is megadod, akkor csak egy kép keletkezik:
-crop 1024x760+0+0
- A hozzászóláshoz be kell jelentkezni
JPEG kepekben lehetnek megjegyzesek (meg persze digigep altal keszitett esetben mindenfele egyeb EXIF-infok). Parancssori kapcsolo nelkul elo lehet-e varazsolni ezeket - azaz a JPEG comment-et es a JPEG EXIF infokat? (Az remlik, hogy a -annotate segitsegevel ra tudtam varazsolni pl. a keszites datumat, de nekem az kellene, hogy nezegetes kozben, ha erdekel, akkor rapillanthassak az altalam a "jhead -cl" -lel belecsodalkozott leirasba, hogy hol is keszult, es mi a francot is abrazol - illetve nyilvan mikor.)
- A hozzászóláshoz be kell jelentkezni
Nézd meg az identify parancsot és kapcsolóit, ha jpg fájlról van szó, de van tiffinfo vagy pnginfo is az imagemegick csomagban.
Laci
- A hozzászóláshoz be kell jelentkezni
Bocs, most jöttem rá, hogy a lényeg maradt ki: "display" -jel nézem a képet. Azaz nem egy másik parancsot keresek az IM csomagból, hanem ezt az "identify" funkciót a display"-ben. Tegyük fel nyári képeket mutogatok "display"-jel (nem kell flame, hogy a XXXX jobb), és hirtelen közben eszembe jut, hogy esetleg de jó lenne megmutatni, hogy ez a fotó mikor is készült pontosan; nem emlékszem már 5 év múlva, hogy mit is ábrázol, de mivel eredendően beleírtam a JPEG komment-be, ha ezt elő tudnám varázsolni, nem maradnék szégyenben; szóval ilyesmire gondoltam.
- A hozzászóláshoz be kell jelentkezni
Például a jobbgombos menüben az "Image Info" is kiírja.
- A hozzászóláshoz be kell jelentkezni
En is erre gondoltam, de nekem kizarolag egy ures ablak jon be egy szal "Dismiss" gombbal. Pedig van EXIF fejlec es ott van benne a "jhead -cl" paranccsal belerakott szoveg is - legalabbis xv es Gimp mutatja.
- A hozzászóláshoz be kell jelentkezni
Esetleg nem fontprobléma? Mert ott nem csak az EXIF-infót kell kiírnia, hanem pl. a fájl méretét, az ImageMagick verzióját, stb. is.
- A hozzászóláshoz be kell jelentkezni
Nyertel, tenyleg ez a baj. Ha belekattintok ebbe az "ures" ablakba, majd c'n'p -vel egy xterm-be, akkor szepen ki lehet nyerni az adatokat. Akkor mar csak a fontjaimat kell rendbeszedni.
- A hozzászóláshoz be kell jelentkezni
Én még az internetforgalmunkat ábrázoló diagramot is ezzel rajzoltatom.
Input: a tűzfal számláló állásait tartalmazó logfájl (percenként egy adatsor).
Feldolgozás: awk + convert parancs
Output: a kész diagram (4db görbe) jpeg képen :-)
---
If you have money, use Windows!
However, if you also have a brain, use Linux!
- A hozzászóláshoz be kell jelentkezni
tudsz mutatni kepet meg logsort?
'setleg scriptet?
- A hozzászóláshoz be kell jelentkezni
A log két utolsó sora:
199901162356 2164194989 32574868123 2316 11812
199901162357 2164198293 32574895833 3304 27710
1. oszlop: időpont, 2. és 3. oszlopok: számláló állások, 4. és 5. oszlopok: forgalom, azaz az adott sor számláló állása mínusz az előző soré; ezt az a script számolgatja, ami a logbejegyzéseket teszi.
A diagram rajzoló szkript "rajzoló sora":
$convert -stroke blue -linewidth 2 -fill none -draw "polyline `tail -120 /var/log/dmx/admin/nettraffic.tun | awk '{printf 2*NR "," 2*(100-int($4/50000)) " "}'`" "$celfajl" "$celfajl"
A fenti parancs a logfájl utolsó 120 sorából (azaz 120 perc adataiból) a 4. oszlopot rajzolja a "$celfajl" diagramba (ami egy előre elkészített, megfelelű méretű, felskálázott jpeg kép). A szkriptben van egy ugyanilyen parancs az 5. oszlopra is, a különbség csak annyi, hogy ott ugye a $4 helyett $5 van hivatkozva.
Egy másik parancs 10 perces átlagokat rajzol ki ugyanebből a logfájlból egy másik diagramra (képfájlra):
$convert -stroke blue -fill none -linewidth 2 -draw "polyline `tail -1200 /var/log/dmx/admin/nettraffic.tun | awk 'BEGIN {szum=0} {szum=szum+$4} {if (int(NR/10)==NR/10) ix=ix+1} {if (int(NR/10)==NR/10) printf 2*ix "," 2*(100-int(szum/500000)) " "} {if (int(NR/10)==NR/10) szum=0 }'`" $celfajl10 $celfajl10
Zárójelesen azért megjegyezném, hogy mai fejjel már inkább a gnuplot-al rajzoltatnék ilyen diagramokat, mivel a convert sebessége ebben a felhasználásban azért hagy némi kívánnivalót maga után. Ráadásul a kirajzolható diagram pontok száma sem nagyon haladhatja meg a 120-at, a convert parancssorának korlátozott volta miatt ("argument list too long" hiba).
---
If you have money, use Windows!
However, if you also have a brain, use Linux!
- A hozzászóláshoz be kell jelentkezni