All puzzles except 4 have lines
From a quick glance, text in these puzzles seems to mostly be ontop of lines on the pages (not free floating?)
We can then tell (most of the time) if the text on a piece is right side up or upside down based on the text’s location relative to the nearest line
We can align all the pieces by rotating them until the lines become horizontal 3d Edge cuts
The edge cuts are 3-dimensional in nature (not straight vertical slices). How do we properly account when trying to match up pieces based on edges? (since we don’t have a 3d model of each piece)
We can see the edges blend out into the background gradually, so maybe we can make a guess as to how thick the edge is by looking at the ratio of the shard’s color to the background color at that point??
Text based clustering
For some of the images (1, 2, and 4), it seems that there are not that many text pieces compared to the overall number of pieces
For these puzzles, maybe it makes sense to just filter out the text pieces and do manual assembly?
The text in puzzle 3 seems to be much bigger than the shards, so any text-based clustering algorithm for this puzzle would probably be different than for the rest (assembly of each letter first before assembling words)