Hello everyone,
Today I've released mmSolver v0.7.0!
This new release introduces a brand-new "from scratch" Camera Solver, which has good performance and quality, and a innovative global adjustment solver.
This Camera Solver can solve 3D Camera motion using 2D Markers from scratch, the same as all 3D camera solvers available, however I spent a lot of effort ensuring the solver's;
1) Quality - Produces good results, even for challenging shots.
2) Performance - Solve quickly.
3) Adjustment - Allow solving of unknown camera properties.
4) Determinism - Inputs produce the same outputs (on the same machine).
mmSolver's Camera Solver requires a minimum of five or more 2D markers with parallax to solve a 3D camera, with more parallax generally meaning a higher quality solver, however more than five markers is recommended, with a minimum of six points being a practical number of points required - just like all other 3D Tracking and MatchMove software.
This being the first version, I focused on core functionality, however I expect there are a number of improvements I can make in future versions;
- Performance - The performance is ok, but I think the actual optimisation solver algorithm could be improved.
- Lens Distortion Adjustments - Only focal length adjustment is supported right now, however I want to extend this to an arbitrary number of attributes - including Lens Distortion, Focal Length and Film Back offsets (Lens Center Offset).
I've been working on this for the last 6 months, and dreaming about writing such a solver for about 10 years. I'm hoping this can be useful to others - even as inspiration to try difficult things, even if you fail, you'll learn a lot.
Here are the usage docs for the new Camera Solver:
https://david-cattermole.github.io/mayaMatchMoveSolver/tools_camera_solver.html
And here are some of the technical details of the Camera Solver:
https://david-cattermole.github.io/mayaMatchMoveSolver/camera_solver_overview.html
https://david-cattermole.github.io/mayaMatchMoveSolver/camera_solver_global_optimization.html
You can download the new release here:
https://david-cattermole.github.io/mayaMatchMoveSolver/download.html
The release notes are also here:
https://github.com/david-cattermole/mayaMatchMoveSolver/releases/tag/v0.7.0
If you've got any questions, feel free to send an email, or if you find a bug, please submit an issue on GitHub.
Thanks,
David