#!/bin/bash # Liste de choix range=$(zenity --list \ --title="Choisir l'intensité" \ --column="Range" --column="Description" \ --width=200 \ --height=300 \ --hide-column=1 \ "0.5" "Très Faible" \ "1.0" "Faible" \ "1.5" "Moyen" \ "2.0" "Large" ) [ $? -eq 1 ] && exit 0 # Enfuse # $1 - Image originale # $2 - resultat Enfuse() { picbase=`echo "$1" | sed 's/\.\w*$//'` enfusedlist="" if [ ! -f "$picbase.ufraw" ] then echo "# Image $((current)) : exposition nominale" ufraw-batch --exposure=auto --create-id=only $1 fi echo "# Image $((current+1)) : calcule des expositions virtuelles" expobase=$(grep "" $picbase.ufraw | cut -f 2 -d ">" | cut -f 1 -d "<") expomin=$(echo "scale=2; x=$expobase-$range; if (x < -3) print -3.0 else print x" | bc) expomax=$(echo "scale=2; x=$expobase+$range; if (x > 3) print 3.0 else print x" | bc) for nb in "$expomin" "$expobase" "$expomax" do nb=$(echo $nb | sed "s/^\./0\./") nb=$(echo $nb | sed "s/\-\./\-0\./") echo "# Image $current : calcul de $nb E.V." ufraw-batch --exposure=${nb} --restore=hsv --clip=film --out-type=tiff --out-depth=8 --output=${picbase}${nb}.tif --create-id=no $picbase.ufraw enfusedlist=`echo "$enfusedlist" ${picbase}${nb}.tif` done echo "# Image $current : fusion des images ..." enfuse -o tmp.tif $enfusedlist rm -f $enfusedlist echo "# Image $current : Suppression du canal alpha" convert -alpha off tmp.tif $2 rm -f tmp.tif } #fonction principale current=1 while [ $# -gt 0 ]; do picture=$1 echo "# Image $((current)) : $picture" result=`echo "$picture" | sed 's/\.\w*$/-HDR.tif/'` Enfuse $picture $result current=$((current+1)) shift done | zenity --progress \ --title="EnfuseHDR" \ --text="Image..." \ --auto-close \ --percentage=0