# Finding transforming between regular and distorted grid

I'm trying to find the transformation function to go from the first image below to the second one. The manual suggest:

{error, f} = FindGeometricTransform[img1d, img2d, TransformationClass -> "Perspective", Method -> "FindFit"]


But the function returns that the two images do not share any corresponding points.

Is there a simple way to achieve this using this or a similar function, or should I rather make a table of the coordinates of the corresponding points (using something like morphological components centroid?), ensuring the indexes of the blobs match, then somehow find a 2D polynomial that connects them?

(I tried a few other combinations of options for the FindGeometricTransform function but I think I must be barking up the wrong tree with that)

Or is there a simple, elegant one-liner solution I'm missing as usual :O)

Any ideas?