Wednesday, March 06, 2013

3D LUTs

I recently discovered that Photoshop CS6 supports 3D LUTs (Look Up Table)! I've encountered them briefly in the past, but never took serious note, as they didn't do anything terribly useful for me. Now, however, they've become a potential creative outlet, given their technical nature!

It's easiest to compare a 3D LUT to a matrix, if you so happen to be familiar with those. It's a collection of color transforms all wrapped into one big chunk that lets you move colors from one "space" to another!

You can think of an RGB color as an XYZ coordinate, which is then essentiall an index in the LUT. You put a color in, it gives a color back! Here's an example of an 8x8x8 identity LUT. You put a color in, and it should give you that same color back.


You'll see 3D LUTs used most frequently to work with color correction or post processing on video. That's boring. As a photographer, I want to use it to do something creative with my stills! So I've started making this tool to manipulate LUTs in a fashion that can be used for creative control over images. It's still in the beginning phases, but it's still pretty spiffy.

I had a thought recently that videos are actually just 3D images, with time being the Z-axis. But aren't 3D LUTs basically the same thing? 3D cubes of color? Absolutely! So I made a tool to resample a video into a 3D LUT!

Here's the Sintel trailer converted into an 8x8x8 3D LUT =D

Kinda wonky looking, but it is an entire trailer. I'm going to experiment with recording abstract, shorter video clips in the future, this is just proof of concept still. But either way, this is usable! Here's what it looks like before and after applied to an image:


Interesting, for sure! But not attractive just yet. I have found that smaller LUTs look a little nicer, the 4x4x4 LUT did quite well. Again, better video clips will help for sure, but I also haven't even gotten around to the editing part of the tool! After that happens, stuff should start getting magic =D

I'll have the tool up when it's actually usable without manual scripting! Also, those LUTs may be rotated weird, I'm more interested in the creative vision of things, rather than technical accuracy.

Check an early beta version here!