Quero extrair apenas as uvas das imagens. Infelizmente, às vezes eu não entendo exatamente as uvas.
Eu tenho um código que não funciona bem em todos os casos. Às vezes, não diferencia entre as sombras e as uvas.
A imagem de entrada de exemplo:
O resultado que estou obtendo:
E este é o meu código:
RGB = imread('DSC02807.JPG');
GRAY = rgb2gray(RGB);
threshold = graythresh(GRAY);
originalImage = im2bw(GRAY, threshold);
originalImage = bwareaopen(originalImage,250);
SE = strel('disk',10);
IM2 = imclose(originalImage,SE);
originalImage = IM2;
imshow(originalImage);
Eu acho que esta questão é mais apropriado em SE DSP ...
—
bla
@ Nate, obrigado .. mas o que significa SE DSP? Eu li que é um ambiente pequeno, mas eu realmente não sei: / você pode me dizer, por favor?
Alon, testei seu código e realmente não entendo o que não é exato. filtra muito bem as sombras.
—
bla
@Alon Shmiel O par de entrada / saída que você forneceu parece produzir bons resultados. Talvez você possa apontar especificamente onde está o problema nessa saída específica ou, alternativamente, postar um par de imagens de entrada / saída em que os problemas são mais facilmente visíveis?
—
Penelope
Penso que o problema original de Alon é o de remover as sombras escuras diretamente abaixo de cada uva e não as que parecem um cilindro alongado. Você precisa segmentar com precisão a uva sozinha - as formas parecem estranhas e não ovais ou circulares das sombras. Ou não são sombras, mas a pele mais fina da uva que refrata a luz para se parecer com isso?