Quiero extraer solo las uvas de las imágenes. Desafortunadamente, a veces no obtengo las uvas exactamente.
Tengo un código que no funciona bien en todos los casos. A veces, no diferencia entre las sombras y las uvas.
La imagen de entrada de ejemplo:
El resultado que estoy obteniendo:
Y este es mi 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);
Creo que esta pregunta es más apropiada en SE dsp ...
—
bla
@nate, gracias ... pero, ¿qué significa SE dsp? Leí que es un entorno pequeño, pero realmente no lo sé: ¿me puede decir por favor sobre eso?
Alon, he probado tu código, y realmente no entiendo lo que no es exacto al respecto. filtra las sombras muy bien.
—
bla
@Alon Shmiel El par de entrada / salida que proporcionó parece producir buenos resultados. ¿Quizás podría señalar específicamente dónde está el problema en esta salida en particular, o, alternativamente, publicar un par de imágenes de entrada / salida donde los problemas sean más fácilmente visibles?
—
Penélope
Creo que el problema original de Alon's es eliminar las sombras oscuras directamente debajo de cada uva y no las que parecen un cilindro alargado. Necesita segmentar con precisión la uva sola: las formas se ven raras y no ovales o circulares debido a las sombras. ¿O no son sombras sino la piel exterior más delgada de la uva que refracta la luz para que se vea así?