I’m using Cinder-Warping for a multi-projector setup, which works great to match the geometry. It turned out that the projectors are different models, lamps, producing different picture quality. I quickly added a simple post-process functionality to Cinder-Warping that can change the brightness, contrast and hsv color, but while this works for some cases, the projectors have different characteristics with different colors.
Does anyone have any experience with this kind of setup? How is this issue addressed usually?
I usually use a rgb color curve to do that sort of correction
You should probably apply a different gamma value for each of the 3 channels (R,G,B). Use
enableGammaMode (or press KeyPad 0) to render a test image, then adjust the values using KeyPad 1-3 to reduce the value and KeyPad 7-9 to increase it. The checker pattern should appear as a solid color as much as possible. This will linearize the color curves. It’s not a perfect solution, but it’s sufficient in most cases.
@paul.houx We tried this, but it was not easy to achieve a perfect color match. Maybe I have to play with it a bit more.
@hperigo Looks really nice. Is this your custom node GUI with Cinder-FrameGraph? I have a strict deadline, so i won’t be able to code something like this for now. But it would be great to add this functionality to Cinder-Warping in the future.
not really, that’s the curve effect for in blender
another hacky way ( that I haven’t tried myself, it might not work) is to create a 1024px by 1px image, with a linear gradient inside:
next, do the color correction in photoshop (see the crazy curves on the right )
save an image and use that to ‘remap’ your app output color in a shader. If you are using watchdog you can iterate quickly.
Great idea. This should work if we do this for the each color channels I think. Thanks!
cool! let me know if that worked! I’m also curious to see the result