Big blocks of colour produce tall stacks of 1x10 bricks, which look like they could fall over.
Shouldn't the algorithm overlap these bricks where possible?
Edit: Presumably the algorithm fills a run of pixels by working from left to right, repeatedly fitting the largest brick it can, then filling in the end with a small brick. Picking different lengths for the bricks within a run will produce the same image but with different overlaps. One technique would be to try every combination of lengths that fit into a run of pixels and maximise the overlaps between these bricks and the rows above and below.