← All articles

How to Compare Two Photos Taken From Slightly Different Angles

You photograph a shelf on Monday and again on Friday to see what moved. You take a picture of a document, then another after it was signed. You shoot a product before and after cleaning. In each case the two photos are of the same thing, but you held the phone a little differently, so nothing lines up pixel for pixel.

A plain pixel comparison of those two photos reports differences everywhere — every edge is a few pixels away from where it was in the other shot. That tells you the camera moved, which you already knew.

Align first, then compare

The fix is to line the photos up before comparing them. That is what feature mode in DiffALL’s image comparison does, and it is on by default.

  1. It finds distinctive points in each photo — corners, specks, the edges of letters — up to a few thousand of them.
  2. It matches those points between the two photos.
  3. From the matches it works out the single transformation that maps one photo onto the other: shift, rotation, scale and perspective tilt. Matches that disagree with the majority are thrown out, so a few wrong pairings do not bend the result.
  4. It warps the first photo into the second one’s view, and only then compares them.

The comparison then measures what actually differs, not the fact that you were standing a step to the left.

What the score combines

In feature mode the headline score is half “how alike the aligned images are” and half “how consistently the points matched”. The second part matters: two photos of different scenes might happen to share some texture, but their points will not agree on one consistent transformation.

The result shows how many points matched and how many fitted the alignment, so you can see how much evidence it had. If too few points match to align at all — a blank wall, a featureless sky, two unrelated photos — it says so instead of pretending to compare them.

What alignment can and cannot correct

It corrects anything that looks like the same flat scene viewed from a slightly different position: a phone held a few degrees off, a little closer or further, tilted, or shifted sideways. For a document, a screen, a painting, a shelf front or anything mostly flat, that is close to everything.

It cannot fully correct parallax. If the scene has real depth — a foreground object in front of a background — moving the camera changes what the foreground hides, and no single transformation lines up both layers. You will see differences around the edges of near objects that are just the change in viewpoint. To keep this small:

  • stand in the same place and move as little as possible between shots;
  • photograph flat subjects square-on;
  • use the same zoom level (switching between a phone’s lenses changes the perspective, not just the size).

Lighting

Different light changes colours and brightness everywhere, and the comparison will report it. Shoot both photos under the same light if you can, and turn off the flash or keep it on for both. If the light did change, look at the heatmap for one region that differs much more than the rest — a moved object stands out from an even lighting shift.

When to turn feature mode off

For screenshots, exports and renders — images produced by software at exactly the same size — alignment is unnecessary and the standard mode compares pixel for pixel. That is the right choice for UI screenshot comparison, where a one-pixel shift is itself a bug you want reported, not corrected.

Stop hunting for differences by hand. DiffALL spots every change between any two files — automatically.

Compare your files — free