VlAIB Struct Reference
AIB algorithm data. More...
#include <aib.h>
Data Fields | |
| vl_uint * | nodes |
| vl_uint | nentries |
| double * | beta |
| vl_uint * | bidx |
| vl_uint * | which |
| vl_uint | nwhich |
| double * | Pcx |
| double * | Px |
| double * | Pc |
| vl_uint | nvalues |
| vl_uint | nlabels |
| vl_uint * | parents |
| double * | costs |
Detailed Description
The implementation is quite straightforward, but the way feature values are handled in order to support efficient joins, deletions and re-arrangement needs to be explained. This is achieved by adding a layer of indirection:
- Call each feature value (either original or obtained by a join operation) a node. Nodes are identified by numbers.
- Call each element of the various arrays (such as VlAIB::Px) an entry.
- Entries are dynamically associated to nodes as specified by VlAIB::nodes. For example,
Px[i] refers to the nodenodes[i].
Field Documentation
| double* VlAIB::beta |
Minimum distance to an entry
| vl_uint* VlAIB::bidx |
Closest entry
| double* VlAIB::costs |
Cost of each merge
| vl_uint VlAIB::nentries |
Total number of entries (= # active nodes)
| vl_uint VlAIB::nlabels |
Number of labels
| vl_uint* VlAIB::nodes |
Entires to nodes
| vl_uint VlAIB::nvalues |
Number of feature values
| vl_uint VlAIB::nwhich |
Number of entries to update
| vl_uint* VlAIB::parents |
Array of parents
| double* VlAIB::Pc |
Marginal.
| double* VlAIB::Pcx |
Joint probability table
| double* VlAIB::Px |
Marginal.
| vl_uint* VlAIB::which |
List of entries to update
The documentation for this struct was generated from the following file: