When I press Solve Camera Motion for a second time, I get a dramatically worse solve error despite only minor automatic refinements to values.
Why would this be? Unticking Keyframes before pressing Solve Camera Motion for a second time seems to solve the issue but I'd like to understand why. Why is it OK to let Blender determine the keyframes for the first solve but letting it do so on subsequent passes has terrible results?
Note: I'm interested in understanding the process here (why the solve error would get unexpectedly far worse), even though in my particular example below the initial solve error is great/low and doesn't actually need improvement.
Here are my steps in details:
1. I tell Blender to work everything out itself, i.e. I have Keyframe and all the Refine options checked:
2. I get a great/low solve error:
And it chooses the following keyframes:
3. I press Solve Camera Motion again (I even temporarily unticked Keyframe and set the A and B values back to what they were before, in case they affected things even when greyed out - however, I don't think they do). This time I get a terrible/high solve error:
And it chooses slightly different keyframes:
To me it looks like the Focal Length etc. have only been refined a bit. Why would solving again (and allowing it to choose the keyframes again) produce a dramatically worse result when I expected it would either achieve nothing or slightly refine the result?
This feels like a bug or perhaps I'm missing something that actually is changing dramatically between the two solves?
My .blend
file and the background clip can be found here on GitHub.
Any insights on what's going on here would be much appreciated.