Bonjour à tous !

Voici mon problème : je cherche a déterminer les caractéristiques directionnelles d'une source lumineuse, à partir de projections prises à différentes distances.
Pour faire simple, je cherche I(x,y,theta) en z=0 en comparant avec les "images" Q(x,y) en z=0:10. Pour cela, je défini un I, le projette en z=1:10, compare avec les Q correspondant, ce qui défini une fonction objectif a minimiser.
Le problème est que mon I fait 80*80*5 et que les projections en z sont longues (~1minute : pour chaque point je parcoure différentes directions theta, retrouve le I correspondant et l’additionne, moyennant pas mal de géométrie). Du coup, si j'ai bien retenu mes cours d'algo, toutes méthodes avec calcul d'une matrice de sensibilité demande de calculer une matrice de (80*80*5)*(80*80*5) soit 1 milliard de valeur... ce qui est à la fois trop gros et trop long !

J'utilise MATLAB et j'ai essayé fminsearch (erreur, matrice a créer trop grosse), fminunc, GA et LMFnlsql (algo performant déjà utilisé avant) mais même après une semaine de calcul pas de trace d’itération. Les 4 coeurs de mon pc tournent, ma fonction objectif est bien fonctionnelle, et la solution initiale pas trop éloignée.

Voila mes questions :
Pensez-vous que cette approche est correct et qu'il faut juste plus de temps ? Ou que dans tous les cas le calcul est planté ?
Une idée d'un algorithme utilisable ? je pensais à un adaptation d'un algorithme pour la reconstruction d'image (logiquement fait pour travailler avec d'aussi grosses variable), mais je n'y connais rien.

Évidemment, la réponse qui vous sautera aux lèvres sera : "Commence par utiliser un langage plus efficace et pour lequel des tonnes d'algo existe depuis 20 ans, comme C++ ou fortran..."
C'est pas faux. Mais apprendre un nouveau langage est long ! et je peux avoir accès à un cluster, si je suis sûr que mon problème est solutionnable.

Merci de me faire part de vos remarques/conseils, tout est le bienvenue !

Cordialement,

GL