Bonjour!

Dans le cadre d'un Pan-sharpening (fusion d'images), je dois comparer une image Pan (N&B) et une image I combinaison linéaire des bandes de couleur.

I=k1*B+k2*V+k3*R+k4*NIR+b

Le but est d'approcher Pan avec I.

j'ai réussi à faire une regression linéaire au sens des moindres carrés à coefficients non négatifs.

Mais celle ci me donne des coefficients nuls: ce qui signifie que pour matcher les images panchromatiques et intensité, il n'y a pas besoin de toutes les bandes.

Cela me dérange un peu et j'aimerai mettre comme contrainte à la méthode lsqnonneg : s'il te plait ne me rend pas de coefficients nuls.

Voila mon challenge actuel.

Ci joint le code de ma fonction d'optimisation des coefficients:

Code:
function [w1, w2, w3, w4, b]= optimise (B,V,R,NIR,PAN)

[M,N]=size(B)
size(PAN)
dim=M*N;

B_shape=reshape(B,dim,1);
V_shape=reshape(V,dim,1);
R_shape=reshape(R,dim,1);
NIR_shape=reshape(NIR,dim,1);
P_shape=reshape(PAN,dim,1);

size(P_shape)

A=ones(dim,4);

A(:,1)=R_shape;
A(:,2)=B_shape;
A(:,3)=V_shape;
A(:,4)=NIR_shape;

size(A)

b=0;

w=lsqnonneg(A,P_shape)
size(w)

w1=w(1)
w2=w(2)
w3=w(3)
w4=w(4)

err=A*w-P_shape;

b=mean(err)

end
Résultat:
w1 =0

w2 =0.7947

w3 =0

w4 =0.0587

b =-6.3698