SoftPOSIT is an algorithm propose by David etc. 1 a model based camera algorithm for determining the pose (position and orientation) of a 3D object from a single 2D image when correspondences between object points and image points are not known. This algorithm integrates the Softassign technique for computing correspondences and the POSIT technique for computing object pose. The method finds the rotation and translation parameters of the camera with respect to an object.
The author provides matlab implementation here: http://www.cfar.umd.edu/~daniel/Site_2/Code.html
Someone else with a c/fortran implementation: https://github.com/hanshuo/softposit
This repo. provides my cpp implementation.
- Armadillo
It mainly depends on the Armadillo linear algebra library.
- Boost (Format)
There are also dependency on Boost, and only for outside logging code which can be easily removed.
The project is managed with CMake.
Suggested steps:
git clone git@github.com:autosquid/softposit.git
cd softposit
mkdir build
cd build
cmake ..
make
./softpositdemo
- could someone tell me how to do a serious (yet simple) logging ? Boost Logging seems just too heavy for such a small lib.
- bindings for Python? is this needed?
[1]: David, Philip and Dementhon, Daniel and Duraiswami, Ramani and Samet, Hanan, "{SoftPOSIT: Simultaneous pose and correspondence determination}", Int. J. Comput. Vis., 59:259--284 (2004)