
Estoy seguro de que habría un comando sencillo para esto, pero no he podido encontrar ninguno.
Básicamente, me gustaría unir una foto debajo de otra foto sin superposición. Idealmente, también me gustaría un comando que pueda automatizar este proceso para 200 imágenes superiores donde se une la misma imagen inferior. Todas las imágenes tienen el mismo ancho por lo que no se requiere transformación.
Estoy buscando un programa parecido a "stitch -below top.png bottom.png". He explorado opciones como Montage, pero parece que no puedo hacerlo funcionar como es necesario. Buscando consejo.
Respuesta1
Primero necesitas abrir una terminal y sudo apt-get install imagemagick
.
Ahora coloca todas tus imágenes en la misma carpeta para que puedas acceder a ellas fácilmente desde el terminal. Coloque todas las imágenes superiores en su propia carpeta y guarde la imagen inferior en otro lugar para simplificar las cosas.
Escriba cd DIRNAME
, debe reemplazar DIRNAME con el nombre de la carpeta en la que están almacenadas las imágenes, por ejemplo, /home/mark/collating
es lo que uso para este propósito.
Ahora que su shell está en la carpeta correcta y imagemagick está instalado, usamos lo siguiente para unir las imágenes:
convert -append image1.jpg image2.jpg output.jpg
Esto tomará las dos imágenes llamadas imagen1 e imagen2 y pegará la imagen2 en la parte inferior de la imagen1, guardando el resultado como un archivo llamado salida.jpg.
Para automatizar esto, puedes usar un script como este. Debe cambiar las variables para que apunten a los lugares correctos.
#! /bin/bash
# Replace the values of these variables with the locations of your tops and the bottom.
# The output directory must already exist!
# "~/" is a shortcut for your home dir, FYI.
TopsDir="~/collating/tops" #Only the TOP images should be in this folder!
BottomImg="~/collating/bottom.png"
OutputDir="~/collating/complete"
[ -d "$TopsDir" -a -d "$OutputDir" ] && [ -f "$BottomImg" ] || { echo "One of the paths you supplied wasn't valid."; exit 1;}
cd "$TopsDir"
for TopImg in *; do
convert -append "$TopImg" "$BottomImg" "$OutputDir/$TopImg"
done
Cópialo y pégalo en gedit o en tu editor de texto yeditar las variablespara que apunten a las carpetas correctas. (O archivo para la imagen inferior). Guárdelo como collator.sh
. Es conveniente para los siguientes pasos si lo guarda en su directorio personal.
Ahora abra una terminal y navegue hasta donde guardó el archivo. (Ya está allí si lo guardó en su directorio de inicio; de lo contrario, escriba cd /path/to/your/location
) Escriba chmod +x collator.sh
para otorgar permisos de ejecución al archivo.
Y ahora terminamos el trabajo:
escriba ./collator.sh
para ejecutar el script; y tu estas listo.