Correspondance histogramme de deux images colorées en matlab
Quelqu'un sait comment effectuer histogramme RVB correspondants sur les deux images colorées?
par exemple c'est une image pour être mappés:
et c'est une image de la cible
Puis le RVB reconfiguré image ressembler à ceci
voici ce que j'ai fait jusqu'à présent, dans ce code, j'ai pris deux images en couleur im1
et im2
J'ai pris la im1
qui est celui qui doit être redistribué ensuite divisé en
ses couleurs puis j'ai pris chaque couleur de im1 et utilisé histeq
pour correspondre à leurs histogrammes de
chaque couleur dans im2
.
Je ne sais pas comment reconstruire la re-mapped image de la couleur, je suis parvenue à, toute aide s'il vous plaît ce serait sympa??:
im1 = imread('Atlas-Mer.png');
im2 = imread('techno-trs.png');
Red1 = im1(:, :, 1);
Green1 = im1(:, :, 2);
Blue1 = im1(:, :, 3);
.
.
.
Red2 = im2(:, :, 1);
Green2 = im2(:, :, 2);
Blue2 = im2(:, :, 3);
red2n = histeq(Red2,HnRed1);
green2n = histeq(Green2,HnGreen1);
blue2n = histeq(Blue2,HnBlue1);
source d'informationauteur Glove
Vous devez vous connecter pour publier un commentaire.
Il vous suffit de faire:
etc.
Bien ça fait des mois depuis que la question initiale a été posté, mais je pense que tout le monde peut utiliser une approche alternative à ce qui a été proposé: le code suivant met les trois canaux de couleur dans une image RVB:
rgb_out = cat(3, red2n, green2n, blue2n);
Matlab dispose désormais d'une fonction intégrée dans le Traitement de l'Image boîte à outils pour ce faire:
http://www.mathworks.com/help/images/ref/imhistmatch.html
Mais si vous avez une ancienne version de Matlab (j'ai 2010b et il ne comprend pas imhistmatch.m), c'est la fonction qui fait classique histogramme correspondant:
https://www.mathworks.com/matlabcentral/fileexchange/27396-matchhistograms