#!/bin/sh # # Shell Script to write index to each frame # # Creator: lancefu (Chu Lan Fu) # Email: lancefu@cs.ubc.ca # if [ $# -ne 1 ] then echo "Usage: $0 mdaFileName" echo " Convert mda to image, resize it, and put index on each frame" echo " eg. im_annotation input.mda" exit 1 fi # Parameters: mdaFileName=$1 # Run mda-toimage to get image from mda file mda-toimage PNG:- < $mdaFileName > temp.png # Getting demension from mda-info d=`mda-info -d < $mdaFileName` #width=`echo $d | cut -d "," -f 1` #height=`echo $d | cut -d "," -f 2` nframes=`echo $d | cut -d "," -f 3` f=`expr $nframes + 1` # Resize image # Change the values of resizeWidth & resizeHeightOfSingleFrame if you wish to resize to different size resizedWidth=320 resizedHeightOfSingleFrame=180 resizeHeight=`expr $resizedHeightOfSingleFrame \* $nframes` mogrify -resize $resizedWidth\x$resizedHeight temp.png # Relative text position rx=`expr $resizedWidth / 10` ry=`expr $resizedHeightOfSingleFrame / 8` # Initialize absolute text position posX=`expr $resizedWidth - $rx` posY=$ry # Index/Counter i=1 # Loop to draw index on each frame while [ $i -lt $f ] do if [ $i -eq 1 ] then convert temp.png -font Times-Roman -pointsize 20 -stroke red -strokewidth 1 \ -draw "translate $posX,$posY fill red text -1,-1 '$i'" indexedImage.jpg else convert indexedImage.jpg -font Times-Roman -pointsize 20 -stroke red -strokewidth 1 \ -draw "translate $posX,$posY fill red text -1,-1 '$i'" indexedImage.jpg fi # Update offset posY=`expr $resizedHeightOfSingleFrame \* $i` posY=`expr $posY + $ry` i=`expr $i + 1` done