The "Phantom Pixel" problem
In the process of scrutinizing our test images shot with the Pentax K10D, we noticed some very strange-looking colored "twinkles" in the horizontal lines of our Multi target. (This target is built upon the ISO-12233 resolution test target, the pattern at right is from that target.) Wherever there were horizontal or nearly-horizontal lines in the image, we found random-colored pixels appearing in the image, and they were present in both JPEG and RAW images.
You can see these in the image at right, a 1:1 crop from the full-resolution Multi Target image, shot at ISO 100, with the Pentax 43mm f/1.9 Limited lens. (A really great little lens, btw!) You can see the artifacts we're talking about as colored pixels interspersed among the slightly sloping diagonal lines.
When does it occur?
Carefully checking our images, we found that this problem only occurred when there were very abrupt, high-contrast edges with a generally horizontal orientation. They didn't occur with high-contrast vertical edges. If the edge wasn't very abrupt, or if the contrast wasn't very high, the phantom pixels either didn't appear, or they were of significantly reduced magnitude/visibility.
|"Real World" Phantom Pixel Examples|
|Lights in the attic?
No, phantom pixels on the sensor.
|Less evident, but still visible: See twinkles in left-hand blinds and along the shadow lines of the gutter.|
Phantom pixels can occur in "natural" subjects: That is, the phenomena isn't just restricted to pathological test charts. The shots above show crops from our Far-Field test. The phantom pixels are very visible between the slats of the louver in the gable of the house (they look almost like there are Christmas lights glowing in the attic). They're less visible, but still present in sharp shadow edges on the gutters, and in the less-contrasty venetian blinds on the garage windows.
That said, in most images the phantom pixels are either not present at all or easily lost in the fine subject detail. Only in relatively rare situations do they detract visibly from the images. (But anything with sharp, strongly-contrasting horizontal lines will trigger them.)
Does this affect all K10Ds?
Dealing with a very limited statistical sample, we obviously have no way of knowing how widespread this problem might be. We tested three different samples of the K10D with fairly widely-separated serial numbers, and found the problem in all of them, to varying degrees. The examples above are about the worst we found, but the best camera still showed at least half as many phantom pixels.
What's causing this?
We've actually seen something like this once before, but at the time didn't know what it was. The crop at right is from a Canon D60, which we reviewed back in late February of 2002. You can see the misplaced black and white pixels among the fine pattern of lines. In the case of the D60, the artifacts aren't colored, but the behavior is otherwise exactly the same as on the K10D. (That is, the phantoms only appear adjacent to sharp, high-contrast, nearly-horizontal edges.)
What we're almost certainly seeing here is the effects of the camera's bad-pixel substitution algorithm. The camera's nonvolatile memory contains a map of known bad pixels on the sensor surface. Whenever data from a known-bad pixel is clocked off the sensor, data from an adjacent pixel or pixels is substituted for it. In most images, the small size of the pixels relative to subject details (and particularly relative to subject details of significantly different brightness/color) means that "borrowing" data from an adjacent pixel like this will generally go unnoticed. When the adjacent pixel is either greatly brighter or greatly darker than the area of the subject covered by the bad pixel though, the substitution appears as a bright or dark and/or wrongly-colored pixel that stands out in the image.
The easiest way to make these bad-pixel substitutions is simply to swap in the data from the pixel immediately before or after it in sequence, as the data is being clocked off the sensor array. Since most sensors clock data off across the narrow dimension of the frame, this means that the bad-pixel substitutions are going to happen along vertical columns of pixels. (At least when the camera is being held normally in the "landscape" orientation. The problem would switch to horizontal substitution errors if you were holding the camera vertically.)
In the case of the D60, the substitution algorithm at least managed to not introduce any color artifacts when the pixel data was swapped out. The K10D appears to be just grabbing either the preceding or following pixel's data and substituting it, without regard for the color of the micro-filters over the pixels involved. For example, if a pixel that's underneath a green filter and is in a dark part of the image is bad, and data is substituted from an adjacent pixel that's in a bright area of the image, the result will be a bright green "twinkle" in what should actually be a dark part of the image. A more sophisticated approach would require looking at adjacent pixels both horizontally and vertically, to arrive at a more accurate estimate of the substitution value, and/or taking into consideration both brightness and luminance in making the substitution. Either approach would require more processing power, since it would require examining multiple adjacent pixels and performing a calculation (or at minimum, a sorting process, in order to use a median filter) to calculate the more accurate substitution value.
Can this be fixed?
Curing this problem may be as simple as modifying the camera's firmware to employ a more sophisticated algorithm to make the necessary data substitutions. Whether this would practical or not, we have no way of knowing: It's possible that the additional processing would slow the shot to shot speed to an extent that users would find unacceptable. It's also possible that the detailed signal-chain architecture of the K10D wouldn't permit it. But we'd say there's some hope that a firmware fix could either greatly reduce or eliminate the problem.
A hopeful sign might be found in the behavior of the Samsung GX-10 we have here for testing, which doesn't seem to show the phantom pixel problem. The GX-10 is Samsung's version of the K10D, the product of a cooperative relationship between Pentax and Samsung. We have no way of knowing how closely the inner details of the GX-10 mirror those of the K10D (or even if they're using the same sensor or not), but the fact that we don't see the problem in the GX-10 may be a hopeful sign for K10D owners.
How much should I be concerned about this?
Well, that's an issue each user will have to judge for themselves. This situation is somewhat reminiscent of the "corduroy banding" problem we found in early models of the Nikon D200. That problem occurred only under certain lighting conditions, and only at certain ISO settings. Many users weren't bothered by it at all, while others felt it was a show-stopper. Even internally, we were split over it, with senior editor Shawn Barnett feeling it was an unacceptable flaw, while I (Dave Etchells) wasn't too bothered by it. We expect the same will be the case here, although this particular problem is quite a bit easier to trigger than was the corduroy banding issue in the D200. For the record, both Shawn and I feel it's a significant issue, enough that it would give us pause if we were considering purchase of a K10D. That said though, the K10D has a lot of other very positive attributes (body-based anti-shake, very solid construction, environmental seals, very accurate color, unique user interface, etc., etc.), and these are just single-pixel defects, so I personally might still come down on the side of owning one. If I had a considerable investment in Pentax glass from my film days and really wanted 10 megapixels (which I've often found invaluable when cropping images heavily), I'd almost certainly go for it. If 10 megapixels wasn't important to me (you can make tack-sharp 8x10 inch prints from 6-megapixel images), I'd probably go with a K100D instead. Each user will have to make up their own mind. (But then that's always the case, isn't it?)