Pixel comparison plugin

RoyBU wrote on 1/26/2006, 10:00 AM
In working with some really bad blue screen video, I noticed that the pixels in the blue (but very uneven) background, almost always have a higher green value than red value. In the foreground objects, conversely, the red value nearly always exceeds the green value. So I went hunting for a filter or plugin that would allow me to select pixels according to the relationship between red and green. Unfortunately, I have found nothing. The Boris Pixelchooser allows for choosing pixels based on whether a pixel's red value, for example, exceeds a set threshold or falls within a range, but I can't figure out how to relate the value of red to green. It seems to me this would be a very useful ability in more than just blue screen work. Does anyone know of such a plugin?

Comments

Coursedesign wrote on 1/26/2006, 10:18 AM
You should be able to do exactly what you propose with channel-based expressions in After Effects, Combustion, etc.

But it would be easier to use the diamond keyer in Combustion 4. This comes from Flame and lets you choose the exact range of different RGB values you want, using a mask that you tweak on a "2-dimensional" color space on the screen.

I haven't tried Serious Magic Ultra with blue screen, but it might help too.

Anybody else have any idea how to do this in Vegas?

RoyBU wrote on 1/26/2006, 2:43 PM
I'm just beginning to learn about AE's expressions, so I may be wrong about this, but from what I've learned so far, an expressions uses one layer-wide property (such as the layer's scale or position) to control another layer-wide property, whether in the same layer or another layer. So I can control the opacity of an entire layer with the value of, say, the scale of another layer. But the key point is that expressions seem to operate at the layer level.

I need something that operates at the pixel level. The ideal plugin would allow me to examine one pixel in a layer, and if that pixel's green value is greater than that pixel's red value, turn that pixel transparent. Of course that same procedure would be applied to each pixel in the layer, but one by one. The reason a range effect won't work is that the red and green values might be 4 and 2, or 253 and 197. In both those cases, the red value exceeds the green value so they should both be opaque even though the two situations cover just about the entire range of red values.

I found a digitalanarchy.com plugin ("color sampler" in their toolbox) that does return the RGB value at a certain position, but that value can apparently only be used to control another property layer-wide, not per pixel.

I have tried Serious Magic Ultra, but it seems to work with fixed ranges also.

Anyone else?