Je n'ai donc rien trouvé donc j'ai bricolé un truc moi même. C'est pour Mac et ce n'est pas terminé mais c'est juste pour donner une idée :
Defish Panini.zip - 806 KBCa nécessite d'avoir Hugin installé car je me sers de leur moteur.
En gros, je me suis inspiré du script proposé par seachicken2000 sur
http://www.dpreview.com/forums/thread/3392175?page=2. Ca marche mais ça downscale beaucoup. J'ai donc repris le .pto dans Hugin pour retravailler un peu les paramètres. Les EXIF du fichier résultant sont vides donc j'ai aussi recopié les EXIF du fichier original dans le fichier image défishée. Cette dernière est produite dans un répertoire "projection" au même endroit que le fichier d'origine.
Le script est donc (fourni dans le zip) :
Code : Tout sélectionner
#!/usr/bin/perl
use 5.10.0;
use POSIX;
use File::Basename;
foreach my $input ( @ARGV )
{
($fic,$dir,$ext) = fileparse($input,qr{\..*});
$output = "$dir/projection/$fic";
mkdir "$dir/projection" unless -d "$dir/projection" ;
my $info = `sips -g pixelWidth -g pixelHeight \"$input\"`;
print $info;
print "-------------------------------------------------------------------------------\n";
print "PERFORM PROJECTION";
my @tokens = split /\s+/, $info;
$w = $tokens[ $#tokens - 2 ];
$h = $tokens[ $#tokens ];
print $intput;
open PTO, ">", "$dir/projection/projection.pto" or die$! ;
# A MODIFIER POUR CHANGER DE PROJECTION
say PTO "p f16 w5856 h4575 v174 E6.84353 R0 S471,5385,285,4290 n\"TIFF_m c:LZW r:CROP\"";
say PTO "m g1 i0 f0 m2 p0.00784314";
say PTO "i w4912 h3264 f10 v154.083216270305 Ra0 Rb0 Rc0 Rd0 Re0 Eev6.84352845936868 Er1 Eb1 r0 p0 y0 TrX0 TrY0 TrZ0 j0 a0 b0 c0 d-0 e-0 g-0 t-0 Va1 Vb0 Vc0 Vd0 Vx-0 Vy-0 Vm5 n\"$input\"";
# PRENDRE EXEMPLE SUR LES FICHIERS .PTO DE HUGIN
say `/Applications/Hugin/HuginTools/nona -o \"$output\" \"$dir/projection/projection.pto\"`;
print "COPY EXIF DATA";
say `exiftool -tagsFromFile \"$input\" \"$output\"0000.tif`;
unlink "$dir/projection/projection.pto";
print "------------------------------------COMPLETE-----------------------------------\n";
print "Defished image in a \"projection\" folder where the source file is."
}
Un des problèmes de ce script en PERL, c'est qu'il doit se lancer du terminal et surtout qu'il ne peut pas faire office d'application pour traitement externe dans Lightroom. Je l'ai donc "encapsulé" dans une application MacOS avec Platypus
http://sveinbjorn.org/platypus que j'ai découvert pour l'occasion, et que je n'ai pas terminé d'utiliser tellement c'est pratique !
Pour utiliser mon "application", faites un drag'n drop de fichiers sur la fenêtre et c'est parti !
Ce qu'il me reste à faire :
- Mieux penser le truc pour que ça s'intègre dans un workflow LR correct. Pour ça, je pense faire en sorte que le script prenne un .TIF en entrée et l'écrase, pour pouvoir utiliser "Modifier dans" sur une copie créée par LR et ne pas sortir de LR du tout.
- Affiner les projections et surtout faire l'équivalent pour une projection rectilinéaire. Pour ça j'ai besoin d'aide : je ne comprends rien à Hugin et je ne parviens pas de mon propre chef à produire des .pto (utilisés dans mon script) qui vont bien. Si quelqu'un pouvait me fournir un PTO bien foutu pour la projection Panini et un autre pour la projection Rectilinéaire...
- Diminuer la taille des fichiers produits. En effet, j'ai paramétré pour aucune perte au centre. Du coup la résolution est énorme car il faut pas mal étirer sur les bords. En plus, c'est du TIFF qui sort, et donc des fichiers de 50Mo... ooops. Il faut que je comprenne comment faire mieux mais je débute vraiment dans ce genre d'exercice.
Je remercie pschitt pour sa contribution précédente, mais si vous pouviez juste être constructifs et au lieu de répondre de manière un peu trollesque "de toutes façons ça sert à rien" à une question du type "comment faire ceci ou celà?", et laisser juges de l'utilité de la chose ceux que ça intéresse, ça serait plus constructif.
(crosspost sur hfr aussi)