We present improved algorithms to match two polygonal shapes P and Q to approximate their maximum overlap. Let n be their total number of vertices. Our first algorithm finds a translation that approximately maximizes the overlap area of P and Q under translation in time. The error is additive and it is at most with probability . We also obtain an algorithm that approximately maximizes the overlap of P and Q under rigid motion in time. The same error bound holds with probability . We also show how to improve the running time to for the translation case when one of the polygons is convex.