libfbi
libfbi is a header-only C++ template library that enables the efficient
solution of box intersection problems in an arbitrary number of dimensions.
The implementation
makes heavy use of C++
metaprogramming and variadic template programming techniques. Despite this
complexity, the library provides a straightforward and simple interface
that allows easy integration into new and existing projects.
libfbi has so far been applied to feature extraction and data analysis
tasks for high-resolution liquid chromatography/mass spectrometry (LC/MS)
data sets. The library itself, however, is in no way limited to this
application scenario: it can easily be used to solve, accelerate or
simplify many kinds of multi-dimensional box intersection and related
problems (e.g. determining bounding volumes,
k-nearest-neighbor
search, density
estimation, correspondence
and motion
estimation, alignment
tasks, and more).
libfbi development has been conducted at the
Steen & Steen lab.
Development, Documentation and Testing
The libfbi code is considered stable; it is actively maintained at the libfbi github site.
If you happen to run into trouble, please do not hesitate
to contact Marc or to make use of the
github issue
tracking system.
We make use of the Doxygen
documentation system to provide source
documentation and annotated
examples.
libfbi comes with a set of fully automated regression tests, that check all
box intersection boundary conditions and compare expected and calculated
results across a set of use cases.
Download and Licensing (MIT)
libfbi is available under a permissive
MIT license that allows anyone to use, modify and distribute libfbi.
Please consider contributing your improvements.
Please note: libfbi makes heavy use of TR1 and C++0x features, in
particular tuples and variadic templates. Development was carried out under
GNU gcc 4.4, on an Ubuntu Linux system. Windows users currently need to
make use of the MinGW compiler as variadic template support under Microsoft
Visual Studio will only be available starting from Visual Studio 11.
Latest stable release:
sources (w/o test datasets).
Current development snapshot: github
(includes test datasets).
|