April
This month has been affected by many holidays and non-lective days so the progress has been distributed accordingly into the other weeks which have less than 5 working days.
1st week
- Study of Structure from Motion open source solutions (too slow to run in real time)
- libmv (used by Blender)
- OpenOF [@wefelscheid2013openof] which uses GPU parallelization
- Quick Review of Eigen3 linear algebra library to solve optimization problems (used internally by OpenCV)
- Added OpenGL GLSL implementation for drawing video frames as texture in the background of the 3D viewport
- Use of Qt 5.2 greatly simplifies the implementation of shader
- Threaded execution: the tracking and the GUI now runs in separate threads
2nd and 3rd week
- Study of the Special Orthogonal Group in Lie Algebra for 3x3 rotation matrices
- Consider the use of Sophus library, a C++ implementation of Lie Groups using Eigen library
- Implementation of two Essential matrix solving methods:
- Horn method from [@horn1990recovering]
- Singular Value Decomposition from [@hartley2003multiple]
4th week
Tested different camera setups to improve camera calibration
- Results shown an acceptable mean reprojection error of 0.5 px
- The literature suggest an error between 0.2 and 0.5
Generation of documentation and progress report using Markdown syntax, GitBook and Pandoc to create this web book
Testing GPL-2 version of PTAM implementation (taken from the fork of Benjamin Lefaudeux) described by @klein2007parallel
- Here are some screenshoots taken from my compilation of the code
References