|
Optimized Belief Propagation (CPU and GPU)
|
| CBpFileHandling | Class to retrieve path of stereo set files for reading and for output |
| ▼CBpImage< T > | Class to define images that are used in bp processing |
| CDisparityMap< float > | |
| CDisparityMap< T > | Child class of BpImage to define disparity map image that is output from bp processing |
| CBpLevel< T > | Class to store and retrieve properties of a bp processing level including a data type specified as a class template parameter |
| Cbeliefprop::BpLevelProperties | POD struct to store bp level data. Struct can be passed to global CUDAs kernel so needs to take restrictions of what's allowed for passing data from the host to a CUDA kernel into account |
| Cbeliefprop::BpOnDevice< T, DISP_VALS, ACCELERATION > | Structure with pointers to objects containing functions for smoothing images, processing bp, and memory management on target device using specified acceleration |
| Cbeliefprop::BpRunOutput | Structure with output disparity map, runtime, and other evaluation data |
| Cbeliefprop::BpSettings | Structure to store the belief propagation settings including the number of levels and iterations |
| Cbeliefprop::BpStereoSet | Structure with stereo set name, disparity count, and scale factor for output disparity map |
| Cbp_single_thread_imp::Convolve | |
| CCPUThreadsPinnedToSocket | Class to adjust and retrieve settings corresponding to CPU threads pinned to socket |
| CDetailedTimings< T > | Class to store timings of one or more segments taken during the run(s) of an implementation or across multiple implementations. Index for timing segments must be enum type |
| CDisparityMapEvaluation | Class to store disparity map evaluation results. Specifically comparison between two disparity maps such as output disparity map from bp processing and ground truth disparity map |
| Cbeliefprop::DisparityMapEvaluationParams | Struct to store parameters for evaluation of disparity map from stereo processing |
| CEvalAcrossRunsData | Structure to store data with mappings for evaluating results across runs as well as speedup headers in order |
| CEvaluateAcrossRuns | Class with operator function to evaluate implementation runs across multiple architectures. Outputs a file with speedup data on every run with the runs ordered from fastest to slowest |
| ▼CEvaluateImpResults | Class with operator function to evaluate implementations of the same algorithm across different data types and acceleration methods |
| CEvaluateImpResultsBp | Child class of EvaluateImpResults that defines member functions for belief propagation evaluation which override pure virtual functions in parent class |
| Cbp_single_thread_imp::FilterImage | |
| Cbp_single_thread_imp::image< T > | |
| CInputSignature | Class defines input signature for evaluation run that contains evaluation set number, data type, and whether or not to use templated loop iteration count |
| ▼CMemoryManagement< T > | Class for memory management with functions defined for standard memory allocation using CPU. Class functions can be overridden to support other computation devices such as GPU |
| CMemoryManagementCUDA< T > | Child class of MemoryManagement with overriden member functions to manage memory on CUDA device including transferring data between host and CUDA device |
| Crun_eval::OutFileInfo | |
| ▼CParallelParams | Abstract class for holding and processing parallelization parameters. Child class(es) specific to implementation(s) must be defined |
| CParallelParamsBp | Child class of ParallelParams to store and process parallelization parameters to use in each BP kernel at each level |
| Cbp_single_thread_imp::pnm_error | |
| ▼CProcessBp< T, DISP_VALS, ACCELERATION > | Abstract class to run belief propagation on target device. Some of the class functions need to be overridden for processing on target device |
| CProcessBpCUDA< T, DISP_VALS, ACCELERATION > | Child class of ProcessBp that define functions used in processing bp in the CUDA implementation |
| CProcessBpOptimizedCPU< T, DISP_VALS, ACCELERATION > | Child class of ProcessBp that defines functions used in processing bp in the optimized CPU implementation |
| Cbp_single_thread_imp::rgb | |
| ▼CRunBpOnStereoSet< T, DISP_VALS, ACCELERATION > | Abstract class to set up and run belief propagation on target device using specified acceleration |
| CRunBpOnStereoSetCUDA< T, DISP_VALS, ACCELERATION > | Child class of RunBpOnStereoSet to run CUDA implementation of belief propagation on a given stereo set as defined by reference and test image file paths |
| CRunBpOnStereoSetOptimizedCPU< T, DISP_VALS, ACCELERATION > | Child class of RunBpOnStereoSet to run optimized CPU implementation of belief propagation on a given stereo set as defined by reference and test image file paths |
| CRunBpOnStereoSetSingleThreadCPU< T, DISP_VALS, ACCELERATION > | Child class of RunBpOnStereoSet to run single-threaded CPU implementation of belief propagation on a given stereo set as defined by reference and test image file paths |
| CRunData | Class to store headers with data corresponding to current program run and evaluation |
| ▼CRunImpMultInputs | Base class for running and evaluating multiple runs of an implementation that may be optimized on CPU or GPU |
| CRunImpMultInputsBp | Child class of RunImpMultInputs to run specified belief propagation implementation on a number of inputs |
| CRunImpMultTypesAccels | Class to run and evaluate implementation(s) of an algorithm using multiple settings including different datatype, inputs, and acceleration methods |
| ▼CRunImpOnInput< T, OPT_IMP_ACCEL, NUM_INPUT > | Virtual class to run and evaluate implementation on a input specified by index number |
| CRunImpOnInputBp< T, OPT_IMP_ACCEL, NUM_INPUT > | Child class of RunImpOnInput to run and evaluate belief propagation implementation on a specified input |
| Crun_environment::RunImpSettings | Structure that stores settings for current implementation run |
| CRunResultsSpeedups | Class to load and store run results data including speedups from evaluation |
| ▼CSmoothImage | Class for smoothing the images before running BP. Smoothing image always uses float data type |
| CSmoothImageCPU | Child class of SmoothImage for smoothing images in the optimized CPU implementation |
| CSmoothImageCUDA | Child class of SmoothImage for smoothing images in the CUDA implementation |