travail sur images - objet le plus adéquat ? - Java - Programmation
Marsh Posté le 30-09-2004 à 21:18:23
meumeul a écrit : Et le truc c'est que faire un algo efficace dans un double[][] c vraiment vraiment lent. |
Tu n'as même pas l'overhead propre à une collection plus 'sophistiquée'; je ne vois pas en quoi double[][] serait foncièrement mauvais.
Peut-être ton algo est-il mauvais / pas correctement optimisé, ou ton traitement est-il vraiment très lourd.
Marsh Posté le 30-09-2004 à 21:21:37
Les algos c les chercheurs du labo qui les ecrivent
Les autres, c des algos classiques de génie des mathématiques...
Mais bon c vrai c peut etre l'implémentation qui cloche...
Donc le mieux c un double[][] ?
edit: sachant que les images peuvent avoir jusque 3000 couches,
de taille bien plus que 1000*1000 px... Ca en fait des pixels...
On se ballade dans 3000 double[][] d'une taille trés grande.
Marsh Posté le 30-09-2004 à 21:24:59
ah oui un autre truc. Sur de gros gros algos, vous preferrez une définition itérative ou récursive ? dans ce cas la par exemple.
Recursif c bien plus clair, mais pas plus lent ? surtout que la pile doit etre énorme nan ?
Marsh Posté le 30-09-2004 à 21:30:02
meumeul a écrit : Les algos c les chercheurs du labo qui les ecrivent |
Des physiciens ou des informaticiens
Tu parles de 3000 couches. Comment justement représentes-tu 3000 fois ton double[][] ?
A structure énorme, lenteur en conséquence
Récursif, c'est génial d'un point de vue conceptuel, mais outre le fait que ce soit sans doute plus lent (stocker les appels sur la pile), ça bouffe solidement la mémoire... Je suis déjà tombé sur des out of memory pour des traitements bien plus anodins.
Marsh Posté le 30-09-2004 à 21:37:03
Les 3000 couches ca tourne sur des gros multi procos, quil fo reserver 15 jours a lavance. Moi mes tests sont sur des images de 150*100 de trois couches environ. Et c'est pas super super rapide.
Les chercheurs c'est des informaticiens donc avec des bases solides de maths. Enfin je pense
Et sinon pour la structure, de marbre, double[][] ?
Marsh Posté le 30-09-2004 à 21:43:45
sircam a écrit : Tu parles de 3000 couches. Comment justement représentes-tu 3000 fois ton double[][] ? |
Quelle structure ?
Marsh Posté le 30-09-2004 à 21:50:10
j'ai pas matté. je crois que c un vector... c mal en plus les vector. Les profs sont doués en algos, mais pas en prog
Marsh Posté le 30-09-2004 à 22:00:07
meumeul a écrit : j'ai pas matté. je crois que c un vector... c mal en plus les vector. Les profs sont doués en algos, mais pas en prog |
J'ai rien contre Vector. Mais si tu connais le nombre de couches avant initialisation, fait plutôt un... double[][][]
Marsh Posté le 30-09-2004 à 22:03:57
ReplyMarsh Posté le 30-09-2004 à 22:05:02
moi j'ai banni les vetcor, j'adore les ArrayList et compagnie
edit: dailleurs les Vectors, ca devrait etre deprecated, mais il
le font pas parce que y'en a partout partout partout. (cf un article
que je trouve plus )
Marsh Posté le 30-09-2004 à 22:08:29
Joel F a écrit : dés fois le C /C++ c'est mieux hein |
Beh ouais, mais bon.
Marsh Posté le 30-09-2004 à 22:08:33
Joel F a écrit : dés fois le C /C++ c'est mieux hein |
pour ce genre de choses c sur... Mais c pas moi qui décide
Marsh Posté le 30-09-2004 à 22:09:11
meumeul a écrit : moi j'ai banni les vetcor, j'adore les ArrayList et compagnie |
Faut bien entendu plus commencer avec ça, mais si t'as du code existant, pas la peine de t'exiter à tout convertir.
Marsh Posté le 30-09-2004 à 22:10:31
meumeul a écrit : pour ce genre de choses c sur... Mais c pas moi qui décide |
mouais mes de structures de cette taille en JAVA c'est du suicide.
et je veut même pas voir la geule des algos.
Notez : j'ai rien contre JAVA, j'en fait aussi, mais dés fois faut savoir quel outil utilisé ...
Marsh Posté le 30-09-2004 à 22:13:27
ouais enfin quand tu voua la machine qui fait les calculs, avec du c tu gagnerai peut etre 3 jours sur deux semaines de calculs. et vu que c des branleurs, il sen foutent
Marsh Posté le 30-09-2004 à 22:13:34
Joel F a écrit : mouais mes de structures de cette taille en JAVA c'est du suicide. |
C'est évident. Ici, Java est moins qu'optimal. Peut-être PHP ou VB . Sérieusement, en dehors d'un truc raw powaa genre C/C++, c'est pas terrible.
Marsh Posté le 30-09-2004 à 22:15:01
meumeul a écrit : ouais enfin quand tu voua la machine qui fait les calculs, avec du c tu gagnerai peut etre 3 jours sur deux semaines de calculs. et vu que c des branleurs, il sen foutent |
... de la confiture au cochon.
Ils ont une machien aprrallele pour faire du number crushign alros qu'ils pourraient develloper des algos full parrallel ...
Marsh Posté le 30-09-2004 à 22:17:27
ben en utilisant des squelette de parrallélisation, faire communiquer les noeuds, utiliser du multiproc si possible ...
au lieu de dire j'ai 100000 entrées et 100 machines donc ca fait 1000 trucs par machine ...
Marsh Posté le 30-09-2004 à 22:18:22
Houla, ca dépasse mon niveau ca... Ca se programme en java ton truc ? (m'en veut pas si je capte rien )
Marsh Posté le 30-09-2004 à 22:19:20
no idea
je vais demander la prochaine fois que je vois le prof
le truc c que ca doit tourner sur les machines banales nux ou win
ET sur multi proco je sais pas koi.
Ton truc c spécifiques a un "paralel" ?
Marsh Posté le 30-09-2004 à 22:23:40
qqs liens :
MPI :
http://www-unix.mcs.anl.gov/mpi/
les squellettes :
http://homepages.inf.ed.ac.uk/mic/Skeletons/
http://wwwlasmea.univ-bpclermont.f [...] tions.html
Marsh Posté le 30-09-2004 à 22:24:27
super je me look ca.
Javais jamais entendu parler.... pauvre de moua
Marsh Posté le 30-09-2004 à 22:54:24
ca va devenir de la classification hybride non superviséee paralelle
mdr
Marsh Posté le 01-10-2004 à 19:58:20
donc double [][] ?
(désolé pour le up, mais je commence surement la semaine prochaine, fo que je sache )
Marsh Posté le 30-09-2004 à 21:08:38
Bonjour,
Je vais bosser sur un projet qui soccupe de trier les points
d'images.
En clair, on fait des familles de points selon des critère définis
selon certain algos.
Donc tous les pixels de l'images vont etre lu (parfois plusieurs fois) et rangés.
Mon probleme, quel structure utiliser pour mon image ?
Pour le moment, on lit l'image et on la balaie pour faire un
tableau du genre double[][] (double car en fait la valeur du pixel
est une longeur d'onde)
Et le truc c'est que faire un algo efficace dans un double[][] c vraiment vraiment lent.
Je pensais à d'autre structure, comme BufferedImage ou les canvas.
Jai besoin d'aide pour choisir une structure adéquate
Merci
edit: pour ceux que ca dit kkchose, en fait
c'est un projet de classification d'images sattelites
Message édité par meumeul le 30-09-2004 à 21:11:14