Gimp-Forum.net
Flat mosaic (zero height) - Printable Version

+- Gimp-Forum.net (https://www.gimp-forum.net)
+-- Forum: GIMP (https://www.gimp-forum.net/Forum-GIMP)
+--- Forum: General questions (https://www.gimp-forum.net/Forum-General-questions)
+--- Thread: Flat mosaic (zero height) (/Thread-Flat-mosaic-zero-height)

Pages: 1 2


Flat mosaic (zero height) - gimpoid - 06-09-2022

Hello!

is it somehow possible to make a mosaic that is completely flat, ie has zero height,
or: zero width bevel around each tile? I have seen posts here and there asking
for this but can't figure out if it has been somehow achieved or not...

thnx


RE: Flat mosaic (zero height) - rich2005 - 06-09-2022

(06-09-2022, 11:28 AM)gimpoid Wrote: Hello!

is it somehow possible to make a mosaic that is completely flat, ie has zero height,
or: zero width bevel around each tile? I have seen posts here and there asking
for this but can't figure out if it has been somehow achieved or not...

thnx

Annoying isnt it, even with all the option off still some border artifacts with the Gimp GEGL mosaic. Just had a look around and nothing from my archive that is suitable.

The best I can suggest is the Gimp G'mic plugin http://www.gmic.eu which has a simple mosaic filter (one slider for size) A comparison.

[attachment=8077]


RE: Flat mosaic (zero height) - Ofnuts - 06-09-2022

It would be very complicated. Along the edges, pixels are partially transparent, so the frontier between two tiles is the overlap of partially transparent pixels, which is never totally opaque. So you have to either cover-up the mess (like what is done with the unescapable 1px) or devise an algorithm to figure out which edges should be made of fully opaque pixels (and handle  vertices pixels appropriately).

A possible shortcut is to get the mosaic with joins as little intrusive as possible (color and thickness):

[attachment=8078]

And then apply a small "Median blur" to the picture:

[attachment=8079]



RE: Flat mosaic (zero height) - tmanni - 06-09-2022

1) menu Layer > transparency > Add alpha channel

2) Use the Filters > Distorts > Mosaic with these parameters:
* Tile height : 1.0
* Color averaging : checked
* Tile spacing : 0.0
* Joints color and Light color: full transparent green (0, 255, 0, 0)
* Antialiasing : unchecked

This will set the space between the tiles a bit transparent

3) Use Colors > Curves with these parameters:
* Channel : Alpha
* input : 255, output : 0

This will set the space between the tiles completely transparent

4) Use Filters > Blur > Median Blur :
* Alpha percentile : 100.0

This will merge the colors of the tile in the transparent space

optional) you can add a bit of antialiasing to the result with Filters > Blur > Mean Curvature Blur using a small number of iterations


RE: Flat mosaic (zero height) - gimpoid - 06-09-2022

Thnx! What wizardry... I managed to reproduce tmanni's method, thnx. There are some thing in there I didn't even know existed! 
Smile  Though only using the median blur also works pretty well...


RE: Flat mosaic (zero height) - PixLab - 06-10-2022

(06-09-2022, 02:29 PM)tmanni Wrote: 1) menu Layer > transparency > Add alpha channel

2) Use the Filters > Distorts > Mosaic with these parameters:
* Tile height : 1.0
* Color averaging : checked
* Tile spacing : 0.0
* Joints color and Light color: full transparent green (0, 255, 0, 0)
* Antialiasing : unchecked

This will set the space between the tiles a bit transparent

3) Use Colors > Curves with these parameters:
* Channel : Alpha
* input : 255, output : 0

This will set the space between the tiles completely transparent

Missing a step?
Everything become transparent ➤ I got a full transparent layer with alpha output at 0


RE: Flat mosaic (zero height) - tmanni - 06-10-2022

@PixLab You're right, the good setting for the curve is input: 254 output: 0
It can work with input = 255 due to floating point rounding errors in the curve mapping calculation.


RE: Flat mosaic (zero height) - PixLab - 06-10-2022

(06-10-2022, 04:35 AM)tmanni Wrote: @PixLab You're right, the good setting for the curve is input: 254 output: 0
It can work with input = 255 due to floating point rounding errors in the curve mapping calculation.

I can't get it to work... output at 90 is already transparent at 0 it's full transparent like empty (what am I doing wrong?)

[attachment=8084]


RE: Flat mosaic (zero height) - gimpoid - 06-10-2022

Initially I just pulled the curves to the right/bottom and it becomes more
and more transparent. It seems to correspond do setting input to 100
and output to 0. Dont know why it isn't 255 (or 254) in my case.. See images.


RE: Flat mosaic (zero height) - tmanni - 06-10-2022

Quote:output at 90 is already transparent at 0 it's full transparent like empty

This is because you are displaying logarithmic histogram instead of linear, but it does not explain why it fails.
With an input set to 254, the bottom left point of the curve must be located to the right side of the graph, which is not the case on your screenshot.