Using LPROF to profile monitors

From ArchWiki
Revision as of 15:21, 26 November 2006 by Foxbunny (talk | contribs)
Jump to: navigation, search

This article will explain the concept of monitor calibration and profiling.
It will also show how to build and use lprof color profiler.

Before you read

Monitor calibration is an essential step in accurate color rendering. DTP software such as Scribus makes use of monitor ICC profile to display color accurately and enable preview of publication's colors as they would appear on a printed copy.

For general use (such as watching videos, viewing family photos, etc) monitor calibration is not necessary. This article is intended for DTP and pre-press professionals who need accurate color reproduction.

About LCD monitors

LCD monitors require a different approach to monitor profiling. They are not covered in this article, because the original author had no access to such devices.

Prerequisites for building lprof

In order to build the color profiler tool, lprof, you need root access. You need to be familiar with how Arch Build System (ABS for short) works and how to make packages using makepkg script and PKGBUILDS.

Moreover, in order to build lprof, you will need to build VIGRA, a computer vision library.

There exist PKGBUILDs for both components and the lprof PKGBUILD will be presented in this articles (in case it disappears from its original locations).

About monitor calibration

Before you proceed to following headings, you need understand some terms that will be used in this article.

Black point

Black point of the monitor is the black that is displayed when the device gets no input from the graphic card. If you display an image that has RGB values of 0, 0, 0, then you will be able to 'see' the monitor's black point.

White (color) temperature

Also referred to as the white point, this is the color temperature of the white. The higher the temperature, the cooler the white (which runs contrary to our notion of hot and cold), and vice versa. For DTP and pre-press, the standard white point is 6500K.

The factory default of most monitors sets the white point at 9300K. This is too cool for DTP. On some monitor makes and models, there are advanced controls for fine-tuning the white point.


What people usually refer to as brightness is actually a control that shifts the black point. By shifting the black point, one gets the impression that the picture is becoming brighter or darker. What actually happens is that the black point gets moved, so the pure black also gets brighter or darker.


Contrast control adjusts the distance of white (RGB = 255, 255, 255) to black (RGB = 0, 0, 0) point. The black point is not changed while the white point becomes brighter o darker effectively expanding or compressing the range of brightness values that can be reproduced. For monitor calibration purposes, this value should always be the maximum available on a device.

Phosphors (color geometry)

The phosphor values have three sets of values (two numbers each). Some manufacturers publish data on phosphor values in user manuals, but this is not true in most cases. Using specialized software, or web search engines is the most common method of getting this information.

Building lprof

The PKGBUILD for lprof has been presented at the Arch Linux Forum in this thread.

But, before you build lprof, you need to build VIGRA, which can be found in the AUR.

Here is the lprof PKGBUILD:

pkgdesc="Imaging device calibration tool"
depends=('qt>=3' 'lcms>=1.12' 'vigra>=1.3')
makedepends=('python>=1.53' 'scons')

build() {
  cd ${startdir}/src/${pkgname}-${pkgver}
  sed -i "s/'tiff'/'tiff','png'/" SConstruct || return 1
  python PREFIX=/usr || return 1
  install -d ${startdir}/pkg/usr
  python PREFIX=${startdir}/pkg/usr install

Just copy the contents into a PKGBUILD file and build the package.

Calibrating the monitor

Before you start lprof (or any other calibration/profiling tool) there are some steps must can carry out that don't require any software.

Setting brightness/contrast

Adjust the lighting in the room to what you will be using when working. Even if your screen is coated with an anti-reflective coating, you should avoid light falling directly on it. Let your monitor warm up for at least an hour for the image to get stabilized. It is not uncommon for Linux to be kept up 24/7 without shutting down, so you may consider that unless you hate the noise and/or light. That way, monitor will be always on (and your unpaid electric bills will quickly block your doorway),

Set contrast (usually a control with half-black-half-white circle) to maximum. If you find you cannot tolerate the bright highlights, you may lower contrast a little. The higher the better.

Next, display a pure black over entire screen. You can do this by creating a small black PNG image (all pixels have RGB = 0, 0, 0). Open it up in Gwenview (you can install it along with KDE) or any other picture viewer that is capable of displaying an image in full-screen mode without any controls.