[Work Log] Work Log - Finishing Likelihood Server, integrating to sampling engine

October 15, 2013
Project Tulips
Subproject Likelihood Server
Working path projects/​tulips/​trunk/​src/​likelihood_server
SVN Revision 15229
Unless otherwise noted, all filesystem paths are relative to the "Working path" named above.

Old silhouette rendering technique is failing. Point spacing is much tighter than before. Our old algorithm relied on segment-ids matching between the first-pass and second pass to work.

Have a replacement algorithm that works reasonably well. Basically edge-detection on the depth image. The down side is we're getting double-edges in some areas, and you have to adjust a threshold. It'll have to do for now, hopefully we can train a the likelihood to be robust to these issues.

Training Bd_likelihood

added 'train_bd_likelihood()' function to 'lib/evaluate/bd_likelihood.h'. Uses 'kjb_c::get_full_GMM()' to fit a three-component gaussian mixture model to model the relationship between model and data pixels.

Refactoring

Shader objects from './shader.h' are now in the project library, under 'lib/ogl/shader_2.h'. Not the greatest name, but shader.h already exists and conflicts. Consder refactoring them later.

Silhouetter rendering from './render_util.h' are now in 'lib/graphics/silhouette_renderer.h'. Much better encapsulation now, so we can use it in other projects.

In the process of updating './likelihood_server.cpp' to reflect these changes. At the moment, getting an "invalid operation" when rendering.


It was a stray glUseProgram(notzero) in the shader loading code.


Posted by Kyle Simek
blog comments powered by Disqus