This script should do the following things
1. Find areas. This is my big problem. I want to find different areas based on there uhm whatever. For example a beach picture. After this first part the sky, the sand and the sea should be 3 different areas, but maybe also more sub divided(dark sand, light sand, deep sea you got it)
2. Find Area edges (which will be easy then)
3. Analyse edges where they touch the selected area(in which angle they touch them and which edges belong together)
4. create new areas(Based on the angle of the edges bezier curve shall be inserted. Which will create the new areas. This will be very complicated for mountains and so on)
5. look for similar areas and use them as patches for the first time resynthesize which will be done for every new area seperatly
6. Show the user the bezier curves and the areas from where the textures are taken. They should have the possibility to edit them
7. Resyntesize again and jump back to 6.
Content aware fill