Ir ao conteúdo
  • Cadastre-se

Bruno Zanarella

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...