forresti / boda

Boda: A C++ Framework for Efficient Experiments in Computer Vision

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Boda: A C++ Framework for Efficient Experiments in Computer Vision [WIP]

Created by Matthew W. Moskewicz.

License

Boda is BSD 2-Clause licensed; refer to the LICENSE file for the full License.

Introduction

Firstly, to be clear: Boda is a planned work / work in progress at an early stage, and is probably not suitable for anyone to use for anything at this point in time.

May 2014 Poster

Boda Poster Preview Slides Boda Poster

Mid 2013 Poster

Boda Poster Preview Slides Boda Poster

A rough explanation of the Boda architechtural diagram in the poster

the middle box is a 'mode' -- a c++ class with a main() function and a set of parameters. this is the boda version of a standard c++ program with a C main() and some command line argument processing such as gflags/getopt/etc. the pitch is that boda makes it easy to support many modes in a single binary/program, and provides some magic comments / meta-programming to ease the burden of:

  1. command line / XML based UI creation for many such modes (with hierarchical sharing of UIs / parameters)
  2. testing (including automated regression diffs over outputs)
  3. timing / profiling

the main 'magic' is a NEsted Structure Initialization system (NESI), which uses magic comments, python, code generation, and a steaming pile of down-home-style void pointers and C (or at least C style) functions to initialize c++ structures from nested key/value trees (in turn created from command line arguments and/or xml files), a la JSON or the like.

About

Boda: A C++ Framework for Efficient Experiments in Computer Vision

License:Other


Languages

Language:C++ 90.4%Language:Python 3.9%Language:Protocol Buffer 3.1%Language:C 1.7%Language:Cuda 0.7%Language:Makefile 0.2%Language:Shell 0.0%