Do you own a monitor calibration device? Ever wonder if you could do better than the manufacturer's software that spits out a profile with 30 test patches in 5 minutes? Want to do it in Linux, Mac OS X, and Windows? Think I should stop asking questions? Well enter Argyll CMS.
Argyll is an incredibly powerful open-source colour management suite. I'm not going to explain why having a well-profiled monitor is essential to photographers, graphic artists, video editors, and for all sorts of other things. Chances are, if you've paid for a colour calibrator, you already understand how important profiling is. If you own one of the devices listed here, you can use Argyll instead of the manufacturer's software to generate an ICC profile for your monitor.
Why not use the supplied software? A number of reasons: you've lost the serial number for the software or you got it off eBay without the number, you want finer control over profile generation, you want a more accurate profile, and the reason I use Argyll the software that came with my Spyder2 was the express version and ColorVision wanted to charge me extra to set my own gamma and temperature.
Reasons you may want to stick to the supplied software: You're in a great hurry, or the thought of having to work on a command line makes you faint.
If you're still conscious and reading, let's get started.
Step 1: Get Argyll
The latest version of Argyll can be downloaded here. Download the executable for your operating system and unpack it somewhere. The location is not particularly important.
Connect your device (don't use a hub).
On Windows only, it is necessary to load a new driver for your colour calibrator if it is a USB device (steps might be different on non-XP versions of Windows):
Open the System Control Panel. Click the hardware tab. Click Device Manager. Find your device in the list, right-click it and choose Update Driver Software... Choose No, not this time, hit Next, choose Install from a list or specific location, hit Next again, choose Don't search. I will choose the driver to install, hit Next, and click Have Disk. Find the .inf file for your device in the libusbw folder in the Argyll folder. Click OK, Next, then Finish.
A few devices or system configurations need extra steps to work. See here.
Open your operating system's command line:
Mac OS X: Applications/Utilities/Terminal
Windows: Start>Programs>Accessories>Command Prompt
Linux: Since there are many different terminal apps on linux, you're on your own here. Just make sure that it's in a window manager, not a tty.
Change your working directory to the "bin" folder inside your newly extracted archive:
All OS's: Type (without quotes) cd then a space. then drag the bin folder into the command line window. You shoud have something like the following:
Mac OS X/Linux:
cd "C:\Program Files\Argyll_V1.0.4\bin\"
If you are using the Spyder2, like me, you need to copy the device's firmware from the manufacturer's CD. With the CD in the drive, simply type ./spyd2en(Mac/Linux) or .\spyd2en.exe (Windows) and hit enter. See here for more details.
Step 2: Adjusting and Calibrating Your Monitor
Before you begin, reset your monitor's options to their defaults using the buttons on the edge. You will be using these controls to adjust the colour temperature, so move the options box away from the centre of the screen.
This is the command to start the calibrator:
./dispcal -v -y l -g 2.2 -t 6500 -q m name
.\dispcal.exe -v -y l -g 2.2 -t 6500 -q m name
There are a few options that can be set in this command by changing the values after the option flags (the dash followed by a letter):
-y l for LCD displays, -y c for CRT displays
-y (gamma) Lets you specify a target gamma, use 2.2 unless you know why you should pick otherwise.
-t (temperature in Kelvins) Lets you adjust the target white point. Most people should choose 6500, those working with print or graphic art may prefer a warmer white; 5000-6000.
q (l, m, or h) Choose low, medium, or high calibration quality. Higher settings take longer to read. Medium is fine for most purposes, but high may be desired for a more accurate profile.
Replace name with a name that will help you identify the profile. Hit Enter.
A grey square should appear in the centre of the screen. Place your profiler over that square, and turn out the room lights if possible. Hit Enter. You are now presented with a list of operations dispcal can perform.
First we want to adjust the white point of the display. If you're on a laptop, you can skip this step since there are no colour controls.
Choose "2) White point (Color temperature, R,G,B, Gain/Contrast)".
The square will flash different colours for a second then you'll see something like this at the bottom of the window:
/ Current Br 102.33, x 0.3175, y 0.3403 DE 6.0 R- G-- B+
Find your monitor's custom colour settings and adjust the Red, Green, and Blue settings so that the number after DE is as low as you can get it. Follow the symbols after RGB at the bottom of the window; if there are two minus symbols after G, then you need to reduce the amount of green. When finished, hit the space bar. If your monitor lacks custom colour settings, set its temperature setting as close as possible to the colour temperature you picked above
Now we want to adjust the brightness of the monitor:
Choose "3) White level (CRT: Gain/Contrast, LCD: Brightness/Backlight)".
The program will display the monitor's current brightness in cd/m2. Adjust the Brightness setting (or contrast on a CRT) to change the brightness to the desired level. The optimal level depends mainly on the ambient lighting. If your room is very dark, you can get better colour by lowering the brightness to 90 or 100 cd/m2. For most people, 110-120 cd/m2 is a good range. If your room is really bright, you should consider buying a hood to shade your monitor. If you can't raise the brightness setting high enough, you may have to go back a step and increase all of the RGB settings. Hit space to return to the menu.
Now to begin the calibration:
Choose "7) Continue on to calibration".
The program will read in a number of colour patches; the exact number depends on the quality setting you chose earlier. Be patient.
Step 3: Generating and Reading Target Patches
Now we need to generate a number of coloured patches to be read in order to establish the response of the display.
The command is:
./targen -v -d 3 -f 300 name
.\targen.exe -v -d 3 -f 300 name
The only option is the number of patches to generate: -f (number of patches). The more patches you generate, the better your profile will be in the end, but more patches take longer to read. For most people between 300-500 patches are adequate. If you want a very accurate profile, or are using a device that has a complicated colour response, or even if you just have some extra time, 1500-2000 patches is not unreasonable.
To start reading the patches, type the following command:
./dispread -y l -v -k name.cal name
.\dispread.exe -y l -v -k name.cal name
The -y option is the same as for dispcal; set it to c if using a CRT, otherwise set it to l.
The process of reading patches will also take a while. More patience here.
Step 4: Generating Your ICC Profile
You now have a file that represents the colour response of your display, to convert this into a useable ICC file, we use the colprof tool:
./colprof -v -D Display Name -q h -a s name
.\colprof.exe -v -D Display Name -q h -a s name
Quality -q (l, m, or h):
Sets the profile quality. Choosing high here doesn't add too much extra time to process, so you might as well always use it.
Profile Type (s or l):
Choose between matrix/shaper profile (s) and LUT profile (l). LUT profiles are more accurate, but need at least 1000 patches read to produce a good result, for fewer patches, choose a matrix/shaper profile.
After the command has finished, you'll have an ICC profile of your monitor sitting in your Argyll/bin/ folder, named name.icc (or .icm depending on your operating system). You can use it like that, but it's usually better to install it with your other profiles on your system.
To install the profile, simply type:
./dispwin -I name.icc
.\dispwin.exe -I name.icc
You should immediately notice a change in the colours of your display. This is what your finished profile looks like. Now if you're on Mac OS X, you're done; the profile will be automatically loaded at boot, and you won't have to worry about it. Linux and Windows users are out of luck here though; if you restart, the corrected profile will not be loaded. The next step details creating a small script to load the profile at login.
Step 5: Creating a Boot Script
Since Windows and Linux don't have any software to load colour profiles, we'll create a script to run dispwin at boot and load the profile.
You're mostly on your own here; different window managers have different ways of running programs at login, but here is the command that needs to be run:
(path to Argyll folder)/bin/dispwin -L
You can also run dispwin as a daemon with option -D instead of -L if you prefer.
Make a new text file with the following text (assuming Argyll folder is in Program files, tweak to your needs):
cd C:\Program Files\Argyll\bin
.\dispwin.exe -c -L
Save the file as dispwin.bat and place it in C:\Documents and Settings\All Users\Start Menu\Programs\Startup\. If you're running Vista, you might want to leave a copy of the .bat file on your desktop for easy access, as a certain bug in Vista causes the colour profile to reset whenever a full-screen fade effect happens.
Thanks for reading, now go out there and make something with your newly profiled monitor.