Comprehensive characterization of human color discrimination thresholds
eLife Assessment
This important study describes a novel Bayesian psychophysical approach that efficiently measures how well humans can discriminate between colors across the entire isoluminant plane. The evidence was considered compelling, as it included successful model validation against hold-out data and published datasets. This approach could prove to be of use to color vision scientists, as well as to those who employ computational psychophysics and attempt to model perceptual stimulus fields with smooth variations over coordinate spaces.
https://doi.org/10.7554/eLife.108943.3.sa0Important: Findings that have theoretical or practical implications beyond a single subfield
- Landmark
- Fundamental
- Important
- Valuable
- Useful
Compelling: Evidence that features methods, data and analyses more rigorous than the current state-of-the-art
- Exceptional
- Compelling
- Convincing
- Solid
- Incomplete
- Inadequate
During the peer-review process the editor and reviewers write an eLife Assessment that summarises the significance of the findings reported in the article (on a scale ranging from landmark to useful) and the strength of the evidence (on a scale ranging from exceptional to inadequate). Learn more about eLife Assessments
Abstract
Color discrimination thresholds—the smallest detectable color differences—provide a benchmark for models of color vision, enable quantitative evaluation of eye diseases, and inform the design of display technologies. Despite their importance, a comprehensive characterization of these thresholds has long been considered intractable due to the psychophysical curse of dimensionality. Here, we address this challenge using a novel semiparametric Wishart process psychophysical model (WPPM), which leverages the feature that the internal noise limiting color discrimination varies smoothly across stimulus space. The model was fit to data collected with a nonparametric adaptive trial-placement procedure, enabling efficient stimulus selection. Together, through the combination of adaptive trial placement and post hoc WPPM fitting, we achieved a comprehensive characterization of color discrimination in the isoluminant plane with only ∼6000 trials per participant (N = 8). Once fit, the WPPM allows readouts of discrimination performance for any stimulus pair. We validated these readouts against 25 probe psychometric functions, measured with an additional 6000 trials per participant held out from model fitting. In conclusion, our study provides a foundational dataset for color vision, and our approach generalizes beyond color to any domain in which the internal noise limiting performance varies smoothly across stimulus space, offering a powerful and efficient method for comprehensively characterizing various perceptual discrimination thresholds.
Introduction
Measurements of discrimination thresholds—the smallest detectable stimulus changes—are foundational for understanding biological vision. Threshold measurements support inferences about the neural mechanisms mediating performance (Hecht et al., 1942; Campbell and Robson, 1968), guide the design of displays and specification of perceptual tolerances (MacAdam, 1942; de Lange Dzn, 1958), enable quantitative evaluation of eye diseases (Aspinall et al., 1983; Johnson et al., 2011; Niwa et al., 2014; Vemala et al., 2017), inform models of suprathreshold perceptual representations (Fechner, 1860; Hillis and Brainard, 2007; Zhou et al., 2024), and allow perceptual effects to be incorporated into the study of cognitive processes (Palmer et al., 1993; Najemnik and Geisler, 2005; Olkkonen et al., 2014). Modern psychophysical methods (Knoblauch and Maloney, 2012; Prins, 2016) provide rigorous quantification of thresholds, and the theory of signal detection (Green and Swets, 1966; Ashby and Soto, 2015; Hautus et al., 2021) provides a mature framework for relating thresholds to the precision of the underlying representation.
Despite the central role of perceptual thresholds, characterization of thresholds has largely been limited to single stimulus dimensions. For example, pedestal functions characterize contrast discrimination thresholds across varying baseline contrasts (Foley and Legge, 1981). To generalize threshold characterization beyond a single dimension, we introduce the concept of the psychometric field: a multidimensional function that specifies the probability of a particular perceptual response as a joint function of both a reference and a comparison stimulus. In contrast to the psychometric function, which describes response probability as a function of variation around a fixed reference, the psychometric field captures how discrimination performance varies across all combinations of reference and comparison stimuli in a stimulus space. As the dimensionality of the psychometric field increases, the number of trials needed to tile the field grows exponentially—a psychophysical curse of dimensionality.
In this study, we focus on human color discrimination thresholds. Despite their significance and applications described above, fully characterizing human color discrimination—even on a single planar slice—has long been considered impractical (Schrödinger, 1920). This is because, although the stimulus space itself is two-dimensional, the underlying psychometric field is four-dimensional, as both the reference and comparison stimuli vary along two color dimensions. Mapping this field requires estimating discrimination performance across a densely sampled set of reference stimuli, with multiple comparison stimuli tested at each. The number of required trials quickly becomes intractable using conventional methods such as the method of constant stimuli (MOCS). While adaptive trial-placement procedures can greatly improve sampling efficiency (Lesmes et al., 2010; Watson, 2017), they typically rely on certain parametric forms. In many cases—including ours—such forms are not known in advance.
Here, we show that it is possible to obtain a comprehensive characterization of the color discrimination psychometric field in the isoluminant plane. We achieved this by efficiently sampling reference–comparison stimulus pairs using a nonparametric adaptive trial-placement procedure (Owen et al., 2021; Letham et al., 2022), and then fitting the data post hoc with a semiparametric model that leverages the feature that the internal noise limiting color discrimination varies smoothly across stimulus space. We collected datasets from eight individual participants, and for each participant, we validated the accuracy of the model readouts against independent threshold measurements from held-out validation trials. Importantly, from the model fit, we can read out the psychometric function along any chromatic direction around any reference stimulus in the plane and thus determine the discrimination threshold in that direction. Our study provides a foundational dataset that can be used to test computational and neural models of color discrimination, benchmark color metrics, and develop models that can predict suprathreshold color discrimination performance.
Results
Overview
This section is organized as follows. We begin with a brief overview of the experimental stimuli and task (Task and stimuli), followed by a summary of how our model characterizes the full psychometric field (The WPPM) and a description of the nonparametric adaptive trial-placement procedure used to collect the data (Adaptively sampled trials). Having described these essential methods, we then present our core results (Threshold estimates from the WPPM) and evaluate the validity of our model (Validation of the WPPM). Finally, we compare our findings with previous measurements from the color discrimination literature (Comparison with previous measurements). Additional technical details are provided in Materials and methods and Appendix 1—12.
Task and stimuli
Participants () performed a 3AFC oddity task. On each trial, three blobby stimuli were shown in a triangular spatial arrangement—two identical reference stimuli and one comparison stimulus with a different surface color (Figure 1A). The comparison stimulus was pseudorandomly assigned to one of the three positions. Participants were asked to identify the odd one out. Stimuli were rendered using the Unity graphics engine, and color was controlled by varying the specified surface reflectance using RGB (red, green, blue) coordinates, with other scene aspects held constant. We used naturalistic stimuli to increase the relevance of our results for understanding color vision in the real world. Hedjar et al., 2025, provide a comparison of color discrimination using stimuli similar to ours versus traditional flat spatially uniform patches.
Task, stimuli, and the Wishart process psychophysical model (WPPM).
(A) 3AFC oddity task. On each trial, participants viewed a triplet of stimuli—two identical references and one different comparison—and identified the odd one out. (B) Stimuli are constrained to lie in the isoluminant plane that passes through the monitor’s gray point. Data are represented and fit in a transformation of this plane, which we refer to as , a square bounded between −1 and 1. The grid of dots illustrates the transformation between the plane in RGB space and model space. (C) Example of a smoothly varying covariance matrix field produced by the WPPM. The field is generated by sampling from a smooth finite-basis Wishart process prior ( and ; see more details in Prior over the weight matrix). Although the field is illustrated on a 7 × 7 grid, it specifies a covariance matrix for every stimulus in the plane, as shown in the heatmaps. (D) Example of a less smoothly varying covariance matrix field. This field is obtained by sampling from a less smooth Wishart process prior ( and ). (E) Observer model. For each stimulus triplet , internal representations are drawn from multivariate Gaussian distributions, each centered on its corresponding stimulus, with noise characterized by its corresponding covariance matrix. The model determines whether the observer correctly identifies the odd stimulus by comparing the squared Mahalanobis distances between all three pairs. (F) Derivation of the elliptical threshold contour. One-dimensional psychometric functions are approximated using Monte Carlo simulations (10,000 samples per stimulus pair shown for illustration; 2000 used during model fitting). For each selected chromatic direction, we derive the threshold point corresponding to 66.7% correct. An ellipse is then fit to the resulting threshold points to describe the discrimination threshold contour.
We made spectral calibration measurements (Brainard et al., 2002) to establish the relationship between RGB and the light emitted from the display. These measurements allowed us to represent the stimuli in terms of the excitations of the human L, M, and S cones elicited by the stimuli, and more generally in any standard color space (Brainard, 1996; Brainard, 2003; Brainard and Stockman, 2010). For this study, stimuli were constrained to lie in the isoluminant plane passing through the monitor’s gray point and bounded by its gamut. This plane was then affine-transformed into a square ranging between −1 and 1 along each axis (Figure 1B; Appendix 1). We refer to the space in which the transformed plane lies as model space because it is directly related to the way we formulated our semiparametric model and also served as a convenient representation for the nonparametric adaptive trial-placement procedure we used.
The WPPM
As an overview of our modeling approach, we fit the color discrimination responses (coded as ‘correct’ or ‘incorrect’) with a novel model, the WPPM—a Bayesian probabilistic model that combines an observer model (specified through a likelihood function) with an expectation of smoothness in the internal noise limiting color discrimination (specified through a prior distribution). Once fit to the data, the WPPM yields a continuously varying field of covariance matrices that characterize the internal noise in the perceptual representation of color stimuli (Figure 1C and D). These covariance matrices, in turn, determine the entire psychometric field.
More specifically, we designed the observer model within the WPPM to formalize the intuition that the stimulus perceived as the most distant from the other two is identified as the ‘odd one out’. The internal representation of each stimulus is assumed to be noisy and modeled as a multivariate Gaussian with the same dimensionality as the stimulus space. We assume the mean of each distribution is given by the corresponding stimulus’ location in model space. In contrast, we allow the covariance matrices to vary across model space to account for differences in the encoding precision of the stimuli. Because discrimination thresholds depend on the relative sizes of signal change and internal noise, an alternative formulation could instead attribute threshold variation across stimulus location to nonlinearities in signal encoding while assuming constant internal noise or to a mixture of nonlinearities and stimulus-varying noise (Zhou et al., 2024). Our formulation should be understood as a characterization of the signal-to-noise properties that limit discrimination and not as a commitment to a particular interpretation of how these properties arise.
On each trial, the observer model has access to one sample from the distribution of each of the three stimuli—two identical reference stimuli and one comparison. The observer model computes the pairwise squared Mahalanobis distance between each pair of noisy samples, using the weighted average of the covariance matrices of the reference and comparison stimuli (Figure 1E). By using Mahalanobis distance to make decisions (instead of, for example, Euclidean distance), the observer accounts for the expected noise structure. The two stimuli whose pairwise distance is smallest are identified as the references, and the remaining stimulus as the comparison (the ‘odd one out’). Because there is no simple closed-form solution for this decision rule (Mullen and Ennis, 1991), we used Monte Carlo simulation to approximate the percent-correct performance (Observer model).
We expect the internal noise that limits color discrimination to vary smoothly across model space—i.e., small changes in the reference stimulus should produce only small changes in the corresponding internal noise. The WPPM reflects this expectation by placing a finite-basis Wishart process prior over the continuous field of covariance matrices (Wilson and Ghahramani, 2011). Intuitively, the Wishart process prior introduces a regularization term into the model: it penalizes rapid variation in the covariance matrix field. The strength of smoothness is controlled by two hyperparameters of the model, ε and γ (Figure 1C and D; Prior over the weight matrix).
To fit the model to each participant’s data, we found the maximum a posteriori estimates of the WPPM parameters, using gradient-based numerical optimization of the log-posterior density, defined as the sum of the log-prior density and log-likelihood function (Model fitting).
The best-fit model parameters, together with the observer model, allow us to read out percent-correct performance for any pair of reference and comparison stimuli. In particular, to read out a one-dimensional psychometric function, we select a reference stimulus and use the observer model to approximate performance as the comparison stimulus varies along a line (Figure 1F, left panels). The threshold distance along the line is defined as the distance that yields 66.7% correct. By repeating this process across many directions, we derive a set of threshold distances around the reference (Figure 1F, right panel). Given our assumption that internal noise follows a multivariate Gaussian distribution, these threshold distances form approximately elliptical contours, which we fit with ellipses for visualization. This approach is consistent with prior work showing that ellipses provide a good approximation of color discrimination thresholds (MacAdam, 1942; Brown and MacAdam, 1949; Noorlander et al., 1981; Noorlander et al., 1983; Poirson and Wandell, 1990; Krauskopf and Gegenfurtner, 1992; Knoblauch and Maloney, 1996; Danilova and Mollon, 2025), despite some reported deviations (Newton and Eskew, 2003; Shepard et al., 2016; Shepard et al., 2017). Notably, while we show threshold contours corresponding to 66.7% correct for visualization, once fit, the WPPM allows us to read out the full psychometric function for any reference and chromatic direction, effectively mapping the entire psychometric field. Given that the psychometric field is derived from the underlying field of covariance matrices that characterize internal noise, the smoothness constraint imposed on the covariance matrices naturally propagates to the threshold contours and the field itself.
Adaptively sampled trials
Reference and comparison stimuli for each trial were selected using AEPsych (Owen et al., 2021; Letham et al., 2022), an open-source package for adaptive psychophysics. For the adaptive sampling model, we used a probit-Bernoulli Gaussian process (GP) model (Williams and Rasmussen, 2006) with a radial basis function kernel. As with the WPPM, the GP assumes smooth variation in performance across model space, but unlike the WPPM, it does not impose any specific parametric form on the internal noise or thresholds. The semiparametric constraint—multivariate Gaussian-shaped internal noise—was introduced only when fitting the WPPM. For this reason, we describe the adaptive trial-placement procedure as nonparametric (relative to the WPPM), while acknowledging that it incorporates some parametric assumptions that are less restrictive than those of the WPPM. This nonparametric approach ensures that our data collection was not biased by assuming the correctness of the WPPM prior to validation.
Each participant completed 6000 AEPsych-driven trials: the first 900 were generated using quasi-random Sobol' sampling (Sobol’, 1967) to provide an adequate initialization for the GP; for the remaining 5100 trials, the GP was updated continuously based on participants’ responses, and each trial was adaptively selected to be most informative for estimating the thresholds targeted at 66.7% correct (Figure 2A, Appendix 2—figures 1 and 2).
Threshold results and validation.
(A) Adaptively sampled trials. AEPsych-driven stimulus pairs are sampled to estimate thresholds across the psychometric field. Of the 6000 trials, the first 900 are Sobol'-sampled; the remaining 5100 (shown here) are adaptively selected using the expected absolute volume change (EAVC) acquisition function, based on a nonparametric Gaussian process (GP) model updated every 20 trials. (B) Discrimination threshold contours (66.7% correct) read out from the Wishart process psychophysical model (WPPM) on a grid of reference stimuli for a representative participant, based on fits to the 6000 AEPsych trials. (C) Group summary of WPPM readouts (), evaluated on the same grid of reference stimuli. (D) Validation trials for the same participant. The validation conditions (reference stimuli and chromatic directions along which the comparison stimulus varies) are randomly generated for each participant (see Appendix 4 for validation conditions used for the remaining participants). (E) Comparison of thresholds. Ellipses represent discrimination threshold contours read out from the WPPM fit (same fit as in panel B), evaluated at the 25 reference stimuli used in the validation trials. Gray lines: the validation directions; black bars: the 95% bootstrapped confidence intervals for the corresponding validation thresholds. (F) Comparison of psychometric functions. Only two validation conditions are shown for illustration (see Appendix 4.1 for all 25 conditions for each participant). (G) Linear regression of thresholds predicted by the WPPM against validation thresholds for the same participant. Horizontal and vertical error bars represent 95% confidence intervals for the validation thresholds and WPPM predictions, respectively. (H) Summary of regression slopes and correlation coefficients for all participants. Error bars: 95% confidence intervals. As a benchmark, the same analysis is performed on a dataset simulated using a ground-truth WPPM instance that approximates CIELAB ΔE94 (Appendix 5).
Adaptive sampling with AEPsych requires solving two optimization problems: one for updating the GP model (Williams and Rasmussen, 2006) and another for selecting the next trial using the expected absolute volume change (EAVC) acquisition function (Letham et al., 2022). To reduce computation time, we updated the GP model only every 20 trials. Sometimes, however, either the fitting or the trial selection process did not complete in time for the upcoming stimulus presentation. To avoid perturbing the participants’ rhythm, in these cases we slotted in pregenerated fallback trials (Appendix 3). The number of fallback trials varied across participants, ranging from 0 to 466 (Appendix 2—figure 1). These trials were included along with the 6000 AEPsych-driven trials when fitting the WPPM.
Threshold estimates from the WPPM
For each participant, we fit the WPPM to the 6000 AEPsych-driven trials, along with any additional fallback trials. To visualize the fits, we read out the elliptical threshold contours around a grid of reference stimuli (Figure 2B for a representative participant). The threshold contours revealed three key regularities: (1) thresholds were lowest for references near the achromatic point defined by the background behind the blobby stimuli, (2) thresholds increased with the distance of the reference from the achromatic point, and (3) the major axes of the elliptical threshold contours tended to be radially oriented with respect to the achromatic point. These regularities are consistent with previous results in the color discrimination literature, as explained further in Comparison with previous measurements.
The data were broadly consistent across participants, in the sense that the three regularities noted above were observed in the individual participant data (Appendix 2.1). In the model-space representation, individual variability was lowest near the achromatic point, where sensitivity was highest, and increased with the distance between the reference and the achromatic point (Figure 2C). Specifically, this variation was quite large in the upper-right quadrant of model space, where ellipse orientations varied considerably. This variation in orientation was also apparent when examining the data in other colorimetric representations (Appendices 7–8). Increases in inter-participant variability with increasing thresholds have been observed in other perceptual discrimination tasks (Girshick et al., 2011; Aguilar et al., 2017; Hong et al., 2021).
Validation of the WPPM
To validate the WPPM estimates, we interleaved 6000 validation trials throughout the experiment. These trials were held out from fitting the WPPM. For each participant, we used Sobol' sampling to select 25 reference stimuli and associated chromatic directions, with a unique draw per participant. Along each sampled chromatic direction, we used MOCS to sample 12 comparison levels: 11 were evenly spaced, and one was selected to provide easily discriminable catch trials (Figure 2D). The comparison levels were selected based on a pilot dataset to account for variability in thresholds across different reference stimuli and chromatic directions (see Design for details). Notably, we intentionally avoided densely sampling around a small number of references to minimize differential perceptual learning between the trials used for fitting the WPPM and those reserved for validation (Horiuchi and Nagai, 2024).
For each of the 25 validation references, we fit a Weibull psychometric function to the 240 MOCS trials collected along the sampled chromatic direction and identified the comparison stimulus corresponding to 66.7% correct (see two examples in Figure 2F). We then used the WPPM fit (constrained by nonoverlapping trials) to extract threshold contours for each validation reference stimulus and to read out the threshold along the MOCS chromatic direction (Figure 2E). The 95% bootstrapped confidence intervals for the WPPM estimates overlapped with those from the Weibull fits in all 25 conditions for participant CH (Figure 2E) and in 22–25 conditions across other participants (Appendix 4.1). These results demonstrate a high degree of agreement between thresholds derived from the WPPM psychometric field and those derived from the MOCS validation trials for the 25 discrete conditions. This agreement indicates that the Wishart process prior we imposed did not lead to substantial oversmoothing, as the validation thresholds were estimated independently without any smoothness constraint. Also notable is that the sizes of the 95% bootstrapped confidence intervals for the WPPM and validation thresholds were similar (Figure 2F and G; Appendix 4.1).
To quantify the agreement, we performed a linear regression, constrained to pass through the origin, between the thresholds read out from the WPPM fit and those obtained using the validation trials (Figure 2G). The results further support agreement between the two sets of estimates (mean correlation coefficient = 0.84, range = 0.73–0.96). For seven out of eight participants, the regression slope was not significantly different from 1 (mean slope = 1.04, range = 0.96–1.10) (Figure 2H; see Appendix 4.1 for comparisons for each participant). To assess whether there were more subtle sources of bias not captured by the regression slope, we analyzed the residuals—the differences between the WPPM and validation thresholds. While we found no evidence that residuals depended on the orientation or shape of threshold contours read out from the WPPM fit, we did observe one small but statistically significant relationship: the model slightly overestimated thresholds when validation thresholds were low and underestimated them when validation thresholds were high (slope = −0.176, , p<0.001, ). However, the magnitude of this bias was small (Appendix 4.2).
As an additional benchmark, we simulated trials and responses from a ground-truth WPPM instance chosen to approximate the CIELAB ΔE94 metric and fit the model to the simulated data (Appendix 5). This allowed us to assess the ability of the WPPM to recover simulated ground truth, which is not possible with human data. The readout threshold ellipses based on the WPPM fit were in good agreement with the ground truth (Appendix 5—figure 2C). We then conducted the same validation analyses on the simulated data as described above. The thresholds read out from the WPPM fit agreed with 23 of the 25 validation thresholds, based on overlapping confidence intervals. A linear regression yielded a correlation coefficient of 0.86 and a slope of 0.92—well within the confidence intervals observed in participants’ data (Figure 2H). Residual analysis revealed a negative correlation with the magnitude of the ground-truth validation thresholds (Appendix 5.6; Appendix 4—figure 9), consistent with trends observed in human participants. With the simulated data, however, we can interpret the magnitude of this bias in the context of the agreement with ground truth and conclude that it is small (Appendix 5—figure 2C). Access to ground truth also provides us with additional ways to visualize patterns in the bias (Appendix 5.7).
Taken together, these results validate the accuracy of the WPPM and highlight the remarkable efficiency of our approach. With 6000 trials, conventional psychophysical methods allowed us to estimate percent-correct performance along only one chromatic direction across 25 references. In contrast, our new approach—combining nonparametric adaptive trial placement with post hoc fitting of the semiparametric WPPM—allowed us to map the entire psychometric field, providing percent-correct performance for any reference–comparison stimulus pair in the isoluminant plane using the same number of trials.
Comparison with previous measurements
The WPPM is equivariant under affine transformations of color space (Appendix 1.4), allowing threshold contours derived in our model space to be transformed into other colorimetric representations. This flexibility enables direct comparisons with color discrimination thresholds reported in the literature. At the outset, we emphasize that the size and shape of threshold contours depend on ancillary experimental factors, including task design, stimulus spatial and temporal properties, and participants’ state of adaptation. Given these differences, we do not expect quantitative agreement across studies. Nonetheless, such comparisons help set our findings in the context of the literature. To illustrate, we present several such comparisons below, in the colorimetric representations used in the original studies.
We first compared the overall pattern of threshold variation in the isoluminant plane with measurements made by MacAdam, in which color matches were obtained using the method of adjustment (MacAdam, 1942) (Appendix 6). In his seminal work, the ellipses do not represent discrimination thresholds per se, but rather the standard deviation of color matches for each reference stimulus. Nevertheless, we consider his measurements to be comparable to ours, based on the linking assumption that discrimination thresholds are proportional to the internal noise that governs the variability of the appearance-based matches (Crozier and Holway, 1937). We observed a similar global structure in how the orientation and scale of the ellipses vary with reference stimulus. As expected, the absolute sizes of the threshold contours differ between studies (Figure 3A; MacAdam ellipses magnified by 10× and ours magnified by 2×). In addition to differences in stimulus spatial and temporal structure, it is worth noting that in MacAdam’s experiment, participants controlled the stimulus duration themselves (Wandell, 1985) and their state of adaptation differed considerably across reference stimuli (Krauskopf and Gegenfurtner, 1992). Despite these differences, the general correspondence between the datasets is apparent. It is also noteworthy that MacAdam’s results are based on 25,000 adjustments at a limited number of reference locations, whereas our ∼6000 forced-choice responses enabled us to characterize discrimination performance across all in-gamut reference–comparison pairs in the isoluminant plane.
Comparison of color discrimination thresholds with previous measurements.
Across all panels, black contours represent thresholds from prior studies, whereas colored contours represent the 66.7% discrimination thresholds estimated in our study. Shaded regions indicate 95% confidence intervals from 120 bootstrapped datasets. (A) MacAdam, 1942. Top panel: MacAdam’s original threshold ellipses, magnified 10× for visualization. Bottom panel: Threshold contours measured from one participant in our study and transformed from model space into the CIE 1931 chromaticity diagram. Reference stimuli are sampled from a 5 × 5 grid spanning from –0.7 to 0.7 along each dimension of model space. To reduce visual clutter, MacAdam ellipses falling within the gamut of our isoluminant plane (parallelogram) are shown only by arrows indicating their major axes. For visual comparability, our ellipses are magnified 2× to approximately match the scale of MacAdam’s data. The triangle indicates our monitor gamut. (B) Danilova and Mollon, 2025. Left panel: Original threshold contours (79.4% correct) from their study, magnified by 4×. Right panel: Threshold contours from one participant in our study, transformed from model space into the scaled MacLeod–Boynton space used in their study. Reference points are sampled on a 5 × 5 grid ranging from –0.7 to 0.7. As in panel A, to reduce visual clutter, ellipses from their study that fall within the gamut of our isoluminant plane (parallelogram) are shown as black arrows indicating only their major axes. For visual comparability, our ellipses are magnified 1.5×. (C) Krauskopf and Gegenfurtner, 1992. Left panel: 79.4% threshold contours. Right panel: 66.7% threshold contours from one participant in our study, transformed into DKL space with the axes scaled for each participant to normalize the thresholds along the L–M and S axes at the adapting chromaticity. All contours are shown at their original sizes in this scaled representation. (D) CIELAB ΔE76, ΔE94, and ΔE00. Threshold is defined as , chosen to approximately match the scale of our measured thresholds, which are shown at their original sizes. See Appendices 6–9 for additional details.
© 1992, Krauskopf and Gegenfurtner. Figure 3C left hand image is reproduced from Figure 14 from Krauskopf and Gegenfurtner, 1992 (published under a CC-BY-NC-ND). Further reproductions must adhere to the terms of this license.
In a more recent study, Danilova and Mollon, 2025, measured threshold contours across a relatively broad region of the isoluminant plane, with sparse sampling of reference stimuli. The experimental paradigm in their study closely resembled ours: both used a fixed adapting point—D65 in their case and the monitor gray point in ours—and employed an oddity task to estimate discrimination thresholds. They used a 4AFC design combined with an adaptive staircase procedure, whereas we used a 3AFC version. To compare our data with theirs, we transformed our discrimination threshold contours read out from the WPPM fit into the same scaled MacLeod–Boynton space used in their study (MacLeod and Boynton, 1979) (Appendix 7). Despite methodological and stimulus differences, our results replicated the overall pattern of variation in ellipse orientation and size across color space. In particular, thresholds were smallest near the adapting point, increased with distance from it, and the ellipses generally pointed toward the adapting point. We observed closer agreement in the absolute sizes of the threshold contours than when comparing with MacAdam’s data (Figure 3B; their ellipses were magnified by 4× and ours by 1.5×). An interesting commonality between our data and those of Danilova and Mollon, 2025, is the rotation of the ellipses at the adapting point relative to the axes of the MacLeod–Boynton space, a rotation seen in all of our participants (Appendix 5—figure 1). See their discussion of this rotation for possible mechanistic interpretations.
In the next comparison, we turned to the study by Krauskopf and Gegenfurtner, 1992, whose measurements were concentrated within a small region near the achromatic point. Their experiment used a fixed adapting point and a 4AFC oddity task, with individual thresholds estimated using a three-down-one-up staircase procedure. To enable direct comparison, we read out threshold contours from our model at the same set of reference stimuli they used. Their results revealed two key features: (1) the threshold contour was smallest at the adapting point, and (2) as the reference moved away from it, the contours generally became increasingly elongated along the axis pointing toward the adapting point. Both features were observed in our data, albeit with some inter-participant variability (Figure 3C; Appendix 8). Our measurements differ from theirs, however, in the orientation of the ellipse at the adapting chromaticity: in our data, the ellipses are rotated with respect to the DKL axes for all our participants.
Lastly, we compared our results with iso-distance contours obtained with different versions of the CIELAB ΔE color-difference metrics (CIE, 2004; CIE, 1995; Luo et al., 2001; CIE, 2001). Although ΔE metrics were developed to describe suprathreshold perceptual color differences for a stimulus configuration that differs from ours, comparisons with threshold-level measurements are of interest—particularly because of the widespread use of ΔE to equate perceptual differences in studies of cognitive processes (Winawer and Witthoft, 2023; Garside et al., 2025). To derive a threshold contour for any given reference stimulus, we identified the comparison stimuli corresponding to across multiple chromatic directions and fit an ellipse. While the choice of is arbitrary, it primarily affects the overall size of the contour rather than its shape. The comparison reveals that the iso-distance contours of the original CIELAB ΔE76, which remain widely used, bear little resemblance to our threshold contours (Figure 3D, left panel; Appendix 9). The large deviations we observed between ΔE76 and our data provide further caution against the practice of using ΔE76 to predict perceptual color differences. In contrast, the more recent ΔE94 and ΔE00 metrics provided a much closer match (Figure 3D, middle and right panels), with only modest deviations from our measurements. These deviations may arise from differences between threshold and suprathreshold perceptual judgments, as well as from discrepancies in experimental conditions between our study and those used to constrain the parameters of the CIELAB ΔE metrics. An important feature of our data is that it enables such comparison with any perceptual metric across the isoluminant plane.
Discussion
A data-efficient approach for characterizing color discrimination thresholds
In this study, we demonstrated a data-efficient approach for achieving a comprehensive characterization of human color discrimination thresholds. Participants performed a 3AFC oddity task and completed 6000 trials that were specifically targeted near threshold using a nonparametric adaptive trial-placement procedure (Owen et al., 2021; Letham et al., 2022). We then developed and fit a novel WPPM to these adaptively sampled trials, along with a small number of fallback trials. The WPPM defines a continuous mapping from each reference stimulus to a covariance matrix that characterizes the associated internal noise. This mapping, in turn, enables predictions of discrimination performance for any pair of reference and comparison stimuli, effectively mapping out the full four-dimensional psychometric field. To evaluate model validity, we interleaved 6000 additional validation trials to estimate 25 probe psychometric functions. The results revealed that thresholds read out from the WPPM closely matched those derived from the validation trials, supporting the model’s accuracy. Thus, by combining nonparametric adaptive trial placement with post hoc fitting of the semiparametric WPPM, we achieved an unprecedentedly comprehensive characterization of color discrimination in the isoluminant plane.
Our measurements align qualitatively with previous studies that either used sparse sampling or targeted a small region of color space (MacAdam, 1942; Krauskopf and Gegenfurtner, 1992; Danilova and Mollon, 2025). Moreover, our measurements provide a more comprehensive characterization, in that the WPPM allows direct readout of a threshold contour at any reference stimulus without the need for additional measurement. Additionally, for studies examining how thresholds vary with factors such as stimulus size, presentation duration, or adaptation state, our approach offers a scalable and data-efficient way to measure how these factors affect the psychometric field. Finally, we have performed simulations and collected preliminary data that indicate it will be feasible to fully characterize the color discrimination psychometric field across the three-dimensional gamut of our display (Hong et al., 2026), a goal that has previously been described as ‘hopelessly difficult’ (Schrödinger, 1920).
Prior specification
A key assumption of the WPPM is that internal noise varies smoothly across stimulus space. This smoothness assumption is implemented through a prior on the variance of the weights applied to the model’s basis functions (Prior over the weight matrix). The smoothness prior plays a nontrivial role in the final WPPM estimates and therefore requires careful selection.
Our cross-validation analyses indicate that the smoothness hyperparameters used in the main analyses fall within a regime that balances oversmoothing against excessive uncertainty in the estimates (Appendix 10.1). When the smoothness imposed by the prior is too strong, the model produces overly uniform threshold estimates that fail to capture structure in the data. When the prior smoothness is too weak, the estimates become more variable. Consistent with this bias–variance tradeoff, agreement between WPPM and validation thresholds starts off low under strong smoothness, increases as the constraint is relaxed, and declines once it becomes too weak (Appendix 10.2). These two analyses narrow the range of sensible hyperparameter values and support our choice of and for the main analyses.
As a general matter, determining appropriate prior hyperparameter values can be challenging when interpreting data with Bayesian models. This problem is at the heart of empirical Bayesian approaches, in which prior hyperparameters are estimated from the data, and then the data are analyzed with these estimates (Efron, 2012). A full empirical Bayesian approach of this sort currently exceeds what we can compute under reasonable time constraints. In our experience, evaluating model performance across a range of hyperparameters using cross-validation helps identify the region that balances oversmoothing against excessive uncertainty in the estimates, while the inclusion of validation trials helps identify the regime that maximizes agreement between WPPM predictions and validation thresholds (Appendix 10.3).
The number of basis functions included in the model is another modeling choice we had to make. To evaluate this choice, we examined the fitted weights as a function of Chebyshev polynomial order and found that they decayed to near zero at the highest polynomial order used in the model. This indicates that, given our choice of hyperparameters, including additional basis functions would not materially affect the inferred psychometric field (Appendix 2—figure 4).
Implications for the mechanisms of color perception
Consistent with a well-established body of evidence, we found that thresholds were smallest near the achromatic reference, reflecting heightened sensitivity at the adapting point (Craik, 1938; Brown, 1952; Hurvich and Hurvich-Jameson, 1961; Pointer, 1974; Loomis and Berger, 1979; Krauskopf and Gegenfurtner, 1992). In addition, threshold contours were oriented toward the achromatic center, in agreement with previous findings (Krauskopf and Gegenfurtner, 1992; Gegenfurtner, 2025; Danilova and Mollon, 2025). Although the WPPM characterizes the data in terms of stimulus-dependent noise, the fitted psychometric field can be used to evaluate mechanistic models that posit specific transformations between stimuli and their internal representations.
The observation that the size and orientation of the elliptical threshold contours vary with the reference stimulus rules out mechanistic models that posit a linear transformation of cone excitations into three post-receptoral channels followed by fixed additive noise. Such models predict identical ellipses across the stimulus space. Moreover, the observation that the orientation of the elliptical threshold contours changes across reference stimuli also rules out mechanistic models in which a linear transformation of cone excitations is followed by limiting noise applied independently to each of the three channels. These models allow variation in the lengths of the major and minor ellipse axes, but predict that the orientation of these axes will be the same for all reference stimuli.
Cone-opponent models that posit noise and nonlinearities at multiple stages of processing, possibly with an overcomplete cone-opponent representation to capture parallel channels along the visual pathways, may be able to account for the observed data, as may models that invoke higher-order mechanisms (e.g. mechanisms narrowly tuned for hue). For more on relevant ideas, see Wyszecki, 1982; Wandell, 1995; Chen et al., 2000; Eskew, 2009; Stockman and Brainard, 2010; Hansen and Gegenfurtner, 2013; Shevell and Martin, 2017. Notably, mechanistic models are often tested using additional manipulations such as adaptation and noise masking; our approach can be extended to incorporate manipulations of such factors (Zhang et al., 2026), as well as of stimulus spatial and temporal structure and retinal location.
We studied a relatively young cohort of eight participants and found broadly consistent patterns across individuals, while also observing individual differences. Such variation has provided valuable insights into the mechanisms of color vision (Bosten, 2022) and is also of interest for understanding how much any given individual is likely to differ from an average characterization. A successful mechanistic model should allow investigation of whether our observed individual differences can be attributed to individual variation in biological factors known to influence color vision, such as preretinal absorption, photopigment spectral sensitivity, and the ratio of L to M cones in the mosaic (Neitz and Jacobs, 1986; Brainard et al., 2000; Kremers et al., 2000; Carroll et al., 2002; Hofer et al., 2005; Bosten, 2022; Rezeanu et al., 2023).
Extensions of the WPPM framework
To enable studies involving larger and more diverse populations, further improvements in the efficiency of our approach are likely achievable. In the present study, we used a nonparametric adaptive trial-placement procedure to avoid biasing data collection by assuming the correctness of the WPPM. Given the validation of the WPPM presented here, future studies could instead incorporate adaptive trial-placement strategies tailored to the model, thereby improving efficiency. Alternatively, one could leverage the current dataset to develop stronger priors that capture the regularities we observed and use these priors to guide more efficient trial placement. Stronger priors could also increase the quality of estimates available from a fixed set of trials, although care should be taken to ensure that the prior does not overly constrain the estimates. Another approach is to develop mechanistic models with relatively few parameters, which could be estimated efficiently using parametric adaptive sampling (Watson, 2017). Finally, a complementary strategy is to increase the rate at which participants provide information about thresholds through more efficient psychophysical experimental paradigms (Agosti et al., 2026; Barnett et al., 2025; Burge and Cormack, 2024).
Another aspect of the WPPM framework that can be adapted for different applications is the mapping between stimulus space and model space, as well as the choice of basis functions. In the present work, we defined model space to be bounded by [−1, 1] for mathematical convenience, as this is the domain on which our chosen basis functions—the two-dimensional Chebyshev polynomials—are defined. These basis functions could in principle be replaced by alternatives, such as Zernike polynomials (Zernike, 1934; Thibos et al., 2000) or Fourier basis functions (Stein and Shakarchi, 2011), which may be better suited for stimulus domains that are disk-shaped or lack clear boundaries. The number of basis functions can also be adjusted based on prior knowledge about the expected smoothness of the psychometric field for a given stimulus domain. More generally, other approaches that leverage the smoothness of psychophysical performance and physiological responses have been developed (Rad and Paninski, 2010; Gravesen, 2015; Savin and Tkacik, 2016; Waz et al., 2025), including recent work on color discrimination (Koenderink et al., 2026).
Toward a metric of suprathreshold color difference
A longstanding and fundamental question in vision science is whether it is possible to develop a perceptual metric that accurately predicts both threshold-level and suprathreshold judgments of color difference. For example, considerable effort has gone into attempts to find color representations in which the perceptual difference between two color stimuli is predicted by the Euclidean distance between their coordinates, as in the original 1976 CIELAB and CIELUV ΔE metrics (Brainard, 2003; Robertson et al., 1977). Our measurements directly establish a locally Euclidean metric for threshold-level differences. While threshold behavior is well described as locally Euclidean, suprathreshold judgments have been shown to violate the assumptions of a globally Euclidean geometry (Wuerger et al., 1995; Ennis and Zaidi, 2019). In particular, perceptual similarity judgments at larger distances often fail to satisfy key Euclidean properties. For example, judgment variability does not necessarily increase with Euclidean distance (Wuerger et al., 1995), and a stimulus that is equidistant from two endpoints is not necessarily perceived as equally similar to both (Ennis and Zaidi, 2019).
An alternative framework, originally proposed by Fechner, 1860, and explored subsequently (Schrödinger, 1920; MacAdam, 1979; Wyszecki, 1982; Zaidi, 2001; Koenderink, 2010; Bujack et al., 2022; Helmholtz, 2024; Stark et al., 2025), suggests that suprathreshold differences may be understood as the accumulation of small threshold-level differences along a path between stimuli. In this framework, color space is taken to be a Riemannian manifold—a space that is locally Euclidean but may be globally curved. The perceptual distance between two colors is hypothesized to correspond to the geodesic—the shortest path between them in terms of accumulated thresholds. This distance is computed by integrating local thresholds along all possible paths between the two points and selecting the path with the smallest total. In our observer model, this integration is effectively equivalent (up to a constant) to integrating internal noise along the path.
Testing this geodesic hypothesis requires knowledge of how internal noise (or thresholds) varies across color space, as this determines the geodesics. Our measurements provide the necessary knowledge for the isoluminant plane, enabling direct empirical tests of the geodesic hypothesis within this slice of color space, as well as elaborations of this hypothesis (Bujack et al., 2022; Stark et al., 2025). The results of such tests may depend on the particular experimental paradigms used to assess suprathreshold perceptual differences.
Because there is no guarantee that the geodesics between two stimuli in the isoluminant plane are themselves confined to this plane within full three-dimensional color space, testing the geodesic hypothesis in this plane based on our current data would be considered provisional. Nonetheless, such tests would provide valuable exploration of the perceptual geometry revealed by our measurements. As noted above, our approach makes it feasible to extend the measurements to full three-dimensional color space (Hong et al., 2026), which, when completed, will allow subsequent investigations to overcome this limitation.
It is possible that the geodesic hypothesis—and more generally the idea that threshold-level judgments can predict suprathreshold judgments—will fail. Nonetheless, we view understanding whether, when, and how such failures occur as central to guiding the development of a successful account of suprathreshold color-difference perception.
Beyond color discrimination
Our approach is generalizable to a wide range of perceptual tasks. A key insight that makes comprehensive characterization of human color discrimination thresholds feasible is the assumption—shared by both our model and the models implemented in AEPsych—that internal noise, and thus thresholds, vary smoothly across stimulus space. This smoothness assumption is not unique to color perception; it applies broadly to other domains. Indeed, smoothly varying elliptical or ellipsoidal thresholds have been reported in studies of motion perception (Reisbeck and Gegenfurtner, 1999; Champion and Freeman, 2010), auditory speed discrimination (Freeman et al., 2014; Carlile and Leung, 2016; Bertonati et al., 2021), motion-in-depth (Wardle and Alais, 2013), and numerosity perception (Cicchini et al., 2016; Cicchini et al., 2019; Cicchini et al., 2023). These parallels highlight the broader relevance of our framework and suggest that combining nonparametric adaptive trial placement with the WPPM could be a powerful strategy for characterizing perceptual thresholds across diverse domains.
Materials and methods
Preregistration
Request a detailed protocolThis study was preregistered at a public repository. As described in the preregistration document, exploratory analyses were conducted on data from one participant (CH) prior to preregistering an initial hyperparameter choice of for the main analysis. After data collection was completed, we performed the hyperparameter sweeps (Appendix 10). These led to our final choice of and .
Participants
Eight participants (six female, aged 22–30 years; seven right-handed) were recruited for the study. Six were paid volunteers who were naive to the purpose of the study. The remaining two were experimenters and participated without additional compensation. All participants had normal or corrected-to-normal vision (20/40 or better in each eye), assessed using a Snellen eye chart, and normal color vision, assessed using Ishihara plates. The study was approved by the Institutional Review Board at the University of Pennsylvania, and written informed consent was obtained from all participants prior to the experiment.
Apparatus
Stimuli were presented using an Alienware computer (Aurora R11) running Windows 10 Enterprise, equipped with an Intel Core i7-10700K processor and an NVIDIA GeForce RTX 3080 GPU. The display was a DELL U2723QE monitor (59.8 cm width, 33.6 cm height, 3840×2160 resolution, 60 Hz refresh rate). The monitor was positioned 189 cm from the chinrest, subtending 18.0 × 10.2 degrees of visual angle (dva). Monitor color and luminance measurements were obtained with a Klein K-10A colorimeter and a SpectraScan PR-670 radiometer. The display resolution was approximately 200 pixels/dva, above the typical human foveal resolution limit.
The Alienware computer was used solely for stimulus presentation, whereas adaptive sampling of the stimuli was performed on a separate custom-built PC with a high-performance Gigabyte motherboard (X299X Aorus Master), an NVIDIA GeForce RTX 3070 GPU and a 12-core Intel i9-10920X processor. This computer also ran Windows 10 Enterprise. The two computers communicated via a shared network disk, using a custom protocol based on text files that both computers could read and write.
A USB speaker (3 W output power, 20 kHz frequency response) was used for playing auditory feedback, and a gamepad controller (Logitech Gamepad F310) was used for registering trial-by-trial responses.
Stimuli
Request a detailed protocolThe visual scene (Appendix 11—figure 1A) was constructed in Unity (v2022.3.24f1) and rendered using its standard shader. The scene consisted of three identical blobby three-dimensional objects, each created in Blender (v4.0) with a matte, nonreflective surface. On each trial, the surface color of the blobby objects was varied by adjusting their RGB values in Unity. The three blobby objects (2.5×2.5 dva; 203,900 pixels each) were arranged in a triangular configuration (Figure 1A). Each blobby object was centered and floating inside its own cubic room (3.3×3.3 dva; , , ). Each room, along with the blobby stimulus inside it, was illuminated exclusively by an achromatic spotlight positioned in front of the object and set to maximum intensity (). The three rooms were presented against a spatially uniform gray background (18.0×10.2 dva; , , ). The centers of the blobby objects were 3.7 dva apart.
Calibration and color depth
Request a detailed protocolWe used a SpectraScan PR-670 to measure the monitor’s primaries and gamma function as rendered through Unity (Appendix 11.1). These measurements directly characterized the relationship between the specified RGB values for the blobby stimuli and the light emitted from the display. The same calibration was repeated for all three blobby stimuli, confirming consistent color behavior across screen locations. Based on these results, a single gamma correction—derived from the bottom-right stimulus—was applied to all three objects during the experiment. This correction was validated by remeasuring the output with gamma correction applied, showing good alignment with the predicted identity line. To confirm stability over time, we repeated the calibration 1 month into data collection and observed negligible changes.
Additionally, we used a Klein K-10A colorimeter to verify that the system achieved sufficient color depth. For this check, a single blobby stimulus was presented at the center of the screen, rather than in the full triangular arrangement. Measurements confirmed that Unity and our video chain were able to produce at least 12-bit color precision via the native 8-bit output and implicit spatial dithering that occurred across the surface of the blobby object during rendering (Appendix 11.2).
Design
Request a detailed protocolWe restricted our stimuli to lie within the isoluminant plane that passes through the monitor’s gray point (i.e. ). To define the boundaries of this plane, we identified the limits of RGB values that remained within the monitor’s gamut. These boundary points formed a parallelogram in RGB space. We then computed an affine transformation that maps this parallelogram onto a square bounded by [−1, 1] (Appendix 1). The forward and inverse transformations enabled conversion between RGB and model space: stimuli were rendered in RGB space, while trial placement and model fitting were performed in model space.
We used AEPsych (v7.3) to sample a total of 6000 reference–comparison stimulus pairs. The first 900 trials were generated using Sobol' sampling (Sobol’, 1967), a ‘space-filling’ design based on a low-discrepancy quasi-random sequence. The remaining 5100 trials were adaptively selected to efficiently estimate thresholds across the entire psychometric field. Each stimulus pair was defined in the two-dimensional model space. As a result, the psychometric field comprised four variables: two specifying the reference stimulus, , and two specifying a difference vector, , which was added to the reference to define the comparison stimulus . Reference values were constrained to [−0.75, 0.75] along each model dimension. Each element of Δ was constrained to [−0.25, 0.25] to ensure that all comparison stimuli remained within the bounds of model space. During the initial 900 Sobol'-sampled trials, the difference vector Δ was scaled by one of three factors (1/4, 2/4, or 3/4) before being added to the reference stimulus. This controlled the distance between the reference and comparison stimuli, effectively modulating task difficulty. These scaling factors were evenly distributed and pseudorandomized across trials. For the remaining 5100 trials, all four variables were adaptively selected using AEPsych’s optimization procedure. Specifically, the underlying GP model was updated every 20 trials, and new trials were selected using the EAVC acquisition function (Letham et al., 2022), targeting 66.7% correct across the entire psychometric field.
In addition to the 6000 AEPsych-driven trials, we interleaved 6000 validation trials sampled using MOCS. Each participant was tested on 25 reference stimuli: one was fixed at the achromatic point and the remaining 24 were Sobol'-sampled within the isoluminant plane bounded by [−0.6, 0.6] along each model dimension. For each reference, a chromatic direction was Sobol'-sampled between 0° and 360°. Each validation condition consisted of 12 stimulus levels: 11 equally spaced along the sampled direction and one easily discriminable level, with each level repeated 20 times. These levels were determined based on a pilot dataset described in the preregistration documents.
The validation trials were pregenerated for each participant, pseudorandomized so that every 300 validation trials contained all unique trials (25 conditions × 12 levels). To minimize differential learning effects between AEPsych-driven and validation trials, we pregenerated a randomized sequence in which the two trial types were arranged in alternating pairs, with the order within each pair shuffled. However, because AEPsych occasionally required more time to determine the next trial placement, this sequence could not always be followed in real time. For this reason, we implemented a fallback trial strategy (Appendix 3): if, for any trial, AEPsych had not computed trial placement in time, the next validation trial was inserted to keep the experiment moving. If necessary, subsequent validation trials were queued, but this was capped at a lead of four validation trials ahead of AEPsych trials. Once the cap was reached and AEPsych was still not ready, pregenerated fallback trials were presented instead. These fallback trials were Sobol'-sampled with the difference vector Δ scaled by one of three factors (2/8, 3/8, or 4/8) to manipulate task difficulty. Validation trials resumed once AEPsych caught up. Notably, the fallback trials (range: 0–466) were included alongside the 6000 AEPsych trials when fitting the WPPM.
Procedure
Request a detailed protocolParticipants performed a 3AFC oddity task. Each trial began with a fixation cross presented at the center of the screen for 0.5 s, followed by a blank screen for 0.2 s. Then, three blobby stimuli appeared inside the cubic rooms for 1 s. After participants responded, a blank screen was shown for 0.2 s, followed by auditory and visual feedback indicating accuracy (‘correct’ with a beep or ‘incorrect’ with a buzz). Consecutive trials were separated by a 1.5 s inter-trial interval (ITI). Participants were instructed that they could move their eyes freely during the stimulus presentation, but should maintain fixation while the fixation cross was on the screen.
Most participants (seven out of eight) completed 12 sessions. Each session began with 40 practice trials to familiarize participants with the task. This was followed by 1000 experimental trials–consisting of 500 AEPsych-driven trials and 500 predetermined validation trials–plus a small number of fallback trials. The validation trials were randomized, and the two trial types were fully intermixed. Participants took a break every 200 trials. Each session took approximately 1.5 hr to complete. In total, these seven participants completed between 12,256 and 12,466 trials, depending on the number of fallback trials inserted. Participant CH completed 12,000 trials across 10 sessions, without any fallback trials. As a result, the ITI was slightly longer for this participant, but we expect this to have had a negligible effect on performance.
The WPPM
Our implementation of the WPPM relies on two core assumptions about color perception: (1) the internal noise that limits color discrimination follows a multivariate Gaussian distribution, centered on the corresponding stimulus, with a covariance matrix that captures both the size and orientation of the noise, and (2) the covariance matrix varies smoothly across model space, without rapid local variations. In the following subsections, we describe the WPPM in five parts. First, we define the observer model, which predicts percent-correct performance for a given pair of reference and comparison stimuli by modeling both the noisy internal representations and the decision rule. Second, we describe how we use a finite-basis Wishart process to parameterize the entire field of covariance matrices across model space, along with the factors that control its smoothness. Third, we describe the weak prior imposed on the covariance matrix field to favor smooth variation. Fourth, we explain how, given a specification of the covariance matrix field, we compute the likelihood and thereby the posterior probability of the model parameters. Finally, we show how, once the model is fit, the covariance matrix for any reference–comparison stimulus pair can be read out and combined with the observer model to predict percent-correct performance, including threshold contours around any reference stimulus.
Observer model
Request a detailed protocolOn each trial, the observer is presented with two identical reference stimuli, denoted , and one comparison stimulus, denoted , where Δ represents a small offset from the reference. Our model assumes that these three stimuli are independently encoded into an internal representational space by a noisy process, which we assume follows a multivariate Gaussian distribution. Formally,
where denote the internal representations derived from the two reference stimuli and the comparison stimulus, respectively. Our model posits that the observer correctly identifies as representing the comparison stimulus (i.e. the ‘odd one out’) if
where denotes the squared Mahalanobis distance for a selected pair of internal representations, formulated as
where is the weighted average of the covariance matrices across the reference and the comparison stimuli, i.e.,
This decision rule is consistent with an observer that uses distances between internal representations to judge stimulus similarity (Churchland, 1986). We approximated the percent-correct performance using N=2000 Monte Carlo simulations (Figure 1E) as the closed-form analytical solution is complicated to derive (Ennis and Mullen, 2014). In each Monte Carlo simulation, we drew samples according to Equations 1–3, and the outcome was marked as correct if the condition in Equation 4 was fulfilled. The proportion of correct outcomes in the Monte Carlo simulation defines the model’s predicted percent-correct performance, which is then used to evaluate the likelihood function as explained in Model fitting.
Covariance matrix field
Request a detailed protocolThe WPPM specifies a covariance matrix at any selected reference stimulus across the entire isoluminant plane. Each matrix specifies the perceptual noise in terms of the variance along the two model dimensions (, ) and their covariance () (Figure 1C and D).
The covariance matrix field is constructed using one-dimensional Chebyshev polynomial basis functions (Chebyshev, 1853). We chose Chebyshev polynomials because they allow for the expression of smoothness over a bounded interval without imposing periodic boundary conditions. Let denote a location in the two-dimensional model space. The basis functions are defined recursively for each model space dimension as given here for :
where , and is the number of discretized points along that stimulus dimension, which can be chosen flexibly to achieve any desired resolution. We construct two-dimensional basis functions by taking the outer product:
where , with representing the number of discretized points along each dimension of model space. We limited the number of basis functions to five per dimension, i.e., , resulting in a total of 5 × 5 = 25 two-dimensional basis functions (Figure 4, first panel). The polynomial order of each two-dimensional basis function is given by , with higher-order basis functions describing more rapidly varying patterns.
The finite-basis Wishart process psychophysical model (WPPM).
(A) Model overview. In our implementation, we use a set of 5 × 5 two-dimensional Chebyshev polynomial basis functions, denoted , where . These basis functions are combined using a learnable weight matrix W to produce an overcomplete representation , where and . The resulting representation is then combined with its transpose to produce a field of symmetric positive semi-definite covariance matrices. Each matrix specifies internal noise in terms of the variance along the two model dimensions, and , and their covariance, . The example covariance matrix field shown here is generated from the best-fitting weights for participant CH (see Appendix 2—figure 3 for all participants). (B) Model readouts. Internal noise can be read out anywhere in model space, illustrated here on a 7 × 7 grid of reference stimuli (solid lines), from which threshold contours (dashed lines) can be derived.
The basis functions were weighted by a learnable parameter matrix, , where the first two dimensions index the Chebyshev basis functions along each model space dimension (), and the last two dimensions index the output components ( and ). The weighted basis functions are expanded into an overcomplete representation (Figure 4, second panel) as follows:
This overcomplete representation was then combined with its own transpose to yield a positive semi-definite covariance matrix (Figure 4, third panel), for at any discretized point in model space, i.e.,
Notably, in our implementation, rather than matching the dimensionality of the intermediate representation U to that of Σ, we adopt an overcomplete parameterization motivated primarily by practical considerations. When we restricted the dimensionality indexed by l to 2, the optimization occasionally became ill-conditioned, leading to singular or unstable solutions. Expanding l to 3 substantially improved numerical stability and made the fitting procedure more robust. Increasing l beyond 3, however, would introduce additional degrees of freedom. We therefore selected as a compromise between model flexibility and numerical stability. Regardless of whether the representation is square or overcomplete, the resulting matrices are symmetric and positive semi-definite.
The weights are the free parameters of the model, determining the output covariance matrix field. The model is highly flexible, capable of generating a wide range of covariance matrix fields, from smooth to rapidly varying (Figure 1C and D).
Prior over the weight matrix
Request a detailed protocolWe imposed a weak prior over the weight matrix W. Specifically, we assumed that each weight was distributed a priori as a zero-mean one-dimensional Gaussian,
where represents the variance of each weight. The variance decays exponentially with , which denotes the polynomial order of the corresponding two-dimensional basis function, i.e.,
The hyperparameter γ controls the overall amplitude of the variance. The hyperparameter ε controls the rate at which the prior variance decays with increasing polynomial order. A higher value of γ or ε results in a prior that favors more rapidly varying covariance matrix fields, while a lower value favors smoother fields. By setting and , we adopted a prior that favors relatively smooth variation across model space.
Model fitting
Request a detailed protocolWe computed the log-likelihood of any hypothesized weight matrix given the participant’s binary responses as follows:
where indicates whether the response on trial r was correct (1) or incorrect (0), and R is the total number of trials used to fit the WPPM. The model-predicted accuracy for each trial is given by:
Note that on the rth trial, , , and are internal representations that depend on the reference and comparison stimuli ( and ) for that trial. For notational simplicity, the subscript r is omitted here.
Since we imposed a prior on the covariance matrix field to reflect the expectation of smooth variation, we combined the likelihood (Equation 17) and the prior (Equation 16) to calculate the posterior probability of W. As there is no simple closed-form expression for , we used a numerical approximation based on Monte Carlo simulations. The numerical approximation we built was differentiable with respect to the covariance matrix field, which enabled us to use gradient descent to minimize the negative log-posterior of W (see details in Appendix 12).
Notably, the factorization in Equation 14 is not unique; multiple choices of U and consequently of W can yield the same covariance matrix. This non-uniqueness reflects the overcomplete parameterization and does not affect the uniqueness of the resulting covariance matrices or the corresponding threshold readouts of the model.
Psychometric field
Request a detailed protocolFor any given reference stimulus, the WPPM allows readouts of percent-correct performance along any chromatic direction, which in turn allows us to construct a threshold contour. We sampled comparison stimuli along 16 chromatic directions and simulated internal representations to estimate percent-correct performance, yielding a psychometric function for each direction (Figure 1F). The threshold distance in each direction was defined as the distance to the comparison stimulus corresponding to 66.7% correct. Collectively, these threshold distances form a contour that closely resembles an ellipse, with only minor deviations due to inhomogeneous internal noise between the reference and comparison stimuli. However, because the stimuli are nearby in model space, such discrepancies are negligible. We therefore fit an ellipse to these points as a practical approximation. As a way of visualizing the psychometric field, we plot these ellipses at the threshold level, at a grid of reference locations. We emphasize, however, that the WPPM provides the full four-dimensional psychometric field, enabling readouts of the psychometric function along any chromatic direction for any reference stimulus within model space.
Data analysis
Request a detailed protocolColor calibration analyses were performed using MATLAB R2023b. We computed inverse gamma lookup tables from the measured gamma functions (Appendix 11) and derived transformation matrices to convert values from model space to RGB space (Appendix 1). Stimulus presentation, including gamma correction, was implemented in Unity, coded in C#.
All analyses were conducted in Python 3.11 using a variety of open-source packages. Model fitting was implemented primarily using JAX (Bradbury et al., 2018). Behavioral data were separated into AEPsych-driven plus fallback trials and validation trials. The WPPM was fit exclusively to the AEPsych and fallback trials. To assess variability in model estimates, we performed 120 bootstrap resamplings of the AEPsych-driven trials, preserving the original ratio between Sobol', adaptively sampled, and fallback trials in each resampled dataset. The WPPM was then refit to each of the 120 bootstrapped datasets.
To compute a 95% bootstrap confidence interval for the threshold contours, we first computed the summed normalized Bures similarity (NBS) score (Muzellec and Cuturi, 2018) between the predictions from the model fit to each bootstrapped dataset and those from the model fit to the original dataset, evaluated on a finely sampled grid of reference stimuli (−0.85 to 0.85 with 103 uniformly spaced points). Higher scores indicate greater similarity to the predictions from the original dataset. We then sorted the model fits by their summed NBS scores and retained the top 114 (95% of 120) fits. The confidence interval bounds were defined by the union and intersection of the threshold contours, subsequently computed for any reference stimulus using this fixed set of retained model fits.
For the held-out validation trials, we computed the Euclidean distance between each reference stimulus and its paired comparison stimulus. For each of the 25 conditions, a Weibull psychometric function was fit to the binary color discrimination responses, with the guess rate fixed at 33.3% correct. Threshold was defined as the distance to the comparison stimulus corresponding to 66.7% correct. To estimate variability, we bootstrapped each condition 120 times and computed 95% confidence intervals for the threshold estimates.
To assess the agreement between the thresholds predicted by the WPPM and those estimated from the validation trials, we performed linear regression (constrained to pass through the origin) between the two sets of predictions using the original dataset, as well as for each of the 120 paired bootstrapped datasets. We then sorted the resulting slopes and correlation coefficients and computed 95% confidence intervals separately for each. Additionally, we computed the number of conditions for which the 95% bootstrap confidence intervals of the WPPM-predicted thresholds and the validation thresholds overlapped as an additional measure of agreement.
Appendix 1
Transformation between DKL, RGB, and model spaces
This section summarizes the colorimetric transformations between RGB space of our monitor, the 2D model space, and standard color spaces.
DKL space provides a representation of the isoluminant plane with the adapting point at the origin (Derrington et al., 1984; Brainard, 1996). We defined our DKL space with respect to the CIE 2° physiologically relevant cone fundamentals and the corresponding photopic luminosity function. The adapting point was specified by the cone excitations elicited by the monitor’s gray point (), such that the isoluminant plane passed through this point. Within the isoluminant plane, we densely sampled chromatic directions spanning 360° around the origin. For each direction, we searched outward from the origin until reaching the edge of the monitor gamut (details are provided in Appendix 1.1). Repeating this procedure across all directions yielded a set of gamut boundary points that formed a parallelogram in RGB space. From these boundary points, we identified the four vertices and recorded their coordinates in both DKL and RGB spaces (Appendix 1—table 1). We then used the corresponding vertex coordinates to derive a projective transformation matrix (homography) that maps coordinates from DKL space to model space (see Appendix 1.2 and Appendix 1—table 2). Although a homography provides a general solution for mapping between arbitrary quadrilaterals, the resulting matrix revealed that the transformation in our case was affine. We therefore used the affine transformation and its inverse to convert between linear RGB values and model space (see Appendix 1.3 and Appendix 1—table 2).
Appendix 1.1: Searching for boundary points within the monitor gamut
We selected 1000 angles θ uniformly spanning the isoluminant plane in DKL space. For each angle, we defined a chromatic direction vector in DKL space as , where the first two elements correspond to the L–M and S axes of DKL space, and the third element was set to zero to constrain the direction to the isoluminant plane (i.e. no change in luminance). For each direction, we then determined the farthest point along that vector that remained within the monitor gamut in linear RGB space. Specifically, we first converted to LMS cone excitations, denoted , as follows:
To account for ambient light contributions, denoted as , we subtracted this component to isolate the contribution of the RGB stimulus, denoted as , i.e.,
Next, we converted this isolated stimulus component into RGB space:
Finally, we searched outward from the gray point along the direction until the RGB values reached the edge of the RGB cube. Repeating this procedure across all sampled directions yielded the boundary of the isoluminant plane constrained by the monitor gamut. From this boundary set, we then identified the four corner vertices (Appendix 1—table 1).
Corner vertices in DKL, LMS, RGB, and model spaces.
| Corner | DKLL-M | DKLS | DKLLum | L | M | S | R | G | B | Wdim1 | Wdim2 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | –0.123 | –0.812 | 0 | 0.145 | 0.147 | 0.016 | 0.000 | 0.733 | 0.000 | –1 | –1 |
| 2 | 0.175 | –0.830 | 0 | 0.164 | 0.111 | 0.014 | 1.000 | 0.407 | 0.000 | 1 | –1 |
| 3 | –0.175 | 0.830 | 0 | 0.142 | 0.154 | 0.152 | 0.000 | 0.593 | 1.000 | –1 | 1 |
| 4 | 0.123 | 0.812 | 0 | 0.160 | 0.117 | 0.150 | 1.000 | 0.267 | 1.000 | 1 | 1 |
Appendix 1.2: An affine transformation matrix that maps DKL to model space
These vertices, denoted as v, were then used to derive a projective transformation matrix MDKL→W such that for each vertex pair, we have:
where is the homogeneous coordinate of a vertex in model space, and is the corresponding homogeneous coordinate in DKL space. By plugging in the vertices, we solved the matrix as follows:
where † denotes the pseudoinverse. Note that the last row of is [0, 0, 1], indicating that the transformation is affine (Appendix 1—table 2). Although this affine formulation would be sufficient, we initially computed the full projective transformation matrix for generality, since it was uncertain that DKL vertices would form a parallelogram. In this particular case, both methods yielded equivalent results.
Appendix 1.3: An affine transformation matrix that maps RGB to model space
Given that the transformations from DKL to LMS, LMS to RGB, and DKL to model space are all affine, by the composition property of affine transformations, it follows that the transformation from RGB to model space must also be affine.
To compute the affine transformation matrix, we used corresponding corner vertices in RGB and model spaces. Specifically, we solved for the matrix as:
where † denotes the pseudoinverse and we appended a row of ones to the model-space coordinates to express them in homogeneous form.
Appendix 1.4: Affine invariance of Mahalanobis distance
We performed trial placement, model fitting, and data presentation in model space, bounded between −1 and 1. An important feature of the WPPM is that it is invariant with respect to affine transformations of the color space used to represent the stimuli. That is, if we transform reference and comparison stimuli to a new color space using an affine transformation, and transform the covariance field by the same affine transformation, then the observer model yields a prediction of performance that is unchanged by the transformation. This is because the Mahalanobis distance is itself unchanged by the transformation, as we show below. This is an attractive property because it avoids assigning special status to the particular color space used to represent the stimuli and covariance field.
Let Σ be the covariance matrix. The squared Mahalanobis distance between two points x0 and x1 is defined as:
Now consider a linear transformation . The corresponding transformation of the covariance matrix is . Then the squared Mahalanobis distance in the transformed space becomes:
Thus, the Mahalanobis distance is invariant under linear transformations of the data when the covariance matrix is transformed accordingly. Since distance is also invariant to translations (i.e. independent of the choice of origin), this further implies that the Mahalanobis distance is invariant under general affine transformations.
Transformation matrices between DKL, RGB, and model spaces.
| MDKL→W | MRGB→W |
|---|---|
Appendix 2
Adaptive sampling and WPPM estimates
Appendix 2.1: AEPsych-driven trials and WPPM-predicted thresholds
Appendix 2.2: Efficacy of adaptive sampling
After the initial 900 Sobol'-sampled trials, the subsequent 5100 trials were adaptively placed using AEPsych (Owen et al., 2021; Letham et al., 2022) to target 66.7% correct. To evaluate the efficiency of this adaptive sampling procedure, we binned these adaptive trials based on the angular difference between the reference and comparison stimuli and computed the proportion of correct responses within each bin. If adaptive sampling was effective, performance should cluster around 66.7% correct. Consistent with this expectation, the observed percent correct remained close to 66.7% across bins (Appendix 2—figure 2), suggesting that AEPsych provided informative trial placement.
Percent correct as a function of the angular difference between the reference and comparison stimuli for all participants.
The number of trials within each bin (bin width = 4°) is encoded by both marker size and color, with larger markers and brighter colors indicating more trials.
Covariance matrix fields obtained from the best-fitting Wishart process psychophysical model (WPPM) for all participants.
Rows show, from top to bottom, the noise variance along the first model dimension, the noise variance along the second model dimension, and the covariance between the two dimensions.
Appendix 2.3: The covariance matrix field
The WPPM specifies a covariance matrix at each reference stimulus in the isoluminant plane. Each matrix characterizes internal noise in terms of the variance along the two model dimensions (, ) and their covariance (). For each participant, the best-fitting model produces a covariance matrix field with qualitatively similar structure across individuals (Appendix 2—figure 3).
Best-fitting weights for all participants.
The symmetric solid curves show the prior imposed on the model. The prior was implemented by specifying the variance of the weights, η, as a function of the polynomial order of the Chebyshev basis functions and two hyperparameters, ε and γ (Equation 16). The solid curves indicate for our chosen hyperparameters, corresponding to two standard deviations of the prior distribution. The horizontal positions of the dots are jittered to improve visibility.
Appendix 2.4: The best-fitting weight matrices
The covariance matrix field is determined by the weights applied to the Chebyshev basis functions. Across participants, the absolute magnitude of the best-fitting weights decreases with increasing basis order, indicating that higher-order components contribute less to the covariance matrix field. At the highest order included in the model, the weights are close to zero (Appendix 2—figure 4). This suggests that, given the prior hyperparameters, adding more basis functions would be unlikely to change the estimated covariance matrix field.
Appendix 3
Real-time trial scheduling via dual-computer coordination
Task timing and real-time trial scheduling.
(A) Trial sequence: a 0.5 s fixation cross was followed by a 0.2 s blank interval, and then a 1 s presentation of three blobby stimuli. Participants responded at their own pace to identify the odd one out, after which a 0.2 s blank screen and 0.5 s feedback were shown. The inter-trial interval (ITI) was 1.5 s. (B) Schematic representation of the trial timing and computational responsibilities of the two computers.
For each participant, we ran 6000 AEPsych-driven trials interleaved with an additional 6000 validation trials. Although our initial plan was to present these 12,000 trials in a predetermined randomized sequence, we quickly realized that this approach was impractical. Under this design, AEPsych would only have the ITI to compute the next trial placement—a window that is difficult to optimize. A long ITI risks participant fatigue or loss of attention, whereas a short ITI does not give AEPsych enough time to complete its computations. To achieve both a smooth experimental flow and adequate computation time for AEPsych, we implemented a fallback trial strategy using a dual-computer setup.
In this setup, stimulus presentation was handled by a display computer, while adaptive trial placement using AEPsych ran on a control computer. The two computers communicated via a shared network disk using text files that both computers could read and write. This decoupled design provided modular separation between code specialized for stimulus presentation and code specialized for trial placement. It should also make the trial placement code easier to port to different stimulus display systems.
With the dual-computer design, AEPsych had at least 2.9 s to compute the next trial after the participant’s response (Appendix 3—figure 1). This window spanned both the post-stimulus period of the current trial (0.2 s blank, 0.5 s feedback, 1.5 s ITI) and the pre-stimulus period of the upcoming trial (0.5 s fixation and 0.2 s blank). Importantly, this computation window began only after the participant responded because AEPsych requires the participant’s response to update its model. The computation window ended just before the stimulus presentation of the next trial, when AEPsych had to deliver the values for the upcoming reference and comparison stimuli.
The fallback trial strategy ensured continuous stimulus presentation. If AEPsych failed to return a new trial within the 2.9 s window, we defaulted to presenting the next available MOCS trial from the pre-determined randomized sequence. In such cases, AEPsych’s computation continued in a separate thread and attempted to meet the following decision deadline, which is approximately 7 s after the previous one, including an additional 1 s stimulus presentation and an approximate 0.2 s response time. If AEPsych again missed this deadline, the next opportunity came at around 11.1 s. This staggered scheduling ensured that trials continued smoothly while allowing AEPsych sufficient time to compute adaptive placements when possible.
A potential drawback of the fallback trial strategy is that it could disrupt the intended interleaving of adaptive and validation trials, potentially introducing differential learning effects. To mitigate this, we capped how far MOCS trials could advance relative to AEPsych trials. This cap was set at four trials. If this limit was reached and no AEPsych trial was ready, we inserted pregenerated Sobol'-sampled trials instead. These trials were created in advance using participant- and session-specific random seeds and were separate from those selected by AEPsych.
Appendix 4
Comparison between WPPM and validation thresholds
Appendix 4.1: Validation data for all participants
Validation for participant ME.
Same format as Figure 2D–G in the main text.
Validation for participant SG.
Same format as Figure 2D–G in the main text.
Validation for participant DK.
Same format as Figure 2D–G in the main text.
Validation for participant BH.
Same format as Figure 2D–G in the main text.
Validation for participant FM.
Same format as Figure 2D–G in the main text.
Validation for participant HG.
Same format as Figure 2D–G in the main text.
Validation for participant FW.
Same format as Figure 2D–G in the main text.
Validation for participant CH.
Same format as Figure 2D–G in the main text.
Appendix 4.2: Analysis of differences between WPPM and validation thresholds
Threshold residuals.
Data are pooled across all validation conditions and all participants (). In all panels, color indicates the surface color of the reference stimulus, and the y-axis limits are set to ± the mean validation threshold. (A) Residuals as a function of the absolute angular difference between the major axis of the elliptical threshold contours read out from the Wishart process psychophysical model (WPPM) fits and the chromatic direction of the validation condition. (B) Residuals as a function of the aspect ratio (major/minor axis) of the WPPM threshold contours. (C) Residuals as a function of thresholds estimated from the validation trials.
We assessed whether the residuals, defined as the differences between the WPPM and validation thresholds, exhibited systematic patterns. We found no significant correlation between the residuals and the absolute angular difference between the chromatic direction of the validation condition and the major axis of the elliptical threshold contours read out from the WPPM fits (Appendix 4—figure 9A), nor between the residuals and the aspect ratio of the contours (Appendix 4—figure 9B). Thus, there is no evidence that the residuals vary systematically with the orientation or shape of the contours read out from the WPPM fits (see statistical summary in Appendix 4—table 1).
In contrast, we found a significant negative correlation between the residuals and the magnitude of the validation thresholds (Appendix 4—figure 9C; slope = −0.176, , p<0.001, ), indicating that the WPPM tends to slightly overestimate small thresholds and underestimate large thresholds. However, the magnitude of this bias is small relative to the range of observed validation thresholds.
Linear regression results assessing the relationship between WPPM–validation threshold residuals and three predictors: (1) the absolute angular difference between the chromatic direction of the validation condition and the major axis of the threshold contours read out from the WPPM fits, (2) the aspect ratio of the threshold contours, and (3) the magnitude of the validation threshold.
| Predictor | Term | Coef | Std Err | t | p | [0.025, 0.975] CI | R2 |
|---|---|---|---|---|---|---|---|
| Absolute difference of angles | Intercept | 0.004 | 0.002 | 2.254 | 0.025 | [0.000, 0.007] | 0.000 |
| Slope | 0.000 | 0.000 | 0.273 | 0.785 | [–0.000, 0.000] | ||
| Aspect ratio | Intercept | 0.001 | 0.004 | 0.319 | 0.750 | [–0.006, 0.008] | 0.004 |
| Slope | 0.002 | 0.002 | 0.943 | 0.347 | [–0.002, 0.005] | ||
| Validation thresholds | Intercept | 0.014 | 0.002 | 7.511 | 0.000 | [0.010, 0.018] | 0.142 |
| Slope | –0.176 | 0.031 | –5.727 | 0.000 | [–0.237,–0.116] |
Appendix 4.3: Analysis of performance on catch trials
For each validation condition, we used the MOCS to sample 12 comparison levels: 11 were evenly spaced, and one was selected as an easily discriminable catch trial. Participants completed 500 catch trials (1/12 of 6000 validation trials). These catch trials were included to assess participants’ attentiveness and establish a criterion for potential data exclusion. As shown in Appendix 4—table 2, all participants except DK performed near ceiling on these trials, indicating high task engagement throughout the experiment. Although DK’s performance was somewhat lower, this likely reflects lower overall sensitivity rather than frequent lapses (Appendix 4—figure 3), because the ‘easy’ trials may not have been as easily discriminable for this participant.
Catch trial performance summary across all sessions.
Lower and upper bounds indicate the participant’s lowest and highest session-level performance, respectively.
| Participant | ME | SG | DK | BH | FM | HG | FW | CH |
|---|---|---|---|---|---|---|---|---|
| Proportion correct | 0.996 | 0.996 | 0.948 | 0.992 | 0.998 | 0.988 | 0.988 | 0.998 |
| Lower bound | 0.977 | 0.974 | 0.868 | 0.975 | 0.975 | 0.954 | 0.957 | 0.980 |
| Upper bound | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 |
Appendix 5
Simulated observer
To evaluate how well thresholds read out from the WPPM fits aligned with those estimated via Weibull fits, we simulated a dataset with a known ground truth. The following subsections outline the key steps in this process.
Derivation of the ground-truth Wishart process psychophysical model (WPPM) fit based on CIELAB ΔE94.
(A, B) Comparison stimuli at the iso-distance contours in the isoluminant plane, shown in both RGB and model spaces. Note that the reference grid and fixed set of directions shown here are for illustration only; the actual sampling did not use a fixed grid or evenly spaced chromatic directions. (C) The Weibull psychometric function used to simulate binary (correct or incorrect) responses given ΔE values. (D) Sampled reference–comparison stimulus pairs. Reference colors and chromatic directions were sampled using Sobol' sequences, and comparison stimuli were jittered around the iso-distance contour. A total of 18,000 trials were simulated; only the first 200 are shown here for clarity. (E) Comparison between readouts from the WPPM fit and from CIELAB ΔE94. The WPPM fit was subsequently treated as the ground truth when simulating AEPsych and validation trials.
Appendix 5.1: Derivation of the comparison stimuli at threshold on the isoluminant plane
We used CIELAB ΔE94 as the ground-truth metric for deriving color discrimination performance. For any given reference color and any given chromatic direction, both were affine-transformed from model space to RGB space. The RGB values were then converted to XYZ and then to L*a*b* space, where ΔE computations were performed. In the XYZ-to-L*a*b* transformation, we used the monitor gray point () as the reference white. We then searched along each chromatic direction in RGB space to find a comparison stimulus such that ΔE was equal to 2.5 (Appendix 5—figure 1A). This procedure was repeated across multiple directions. The resulting comparison stimuli were then mapped back into model space, where we fit an ellipse to characterize the iso-distance contour (Appendix 5—figure 1B).
Appendix 5.2: Simulation of trials near threshold contours
To introduce some variability, we added bivariate Gaussian noise to each comparison stimulus at the iso-distance contour in model space. The noise standard deviation was proportional to the Euclidean distance between the reference stimulus and the comparison stimulus in model space. The jittered comparison stimulus was computed as:
We modeled performance using a Weibull psychometric function with fixed shape parameters. Specifically, for each pair of reference and jittered comparison stimuli, we computed ΔE and used the Weibull curve to obtain the predicted percent correct:
The values of α and β were selected such that the psychometric curve returns 66.7% correct when (Appendix 5—figure 1C). A binary (correct or incorrect) response was sampled from a Bernoulli distribution using this predicted probability:
The comparison stimuli were selected to be near threshold, while the reference stimuli and chromatic directions were Sobol'-sampled to ensure uniform coverage of model space without repeated trials (Appendix 5—figure 1D). In total, we simulated 18,000 trials.
AEPsych-driven trials and Wishart process psychophysical model (WPPM) readouts for a simulated observer.
(A) AEPsych-driven Sobol’-sampled trials. (B) AEPsych-driven adaptively sampled trials. (C) Comparison of WPPM predictions with the ground truth, shown here as dashed contours and in Appendix 5—figure 1E as colored contours.
Appendix 5.3: Fitting the WPPM and treating the model fit as ground truth
We fit the WPPM to the 18,000 simulated trials in model space and treated the resulting fit as the ground truth for simulating responses for both AEPsych and validation trials (Appendix 5—figure 1E, color lines). We chose to use the WPPM fit as the ground truth—rather than percent-correct performance derived from CIELAB ΔE94 with the Weibull psychometric function—because our goal here was to evaluate how well the WPPM can recover ground truth that is itself described by the WPPM.
Validation trials and Wishart process psychophysical model (WPPM) readouts for a simulated observer.
Same format as Figure 2D–G in the main text.
Appendix 5.4: Fitting the WPPM to simulated AEPsych trials
Based on the ground-truth WPPM fit, we simulated 900 Sobol' trials (Appendix 5—figure 2A), followed by 5100 adaptively sampled trials using AEPsych (Appendix 5—figure 2B), matching the design for the actual experiment. For each pair of reference and comparison stimuli, we approximated percent-correct performance using Monte Carlo simulation (N=2000), and generated binary responses by drawing from a Bernoulli distribution. We then fit the WPPM to this simulated dataset. To approximate the variability of the WPPM readouts, we bootstrapped the data 120 times, maintaining the same Sobol'-to-adaptive trial ratio within each bootstrapped dataset. As shown in Appendix 5—figure 2C, the WPPM was able to reliably recover the ground-truth model, with only minor deviations. This good agreement provides context for the analyses in the following subsections, which are then compared with the corresponding analyses of the human data.
Appendix 5.5: Validation trials and Weibull predictions
In addition to the 6000 AEPsych trials, we also simulated 6000 validation trials, mirroring the design of the actual experiment. Unlike the experimental design, these validation trials were simulated separately rather than interleaved, since sequential effects or perceptual learning are not factors in simulation. The confidence intervals for the WPPM thresholds overlapped with the confidence intervals for 23 of the 25 validation thresholds (Appendix 5—figure 3). A linear regression fit to the validation thresholds (x-axis) and WPPM thresholds (y-axis) yielded a slope of 0.92 and a correlation coefficient of 0.86. These values fall within the range observed for human data (Appendix 4.1).
Appendix 5.6: Statistical analysis of residuals between WPPM readouts and validation thresholds
Threshold residuals for a simulated dataset.
For all panels, color indicates the surface color of the reference stimulus, and the y-axis limits are set to ± the mean of the validation thresholds. (A) Residuals as a function of the absolute angular difference between the major axis of the elliptical threshold contours read out from the Wishart process psychophysical model (WPPM) fits and the chromatic direction of the validation condition. (B) Residuals as a function of the aspect ratio (major/minor axis) of the WPPM threshold contours. (C) Residuals as a function of thresholds estimated from validation trials.
We applied the same statistical analysis to the simulated data as we did for the human data (Appendix 4.2). Consistent with the human results (Appendix 4—figure 9), we found no strong evidence that residuals systematically varied with the orientation or shape of the elliptical threshold contours read out from the WPPM fits. However, we did observe a significant negative correlation between the residuals and the magnitude of the validation thresholds (slope = , p<0.001, ; Appendix 5—figure 4; Appendix 5—table 1). As noted earlier, the size of this bias is small compared to the overall range of validation thresholds.
Appendix 5.7: Comparison between WPPM estimates and simulation ground truth
To evaluate whether the WPPM readouts systematically deviated from the ground truth, we sampled thresholds over a fine grid of reference locations (15 × 15 points evenly spaced between −0.7 and 0.7 in model space) and compared them with the corresponding ground-truth thresholds. As a comparison metric, we used the Bures–Wasserstein (BW) distance (Bhatia et al., 2019), which quantifies the dissimilarity between two positive semi-definite covariance matrices, and . Intuitively, it captures the ‘effort’ required to morph one ellipse into another. Mathematically, the BW distance is defined as:
The BW distance is non-negative and equals zero only when the two matrices being compared are identical. Smaller distances indicate greater similarity between the threshold ellipses.
Linear regression results for the simulated dataset.
| Predictor | Term | Coef | Std Err | t | p | [0.025, 0.975] CI | R2 |
|---|---|---|---|---|---|---|---|
| Absolute difference of angles | Intercept | –0.007 | 0.005 | –1.532 | 0.139 | [–0.017, 0.003] | 0.028 |
| Slope | 0.000 | 0.000 | 0.812 | 0.425 | [–0.000, 0.000] | ||
| Aspect ratio | Intercept | –0.007 | 0.012 | –0.579 | 0.568 | [–0.033, 0.019] | 0.003 |
| Slope | 0.002 | 0.008 | 0.263 | 0.795 | [–0.014, 0.018] | ||
| Validation thresholds | Intercept | 0.028 | 0.006 | 4.429 | 0.000 | [0.015, 0.041] | 0.547 |
| Slope | –0.393 | 0.075 | –5.273 | 0.000 | [–0.547, –0.239] |
The results showed that BW distance generally increased as the reference color moved farther from the achromatic point (Appendix 5—figure 5A), suggesting that the WPPM has more difficulty accurately capturing large threshold contours in regions with higher internal noise. To provide a benchmark for what constitutes a substantial mismatch, we computed the BW distance between each ground-truth ellipse and a circle with radius equal to the largest major axis length among all ground-truth ellipses. The maximum of these values served as a reference point (shown as the upper limit of the color bar in Appendix 5—figure 5A). Overall, the mismatches observed in our simulations were modest—well below the level expected if the model were fundamentally mischaracterizing the threshold shapes.
We also examined differences in the estimated major axis lengths. The WPPM showed slight underestimation in the upper region and overestimation in the lower region of the space (Appendix 5—figure 5B; also visible, though small, in Appendix 5—figure 2C). Similar to the BW analysis, these deviations were relatively small compared to the overall range of ground-truth values. Together, these results indicate that the WPPM provides a close and robust approximation of the true threshold contours, with only minor local deviations.
Deviation of Wishart process psychophysical model (WPPM) estimates from the ground truth.
(A) Bures–Wasserstein (BW) distance between WPPM-estimated thresholds and the ground-truth ellipses. The upper limit of the color map (0.17) corresponds to the maximum BW distance between each ground-truth ellipse and a reference circle whose radius equals the largest major axis length among all ground-truth ellipses. The maximum BW distance between WPPM estimates and the ground truth (0.03) is substantially lower than this reference value. (B) Difference in major-axis length between WPPM readouts and ground-truth ellipses. The colormap limits (±0.17) reflect the ± maximum ground-truth major axis length. Again, the maximum deviation observed (0.03) is small relative to this range.
Appendix 6
Comparison with MacAdam ellipses (1942)
Comparison with MacAdam, 1942.
First panel: MacAdam’s original threshold ellipses, magnified 10× for visualization. Remaining panels: threshold contours corresponding to 66.7% correct (colored lines), measured from all participants and transformed from model space into the CIE 1931 chromaticity diagram. Shaded regions indicate 95% confidence intervals computed from 120 bootstrapped datasets. Reference stimuli were sampled from a 5 × 5 grid spanning [–0.7, 0.7] along each model dimension. To reduce visual clutter, MacAdam ellipses falling within the gamut of the isoluminant plane are represented only by arrows indicating their major axes. For visual comparability, our ellipses are magnified 2× to approximately match the scale of MacAdam’s data. Triangle: monitor gamut; quadrilateral: gamut of the isoluminant plane.
Appendix 7
Comparison with Danilova and Mollon, 2025
In this section, we compare our measurements with those from Danilova and Mollon, 2025, by transforming our results into the chromaticity space used in their study, a scaled version of the MacLeod–Boynton space (MacLeod and Boynton, 1979). While a direct transformation path exists from our model space to theirs (model space → RGB → LMS → MacLeod–Boynton → scaled MacLeod–Boynton), it assumes that the adaptation point and isoluminant plane are identical between the two studies, which is not the case. To account for these differences, we instead took a detour through the DKL space (Derrington et al., 1984), where cone-opponent mechanisms are explicitly defined, and adaptation is more easily controlled. Specifically, we followed the transformation chain: model space → RGBus → LMSus → ΔLMSus → DKL → ΔLMSdm → LMSdm → MacLeod–Boynton → scaled MacLeod–Boynton. Here, the subscript ‘us’ refers to values computed using our study’s cone fundamentals, luminosity function, and adaptation point, while ‘dm’ denotes those used in Danilova and Mollon, 2025. This approach allowed us to approximate how our stimuli would be represented in their perceptual framework, enabling visual comparison of the threshold contours. The comparison reveals a general qualitative agreement between their measurements and ours (Appendix 7—figure 1).
Comparison with Danilova and Mollon, 2025, in the scaled MacLeod–Boynton space.
Top left: threshold contours from their study (black ellipses), magnified by 4×. Remaining panels: threshold contours from all participants (colored ellipses). We sampled a grid of reference points evenly spaced from –0.7 to 0.7 in our model space, read out the corresponding threshold contours, and transformed them into the same scaled MacLeod–Boynton space. The parallelogram indicates the gamut of the isoluminant plane. To reduce visual clutter, ellipses from their study that fall within our gamut are represented by arrows indicating only their major axes. For visual comparability, our ellipses are magnified by 1.5× to roughly match the size of those in their study.
Appendix 8
Comparison with Krauskopf and Gegenfurtner, 1992
We compared our threshold estimates with those reported by Krauskopf and Gegenfurtner, 1992. To do so, we first read out, for each participant, the threshold contour corresponding to 66.7% correct at the achromatic reference color in model space and transformed it to DKL space (Derrington et al., 1984). We then normalized the DKL cardinal axes so that the threshold contour at the achromatic reference had unit length along both axes. This normalized space—referred to here as stretched DKL space—is the coordinate system in which Krauskopf and Gegenfurtner, 1992, conducted their measurements. Finally, we converted the 16 reference stimuli used in their study into our model space, read out the corresponding threshold ellipses, and transformed them into stretched DKL space to enable direct comparison (Appendix 8—figure 1). We observed generally good agreement between their measurements and those from some of our participants, such as CH and FM. Notably, however, individual differences are evident, particularly in the upper-right quadrant of stretched DKL space (Appendix 8—figure 2). In addition, at the adapting chromaticity, our ellipses are consistently rotated relative to the DKL axes, as noted in the main text.
Transformation from model space to the stretched DKL space used in Krauskopf and Gegenfurtner, 1992, for participant CH.
(A) Model space. Threshold contours corresponding to 66.7% correct were read out from each participant’s Wishart process psychophysical model (WPPM) fit. Notably, our measurements covered a much larger region of the isoluminant plane than did theirs. (B) Intermediate, unstretched DKL space, obtained by affine transformation from model space. (C) Stretched DKL space, obtained by affine transformation from unstretched DKL space. Specifically, the cardinal axes of unstretched DKL space were rescaled to normalize the threshold at the achromatic reference point.
Comparison with Krauskopf and Gegenfurtner, 1992, for the remaining seven participants.
Top left: original threshold contours reported by Krauskopf and Gegenfurtner, 1992. Remaining panels: threshold contours (colored lines) for the remaining participants, transformed from model space to stretched DKL space using participant-specific scaling of the cardinal axes. Shaded regions indicate 95% confidence intervals computed from 120 bootstrapped datasets. All threshold contours are plotted at their original sizes.
© 1992, Krauskopf and Gegenfurtner. Top-left image is reproduced from Figure 14 from Krauskopf and Gegenfurtner, 1992 (published under a CC-BY-NC-ND). Further reproductions must adhere to the terms of this license.
Appendix 9
Comparison with CIELAB ΔE76, ΔE94, ΔE00
Comparison with color differences predicted by CIELAB ΔE76 (CIE, 2004).
The CIELAB threshold was defined as , chosen to approximately match the scale of the measured thresholds in our data. Black contours represent the CIELAB predictions, whereas colored contours represent the measured thresholds transformed from model space into L*a*b* space and shown at their original scales. Shaded regions indicate 95% confidence intervals computed from 120 bootstrapped datasets.
We obtained elliptical thresholds on a grid of reference stimuli in model space from each participant’s WPPM fits (Appendix 2—figure 1). We then transformed these ellipses from model space to L*a*b* space. Specifically, values in model space were first converted to RGB values via an affine transformation (Appendix 1.3). The resulting RGB values were converted to XYZ using the CIE 1931 2° standard-observer color matching functions (ISO/CIE, 2019). Finally, the XYZ values were converted to L*a*b* using an open-source Python package (Taylor, 2017). The adapting background () was used as the reference white in the XYZ-to-L*a*b* transformation. In addition, we computed threshold contours directly in L*a*b* space, defining them as iso-distance contours at a fixed perceptual distance of .
Comparisons revealed that the iso-distance contours from ΔE94 and ΔE00 provided reasonable approximations to our model-predicted thresholds (Appendix 9—figures 2 and 3), with only modest deviations. In contrast, the ΔE76 contours—despite their continued widespread use—diverged substantially from our measurements (Appendix 9—figure 1).
Comparison with predictions based on the CIELAB ΔE94 color-difference metric (CIE, 1995).
Comparison with CIELAB ΔE00 color-difference metric (Luo et al., 2001; CIE, 2001).
Appendix 10
Hyperparameters of the smoothness prior
Appendix 10.1: Effects of ε and γ on the WPPM-predicted psychometric field
We assume that the internal noise limiting color discrimination varies smoothly across model space. Smoothness is implemented as the variance of the weights on the basis functions (Equation 16), where ε determines how rapidly the variance decreases with increasing polynomial order, and γ sets the overall variance scale (Appendix 10—figure 1).
To evaluate the influence of each hyperparameter, we first varied ε across a broad range while fixing . Each participant’s dataset was divided into five folds for cross-validation. For each value of ε, we fit the WPPM to a training set consisting of four folds of the data, while leaving the held-out fold as the test set. Model parameters were obtained by minimizing the negative log-posterior probability on the training data. To evaluate model performance on both the training and test sets, we computed the negative log-likelihood (nLL) without the prior to enable a fair comparison.
After each fold had been treated once as the test set, we computed the mean and full range of nLL across the five repetitions. As expected, the mean nLL evaluated on the training data decreased monotonically with increasing ε, reflecting improved fit with greater model flexibility. In contrast, the mean nLL evaluated on the held-out test data initially decreased and then gradually increased (Appendix 10—figures 2 and 3). This pattern reflects a tradeoff governed by the smoothness prior. When smoothness is enforced too strongly, the model produces an overly uniform threshold field that fails to capture the data. As the smoothness constraint is relaxed, predictive performance improves and remains relatively stable over a range of ε values. Beyond this range, further reductions in smoothness lead to increased variability in the estimated psychometric field across the five cross-validation repetitions.
We performed the same analysis to examine the influence of the hyperparameter γ on the estimated covariance field and observed the same qualitative pattern (Appendix 10—figures 4 and 5). Importantly, the hyperparameter values used in the main analyses ( and ) lie within the regime that balances oversmoothing against increasing variability.
The effects of ε and γ on the variance of model weights.
(A) Variance of the Chebyshev basis weights as a function of polynomial order (). The top panel illustrates effects of varying ε while holding γ fixed, whereas the bottom panel shows effects of varying γ while holding ε fixed. The yellow dashed curve indicates the hyperparameter values used in the main analyses (, ). (B) Two-dimensional Chebyshev basis functions arranged in order of increasing polynomial order ().
Effect of ε on the Wishart process psychophysical model (WPPM)-predicted psychometric field for a representative participant.
The gray line and shaded region indicate the mean and full range of negative log-likelihood (nLL) on the training set across five repetitions of fivefold cross-validation. The green line and shaded region indicate the mean and full range of nLL on the test set. Panels (a–g) show the model-predicted thresholds on a 7 × 7 reference grid for selected values of ε.
Effect of γ on the Wishart process psychophysical model (WPPM)-predicted psychometric field for a representative participant.
The gray line and shaded region indicate the mean and full range of negative log-likelihood (nLL) on the training set across five repetitions of fivefold cross-validation. The green line and shaded region indicate the mean and full range of the nLL on the test set. Panels (a–g) show the model-predicted thresholds on a 7 × 7 reference grid for selected values of γ.
Appendix 10.2: Effects of ε on the WPPM–validation threshold residuals
We examined how ε influences the agreement between WPPM-predicted and validation thresholds while fixing the variance scale γ at 0.0003. We held γ constant because cross-validation showed that, beyond a certain value, the nLL for both the training and test sets plateaued, indicating that further changes in γ had only minimal impact on model predictions (Appendix 10—figure 5). Using the model fits reported in Appendix 10.1 for each value of ε, we computed predicted thresholds at the 25 validation conditions and quantified the residuals between WPPM predictions and validation thresholds, following the procedure described in Appendix 4.2.
Regression slopes assessing the relationship between Wishart process psychophysical model (WPPM)–validation threshold residuals and the three predictors reported in Appendix 4—table 1.
The hyperparameter γ was fixed at 0.0003, while ε was varied.
| Predictor | ε | Coef | Std Err | t | p | [0.025, 0.975] CI | R2 |
|---|---|---|---|---|---|---|---|
| Absolute difference of angles | 0.1 | –0.001 | 0.000 | –6.926 | <0.001 | [–0.001, –0.000] | 0.195 |
| 0.2 | –0.000 | 0.000 | –3.212 | 0.002 | [–0.000, –0.000] | 0.050 | |
| 0.3 | 0.000 | 0.000 | 1.764 | 0.079 | [0.000, 0.000] | 0.015 | |
| 0.4 | 0.000 | 0.000 | 0.273 | 0.785 | [–0.000, 0.000] | 0.000 | |
| 0.5 | –0.000 | 0.000 | –0.654 | 0.514 | [–0.000, 0.000] | 0.002 | |
| 0.6 | –0.000 | 0.000 | –1.393 | 0.165 | [–0.000, 0.000] | 0.010 | |
| 0.7 | –0.000 | 0.000 | –1.592 | 0.113 | [–0.000, 0.000] | 0.013 | |
| 0.8 | –0.000 | 0.000 | –1.901 | 0.059 | [–0.000, 0.000] | 0.018 | |
| 0.9 | –0.000 | 0.000 | –3.732 | <0.001 | [–0.000, –0.000] | 0.066 | |
| 1.0 | –0.000 | 0.000 | –1.961 | 0.051 | [–0.000, 0.000] | 0.019 | |
| Aspect ratio | 0.1 | –0.003 | 0.001 | –2.542 | 0.012 | [–0.006, –0.001] | 0.032 |
| 0.2 | 0.001 | 0.005 | 0.282 | 0.778 | [–0.008, 0.011] | 0.000 | |
| 0.3 | 0.003 | 0.002 | 1.068 | 0.287 | [–0.002, 0.007] | 0.006 | |
| 0.4 | 0.002 | 0.002 | 0.943 | 0.347 | [–0.002, 0.005] | 0.004 | |
| 0.5 | 0.001 | 0.002 | 0.289 | 0.773 | [–0.003, 0.004] | 0.000 | |
| 0.6 | –0.001 | 0.002 | –0.724 | 0.470 | [–0.004, 0.002] | 0.003 | |
| 0.7 | –0.004 | 0.001 | –2.625 | 0.009 | [–0.006, –0.001] | 0.034 | |
| 0.8 | –0.005 | 0.001 | –4.596 | <0.001 | [–0.008, –0.003] | 0.096 | |
| 0.9 | –0.002 | 0.001 | –3.266 | 0.001 | [–0.003, –0.001] | 0.051 | |
| 1.0 | –0.002 | 0.001 | –3.141 | 0.002 | [–0.003, –0.001] | 0.047 | |
| Validation thresholds | 0.1 | –0.964 | 0.061 | –15.767 | <0.001 | [–1.085, –0.844] | 0.557 |
| 0.2 | –0.417 | 0.049 | –8.580 | <0.001 | [–0.513, –0.321] | 0.271 | |
| 0.3 | –0.266 | 0.032 | –8.245 | <0.001 | [–0.329, –0.202] | 0.256 | |
| 0.4 | –0.176 | 0.031 | –5.727 | <0.001 | [–0.237, –0.116] | 0.142 | |
| 0.5 | –0.144 | 0.034 | –4.207 | <0.001 | [–0.211, –0.076] | 0.082 | |
| 0.6 | –0.134 | 0.035 | –3.841 | <0.001 | [–0.203, –0.065] | 0.069 | |
| 0.7 | –0.157 | 0.039 | –4.020 | <0.001 | [–0.233, –0.080] | 0.075 | |
| 0.8 | –0.104 | 0.043 | –2.436 | 0.016 | [–0.188, –0.020] | 0.029 | |
| 0.9 | –0.106 | 0.050 | –2.124 | 0.035 | [–0.205, –0.008] | 0.022 | |
| 1.0 | –0.103 | 0.044 | –2.345 | 0.020 | [–0.190, –0.016] | 0.027 |
To assess systematic patterns in these residuals, we fit a linear regression model with three predictors: (1) the absolute angular difference between the chromatic direction of the validation condition and the major axis of the contours derived from the WPPM fit, (2) the aspect ratio of the contours, and (3) the magnitude of the validation threshold. The regression slopes are summarized in Appendix 10—table 1. Only the regression slopes are reported, as the intercepts were less relevant.
Of the three predictors, the regression slopes relating threshold residuals to angular difference and to aspect ratio did not vary systematically with ε, showing no consistent or monotonic trend. In contrast, the regression slope relating threshold residuals to validation threshold exhibited a clear and systematic dependence on ε. As the smoothness prior became weaker (larger ε), the negative correlation between threshold residuals and validation threshold weakened. This pattern is consistent with the expected role of ε in regulating the strength of regularization in the psychometric field.
Appendix 10.3: The effects of ε on linear regression between WPPM and validation thresholds
We also examined how ε affects the linear regression between WPPM and validation thresholds computed at the 25 validation conditions, as illustrated in Appendix 4—figures 1C–8C. Across participants (), the mean regression slope did not deviate systematically from one. However, the standard deviation of the slope across participants was large when ε was small (strong smoothness prior), indicating substantial bias at the individual-participant level. The standard deviation of the slope across participants reached a minimum at and increased again for larger values of ε. Additionally, the correlation coefficient between WPPM and validation thresholds was near zero under strong smoothness, peaked at , and declined again as increased further (Appendix 10—figure 6).
Together, these results reflect a bias–variance tradeoff. Excessive smoothness introduces bias by failing to capture structure in the data, whereas insufficient smoothness increases variance in model predictions through overfitting. These results further support our choice of as lying near the optimal balance between bias and variance.
Appendix 11
Display characterization
Appendix 11.1: Calibration of monitor output
Stimuli and equipment used for calibration.
(A) The stimulus setup during calibration was identical to that used in the main experiment. The surface color of both the cubic room and the blobby stimulus (shown here as the top-position stimulus) was varied during calibration. The shaded gray circular region on the stimulus indicates the area measured by the spectroradiometer lens. (B) A SpectraScan PR-670 used for all calibration measurements.
Calibration was carried out with three blobby objects arranged in a triangular configuration inside the cubic room (Appendix 11—figure 1A). A SpectraScan PR-670 radiometer (Appendix 11—figure 1B), positioned at the same viewing distance as the chin-rest, was used to record all measurements (Brainard et al., 2002).
We first obtained the gamma function for each primary by measuring the screen output at 61 evenly spaced input levels (from 0 to 1) rendered through Unity (v2022.3.24f1) (Appendix 11—figure 2A). The resulting curves lie above the identity line because Unity internally applies its own assumed gamma exponent when texture values are modified. We also measured the spectral power distributions (SPDs) of the red, green, and blue primaries at different intensity levels (Appendix 11—figure 2B), and examined the stability of the primaries’ chromaticities in the CIE diagram (Appendix 11—figure 2C). There was almost no chromaticity drift, indicating the monitor’s color output remained stable across intensity levels (Appendix 11—figure 2D). To evaluate linearity and repeatability, we compared nominal (predicted) and measured luminance and chromaticity for two independent measurement runs (Appendix 11—figure 2E). Deviations from linearity were minimal and nearly identical across repeats, confirming reliable reproduction (Appendix 11—figure 2F). Finally, we tested whether the cubic room’s background color affected the stimulus SPD; no measurable influence was detected (Appendix 11—figure 2G).
To assess consistency across different locations on the screen, we conducted the same set of measurements for each of the three blobby stimuli, and compared their primaries and chromaticities. The results showed consistent behavior of the monitor (Appendix 11—figure 3), and thus we applied a single gamma correction curve to all three stimuli. This correction was derived from measurements of the bottom-right blobby stimulus. Specifically, we interpolated a gamma table for 4096 RGB input values using a combination of linear and polynomial fits, from which we derived an inverse gamma function (Appendix 11—figure 4A). To validate this correction, we repeated the measurements with gamma correction applied in Unity. The measured output closely aligned with the identity line across all three primaries, indicating accurate correction (Appendix 11—figure 4B).
Characterization of display output through Unity’s rendering pipeline.
(A) Gamma functions for the red, green, and blue primaries. Note that they lie above the identity line with Unity’s default internal gamma correction. (B) Spectral power distributions (SPDs) of the three primaries across a range of intensity levels. (C) Chromaticities of the three primaries at different intensity levels. (D) Normalized SPDs for each primary, showing that SPD shape is stable across intensity levels. (E) Linearity tests comparing predicted and measured chromaticity and luminance across two independent measurement runs. (F) Prediction errors, computed as the differences between measured and nominal (predicted) values, showing little systematic deviation from zero. (G) Effect of the cubic room’s background color on the SPD of the blobby stimulus, showing no detectable influence.
Comparison of display output across stimulus locations.
(A) Spectral power distributions (SPDs) for each stimulus location: Ref Cal (bottom right), Cal 2 (bottom left), and Cal 3 (top). (B) Ambient light SPDs measured during calibration. (C) Gamma functions for each primary (red, green, blue) across all three stimulus locations. (D) Differences in normalized output for each pairwise comparison of stimulus locations, plotted separately for each primary. (E) Chromaticity coordinates of each primary in the CIE diagram, shown for all three stimulus locations.
Finally, to ensure that the applied gamma correction remained stable over time, we repeated the measurements of the display via Unity’s rendering pipeline on the bottom-right stimulus approximately 1 month after data collection began. The results confirmed that the correction remained accurate and consistent (Appendix 11—figure 5).
Gamma correction.
(A) Measured gamma functions and corresponding inverse functions for the red, green, and blue primaries, used to construct the gamma-correction lookup table. (B) Gamma functions remeasured after applying gamma correction in Unity, showing close alignment with the identity line for all three primaries.
Comparison of display output with gamma correction over time.
(A) Spectral power distributions (SPDs) measured at the bottom-right blobby stimulus location. Ref Cal denotes the initial measurements before the experiment, and Cal 2 denotes the follow-up measurements conducted roughly 1 month after data collection began. (B) Ambient-light SPDs measured during each calibration. (C) Gamma functions for the red, green, and blue primaries across both sessions, with gamma correction applied. (D) Chromaticity coordinates of each primary plotted on the CIE chromaticity diagram for both calibration runs.
Appendix 11.2: Assessment of color depth
Color-depth measurements were conducted using a single blobby stimulus positioned at the center of the screen (Appendix 11—figure 6A). This stimulus was originally the top stimulus in the triangular configuration, and the camera view was adjusted to center it on the screen. Compared with the scene used in the main experiment, the other two blobby stimuli and all cubic room elements were excluded from rendering and therefore were not visible. A Klein K-10A colorimeter (Appendix 11—figure 6A), placed directly against the monitor screen, was used to make the measurements.
Specifically, we tested RGB values ranging from 1928/4095 to 2128/4095, in increments of 1/4095. Each stimulus was displayed for 5 s, and the RGB values from the first frame of the frame buffer were saved in EXR format. We then compared the average RGB values across the surface of the blobby object, extracted from the EXR files, with the luminance measured throughout the full stimulus presentation. Although individual pixels exhibited quantization below 12-bit precision, the mean luminance increased steadily, rather than following a staircase pattern. A similarly smooth progression was observed in the average R, G, and B channel values, with the R channel shown as an example in Appendix 11—figure 6B.
To better understand how Unity and our video chain achieved this behavior, we analyzed horizontal slices of pixel values from the EXR files. When we extracted a very thin slice—only one pixel in height—the individual pixel values exhibited staircase-like changes, consistent with 8-bit quantization. However, as we increased the height of the horizontal slice, the averaged channel values became progressively smoother. These results suggest that Unity achieves effective 12-bit color depth through internal spatial dithering (Appendix 11—figure 6C).
Evidence of spatial dithering by Unity’s rendering pipeline.
(A) The stimulus setup during measurement was similar to that used in the main experiment, except that only a single blobby stimulus was presented at the center of the screen and the cubic room was omitted. The shaded gray circular region on the stimulus indicates the area measured by the colorimeter aperture. (B) Spatial dithering by Unity’s standard shader is suggested by comparing luminance measurements from the Klein K-10A (averaged across a circular region on the blobby object) with the RGB values stored in the frame buffer. The measured luminance shows small incremental changes as the RGB settings increase in steps of 1/4095. These measurements are consistent with the values obtained by averaging over pixels in saved frame-buffer images (exported from Unity in .exr format). The averaged pixel values exhibit 12-bit quantization, even though individual pixel values exhibit 8-bit quantization. (C) Top row: mean R channel values averaged vertically within a horizontal slice of the blobby object. Bottom row: differences in the R channel values between the minimum target R channel setting and each of the remaining settings. Different shades of gray represent different target R settings. For illustration, only a portion of the horizontal slice is shown, and solid lines in the bottom row are scaled by a factor of 0.1. Dashed lines: mean difference averaged across all pixels within each slice.
Appendix 12
Differentiable Monte Carlo approach
Recall from the main text that the log-likelihood function implied by the WPPM observer model can be written in terms of
which has no simple closed-form solution and must be estimated by Monte Carlo simulation. This quantity of interest takes the form of a cumulative distribution function for some random variable v and scalar constant u. In this section, we describe how to approximate the log-likelihood in a manner that is compatible with automatic differentiation libraries, which enables gradient-based optimization of the log-posterior density.
Let denote some probability distribution parameterized by θ. Given n independent and identically distributed random variables, , we would like to form an estimate of the cumulative distribution function, , where . A simple and well-known estimate is the empirical cumulative distribution function:
where 1[·] is the indicator function—i.e., 1[A] evaluates to one if the event A occurs and evaluates to zero otherwise. In many respects, this is a perfectly fine estimator. For example, the celebrated Dvoretzky–Kiefer–Wolfowitz inequality (Dvoretzky et al., 1956) states that this estimate converges exponentially fast to the true cumulative distribution function as .
In our setting, we would like to not only evaluate for any given u, but to also evaluate for all parameters that define the underlying distribution . Equation S14 provides an estimate of but it is unfortunately not differentiable with respect to because 1 is a discontinuous step as a function of u. A straightforward and intuitive solution is to replace this step function with a smooth sigmoid function. We formalize this approach below, showing that it can be motivated by forming a smoothed estimate of the underlying density function.
Specifically, let denote a smooth, non-negative function that integrates to one and satisfies . Suppose that has a density function . Then, given , we can estimate the density function as
where is a user-specified hyperparameter called the bandwidth. Equation S15 is known as a kernel density estimate (Wasserman, 2006). Asymptotically, approaches the true density function f as and . Intuitively, larger values of h lead to smoother density estimates, which is preferable in sample-limited (i.e. small n) regimes.
Now define:
which is a smooth sigmoid function centered at , and consider the following estimate of the cumulative distribution function:
Notice that in the limit of , we recover the empirical cumulative distribution estimator because, in this limit, we have that . We can further justify Equation S17 as a reasonable estimator of g by recognizing it as the integral of the density estimate in Equation S15. That is,
Our refined estimator is clearly differentiable whenever we choose to be a smoothly differentiable function. In our model fitting routine, we chose to be the density of a standard logistic distribution:
This smoothing kernel has heavy tails, which we reasoned would enable numerically stable auto-differentiation routines even when h is chosen to be small. Another feature is that the integrated density is the well-known logistic function:
which is familiar and easy to compute.
Data availability
Data (https://osf.io/k27js) and code (https://github.com/fh862/ellipsoids_public, copy archived at Brainard and Hong, 2026) are publicly available. All experiments, data collection, data processing, and open-sourcing were conducted at University of Pennsylvania.
-
Open Science FrameworkID k27js. Comprehensive characterization of human color discrimination thresholds.
References
-
BookMultidimensional signal detection theoryIn: Busemeyer JR, Wang Z, Townsend JT, Eidels A, editors. Oxford Handbook of Computational and Mathematical Psychology. Oxford University Press. pp. 13–34.https://doi.org/10.1093/oxfordhb/9780199957996.013.2
-
On the Bures–Wasserstein distance between positive definite matricesExpositiones Mathematicae 37:165–191.https://doi.org/10.1016/j.exmath.2018.01.002
-
Do you see what I see? Diversity in human color perceptionAnnual Review of Vision Science 8:101–133.https://doi.org/10.1146/annurev-vision-093020-112820
-
BookCone contrast and opponent modulation color spacesIn: Kaiser PK, Boynton RM, editors. Human Color Vision. Optical Society of America. pp. 563–579.
-
Functional consequences of the relative numbers of L and M conesJournal of the Optical Society of America A 17:607.https://doi.org/10.1364/JOSAA.17.000607
-
BookColor appearance and color difference specificationIn: Shevell SK, editors. The Science of Color. Elsevier. pp. 191–216.https://doi.org/10.1016/B978-044451251-2/50006-4
-
SoftwareEllipsoids_public, version swh:1:rev:43c3c3f37af2bd86bb780cb0f7af9e805cbea00aSoftware Heritage.
-
Visual sensitivities to combined chromaticity and luminance differencesJournal of the Optical Society of America 39:808–834.https://doi.org/10.1364/josa.39.000808
-
The effect of field size and chromatic surroundings on color discriminationJournal of the Optical Society of America 42:837–844.https://doi.org/10.1364/josa.42.000837
-
Application of fourier analysis to the visibility of gratingsThe Journal of Physiology 197:551–566.https://doi.org/10.1113/jphysiol.1968.sp008574
-
The perception of auditory motionTrends in Hearing 20:2331216516644254.https://doi.org/10.1177/2331216516644254
-
Estimates of L:M cone ratio from ERG flicker photometry and geneticsJournal of Vision 2:531–542.https://doi.org/10.1167/2.8.1
-
BookThéorie Des Mécanismes Connus Sous Le Nom de ParallélogrammesImprimerie de l’Académie Impériale Des Sciences.
-
Spontaneous perception of numerosity in humansNature Communications 7:12536.https://doi.org/10.1038/ncomms12536
-
Spontaneous representation of numerosity in typical and dyscalculic developmentCortex; a Journal Devoted to the Study of the Nervous System and Behavior 114:151–163.https://doi.org/10.1016/j.cortex.2018.11.019
-
The role of non-numerical information in the perception of temporal numerosityFrontiers in Psychology 14:1197064.https://doi.org/10.3389/fpsyg.2023.1197064
-
The effect of adaptation on differential brightness discriminationThe Journal of Physiology 92:406–421.https://doi.org/10.1113/jphysiol.1938.sp003612
-
Effect of stimulus size on chromatic discriminationJournal of the Optical Society of America A 42:B167.https://doi.org/10.1364/JOSAA.545292
-
Chromatic mechanisms in lateral geniculate nucleus of macaqueThe Journal of Physiology 357:241–265.https://doi.org/10.1113/jphysiol.1984.sp015499
-
Asymptotic minimax character of the sample distribution function and of the classical multinomial estimatorThe Annals of Mathematical Statistics 27:642–669.https://doi.org/10.1214/aoms/1177728174
-
BookLarge-Scale Inference: Empirical Bayes Methods for Estimation, Testing, and PredictionCambridge University Press.https://doi.org/10.1017/CBO9780511761362
-
BookA general probabilistic model for triad discrimination, preferential choice, and two-alternative identificationIn: Ashby FG, editors. Multidimensional Models of Perception and Cognition. Lawrence Erlbaum Associates. pp. 115–122.
-
Higher order color mechanisms: a critical reviewVision Research 49:2686–2704.https://doi.org/10.1016/j.visres.2009.07.005
-
Contrast detection and near-threshold discrimination in human visionVision Research 21:1041–1053.https://doi.org/10.1016/0042-6989(81)90009-2
-
The Verriest lecture: color vision from pixels to objectsJournal of the Optical Society of America A 42:B313.https://doi.org/10.1364/JOSAA.544136
-
Energy, quanta, and visionThe Journal of General Physiology 25:819–840.https://doi.org/10.1085/jgp.25.6.819
-
Importance of hue: color discrimination of three-dimensional objects and two-dimensional discsJournal of the Optical Society of America A 42:B296.https://doi.org/10.1364/JOSAA.544380
-
Schrödinger, and the first non-Euclidean model of perceptual color spaceAnnalen Der Physik 536:2300536.https://doi.org/10.1002/andp.202300536
-
Distinct mechanisms mediate visual detection and identificationCurrent Biology 17:1714–1719.https://doi.org/10.1016/j.cub.2007.09.012
-
Organization of the human trichromatic cone mosaicThe Journal of Neuroscience 25:9669–9679.https://doi.org/10.1523/JNEUROSCI.2414-05.2005
-
Causal inference regulates audiovisual spatial recalibration via its influence on audiovisual perceptionPLOS Computational Biology 17:e1008877.https://doi.org/10.1371/journal.pcbi.1008877
-
ConferenceThe geometry of color space: suprathreshold differences from discrimination thresholdsTalk presented at the Vision Sciences Society Annual Meeting, St. Pete Beach, FL. Conference presentation.
-
Color discrimination repetition distorts color representationsScientific Reports 14:9615.https://doi.org/10.1038/s41598-024-60283-4
-
BookColorimetry — Part 1: CIE Standard Colorimetric ObserversInternational Organization for Standardization.
-
A history of perimetry and visual field testingOptometry and Vision Science 88:E8–E15.https://doi.org/10.1097/OPX.0b013e3182004c3b
-
BookModeling Psychophysical Data in RSpringer Science & Business Media.https://doi.org/10.1007/978-1-4614-4475-6
-
Color discrimination and adaptationVision Research 32:2165–2175.https://doi.org/10.1016/0042-6989(92)90077-v
-
L/M cone ratios in human trichromats assessed by psychophysics, electroretinography, and retinal densitometryJournal of the Optical Society of America A 17:517.https://doi.org/10.1364/JOSAA.17.000517
-
ConferenceLook-ahead acquisition functions for Bernoulli level set estimationInternational Conference on Artificial Intelligence and Statistics PMLR. pp. 8493–8513.
-
The development of the CIE 2000 colour‐difference formula: CIEDE2000Color Research & Application 26:340–350.https://doi.org/10.1002/col.1049
-
Visual sensitivities to color differences in daylight*Journal of the Optical Society of America 32:247.https://doi.org/10.1364/JOSA.32.000247
-
Judd’s contributions to color metrics and evaluation of color differencesColor Research & Application 4:177–193.https://doi.org/10.1002/col.5080040402
-
Chromaticity diagram showing cone excitation by stimuli of equal luminanceJournal of the Optical Society of America 69:1183–1186.https://doi.org/10.1364/josa.69.001183
-
BookGeneralizing point embeddings using the Wasserstein space of elliptical distributionsIn: Bengio S, Wallach H, Larochelle H, Grauman K, Cesa-Bianchi N, Garnett R, editors. Advances in Neural Information Processing Systems. Curran Associates, Inc. pp. 10258–10269.
-
Evaluation of acquired color vision deficiency in glaucoma using the rabin cone contrast testInvestigative Ophthalmology & Visual Science 55:6686.https://doi.org/10.1167/iovs.14-14079
-
Sensitivity to spatiotemporal combined luminance and chromaticity contrastJournal of the Optical Society of America 71:453–459.https://doi.org/10.1364/josa.71.000453
-
Measuring the effect of attention on simple visual searchJournal of Experimental Psychology. Human Perception and Performance 19:108–130.https://doi.org/10.1037//0096-1523.19.1.108
-
Color discrimination as a function of observer adaptationJournal of the Optical Society of America 64:750–759.https://doi.org/10.1364/josa.64.000750
-
The ellipsoidal representation of spectral sensitivityVision Research 30:647–652.https://doi.org/10.1016/0042-6989(90)90075-v
-
Velocity tuned mechanisms in human motion processingVision Research 39:3267–3285.https://doi.org/10.1016/s0042-6989(99)00017-6
-
From cones to color vision: a neurobiological model that explains the unique huesJournal of the Optical Society of America A 40:A1.https://doi.org/10.1364/JOSAA.477227
-
CIE recommendations on uniform color spaces, color-difference equations, and metric color termsColor Research and Application 2:5–6.https://doi.org/10.1002/col.5080020103
-
ConferenceEstimating nonlinear neural response functions using GP priors and Kronecker methodsAdvances in Neural Information Processing Systems. pp. 4465–4473.
-
Outline of a theory of color measurement for daylight visionPhysics Annual 63:397–520.https://doi.org/10.1002/andp.19203682202
-
A model of selective masking in chromatic detectionJournal of Vision 16:3.https://doi.org/10.1167/16.9.3
-
Color opponency: tutorialJournal of the Optical Society of America A 34:1099.https://doi.org/10.1364/JOSAA.34.001099
-
On the distribution of points in a cube and the approximate evaluation of integralsUSSR Computational Mathematics and Mathematical Physics 7:86–112.https://doi.org/10.1016/0041-5553(67)90144-9
-
ConferenceDiminishing returns in perceptual color space-now in colorThe Eurographics Association.https://doi.org/10.2312/evs.20251081
-
BookFourier Analysis: An IntroductionPrinceton University Press.https://doi.org/10.1515/9781400839995
-
BookColor vision mechanismsIn: Bass M, editors. OSA Handbook of Optics. McGraw-Hill. pp. 1–104.
-
ConferenceStandards for reporting the optical aberrations of eyesVision Science and its Applications. pp. 232–244.https://doi.org/10.1364/VSIA.2000.SuC1
-
Detection of early loss of color vision in age-related macular degeneration - with emphasis on drusen and reticular pseudodrusenInvestigative Ophthalmology & Visual Science 58:BIO247–BIO254.https://doi.org/10.1167/iovs.17-21771
-
Color measurement and discriminationJournal of the Optical Society of America A 2:62.https://doi.org/10.1364/JOSAA.2.000062
-
BookAll of Nonparametric StatisticsSpringer Science & Business Media.https://doi.org/10.1007/0-387-30623-4
-
ConferenceGeneralised Wishart processesProceedings of the Twenty-Seventh Conference on Uncertainty in Artificial Intelligence. pp. 736–744.
-
BookEffects of color terms on color perception and cognitionIn: Luo R, editors. Encyclopedia of Color Science and Technology. Springer. pp. 777–785.https://doi.org/10.1007/978-3-642-27851-8_220-2
-
BookColor Science: Concepts and Methods, Quantitative Data and FormulaeJohn Wiley & Sons.
-
ConferenceChromatic adaptation systematically reshapes human color discrimination thresholdsPoster presented at the Vision Sciences Society Annual Meeting, St. Pete Beach, FL. Vision Sciences Society (VSS) 2026 Poster 33.301.
Article and author information
Author details
Funding
Meta Research
- David H Brainard
The funders had no role in study design, data collection and interpretation, or the decision to submit the work for publication.
Acknowledgements
We thank Nicolas P Cottaris for assistance with calibration, and our colleagues at the Penn Vision Labs, Laurence Maloney, and Karl Gegenfurtner for helpful feedback.
Ethics
Human subjects: The study was approved by the Institutional Review Board at University of Pennsylvania, and written informed consent was obtained from all participants prior to the experiment.
Version history
- Preprint posted:
- Sent for peer review:
- Reviewed Preprint version 1:
- Reviewed Preprint version 2:
- Version of Record published:
Cite all versions
You can cite all versions using the DOI https://doi.org/10.7554/eLife.108943. This DOI represents all versions, and will always resolve to the latest one.
Copyright
© 2025, Hong et al.
This article is distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use and redistribution provided that the original author and source are credited.
Metrics
-
- 3,066
- views
-
- 112
- downloads
-
- 3
- citations
Views, downloads and citations are aggregated across all versions of this paper published by eLife.
Citations by DOI
-
- 3
- citations for Reviewed Preprint v1 https://doi.org/10.7554/eLife.108943.1