Matlab - vision por computadora

 
Vista:

vision por computadora

Publicado por Jose Luis Avila (1 intervención) el 28/03/2005 18:48:30
hola me encuentro realizando un proyecto de vision por computadora para reconocer enfermedades de hojas de melon, pero tengo un problema el reconocimiento lo hago a travez de histogramas y no me da un resultado exacto de la enfermedad, me dijeronque tengo que manejar histogramas con convinaciones de colores pero no tengo idea de como hacerlo, se que los histogramas los puedo manejar a niveles de gris, no conozco muy bien matlab, si hay alguien que me pueda ayudar se lo agradeceria mucho pues es donde me estoy atorando en estos momentos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Mejorando el reconocimiento de enfermedades en hojas de melón con histogramas de color

Publicado por Alejandro (145 intervenciones) el 06/10/2023 22:00:26
¡Entiendo que estás trabajando en un proyecto interesante, José! Para mejorar el reconocimiento de enfermedades en hojas de melón utilizando histogramas de color en Matlab, puedes considerar los siguientes pasos:

1. Representación del histograma de color:
- Utiliza la función `imhist` para generar histogramas de color en lugar de niveles de gris. Puedes especificar el número de bins para cada canal de color (rojo, verde, azul) y luego concatenar estos histogramas para obtener un histograma de color completo.

1
2
3
4
5
6
7
imagen = imread('nombre_imagen.jpg');  % Reemplaza 'nombre_imagen.jpg' con el nombre de tu imagen
[countsR, binLocationsR] = imhist(imagen(:,:,1), numBins);
[countsG, binLocationsG] = imhist(imagen(:,:,2), numBins);
[countsB, binLocationsB] = imhist(imagen(:,:,3), numBins);
 
% Concatenar los histogramas de color
histogramaColor = [countsR, countsG, countsB];

2. Normalización del histograma:
- Normaliza el histograma de color para que sea invariante ante cambios en la iluminación y la exposición.

1
histogramaColorNormalizado = histogramaColor / sum(histogramaColor);

3. Comparación de histogramas:
- Utiliza medidas de similitud, como la correlación o la distancia Chi-cuadrado, para comparar el histograma de color de la imagen de la hoja de melón con un histograma de referencia (sin enfermedad).

1
similitud = corr2(histogramaColorNormalizado, histogramaReferenciaNormalizado);

4. Ajuste de parámetros:
- Experimenta con el número de bins y otros parámetros para obtener resultados óptimos. Puedes ajustar la sensibilidad y especificidad del reconocimiento.

5. Segmentación basada en color:
- Utiliza la información del histograma de color para segmentar la imagen y resaltar las áreas relevantes que podrían indicar enfermedades en las hojas de melón.

1
2
3
4
% Ejemplo de segmentación por color rojo
mask = (imagen(:,:,1) > umbralRojo) & (imagen(:,:,2) < umbralVerde) & (imagen(:,:,3) < umbralAzul);
imagenSegmentada = imagen;
imagenSegmentada(repmat(~mask, [1, 1, 3])) = 0;

Ajusta `umbralRojo`, `umbralVerde`, y `umbralAzul` según la gama de colores de las enfermedades que estás buscando.

Estos son solo pasos generales y es posible que necesites adaptarlos según los detalles específicos de tu proyecto y las características de las imágenes que estás analizando. ¡Buena suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar