HDRTest

>Psychtoolbox>PsychTests

HDRTest([dotest=all][, meterType=7][, highprecision=0][, screenid=max][, filename=’hdrmeasurements.mat’])

Perform some basic correctness tests and evaluation for HDR display operation,
using a Colorimeter.

Test if HDR-10 display mode delivers sufficiently correct and precise results
on a suitable HDR capable display setup and monitor.

This test script requires a supported Photometer or Colorimeter to be connected
for measurement of luminance and chromaticity, ie. XYZ tristimulus color values.

Supported devices are the ones listed in “help MeasXYZ”.

‘dotest’ Vector which selects which tests to perform. Defaults to “all tests”:
dotest = [luminance, redprimary, greenprimary, blueprimary], e.g., [1 0 0 0]
only do luminance test, [0 1 0 0] only do red primary test, [1 1 1 1] do all tests.

‘meterType’ id code of the measurement device to use, as listed in “help MeasXYZ”.
Defaults to meterType 7 for the CRS ColorCal2. If you specify a meterType
0 then the test script will run through as fast as possible without
measuring anything - a dry run if you want.

A meterType of -1 requests manual measurement and data entry. The script
will display a test stimulus, make a beep noise, and expect you to use
some external manually operated colorimeter to measure, then press a key.
After keypress a text will ask you to enter the measured luminance in
nits on the keyboard and press ENTER to finish data entry. Then it will
advance to the next measurement. The current measurement run can be
aborted by typing q instead of the nits value. Invalid entry will be
stored as NaN for “Not a number”.

If you don’t own a colorimeter supported by CMCheckInit(), but that is
controllable by Matlab/Octave code, please let us know. You can still
automate measurement yourself by specifying a meterType of 3 and then
providing the following functions in your Matlab/Octave function search
path: CRSColorInit() to initialize your colorimeter, CRSColorClose() to
shut it down again, and XYZ = CRSColorMeasXYZ() to perform a measurement
of XYZ tristimulus values. This “hijacks” the builtin support for the CRS
color toolbox for convenient use of your own colorimeter.

‘highprecision’ If set to 1, will request a fp16 16 bpc non-linear
floating point framebuffer for output, instead of the default setting 0,
which requests a 10 bpc linear framebuffer. This may be able to raise
precision of the encoded signal from 10 bit to up to 12 bit. Please note
that if used on MS-Windows, the test will print false warnings about
mismatches between shader computed PQ values. That is normal at the
moment, because on Windows PQ is not used for fp16 mode.
If set to 2, will request a 16 bpc fixed point framebuffer, which allows for up
to 16 bpc linear precision, but in reality on early 2021 hardware at most 12 bpc.
On most operating-systems + driver + gpu combos this 16 bpc mode will fail.

‘screenid’ Screen to use. Defaults to maximum screen id.

‘filename’ Name of the file where results should be stored. Defaults to file
‘hdrmeasurements.mat’ in the current working directory.

Press the ESCAPE key to abort the test at any time.

Path   Retrieve current version from GitHub | View changelog
Psychtoolbox/PsychTests/HDRTest.m