Main Content

Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Evaluar las métricas de calidad en el gráfico de pruebas de eSFR

En este ejemplo se muestra cómo realizar mediciones de calidad estándar en un gráfico de prueba de respuesta de frecuencia espacial de borde (eSFR) ®.Imatest Las propiedades medidas incluyen nitidez, aberración cromática, ruido, iluminación y precisión de color.

Crear un objeto de gráfico de prueba

Lea una imagen de un gráfico de eSFR en el espacio de trabajo. Mostrar el gráfico.

I = imread('eSFRTestImage.jpg'); figure imshow(I) title('Captured Image of eSFR Chart') text(size(I,2),size(I,1)+15, ...     ['Chart courtesy of Imatest',char(174)],'FontSize',10,'HorizontalAlignment','right');

Cree un objeto de gráfico de prueba de eSFR que defina automáticamente las regiones de interés (ROI) en función de los marcadores de registro detectados.

chart = esfrChart(I);

Resalte y etiquete los ROI detectados para confirmar visualmente que los ROI son adecuados para las mediciones.

displayChart(chart)

Los 60 ROI de borde eslanado (etiquetados en verde) son visibles y se centran en los bordes apropiados. Además, 20 ROI de parche gris (etiquetados en rojo) y 16 ROIs de parche de color (etiquetados en blanco) son visibles y están contenidos dentro del límite de cada parche. El gráfico se importa correctamente.

Medir la nitidez del borde

Mida la nitidez de los 60 ROI de borde eslanado. También mida la nitidez horizontal y vertical promediada de estos IAP.

[sharpnessTable,aggregateSharpnessTable] = measureSharpness(chart);

Visualice la gráfica SFR para los primeros cuatro ROI.

plotSFR(sharpnessTable,'ROIIndex',1:4,'displayLegend',false,'displayTitle',true)

Visualice el SFR medio de los bordes verticales y horizontales promediados. El SFR vertical promedio cae más rápidamente que el SFR horizontal promedio. Por lo tanto, el borde vertical promedio es menos nítido que el borde horizontal promedio.

plotSFR(aggregateSharpnessTable)

Medir la aberración cromática

Mida la aberración cromática en todos los ROI de borde eslanado.

chTable = measureChromaticAberration(chart);

Trazar el perfil de intensidad normalizada de los tres canales de color en el primer ROI. Almacene el perfil de borde normalizado en una variable independiente, , para mayor claridad.edgeProfile

roi_index = 1; edgeProfile = chTable.normalizedEdgeProfile{roi_index};  figure p = length(edgeProfile.normalizedEdgeProfile_R); plot(1:p,edgeProfile.normalizedEdgeProfile_R,'r', ...      1:p,edgeProfile.normalizedEdgeProfile_G,'g', ...      1:p,edgeProfile.normalizedEdgeProfile_B,'b') xlabel('Pixel') ylabel('Normalized Intensity') title(['ROI ' num2str(1) ' with Aberration ' num2str(chTable.aberration(1))])

Los canales de color tienen perfiles de intensidad normalizados similares, y no hay mucho borde de color visible a lo largo del borde.

Medir el ruido

Mida el ruido utilizando los 20 ROI de parche gris.

noiseTable = measureNoise(chart);

Trazar la señal sin procesar promedio y la relación señal-ruido (SNR) en cada ROI en escala de grises.

figure  subplot(1,2,1) plot(noiseTable.ROI,noiseTable.MeanIntensity_R,'r', ...     noiseTable.ROI,noiseTable.MeanIntensity_G,'g', ...     noiseTable.ROI,noiseTable.MeanIntensity_B,'b') title('Signal') ylabel('Intensity') xlabel('Gray ROI Number') grid on  subplot(1,2,2) plot(noiseTable.ROI,noiseTable.SNR_R,'r', ...     noiseTable.ROI,noiseTable.SNR_G,'g', ...     noiseTable.ROI,noiseTable.SNR_B,'b') title('SNR') ylabel('dB') xlabel('Gray ROI Number') grid on

Estimar Illuminante

Calcule la iluminación de la escena utilizando los 20 ROI de parche gris. El iluminador tiene un componente azul más fuerte un componente rojo más débil, que es consistente con el tinte azul de la imagen del gráfico de prueba.

illum = measureIlluminant(chart)
illum = 1×3

  110.9147  116.0008  123.2339

Medir la precisión del color

Mida la precisión del color con los 16 ROI de parches de color.

[colorTable,ccm] = measureColor(chart);

Muestre el color medio medido y el color esperado de los IUU. Mostrar la medición de precisión de color, .Delta_E Cuanto más cerca esté el valor de 1, menos perceptible es la diferencia de color.Delta_E Los valores típicos oscilan entre 3 y 6 para la impresión y hasta 20 en otras aplicaciones comerciales.Delta_E

figure displayColorPatch(colorTable)

Trazar los colores medidos y de referencia en el espacio de color CIE 1976 L*a*b* en un diagrama de cromaticidad. Los círculos rojos indican el color de referencia. Los círculos verdes indican el color medido de cada parche de color.

figure plotChromaticity(colorTable)

Puede utilizar la matriz de corrección de color, , para corregir el color de las imágenes del gráfico de prueba.ccm Para obtener un ejemplo, consulte .Corregir colores usando la matriz de corrección de color

Consulte también

| | | | | |

Temas relacionados