Centrer image

tomcb1 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
tomcb1 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je dispose d'une image rgb avec une petite partie interessante en couleur sur un fond noir.

Je sohaite placer cette partie coloree au centre de l'image et zoomer dessus si possible.

Je ne veux pas utiliser les coordonnees de la partie couleur car elle pourrait etre situee n'importe ou sur l'image...
Je ne souaite pas non plus utiliser les outils de croping que j'ai vu sos matlab car je ne veux pas d'interraction avec utilisateur.

Je dois donc jouer avec les couleurs de l'image faire une boucle avec si les pixels differents de zeros...
Puis supprimer tous les pixels se trouvant 100 pixels au dessus, 100 en dessous, 100 a gauche et 100 a droite par exemple...
Puis zoomer.

Pensez vous que ceci est faisable?
Quelqu'un aurait une idee de commande pour supprimer les pixels? pour zoomer?

Merci
A voir également:

1 réponse

tomcb1 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai don fait le cod suivat. Tout semble fonctioner, sauf que l'image que je recupere est a presen en niveau de gris et ce malgre que'elle soit de dimension 3. Quelqu'un qurqit une idee??

%Pour trouver les pixels colores (rouges)

for i=1:955
for j=1:984

if I(i,j,1)>=205 & I(i,j,2)<=150 & I(i,j,3)<=150
I2(i,j,1)=I(i,j,1);
I2(i,j,2)=I(i,j,2);
I2(i,j,3)=I(i,j,3);
else
I2(i,j,1)=0;
I2(i,j,2)=0;
I2(i,j,3)=0;
end
end
end

%Pour trouver leurs coordonnees:

I2=uint8(I2);

[x,y]=find(I2);

X=I2(sub2ind(size(I2),x,y));

%Pour recentrer puis zoomer:

Is=I2(x-150:x+150,y-150:y+150);
Is=imresize(Is,[955,984]);
Is=cat(3,Is,Is,Is);
0