php et traitement d'image : votre avis

theJB
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 411
Inscription: 7 Avr 2006

php et traitement d'image : votre avis

Message le Lun Fév 05, 2007 22:55

salut,
je dois faire un script qui prend une image, la lisse (application d'un flou gaussien via une transfo de fourrier rapide) et renvoie l'image lissée.

Mon big problème, c'est que pour faire faire ça je converti l'image en un tableau de nombres correspondants aux niveaux de gris de chaque pixel et que rien que pour passer de l'image (une image toute petite rikiki) il me faut 0.65s et pour repasser d'un tableau à une image 0.22s.

Qq1 aurait il une astuce pour manipuler des grosses données en mémoire avec php sans faire ramer?? (ma FFT prend 2 minutes alors que photoshop fait ça en direct!!)

bref help..


xTrade
WRInaute passionné
WRInaute passionné
 
Messages: 2289
Inscription: 11 Déc 2006

Re: php et traitement d'image : votre avis

Message le Lun Fév 05, 2007 23:34

theJB a écrit:Qq1 aurait il une astuce pour manipuler des grosses données en mémoire avec php sans faire ramer?? (ma FFT prend 2 minutes alors que photoshop fait ça en direct!!)


Je n'ai pas de réponse à ta question, mais juste une petite remarque :
photoshop est un programme natif, compilé.
Le php est interprété sur un serveur, donc il est normal qu'il y ait une énorme différence de temps d'exécution.

colonies
WRInaute discret
WRInaute discret
 
Messages: 193
Inscription: 10 Sep 2006

Message le Lun Fév 05, 2007 23:48

effectivement, php n'est pas adapté pour les opérations lourdes.
mais à ta place, si ça n'est qu'un blur, j'utiliserais la librairie imagemagick. à voir si ça te convient :
http://www.imagemagick.org/Usage/convolve/#blur_args

theJB
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 411
Inscription: 7 Avr 2006

Message le Lun Fév 05, 2007 23:53

c'est nickel!!
il me reste plus qu'à voir comment ça peut s'utiliser avec php.
question rapidité, c'est efficace?

un immense merci à toi!

theJB
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 411
Inscription: 7 Avr 2006

Message le Lun Fév 05, 2007 23:57

et tu sais comment on peut faire la différence de deux images avec ta lib?

colonies
WRInaute discret
WRInaute discret
 
Messages: 193
Inscription: 10 Sep 2006

Message le Mar Fév 06, 2007 0:05

oui c'est rapide.
Benchmarks simples : http://www.baschny.de/graphic-test/summary.html

Pour l'utilisation, voici un petit bout de code issu de phpBB3. $config['img_imagick'] contient le path de la commande.

Code: Tout sélectionner
   // Only use imagemagick if defined and the passthru function not disabled
   if ($config['img_imagick'] && function_exists('passthru'))
   {
      @passthru(escapeshellcmd($config['img_imagick']) . 'convert' . ((defined('PHP_OS') && preg_match('#^win#i', PHP_OS)) ? '.exe' : '') . ' -quality 85 -antialias -sample ' . $new_width . 'x' . $new_height . ' "' . str_replace('\\', '/', $source) . '" +profile "*" "' . str_replace('\\', '/', $destination) . '"');

      if (file_exists($destination))
      {
         $used_imagick = true;
      }
   }


Edit : et il y a aussi un moyen plus php style :
http://fr3.php.net/manual/en/ref.imagick.php
Dernière édition par colonies le Mar Fév 06, 2007 0:16, édité 1 fois.

colonies
WRInaute discret
WRInaute discret
 
Messages: 193
Inscription: 10 Sep 2006

Message le Mar Fév 06, 2007 0:07

theJB a écrit:et tu sais comment on peut faire la différence de deux images avec ta lib?


à priori : http://www.imagemagick.org/Usage/compare/#difference


et pour un aperçu complet : http://www.imagemagick.org/Usage/


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités