Ir ao conteúdo
  • Cadastre-se
Bruno Zanarella

MATLAB Coloração Seletiva

Recommended Posts

Fala galera, beleza? 

Tenho um código no matlab que faz a coloração seletiva usando o algoritimo k-means, agora preciso muda-lo para "Realizar a desaturação seletiva das cores diferentes de uma cor especificada:
1. Pela diferença (distância Euclideana) da cor de cada pixel da imagem em relação à cor especificada; 
 2. Pela diferença da cor média de um cluster dado pelo k-means em relação à cor especificada. Neste caso, o cluster com menor diferença deve ser selecionado para permanecer saturado. "

como já comecei o segundo caso, ja tenho um projeto que faz a coloração mas não passando uma cor especificada eu acho que é mais fácil...podem me ajudar? 

segue código, imagens para teste em anexo:

 

he = imread('pepers.jpg');figure, imshow(he);cform = makecform('srgb2lab');lab_he = applycform(he,cform);ab = double(lab_he(:,:,2:3));nrows = size(ab,1);ncols = size(ab,2);ab = reshape(ab,nrows*ncols,2);nColors = 4;[cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean','Replicates',5);pixel_labels = reshape(cluster_idx,nrows,ncols);figure, imshow(pixel_labels,[]), title('imagem separada pelos clusters');segmented_images = cell(5);rgb_label = repmat(pixel_labels,[1 1 3]);gray_he = repmat(rgb2gray(he),[1 1 3]);figure, imshow(gray_he);    %vetorCores = [255,0,0];   % r0 = vetorCores(1);  %  g0 = vetorCores(2); %   b0 = vetorCores(3);%E_distance = sqrt((r0-he(:,:,1))^2+(g0-he(:,:,2))^2+(b0-he(:,:,3))^2for k = 1:nColors color = he; %color(rgb_label ~= k) = color(rgb_label ~= k) * (1.0/10); color(rgb_label ~= k) = gray_he(rgb_label ~= k); %color = uint8(round(color)); segmented_images{k} = color;end%figure,imshow(segmented_images{1}), title('cluster 1');%figure,imshow(segmented_images{2}), title('cluster 2');%figure,imshow(segmented_images{3}), title('cluster 3');%figure,imshow(segmented_images{4}), title('cluster 4');for k = 1:nColors    imwrite(segmented_images{k}, ['resultado_' int2str(k) '.png']);end

post-750985-0-30014500-1420924821_thumb.

post-750985-0-07647700-1420924822.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×