mathstodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for maths people. We have LaTeX rendering in the web interface!

Server stats:

2.8K
active users

#halftoneart

0 posts0 participants0 posts today

Last post's line raster idea was kind of frustrating to get right, and I'm still not quite happy with the results. Of course, as soon as I'd posted them, I had a new idea for stippling images using the same 1D partitioning logic.

Now the binary partitioning proceeds alternately in x and y dimensions, splitting the whole image into areas of equal colour sum. It doesn't help with the line raster idea, and I'm not sure if it's great for general stippling either; it feels quite blocky compared to random dithering. But the technical idea seems quite fun — it should work in higher dimensions too.

I also made the minimum spanning tree, and it turned out quite interesting with the horizontal and vertical lines dominating large areas.

I came across this halftoning idea sometime last week. While the idea was relatively easy to understand and fun to implement, I've spent quite a lot of time trying to make the result look nice.

In each row, the image is split into bins containing roughly the same sum of lightness value. This is nice to implement when the number of lines/bins is a power of 2, so we can recurse with a binary split. Thus the line density varies by average lightness. The problem is that density is considered along the x-axis. If things change a lot between rows, the lines get slanted, so they appear more dense. Here I've included some averaging between neighbouring rows to make thing a bit smoother.

I'm also including a fun glitch from the early tests. The line-density system includes the set of point coordinates and the graph structure (which point is connected to which). What happened here is my generic graph generator that simply finds the nearest neighbours of each point. So in the light areas that are compressed horizontally, the nearest neighbours were left and right.