Functions | |
float | cudaMIa (float *src1, float *src2, int length, int xbins, int ybins, double &time, cudaHistOptions *p_options=NULL, bool device=false) |
Computes the mutual information between two equally sized input arrays based on the first histogram method described in: R. Shams and R. A. Kennedy, "Efficient histogram algorithms for NVIDIA CUDA compatible devices," Proc. Int. Conf. on Signal Processing and Communications Systems (ICSPCS), Gold Coast, Australia, Dec. 2007, pp. 418-422. | |
float | cudaMIb (float *src1, float *src2, int length, int xbins, int ybins, double &time, cudaHistOptions *p_options=NULL, bool device=false) |
Computes the mutual information between two equally sized input arrays based on the second histogram method described in: R. Shams and R. A. Kennedy, "Efficient histogram algorithms for NVIDIA CUDA compatible devices," Proc. Int. Conf. on Signal Processing and Communications Systems (ICSPCS), Gold Coast, Australia, Dec. 2007, pp. 418-422. | |
float | cudaMI_Approx (float *src1, float *src2, int length, int xbins, int ybins, double &time, cudaHistOptions *p_options=NULL, bool device=false) |
Computes the mutual information between two equally sized input arrays based on the approximate histogram method described in: R. Shams and N. Barnes, "Speeding up mutual information computation using NVIDIA CUDA hardware," Proc. Digital Image Computing: Techniques and Applications (DICTA), Adelaide, Australia, Dec. 2007, pp. 555-560. |
Contains definition of C functions for mutual information (MI) computation on the GPU. The methods are based on the following two publications:
R. Shams and R. A. Kennedy, "Efficient histogram algorithms for NVIDIA CUDA compatible devices," Proc. Int. Conf. on Signal Processing and Communications Systems (ICSPCS), Gold Coast, Australia, Dec. 2007, pp. 418-422.
R. Shams and N. Barnes, "Speeding up mutual information computation using NVIDIA CUDA hardware," Proc. Digital Image Computing: Techniques and Applications (DICTA), Adelaide, Australia, Dec. 2007, pp. 555-560.
float cudaMI_Approx | ( | float * | src1, | |
float * | src2, | |||
int | length, | |||
int | xbins, | |||
int | ybins, | |||
double & | time, | |||
cudaHistOptions * | p_options = NULL , |
|||
bool | device = false | |||
) |
Computes the mutual information between two equally sized input arrays based on the approximate histogram method described in:
R. Shams and N. Barnes, "Speeding up mutual information computation using NVIDIA CUDA hardware," Proc. Digital Image Computing: Techniques and Applications (DICTA), Adelaide, Australia, Dec. 2007, pp. 555-560.
src1 | Pointer to the first input array where the data is stored. The input values must be between 0 and 1. | |
src2 | Pointer to the second input array where the data is stored. The input values must be between 0 and 1. | |
length | Number of the input arrays' elements. | |
xbins | Number of bins used in computation of the histogram for src1. | |
ybins | Number of bins used in computation of the histogram for src2. | |
time[out] | The execution time in milliseconds excluding any time spent in allocating input data from host to global memory and storing the results back to the host memory. The time spent in creating and initializing any internal objects is considered. | |
p_options | A structure which defines the execution configuration. | |
device | A flag which indicates whether input/output arrays are allocated on the host (CPU) memory or the device (GPU) memory. |
When device flag is set, the caller needs to allocate memory for hist but does not need to initialize the array. The initialization will be done by the function itself.
Input data must be normalized between 0 and 1. The behavior of the function for values outside this range is undefined and is most likely to cause memory corruption.
float cudaMIa | ( | float * | src1, | |
float * | src2, | |||
int | length, | |||
int | xbins, | |||
int | ybins, | |||
double & | time, | |||
cudaHistOptions * | p_options = NULL , |
|||
bool | device = false | |||
) |
Computes the mutual information between two equally sized input arrays based on the first histogram method described in:
R. Shams and R. A. Kennedy, "Efficient histogram algorithms for NVIDIA CUDA compatible devices," Proc. Int. Conf. on Signal Processing and Communications Systems (ICSPCS), Gold Coast, Australia, Dec. 2007, pp. 418-422.
src1 | Pointer to the first input array where the data is stored. The input values must be between 0 and 1. | |
src2 | Pointer to the second input array where the data is stored. The input values must be between 0 and 1. | |
length | Number of the input arrays' elements. | |
xbins | Number of bins used in computation of the histogram for src1. | |
ybins | Number of bins used in computation of the histogram for src2. | |
time[out] | The execution time in milliseconds excluding any time spent in allocating input data from host to global memory and storing the results back to the host memory. The time spent in creating and initializing any internal objects is considered. | |
p_options | A structure which defines the execution configuration. | |
device | A flag which indicates whether input/output arrays are allocated on the host (CPU) memory or the device (GPU) memory. |
When device flag is set, the caller needs to allocate memory for hist but does not need to initialize the array. The initialization will be done by the function itself.
Input data must be normalized between 0 and 1. The behavior of the function for values outside this range is undefined and is most likely to cause memory corruption.
float cudaMIb | ( | float * | src1, | |
float * | src2, | |||
int | length, | |||
int | xbins, | |||
int | ybins, | |||
double & | time, | |||
cudaHistOptions * | p_options = NULL , |
|||
bool | device = false | |||
) |
Computes the mutual information between two equally sized input arrays based on the second histogram method described in:
R. Shams and R. A. Kennedy, "Efficient histogram algorithms for NVIDIA CUDA compatible devices," Proc. Int. Conf. on Signal Processing and Communications Systems (ICSPCS), Gold Coast, Australia, Dec. 2007, pp. 418-422.
src1 | Pointer to the first input array where the data is stored. The input values must be between 0 and 1. | |
src2 | Pointer to the second input array where the data is stored. The input values must be between 0 and 1. | |
length | Number of the input arrays' elements. | |
xbins | Number of bins used in computation of the histogram for src1. | |
ybins | Number of bins used in computation of the histogram for src2. | |
time[out] | The execution time in milliseconds excluding any time spent in allocating input data from host to global memory and storing the results back to the host memory. The time spent in creating and initializing any internal objects is considered. | |
p_options | A structure which defines the execution configuration. | |
device | A flag which indicates whether input/output arrays are allocated on the host (CPU) memory or the device (GPU) memory. |
When device flag is set, the caller needs to allocate memory for hist but does not need to initialize the array. The initialization will be done by the function itself.
Input data must be normalized between 0 and 1. The behavior of the function for values outside this range is undefined and is most likely to cause memory corruption.