metalev: More on the Resolution of the Nexus One

2010-03-24

More on the Resolution of the Nexus One

I just published showing the resolution of the Nexus One screen is not as high as claimed, and posted a number of example images on this blog showing how the weird color fringing on the Nexus One display can be leveraged to display pure grayscale images in full color.  I will expand on the resolution argument here in anticipation of discussion that will likely ensue.

All 480x800 physical pixels on the N1 screen have green subpixel elements on the, but half the physical pixels have red subpixel elements and no blue subpixel element, and the other half have blue subpixel elements but no red subpixel element.  This subpixel layout is known as PenTile by Nouvoyance (formerly Clairvoyante).

The subpixel layout on the Nexus One screen
To compare the resolution of the N1 display to a standard RGB LCD screen, in the Ars article I took a weighted sum to convert subpixel resolution in each channel to the total number of effective RGB pixels: (480*800/2)*2/3 + (480*800)*1/3 = 256,000, exactly two thirds the claimed total number of pixels (480*800=384,000).  This is equivalent to a screen with edge dimensions sqrt(256/384)=82% of the claimed length: (480*82%)*(800*82%) = 392*653 = 256k.  The Nexus One's effective resolution is 392x653 using this method of calculation, not 480x800.  Any effective resolution arguments are complicated, however, so see the Ars article for all the gory details.

Nouvoyance's Claims

PenTile's creater, Nouvoyance (formerly Clairvoyante),  that the PenTile's resolution is exactly comparable to an LCD display of the same number of physical pixels.  It is completely impossible for this claim to be correct, given that there are fewer total subpixel elements on the PenTile screen than on an RGB-striped LCD screen of the same number of physical pixels.

Nouvoyance's claims are based on grille test patterns from Vesa FPDM Standard Section 302-2.  These are alternating black and white lines in either horizontal or vertical configurations, and for a screen manufacturer to claim a certain resolution, they have to determine the maximum density of black/white lines that exceed 50% contrast modulation.  Unfortunately the PenTile layout "cheats" in that this methodology is insufficient to test the display's true resolution.

The Vesa method indeed supports the claim that the PenTile display resolution is 480 pixels horizontally and 800 pixels vertically, because it can easily produce a pattern of alternating horizontal or vertical black lines in one axis at a time, using an alternating pattern of RG and BG pixels at full intensity to generate white.  However PenTile cannot handle diagonal lines at full resolution, because the distribution of RG and BG subpixels is in diagonal bands.  This means that when intensity transitions are not long horizontal or verticle edges, color fringes are generated, most predominantly in shades of green, because the density of green subpixel elements is twice as high.  The following test pattern demonstrates this.

 


Test pattern (left, click for full-sized version), and photo of the test pattern being displayed on a Nexus One screen.  Many of these stipple patterns appear a shade of green.

The spatial density of green subpixel elements is twice that of blue or red, so hard intensity transitions are most likely to be compensated for in the green channel, as seen when the test pattern is displayed on the N1 screen -- therefore luminance (intensity) can in some circumstances be converted to chrominance (color).  However because every physical pixel on a PenTile display is missing one color channel, the display has to compensate by dispersing red and blue color intensities to two or four physical pixels in a neighborhood to display any given RGB color at a point.  This produces color fringes in arbitrary colors at hard intensity transitions, as seen in my blog post that exploits these artifacts to display grayscale stippled images in full color on the Nexus One screen.

UPDATE: The CEO of Nouvoyance contacted me about this blog post, and has indicated that there are numerous register values that can be tweaked to change the behavior of the PenTile display driver hardware.  By "reducing the amplitude of the modulation, such that the locally adaptive filter detector is no longer triggered", apparently these color fringes can be eliminated. Therefore claims made in the Ars article or on this blog apply specifically to the Nexus One's specific usage of PenTile technology, and statements about color fringing may not necessarily apply to other PenTile configurations.  However:

  • I have to wonder what the tradeoff is of turning off the "locally adaptive filter detector", they implemented it for a reason
  • I find it almost impossible to believe that color fringes can be 100% eliminated, given that the display relies heavily upon such a complex set of postprocessing rules (small local convolutions, subpixel positioning, color correction curves, etc.)
  • Though the claims of color fringing may apply only to the N1's specific PenTile register settings, I still stand by claims that the effective resolution is lower than claimed -- there just aren't enough subpixel elements for the PenTile display to have exactly the same effective spatial addressing ability as an LCD of the same resolution.


Effective pixel size

One thing I don't talk about in the article is the effective size of a single pixel on the screen.  Assuming we're talking about putting one white pixel on a black screen, the display can choose to fully illuminate one RG pixel and one BG pixel (both Gs need to be illuminated so the G intensity is equal to R and B), in either a 2x1 or a 1x2 pixel block.  Conceivably the display could choose a different arrangement of subpixels, e.g. GBG on one row and just R on the next row, affecting three physical pixels, but ultimately a sum of two physical pixels worth of screen area has to be illuminated to show one white pixel.  On average, for consistency between the axes, intensities have to be dispersed in both axes equally.  So on average the two pixels that must be addressed (1x2 or 2x1 or similar) are equivalent to a single effective square pixel of edge length sqrt(2)*sqrt(2)=1.4*1.4.

A little more esoterically, if we compare this measure of effective pixel size with the previous calculations about effective resolution, it turns out that these conceptual effective pixels overlap by about 15% of their width when laid out on the effective pixel grid, because 1.4*82% = 1.15.  This is basically a very rough measure of the maximum amount of color bleed between effective pixels, assuming no postprocessing.  Of course this is cleaned up in some measure by the various PenTile signal processing algorithms, but is another way of looking at perceived display fuzziness.


Arguments about subpixel positioning

As described in the Ars Technica article, I believe that taking a weighted average of the total number of R, G and B subpixels to produce a number of effective RGB triplets is as reasonable a measure as any other method.  However I mentioned in the article that signal processing (in particular subpixel addressing) has to be ignored for this number to make sense.  Signal processing on the N1 display significantly muddies the waters when it comes to determining effective display resolution because of the complexity of the signal processing algorithms involved.

That said, I don't think ignoring the subpixel positioning on PenTile displays is totally unreasonable, or that it changes the conclusion much.  There is no subpixel positioning at all in the vertical axis of the display, and horizontally there are only two possible subpixel alignments: pixel-aligned or horizontally offset by two-thirds of a pixel.  One way to think about subpixel alignment on a PenTile display is that subpixel alignment allows positioning within the 2x1 or 1x2 or 2x2 grid of pixels that must be addressed, e.g. a white pixel could be represented as GBGR, BGRG, GRGB or RGBG.  Thus any benefit subpixel positioning might be claimed to have is actually halved, because the positioning is effective within a two pixel wide window.

Summary

This is a messy area, and it could be analyzed in a dozen different ways.  My particular analysis may not be the best one, but I think it's at least a reasonable start.


This is all conceptual, of course -- stating reasonable numbers for a display that isn't laid out like a normal RGB-striped LCD is very hard to do.  It is simply an effort to back the subjective impression that the display is fuzzy with somewhat justifiable numbers.


Debate among yourselves :-)

0 comments:

Post a Comment