Matlab fusion d'images
Résolu/Fermé
OConell
Messages postés
139
Date d'inscription
samedi 1 novembre 2008
Statut
Membre
Dernière intervention
13 octobre 2010
-
6 déc. 2009 à 00:57
OConell Messages postés 139 Date d'inscription samedi 1 novembre 2008 Statut Membre Dernière intervention 13 octobre 2010 - 6 déc. 2009 à 21:01
OConell Messages postés 139 Date d'inscription samedi 1 novembre 2008 Statut Membre Dernière intervention 13 octobre 2010 - 6 déc. 2009 à 21:01
A voir également:
- Matlab fusion d'images
- Display fusion - Télécharger - Divers Utilitaires
- Des images - Guide
- Fusion pdf - Guide
- Fusion mp3 - Télécharger - Audio & Musique
- Ia qui crée des images - Accueil - Intelligence artificielle
2 réponses
OConell
Messages postés
139
Date d'inscription
samedi 1 novembre 2008
Statut
Membre
Dernière intervention
13 octobre 2010
8
6 déc. 2009 à 02:50
6 déc. 2009 à 02:50
bon alors j'ai une solution mais cela m'amène à d'autres problèmes...
pour mettre la petite image (photo2) dans la grande (img_vid) voila le code :
for i=176:325
for j=148:357
img_vid(i,j,1)=double(photo2(i-175,j-147,1));
img_vid(i,j,2)=double(photo2(i-175,j-147,2));
img_vid(i,j,3)=double(photo2(i-175,j-147,3));
end
end
% je ne sais plus si les double(...) sont utiles...
mais en fait photos 2 est une image transformé grâce à ça :
photo = imread('logomatlab.jpg');
coord_ini = [0 0 ; info.Width 0 ; info.Width info.Height ; 0 info.Height];tform = cp2tform(coord_ini,picots_ord,'projective');
photo2 = imtransform(double(photo),tform);
...
et c'est à la suite de ça que vient l'incrustation.
Par contre, la transformation (une homothétie) créait une image rectangulaire, avec la photo transformée en travers et remplie le reste en noir soit la valeur : 0
Mon but est de ne pas coller ces zones sur la grande image.
a noter que un test de ce genre me ignorerais certainement toutes les valeur 0 de mon image... :
for i=176:325
for j=148:357
if(photo2~=0)
img_vid(i,j,1)=double(photo2(i-175,j-147,1));
img_vid(i,j,2)=double(photo2(i-175,j-147,2));
img_vid(i,j,3)=double(photo2(i-175,j-147,3));
end
end
end
j'espère que quelqu'un pourra m'aider...
(le but final si ça intéresse quelqu'un est de remplacer une zone mobile d'une vidéo par une image et ça uniquement avec matlab)
pour mettre la petite image (photo2) dans la grande (img_vid) voila le code :
for i=176:325
for j=148:357
img_vid(i,j,1)=double(photo2(i-175,j-147,1));
img_vid(i,j,2)=double(photo2(i-175,j-147,2));
img_vid(i,j,3)=double(photo2(i-175,j-147,3));
end
end
% je ne sais plus si les double(...) sont utiles...
mais en fait photos 2 est une image transformé grâce à ça :
photo = imread('logomatlab.jpg');
coord_ini = [0 0 ; info.Width 0 ; info.Width info.Height ; 0 info.Height];tform = cp2tform(coord_ini,picots_ord,'projective');
photo2 = imtransform(double(photo),tform);
...
et c'est à la suite de ça que vient l'incrustation.
Par contre, la transformation (une homothétie) créait une image rectangulaire, avec la photo transformée en travers et remplie le reste en noir soit la valeur : 0
Mon but est de ne pas coller ces zones sur la grande image.
a noter que un test de ce genre me ignorerais certainement toutes les valeur 0 de mon image... :
for i=176:325
for j=148:357
if(photo2~=0)
img_vid(i,j,1)=double(photo2(i-175,j-147,1));
img_vid(i,j,2)=double(photo2(i-175,j-147,2));
img_vid(i,j,3)=double(photo2(i-175,j-147,3));
end
end
end
j'espère que quelqu'un pourra m'aider...
(le but final si ça intéresse quelqu'un est de remplacer une zone mobile d'une vidéo par une image et ça uniquement avec matlab)
OConell
Messages postés
139
Date d'inscription
samedi 1 novembre 2008
Statut
Membre
Dernière intervention
13 octobre 2010
8
6 déc. 2009 à 21:01
6 déc. 2009 à 21:01
Pour la suite si cela interesse quelqu'un, suite sur ce topic :
https://forums.commentcamarche.net/forum/affich-15499243-algo-point-dans-un-rectangle
https://forums.commentcamarche.net/forum/affich-15499243-algo-point-dans-un-rectangle