Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

esfrChart

Imatest® edge spatial frequency response (eSFR) test chart

Description

An esfrChart object encapsulates the enhanced version of the Imatest® edge spatial frequency response (eSFR) test chart.

The Enhanced eSFR test chart is an extended version of the ISO 12233:2014 standard test chart [2].

Creation

Syntax

chart = esfrChart(A)
chart = esfrChart(A,'Sensitivity',s)
chart = esfrChart(A,'RegistrationPoints',p)

Description

chart = esfrChart(A) creates an esfrChart object and sets the Image property from input image A.

example

chart = esfrChart(A,'Sensitivity',s) creates an esfrChart object, using sensitivity s during chart import.

example

chart = esfrChart(A,'RegistrationPoints',p) creates an esfrChart object and sets the RegistrationPoints property from points in argument p.

Input Arguments

expand all

Sensitivity of chart detection, specified as a numeric scalar in the range [0, 1]. If you set a high sensitivity value, the esfrChart model detects more points of interest with which to register the test chart image.

Data Types: single | double

Properties

expand all

Test chart image, specified as an m-by-n-by-3 RGB image.

Data Types: single | double | uint8 | uint16

Position and intensity values of slanted edges, specified as a 60-by-1 vector of structures. Each element in the vector corresponds to one ROI and contains the following fields:

FieldDescription
ROIA 1-by-4 vector specifying the spatial extent of the ROI. The vector has the form [X Y Width Height]. X and Y are the coordinates of the top-left corner of the ROI. Width and Height are the width and height of the ROI, in pixels. ROI is of data type double.
ROIIntensityArray of intensity values within the ROI, in RGB format. The array has dimensions Height-by-Width-by-3. The data type of ROIIntensity matches the data type of the Image property.

Position and intensity values of gray patches, specified as a 20-by-1 vector of structures. Each element in the vector corresponds to one ROI and contains the following fields:

FieldDescription
ROIA 1-by-4 vector specifying the spatial extent of the ROI. The vector has the form [X Y Width Height]. X and Y are the coordinates of the top-left corner of the ROI. Width and Height are the width and height of the ROI, in pixels. ROI is of data type double.
ROIIntensityArray of intensity values within the ROI, in RGB format. The array has dimensions Height-by-Width-by-3. The data type of ROIIntensity matches the data type of the Image property.

Position and intensity values of color patches, specified as a 16-by-1 vector of structures. Each element in the vector corresponds to one ROI and contains the following fields:

FieldDescription
ROIA 1-by-4 vector specifying the spatial extent of the ROI. The vector has the form [X Y Width Height]. X and Y are the coordinates of the top-left corner of the ROI. Width and Height are the width and height of the ROI, in pixels. ROI is of data type double.
ROIIntensityArray of intensity values within the ROI, in RGB format. The array has dimensions Height-by-Width-by-3. The data type of ROIIntensity matches the data type of the Image property.

Position of registration points used to orient the image, specified as a 4-by-2 numeric matrix. The four rows correspond to the top-left, top-right, bottom-right, and bottom-left registration points, respectively. The two columns represent pixel coordinates in [x, y] format.

Data Types: double

Reference values of gray ROIs in the CIE 1976 L*a*b* color space, specified as a 20-by-3 numeric matrix. The three columns contain the L*, a*, and b* values of the gray patches, respectively. The rows contain the reference intensities of the 20 gray ROIs, in the same sequential order.

Note

The esfrChart object includes default CIE 1976 L*a*b* values for the gray ROIs. However, the actual reference values can vary depending on several factors, such as print quality.

Data Types: double

Reference values of color ROIs in the CIE 1976 L*a*b* color space, specified as a 16-by-3 numeric matrix. The three columns contain the L*, a*, and b* values of the color patches, respectively. The rows contain the reference intensities of the 16 color ROIs, in the same sequential order.

Note

The esfrChart object includes default CIE 1976 L*a*b* values for the color ROIs. However, the actual reference values can vary depending on several factors, such as print quality. Accurate reference color values result in more faithful color reproduction measurements.

Data Types: double

Object Functions

measureSharpnessMeasure spatial frequency response using Imatest® eSFR chart
measureChromaticAberrationMeasure chromatic aberration at slanted edges using Imatest® eSFR chart
measureNoiseMeasure noise using Imatest® eSFR chart
measureColorMeasure color reproduction using Imatest® eSFR chart
measureIlluminantMeasure scene illuminant using Imatest® eSFR chart
displayChartDisplay Imatest® eSFR chart with overlaid regions of interest

Examples

expand all

Read an image of an eSFR chart into the workspace. Display the image.

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');

Linearize the image. The displayed chart will appear darker because the image no longer has gamma correction.

I_lin = rgb2lin(I);

Create an esfrChart object using the linearized chart image. Specify the sensitivity that the esfrChart model uses to detect the points with which to register the chart image.

chart = esfrChart(I_lin,'Sensitivity',0.6)
chart = 
  esfrChart with properties:

                 Image: [1836x3084x3 uint8]
       SlantedEdgeROIs: [60x1 struct]
              GrayROIs: [20x1 struct]
             ColorROIs: [16x1 struct]
    RegistrationPoints: [4x2 double]
      ReferenceGrayLab: [20x3 double]
     ReferenceColorLab: [16x3 double]

Display the imported eSFR chart. Regions of interest (ROI) are highlighted and labeled.

displayChart(chart)

The chart is imported correctly. All 60 slanted edge ROIs (labeled with green numbers) are visible and centered on appropriate edges. 20 gray patch ROIs (labeled in red) and 16 color patch ROIs (labeled in white) are visible and are contained within the boundary of each patch.

Create an esfrChart object by specifying the coordinates of the four registration points. Registration points are located at the center of the black-and-white checkered circles.

Read an image of an eSFR chart into the workspace.

I = imread('eSFRTestImage.jpg');

Display the image and configure it to collect four registration points.

figure
imshow(I)
[X, Y] = ginput(4);

Click the registration points in this order: top-left, top-right, bottom-right, bottom-left.

Create an esfrChart object, specifying the four registration points. Display the imported eSFR chart. Regions of interest are highlighted and labeled. The registration points appear in red.

chart = esfrChart(I,'RegistrationPoints',[X, Y]);
displayChart(chart);

Tips

  • For accurate and reliable results, acquire an image of the test chart according to standard specifications outlined in the ISO standard and by the manufacturer [1] [2]. As a simple guideline, align the chart horizontally on a light background. Cover over 90% of the field of view with the chart, but ensure that the top and bottom edges of the chart are still visible. For reliable measurements, set the minimum image width to at least 500 pixels.

  • You can capture an image of the eSFR test chart at the full 16:9 aspect ratio, or at an aspect ratio of 3:2 or 4:3, as specified on the chart.

  • To ensure that the chart is properly imported, visually verify the test chart image using the displayChart function.

References

[1] ISO 12233:2014. "Photography – Electronic still picture imaging – Resolution and spatial frequency responses." International Organization for Standardization; ISO/TC 42 Photography. URL: https://www.iso.org/standard/59419.html.

[2] Using eSFR ISO Part 1. URL: http://www.imatest.com/docs/esfriso_instructions.

Introduced in R2017b

Was this topic helpful?