xi / apca-introduction

The missing introduction to APCA
https://xi.github.io/apca-introduction/tool/
9 stars 1 forks source link

Spatial frequency is a underrepresented #12

Open xi opened 1 year ago

xi commented 1 year ago

@myndex wrote in https://github.com/xi/apca-introduction/issues/7#issuecomment-1213078955:

SPATIAL FREQUENCY is a primary driver of contrast, Your "mathematical analysis" strips all of the spatial frequency sensitivity out of the formula. Therefore your analysis is not valid.

Contrast is a perception and it is NOT only about the distance between two colors, yet all of your analysis seems to be continuing this wrong assumption, and this wrong assumption is a key deficit of the WCAG 2 contrast method.

xi commented 1 year ago
Myndex commented 1 year ago

As far as I understand from the literature, spatial frequency is not the primary driver of contrast. It defines a minimum color contrast but has little effect above that level. We discussed that before in https://github.com/xi/apca-introduction/issues/5#issuecomment-1200428416. @Myndex claimed that this research was outdated but failed to provide any more recent studies.

Spatial frequency is a primary driver of contrast, this is peer reviewed, scientific consensus going back to the 1960s, and is academic.

I have provided multiple bibliographies. That you are not interested in reading them does not mean they don't exist.

Myndex commented 1 year ago

The official documentation clearly states that the spatial frequency look up table is optional and that using simple 45/60/75 thresholds is an option.

FALSE

Read it again. The SIMPLE LEVELS have spatial frequency components that you are fully ignoring.

Myndex commented 1 year ago

The "whole section" on spatial frequency is notwithstanding. Here is is pasted below with discussion:

Spatial frequency

Smaller text is generally harder to read than bigger text.

No, text is easiest to read within the range of 0.2° to 2.0° of visual angle (Legge et alia)

In a more general sense, we can speak about the spatial frequency of features. This is usually measured in cycles per degree (cpd), since the visual field is measured as an angle.

We speak of the spatial frequency of stimuli. The size of the retinal image is defined as visual angle. The capital E is 2.5 cycles vertically.

If content is easy to read because of its spacial frequency, I do not need as much color contrast. On the other hand, if the spatial frequency is bad, more color contrast is needed.

Spatial frequency is not "good or bad" it is high or low, and the question then is what is the appropriate spatial frequency for best fluent readability for a given acuity.

There is one caveat though: The spatial frequency only defines the contrast threshold under which a pattern is not perceivable at all. Above that it has barely any effect. So we the best way to use it is to define a minimum required color contrast based on spatial frequency.

GENERALLY FALSE

It is true that the CS curve is based on the JND threshold, but it is absolutely false that all of the supra threshold is in contrast constancy, and that is a misreading or misunderstanding of the literature. The contrast constancy effect IS ALSO a product of spatial frequency, and it is also FAR supra threshold. That is, there is a range from JND to the constancy level that is NOT subject to the constancy effect. And that is particularly wider at higher spatial frequencies. This is academic and ample more recent studies define it more completely. A B. And for the record the typical critical size for fluent body text is about 12cpd.

Interestingly, a lower spatial frequency is not always easier to read though. Studies have shown that the optimal spatial frequency is at about 5-7 cycles per degree. Below that, features get slightly harder to detect. (Perhaps that is the reasons for the "you don't see the forest among the trees" phenomenon.)

You are conflating different bits of data, including non-relevant aspects of the CS curve.

The CS curve is created using sinusoidal gratings. However, text has a "sharp edge" therefore large bold text is a combination of both low and high spatial frequencies (see signal theory and square waves).

PEAK contrast sensitivity is approx. 2 to 4 cpd. However, a basic latin letterform can be defined as ~2.5 cycles. (The vertical dimension of capital E is 2.5 cycles).

The scientific consensus on "best readability" is text where letterforms subtend between 0.2° and 2.0° of visual angle. (Lovie-Kitchen, Whittacker, Bailey, Legge et alia)

It is not obvious how to define spatial frequency in the context of the web.

Except that it is obviously defined in CSS with the CSS reference px which is further defined as 1.278 arc minutes of visual angle.

For text, font size and weight certainly play a role. But different fonts have wildly different interpretations of these values.

Which is WHY APCA guidelines are based on a REFERENCE FONT.

Since fonts depend on user preference, we cannot know beforehand which fonts will be used.

This is a bizarre statement. Fonts do not "depend on user preference" they are defined in the CSS, therefore the author definitely knows before hand what font(s) they are choosing.

We also don't know the size of device pixels or how far the user is from the screen.

As for device pixels, we don't need to know that, that is up to the manufacturer, but we do have the GUIDE to that relationship, including how close the device is used, and that is the CSS reference px, as stated above.

See this chart:

Screen PPI to Distance chart

So how do WCAG 2.x and APCA tackle this topic?

WCAG 2 ignores it, though there is a single breakpoint at 24px, which happens to be about the point where antialiasing effects come into play.

APCA guidelines on matching to the reference font are here.

Myndex commented 1 year ago

The proper visual examples can be seen at the corrected fork of this repo