You are here

Advanced picture scaling

Hello Everyone,

I am a quite new on the GIMP wolrd and on this site also. And unfortunatelly I don't know GIMP very much.
I am working on a project display pictures with falling water. I create the needed pictures with GIMP.
My problem is when I want to diplay it with water the picture is deforming because the acceleration of gravity.
You can check it on this picture

My question is are there any script or function I could make an exponantial scaling/transformation on the picture before I display it with water?
It would be nice to have a simmilar tool in GIMP like Curve Bend, I could set the scaling curve next to the picture, but I don't know the GIMP so deeply.

Could you help me? Maybe you know some simmilar scripts or some GIMP tricks I could transform my pictures easily.

Thank you for your help in advance

Regards: Balazs

To my knowledge, GIMP does not directly provide a way to do this, even with any of the default or third-party plug-ins available. What you effectively need to do to accomplish this is to map your image onto surface that is curved exponentially along one axis. A dedicated plug-in could be written to accomplish this but it would need to process the image data directly (GIMP's procedural database does not provide a way of subsampling pixels).

As a first approximation you can use the displace filter.

Try this:
- Create a new layer the same size as your source image.
- Fill this with a black to white gradient from the top to the bottom.
- Duplicate this layer and set the mode to multiply.
- Merge down the duplicate.
- Use the level tool and change the lower bound of the output level from 0 to 128.

This is now a square curve in the y direction.

- Apply a displacement map in the +y direction using that gradient layer. Use an amount of about 100, and repeat it a few times. (If you do too much it ends up all steppy). The result should be reverse distorted to compensate for acceleration. (though it might need pre scaling, as well).

Here are the steps and the result:

Subscribe to Comments for "Advanced picture scaling"