0

I am working on automation scripts which use image detection algorithms. What I have noticed recently, is that the text on same page looks differently (at least when maximized) on different screens (the first screen is 1280x1024 and the second one is 1440x990).

For example, this is a magnified version of a text from the both screens. The top one is taken on 1440x990 and the bottom one is taken on 1280x1024:

Comparison

I have tried:

  1. Change resolution
  2. Color depth

But the text still looks different when magnified. This could be a big problem for me since the automation script use image recognition on pixel level.

Any idea what is causing this difference and how to eliminate it? I would prefer the way it looks on 1280x1024

3 Answers 3

2

There is the problem with LCD screens. LCD unlike CRT screens use phisical pixels, while reproducing image. The actual quantity of physical pixels in LCD panel is known as "Native resolution". Because pixel have physical size here, when you set resolution, which is different with native, monitor can't just increase or reduce pixels quantity and it convert the image with different algorithms according needed resolution. When you maximize your image with 1280x1024 resolution at 1440x990 monitor, it stretch the image and use different effects (like anti-aliasing) for fitting the image your current resolution. Also if you set the same resolution at both monitors, you won't get the quality you want, because in this case "Native resolution" will be different with actual resolution, and monitor will convert your image for fitting physical pixel size. Also all of above consider that you use raster images, because vector images (like text outside the image, f.e. in web page) have different converting algorithms, giving you the best quality in any resolution.

2
  • I think this misses the point, as it's two different screens. It's also not easy to get a TFT screen to display a resolution that's not less than the native one in both dimensions.
    – Daniel Beck
    Jul 19, 2013 at 7:08
  • Thanks a lot for your answer! Does that mean that I will not be able to reach the same result on the 1440x990 screen? Is the only option for me is to use a different monitor?
    – Eugene S
    Jul 19, 2013 at 7:48
2

The different resolutions of the screens are a red herring.

This effect comes from subpixel rendering. It uses the physical color components a pixel is made of (red, green, and blue subpixels) to achieve a higher apparent resolution, especially with text.

You can see this pretty well in your example: The right edge of white text is reddish (the red subpixel is the left-most one and hence activated), the left edge is blueish (because blue is the right-most subpixel).

Windows calls this technique ClearType. Disable in Control Panel » Appearance and Customization » Display to always get the second variant, without the colors. On Mac OS X, it's the Use LCD font smoothing option in System Preferences » General.

2
  • Thanks a lot for your answer! I was not aware of that and now, as I started playing with ClearType settings in Windows, it actually does make a difference. The settings app takes me through a tuning process however I still can't reach the same "plain" text I get on my 1280x1024 screen. Should I be able to get similar looking text on 1440x900 or is this unachievable? P.S. In windows 7 the settings are under Control Panel -> Display -> Adjust ClearType text.
    – Eugene S
    Jul 19, 2013 at 7:46
  • @EugeneS Sorry, wrong option -- wrote the Windows part from memory…
    – Daniel Beck
    Jul 19, 2013 at 9:05
1

Eventually I have discovered that there is an option to disable the subpixel font smoothing feature (I work in Win7).

This could be done by performing the following steps:

  1. Click Start
  2. Type appearance
  3. Choose "Adjust the appearance and performance of Windows"
  4. Go to "Visual Effects" tab
  5. Unclick the "Smooth edges of screen fonts"

After doing this on the 1440x990 screen, the text became similar to the "plain" text I was seeing on the 1280x1024 screen.

2
  • To clarify, the color was missing after you disabled ClearType, right? It was just greyscale smoothing?
    – Daniel Beck
    Jul 19, 2013 at 9:08
  • @DanielBeck Actually there was no smoothing at all. The text started to look exactly like the example of the 1280x1024 screen. Thank you.
    – Eugene S
    Jul 19, 2013 at 16:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .