Bonjour a tous,
voici sans doute un topic non habituel mais voila je travaille actuellement sur du dé-mixage spectral. Peu habitué aux mathématiques poussées je buche un peu sur un problème de calcul matriciel. Voici mon problème :
Soit le système :
X=Y*K'
avec
X=[x11 .... x1k]
[ .......... ]
[ xI1 ... xIK]
(expérimentalement) X est une matrice de 4000 lignes avec 40 variables
(spectre pixel mixtes)
K=[k11 .... k1J]
[ ............ ]
[kK1 ......KkJ]
(expérimentalement) K est une matrice de 363 lignes avec 40 variables
(spectres pixels purs)
Y=[y11 ... y1J]
[ ...............]
[yI1 ..... yIJ]
(expérimentalement) Y est une matrice de concentration que je cherche à déterminer
Ce système supose donc qu'un pixel mixte correspond la somme des spectres pixels purs multipliés chacun par une concentration.
je connais X et K J'essaye donc de déterminer Y :
Y=X*K*(K' *K)^-1
cependant Y est une matrice de concentration et les résultats obtenus sont négatifs ou >100% ce qui me va pas du tout.
J'ai testé d'inverser le processus car je connais aussi Y (le but principal étant de le calculer puis de le comparer à celui connu)
Lorsque j'effectue l'opération Y' *(Y' *Y)^-1*X=K et que je compare K calculé avec K connu J'obtiens d'excellents résultats
Ma question est donc comment est il possible d'obtenir de bons résultats dans l'étape 2 et pas dans l"étape 1
et existe-il un moyen de contraindre Y tel que somme des éléments d'une ligne = 100% ou 1 et rendre impossible les concentrations négatives
Merci beaucoup .
