Imagens giradas

Imagens giradas

Sou um novato em codificação de vídeo. Meu problema é: tenho um conjunto de fotos, algumas delas foram tiradas com minha câmera girada 90 graus. Tentei usar o mencoder para fazer um filme com eles, mas o resultado me mostra que as fotos feitas com a câmera girada aparecem sem rotação. Como faço um filme que respeite a orientação das imagens originais? Eu tenho uma mistura de imagens giradas e não giradas. Alguém pode me ajudar?

Responder1

Fiz um roteiro há alguns anos para esse fim. eu chamo issoautorot, mas você pode usar qualquer nome para ele. Você deve modificar as variáveis

dimkonica=2112x2816
dimcanon=3264x2448

para valores que correspondam aos tamanhos de suas fotos. Aqui está o roteiro:

#!/bin/bash

if [ "$1" == "" ]
then
 echo "Usage: $0 <jpeg-file> [lossy]"
 echo "Auto-rotate *lossless* with jhead,"
 echo "or optionally, if bad image dimensions,"
 echo "auto-orient *lossy* with convert"
 exit
fi
name="$1"
name=${name%.*}
#echo $1
#echo $name
if [ "$1" == "$name".jpg ] || [ "$1" == "$name".JPG ] || [ "$1" == "$name".jpeg ] || [ "$1" == "$name".JPEG ]
then
 echo hej>/dev/null
else
 echo "Bad! $1 not a jpeg-file"
 exit
fi

dimkonica=2112x2816
dimcanon=3264x2448

dim=$(identify -ping "$1"|sed -e s/.*JPEG\ // -e s/\ .*//)
gw0=$(echo "$dim"|sed s/x.*//)
gw1=$((gw0/16*16))
gh0=$(echo "$dim"|sed s/.*x//)
gh1=$((gh0/16*16))

if [ "$dim" == "$dimkonica" ] || [ "$dim" == "$dimcanon" ]
then
  echo "jhead: Original dimension for jhead: $1: $dim"
  jhead -autorot "$1"
else
 if [ "$gw0" == "$gw1" ] && [ "$gh0" == "$gh1" ]
 then
  echo "jhead: Good dimension for jhead: $1: $gw0"x"$gh0"
  jhead -autorot "$1"
 else
  if [ "$2" == "lossy" ]
  then
   echo "convert: Bad dimension for jhead: $1: $dim"
   while [ "$ans" != "yes" ] && [ "$ans" != "n" ] && [ "$ans" != "no" ]
   do
    echo -n "make a lossy rotation the image? (yes/no) "
    read ans
    if [ "$ans" == "yes" ]
    then
     echo Converted: original saved, rotated copy named "$name"_r.jpg
     convert -auto-orient "$1" "$name"_r.jpg
    fi
   done
  else
   echo "Bad dimension for jhead: $1: $dim"
  fi
 fi
fi

informação relacionada