# all 512x512 images cropped to center 510x510 to remove edge artifacts list="airplane.png barbara.png boats.png lena.png mandril.png peppers.png tiffany.png zelda.png" for infile in $list; do echo "" echo "$infile" inname=`convert $infile -format "%t" info:` # brightness convert $infile -brightness-contrast -20,0 ${inname}_bc_m20x0.png convert $infile -brightness-contrast -15,0 ${inname}_bc_m15x0.png convert $infile -brightness-contrast -10,0 ${inname}_bc_m10x0.png convert $infile -brightness-contrast -5,0 ${inname}_bc_m5x0.png convert $infile -brightness-contrast 5,0 ${inname}_bc_5x0.png convert $infile -brightness-contrast 10,0 ${inname}_bc_10x0.png convert $infile -brightness-contrast 15,0 ${inname}_bc_15x0.png convert $infile -brightness-contrast 20,0 ${inname}_bc_20x0.png # contrast convert $infile -brightness-contrast 0,-20 ${inname}_bc_0xm20.png convert $infile -brightness-contrast 0,-15 ${inname}_bc_0xm15.png convert $infile -brightness-contrast 0,-10 ${inname}_bc_0xm10.png convert $infile -brightness-contrast 0,-5 ${inname}_bc_0xm5.png convert $infile -brightness-contrast 0,5 ${inname}_bc_0x5.png convert $infile -brightness-contrast 0,10 ${inname}_bc_0x10.png convert $infile -brightness-contrast 0,15 ${inname}_bc_0x15.png convert $infile -brightness-contrast 0,20 ${inname}_bc_0x20.png # gamma convert $infile -gamma 0.75 ${inname}_gamma_0p75.png convert $infile -gamma 0.80 ${inname}_gamma_0p8.png convert $infile -gamma 0.85 ${inname}_gamma_0p85.png convert $infile -gamma 0.9 ${inname}_gamma_0p9.png convert $infile -gamma 0.95 ${inname}_gamma_0p95.png convert $infile -gamma 1.05 ${inname}_gamma_1p05.png convert $infile -gamma 1.1 ${inname}_gamma_1p1.png convert $infile -gamma 1.15 ${inname}_gamma_1p15.png convert $infile -gamma 1.2 ${inname}_gamma_1p2.png convert $infile -gamma 1.25 ${inname}_gamma_1p25.png # gaussian blur convert $infile -blur 0x0.5 ${inname}_blur_0p5.png convert $infile -blur 0x1 ${inname}_blur_1.png convert $infile -blur 0x2 ${inname}_blur_2.png convert $infile -blur 0x3 ${inname}_blur_3.png # jpg compression convert $infile -quality 5 ${inname}_jpg_5.jpg convert $infile -quality 10 ${inname}_jpg_10.jpg convert $infile -quality 25 ${inname}_jpg_25.jpg convert $infile -quality 50 ${inname}_jpg_50.jpg convert $infile -quality 75 ${inname}_jpg_75.jpg convert $infile -quality 100 ${inname}_jpg_100.jpg # color gaussian noise convert $infile -seed 100 -attenuate 0.5 +noise gaussian ${inname}_colornoise_0p5.png convert $infile -seed 100 -attenuate 1 +noise gaussian ${inname}_colornoise_1p0.png convert $infile -seed 100 -attenuate 1.5 +noise gaussian ${inname}_colornoise_1p5.png convert $infile -seed 100 -attenuate 2 +noise gaussian ${inname}_colornoise_2p0.png convert $infile -seed 100 -attenuate 2.5 +noise gaussian ${inname}_colornoise_2p5.png convert $infile -seed 100 -attenuate 3 +noise gaussian ${inname}_colornoise_3p0.png # gray gaussian noise convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 0.5 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_0p5.png convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 1 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_1p0.png convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 1.5 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_1p5.png convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 2 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_2p0.png convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 2.5 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_2p5.png convert $infile \( -clone 0 -fill "gray(50%)" -colorize 100 -seed 100 -attenuate 3 +noise gaussian -modulate 100,0,100 \) -compose hardlight -composite ${inname}_graynoise_3p0.png # scaling convert $infile -resize 25% ${inname}_resize_25.png convert $infile -resize 50% ${inname}_resize_50.png convert $infile -resize 75% ${inname}_resize_75.png convert $infile -resize 150% ${inname}_resize_150.png convert $infile -resize 200% ${inname}_resize_200.png convert $infile -resize 400% ${inname}_resize_400.png # rotation convert $infile -background black -rotate -90 ${inname}_rot_m90.png convert $infile -background black -rotate -45 ${inname}_rot_m45.png convert $infile -background black -rotate -30 ${inname}_rot_m30.png convert $infile -background black -rotate -15 ${inname}_rot_m15.png convert $infile -background black -rotate -5 ${inname}_rot_m5.png convert $infile -background black -rotate 5 ${inname}_rot_5.png convert $infile -background black -rotate 15 ${inname}_rot_15.png convert $infile -background black -rotate 30 ${inname}_rot_30.png convert $infile -background black -rotate 45 ${inname}_rot_45.png convert $infile -background black -rotate 90 ${inname}_rot_90.png # mirror convert $infile -flop ${inname}_flop.png convert $infile -flip ${inname}_flip.png convert $infile -transpose ${inname}_transpose.png convert $infile -transverse ${inname}_transverse.png # translate convert $infile -background black -gravity north -extent 1024x1024 ${inname}_ex_n.png convert $infile -background black -gravity west -extent 1024x1024 ${inname}_ex_w.png convert $infile -background black -gravity northwest -extent 1024x1024 ${inname}_ex_nw.png convert $infile -background white -gravity north -extent 1024x1024 ${inname}_ex_n_wb.png convert $infile -background white -gravity west -extent 1024x1024 ${inname}_ex_w_wb.png convert $infile -background white -gravity northwest -extent 1024x1024 ${inname}_ex_nw_wb.png # watermark convert $infile sphinx2.gif -gravity center -define compose:args=20 -compose modulate -composite ${inname}_wm20.png convert $infile sphinx2.gif -gravity center -define compose:args=40 -compose modulate -composite ${inname}_wm40.png convert $infile sphinx2.gif -gravity center -define compose:args=60 -compose modulate -composite ${inname}_wm60.png convert $infile sphinx2.gif -gravity center -define compose:args=80 -compose modulate -composite ${inname}_wm80.png convert $infile sphinx2.gif -gravity center -define compose:args=100 -compose modulate -composite ${inname}_wm100.png # arc convert $infile -virtual-pixel black -distort arc 1 ${inname}_arc_1.png convert $infile -virtual-pixel black -distort arc 2 ${inname}_arc_2.png convert $infile -virtual-pixel black -distort arc 3 ${inname}_arc_3.png convert $infile -virtual-pixel black -distort arc 4 ${inname}_arc_4.png convert $infile -virtual-pixel black -distort arc 5 ${inname}_arc_5.png convert $infile -virtual-pixel black -distort arc 10 ${inname}_arc_10.png # barrel convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 0.1 0.9" ${inname}_barrel_0p1.png convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 0.2 0.8" ${inname}_barrel_0p2.png convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 0.3 0.7" ${inname}_barrel_0p3.png convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 0.4 0.6" ${inname}_barrel_0p4.png # pincushion convert $infile -virtual-pixel black -distort Barrel "0 0.0 -0.1 1.2" ${inname}_pincushion_0p1.png convert $infile -virtual-pixel black -distort Barrel "0 0.0 -0.2 1.3" ${inname}_pincushion_0p2.png convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 -0.3 1.4" ${inname}_pincushion_0p3.png convert $infile -virtual-pixel black -distort Barrel "0.0 0.0 -0.4 1.5" ${inname}_pincushion_0p4.png # shear convert $infile -background black -shear 1x0 ${inname}_shear_1.png convert $infile -background black -shear 2x0 ${inname}_shear_2.png convert $infile -background black -shear 3x0 ${inname}_shear_3.png convert $infile -background black -shear 4x0 ${inname}_shear_4.png convert $infile -background black -shear 5x0 ${inname}_shear_5.png convert $infile -background black -shear 10x0 ${inname}_shear_10.png done