But I could not figure out which texture nodes should I use that cycles understands to fill every face with the average color from texture in that area. Is it even possible?
This was in blender render.
UV unwrap the plane - project from view bounds to match the exact image
Mark all lines as sharp (Ctrl+E)
Add an edge split modifier and apply it so each face is separated. This is needed for the next step
Subdivide the mesh a couple of times
Bake the texture images to vertex color - Render / Bake options
In vertex paint mode select the Blur brush and on full strength go across the image and blur all the plane so each face has now just one vertex color
In the material settings enable ‘Vertex Paint Color’ in the Options panel
Then create a new texture and bake the veretx color to the image. The result is not antialiased so I rendered to double size and scale the result downs to the original size
Added additional step to get a better result and updated final image
After applying edge split modifier subdivide the mesh a couple of times so the average colour of each face is more accurate
I will test it tomorrow when I’m back at my work place. This is really cool thing because polygon design is today very popular at Web. I bet that if you could do a video tutorial about this, the video might get some good amount of views.