Moyenne pondérée (lissage carte) : quel language choisir ? - Divers - Programmation
Marsh Posté le 25-02-2009 à 19:23:16
J'aurais tendance à faire ca en C++ avec une librairie genre OpenCV, mais peut être je dis une connerie
Marsh Posté le 25-02-2009 à 19:42:07
Malicote a écrit : Auriez-vous une méthode pour améliorer cela ou alors connaitriez-vous un language excellent dans ce genre de calculs ? |
Suivant certains membres très réguliers de cette section, on te dira:
- python, voire ruby.
- Haskell, qui est enfin prêt pour la conquête du monde.
- PHP, mais il te dira que c'est de la merde.
- Java, encore que... il faudra se décider sur la version de la JVM.
- surtout pas le C (ou SQL), de toute manière, on attend que ces langages crèvent depuis les années 80.
- C++ , en abusant des templates.
Ils se reconnaitront, je pense.
Je te conseille plutot déjà de te focaliser sur ton algo et le simplifier/l'améliorer au possible (tu es clairement dans une situation ou étudier la complexité est une bonne chose), le choix du langage viendra ensuite (c'est déjà fait?)
Marsh Posté le 25-02-2009 à 22:44:13
C'est un produit de convolution ,donc avec une FFT 2D, ça devrait nettement améliorer les choses.
http://fr.wikipedia.org/wiki/Produit_de_convolution
Avec une lib qui va bien, ça doit être quasi instantané. Au pire, tu crées un petit exécutable n ligne de commande qui lit le fichier, fait le calcul, réécrit, et derrière, ton programme PHP relit le résultat. C'est bourrin, mais je dirais au pifomètre ~1-2s sur un PC récent.
Ah, et personne n'a cité le Fortran, langage par excellence pour ce genre de chose
Marsh Posté le 25-02-2009 à 18:05:10
Bonjour à tous,
Je me suis inscrit sur HFR pour vous demander un peu d'aide, en effet pour lisser une carte j'utilise la méthode suivante :
- Stockage des données utilisées dans un array avec position X/Y (les données sont pas toujours aux mêmes endroits )
- Pour chaque pixel de l'image, calcul de la moyenne pondérée en prenant les données situées dans un rayon de 50px autour du pixel
Le soucis de ce système c'est qu'il prend beaucoup de temps à s'exécuter en php cgi, environ 50/60s pour une map de 500/500 avec 80 données.
Auriez-vous une méthode pour améliorer cela ou alors connaitriez-vous un language excellent dans ce genre de calculs ?
Merci d'avance.
Bonne soirée.
Message édité par Malicote le 25-02-2009 à 18:33:08