Bonjour à tous,
et oui le retour. Sauf que cette fois-ci c'est mon code qui ne fonctionne pas.
Enfin, je vous explique:
J'ai mon image :
J'ai transformé mon image dans un premier temps en utilisant ce code pour avoir les trois images équivalentes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 >> Im=imread('mon_image.jpg'); >> image(Im(:,:,1))
Puis celui-ci pour le nouveau rendu:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >>YCBCR=rgb2ycbcr(Im); >> Y=YCBCR(:,:,1);CB=YCBCR(:,:,2);CR=YCBCR(:,:,3); >> imshow(Y),figure;imshow(CB);figure;imshow(CR)
Y est la Luminance, I et Q les chrominances.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >> Y2NTSC=rgb2ntsc(Im); >> Y2=Y2NTSC(:,:,1);I=Y2NTSC(:,:,2);Q=Y2NTSC(:,:,3); >> imshow(Y2),figure;imshow(I);figure;imshow(Q)
Je dois maintenant construire une image que j'appellerai J ne contenant que des 0. Pour cela, j'ai appliqué le code suivant :
Est-ce le bon procédé pour construire l'image?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >>J=Im; >>tab_zeros=zeros(486,737)
Maintenant, je dois reconstruire mon image en utilisant l'instruction ntsc2rgb à partir des combinaisons J,I,Q ; Y2,J,Q ; Y2,I,J
Je pensais alors utiliser ce code :
Mais cela équivaut à trois images, et non pas à une seule. Alors ma question est la suivante : "Comment peut-on reconstruire une image?"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >> JRGB=ntsc2rgb(Im); >> J=JRGB(:,:,1);I=JRGB(:,:,2);Q=JRGB(:,:,3); >> imshow(J),figure;imshow(I);figure;imshow(Q);
J'ai beau cherché et ça doit être simple, mais Matlab me pose de sérieux problèmes de compréhension.
Merci de m'éclairer sur la sombre voie de la connaissance.![]()
Partager