Xmipp
v3.23.11-Nereus
|
#include "xmipp_gpu_correlation.h"
#include <core/xmipp_image.h>
#include <data/mask.h>
#include <core/xmipp_fftw.h>
#include <core/transformations.h>
#include <core/metadata_extension.h>
#include <data/filters.h>
#include <core/xmipp_funcs.h>
#include "xmipp_gpu_utils.h"
#include <reconstruction_cuda/cuda_gpu_correlation.h>
#include <algorithm>
#include <math.h>
#include <time.h>
#include <sys/time.h>
Go to the source code of this file.
Functions | |
void | primeFactors (int n, int *out) |
void | preprocess_images_reference (MetaDataVec &SF, int firstIdx, int numImages, Mask &mask, GpuCorrelationAux &d_correlationAux, mycufftHandle &myhandlePadded, mycufftHandle &myhandleMask, mycufftHandle &myhandlePolar, StructuresAux &myStructureAux, MetaDataVec::id_iterator iter, myStreamHandle myStream) |
void | preprocess_images_experimental (MetaDataVec &SF, FileName &fnImg, int numImagesRef, GpuMultidimArrayAtGpu< float > &mask, GpuMultidimArrayAtGpu< std::complex< float > > &d_maskFFT, GpuCorrelationAux &d_correlationAux, bool rotation, int firstStep, bool mirror, mycufftHandle &myhandlePadded, mycufftHandle &myhandlePolar, StructuresAux &myStructureAux, myStreamHandle myStream) |
void | preprocess_images_experimental_two (MetaDataVec &SF, FileName &fnImg, int numImagesRef, GpuMultidimArrayAtGpu< float > &mask, GpuMultidimArrayAtGpu< std::complex< float > > &d_maskFFT, GpuCorrelationAux &d_correlationAuxTR, GpuCorrelationAux &d_correlationAuxRT, int firstStep, bool mirror, mycufftHandle &myhandlePaddedTR, mycufftHandle &myhandleMaskTR, mycufftHandle &myhandlePolarRT, StructuresAux &myStructureAuxTR, StructuresAux &myStructureAuxRT, myStreamHandle &myStreamTR, myStreamHandle &myStreamRT, GpuMultidimArrayAtCpu< float > &original_image_stack) |
void | preprocess_images_experimental_transform_two (MetaDataVec &SF, FileName &fnImg, int numImagesRef, GpuMultidimArrayAtGpu< float > &mask, GpuMultidimArrayAtGpu< std::complex< float > > &d_maskFFT, GpuCorrelationAux &d_correlationAuxOne, GpuCorrelationAux &d_correlationAuxTwo, mycufftHandle &myhandlePaddedOne, mycufftHandle &myhandlePolarTwo, StructuresAux &myStructureAuxOne, StructuresAux &myStructureAuxTwo, myStreamHandle &myStreamOne, myStreamHandle &myStreamTwo, int step) |
void | preprocess_images_experimental_transform (GpuCorrelationAux &d_correlationAux, GpuMultidimArrayAtGpu< float > &mask, GpuMultidimArrayAtGpu< std::complex< float > > &d_maskFFT, bool rotation, mycufftHandle &myhandlePadded, mycufftHandle &myhandlePolar, StructuresAux &myStructureAux, myStreamHandle myStream) |
void | align_experimental_image (FileName &fnImgExp, GpuCorrelationAux &d_referenceAux, GpuCorrelationAux &d_experimentalAuxTR, GpuCorrelationAux &d_experimentalAuxRT, TransformMatrix< float > &transMat_tr, TransformMatrix< float > &transMat_rt, float *max_vector_tr, float *max_vector_rt, MetaDataVec &SFexp, int available_images_proj, bool mirror, int maxShift, mycufftHandle &myhandlePadded_tr, mycufftHandle &myhandleMask_tr, mycufftHandle &myhandlePolar_tr, mycufftHandle &myhandlePaddedB_tr, mycufftHandle &myhandleMaskB_tr, mycufftHandle &myhandlePolarB_tr, mycufftHandle &myhandlePadded_rt, mycufftHandle &myhandleMask_rt, mycufftHandle &myhandlePolar_rt, mycufftHandle &myhandlePaddedB_rt, mycufftHandle &myhandleMaskB_rt, mycufftHandle &myhandlePolarB_rt, StructuresAux &myStructureAux_tr, StructuresAux &myStructureAux_rt, myStreamHandle &myStreamTR, myStreamHandle &myStreamRT, TransformMatrix< float > &resultTR, TransformMatrix< float > &resultRT, GpuMultidimArrayAtCpu< float > &original_image_stack, mycufftHandle &ifftcb) |
int | check_gpu_memory (size_t Xdim, size_t Ydim, int percent) |
void | calculate_weights (MultidimArray< float > &matrixCorrCpu, MultidimArray< float > &matrixCorrCpu_mirror, MultidimArray< float > &corrTotalRow, MultidimArray< float > &weights, int Nref, size_t mdExpSize, size_t mdInSize, MultidimArray< float > &weightsMax, bool simplifiedMd, MultidimArray< float > *matrixTransCpu, MultidimArray< float > *matrixTransCpu_mirror, int maxShift) |
void | generate_metadata (MetaDataVec SF, MetaDataVec SFexp, FileName fnDir, FileName fn_out, size_t mdExpSize, size_t mdInSize, MultidimArray< float > &weights, MultidimArray< float > &corrTotalRow, MultidimArray< float > *matrixTransCpu, MultidimArray< float > *matrixTransCpu_mirror, int maxShift, MultidimArray< float > &weightsMax, bool simplifiedMd, int Nref) |
void | generate_output_classes (MetaDataVec SF, MetaDataVec SFexp, FileName fnDir, size_t mdExpSize, size_t mdInSize, MultidimArray< float > &weights, MultidimArray< float > *matrixTransCpu, MultidimArray< float > *matrixTransCpu_mirror, int maxShift, FileName fn_classes_out, MultidimArray< float > &weightsMax, bool simplifiedMd, int Nref) |
void align_experimental_image | ( | FileName & | fnImgExp, |
GpuCorrelationAux & | d_referenceAux, | ||
GpuCorrelationAux & | d_experimentalAuxTR, | ||
GpuCorrelationAux & | d_experimentalAuxRT, | ||
TransformMatrix< float > & | transMat_tr, | ||
TransformMatrix< float > & | transMat_rt, | ||
float * | max_vector_tr, | ||
float * | max_vector_rt, | ||
MetaDataVec & | SFexp, | ||
int | available_images_proj, | ||
bool | mirror, | ||
int | maxShift, | ||
mycufftHandle & | myhandlePadded_tr, | ||
mycufftHandle & | myhandleMask_tr, | ||
mycufftHandle & | myhandlePolar_tr, | ||
mycufftHandle & | myhandlePaddedB_tr, | ||
mycufftHandle & | myhandleMaskB_tr, | ||
mycufftHandle & | myhandlePolarB_tr, | ||
mycufftHandle & | myhandlePadded_rt, | ||
mycufftHandle & | myhandleMask_rt, | ||
mycufftHandle & | myhandlePolar_rt, | ||
mycufftHandle & | myhandlePaddedB_rt, | ||
mycufftHandle & | myhandleMaskB_rt, | ||
mycufftHandle & | myhandlePolarB_rt, | ||
StructuresAux & | myStructureAux_tr, | ||
StructuresAux & | myStructureAux_rt, | ||
myStreamHandle & | myStreamTR, | ||
myStreamHandle & | myStreamRT, | ||
TransformMatrix< float > & | resultTR, | ||
TransformMatrix< float > & | resultRT, | ||
GpuMultidimArrayAtCpu< float > & | original_image_stack, | ||
mycufftHandle & | ifftcb | ||
) |
Definition at line 355 of file xmipp_gpu_correlation.cpp.
void calculate_weights | ( | MultidimArray< float > & | matrixCorrCpu, |
MultidimArray< float > & | matrixCorrCpu_mirror, | ||
MultidimArray< float > & | corrTotalRow, | ||
MultidimArray< float > & | weights, | ||
int | Nref, | ||
size_t | mdExpSize, | ||
size_t | mdInSize, | ||
MultidimArray< float > & | weightsMax, | ||
bool | simplifiedMd, | ||
MultidimArray< float > * | matrixTransCpu, | ||
MultidimArray< float > * | matrixTransCpu_mirror, | ||
int | maxShift | ||
) |
Definition at line 563 of file xmipp_gpu_correlation.cpp.
int check_gpu_memory | ( | size_t | Xdim, |
size_t | Ydim, | ||
int | percent | ||
) |
Definition at line 555 of file xmipp_gpu_correlation.cpp.
void generate_metadata | ( | MetaDataVec | SF, |
MetaDataVec | SFexp, | ||
FileName | fnDir, | ||
FileName | fn_out, | ||
size_t | mdExpSize, | ||
size_t | mdInSize, | ||
MultidimArray< float > & | weights, | ||
MultidimArray< float > & | corrTotalRow, | ||
MultidimArray< float > * | matrixTransCpu, | ||
MultidimArray< float > * | matrixTransCpu_mirror, | ||
int | maxShift, | ||
MultidimArray< float > & | weightsMax, | ||
bool | simplifiedMd, | ||
int | Nref | ||
) |
Definition at line 736 of file xmipp_gpu_correlation.cpp.
void generate_output_classes | ( | MetaDataVec | SF, |
MetaDataVec | SFexp, | ||
FileName | fnDir, | ||
size_t | mdExpSize, | ||
size_t | mdInSize, | ||
MultidimArray< float > & | weights, | ||
MultidimArray< float > * | matrixTransCpu, | ||
MultidimArray< float > * | matrixTransCpu_mirror, | ||
int | maxShift, | ||
FileName | fn_classes_out, | ||
MultidimArray< float > & | weightsMax, | ||
bool | simplifiedMd, | ||
int | Nref | ||
) |
Definition at line 871 of file xmipp_gpu_correlation.cpp.
void preprocess_images_experimental | ( | MetaDataVec & | SF, |
FileName & | fnImg, | ||
int | numImagesRef, | ||
GpuMultidimArrayAtGpu< float > & | mask, | ||
GpuMultidimArrayAtGpu< std::complex< float > > & | d_maskFFT, | ||
GpuCorrelationAux & | d_correlationAux, | ||
bool | rotation, | ||
int | firstStep, | ||
bool | mirror, | ||
mycufftHandle & | myhandlePadded, | ||
mycufftHandle & | myhandlePolar, | ||
StructuresAux & | myStructureAux, | ||
myStreamHandle | myStream | ||
) |
Definition at line 152 of file xmipp_gpu_correlation.cpp.
void preprocess_images_experimental_transform | ( | GpuCorrelationAux & | d_correlationAux, |
GpuMultidimArrayAtGpu< float > & | mask, | ||
GpuMultidimArrayAtGpu< std::complex< float > > & | d_maskFFT, | ||
bool | rotation, | ||
mycufftHandle & | myhandlePadded, | ||
mycufftHandle & | myhandlePolar, | ||
StructuresAux & | myStructureAux, | ||
myStreamHandle | myStream | ||
) |
Definition at line 317 of file xmipp_gpu_correlation.cpp.
void preprocess_images_experimental_transform_two | ( | MetaDataVec & | SF, |
FileName & | fnImg, | ||
int | numImagesRef, | ||
GpuMultidimArrayAtGpu< float > & | mask, | ||
GpuMultidimArrayAtGpu< std::complex< float > > & | d_maskFFT, | ||
GpuCorrelationAux & | d_correlationAuxOne, | ||
GpuCorrelationAux & | d_correlationAuxTwo, | ||
mycufftHandle & | myhandlePaddedOne, | ||
mycufftHandle & | myhandlePolarTwo, | ||
StructuresAux & | myStructureAuxOne, | ||
StructuresAux & | myStructureAuxTwo, | ||
myStreamHandle & | myStreamOne, | ||
myStreamHandle & | myStreamTwo, | ||
int | step | ||
) |
Definition at line 276 of file xmipp_gpu_correlation.cpp.
void preprocess_images_experimental_two | ( | MetaDataVec & | SF, |
FileName & | fnImg, | ||
int | numImagesRef, | ||
GpuMultidimArrayAtGpu< float > & | mask, | ||
GpuMultidimArrayAtGpu< std::complex< float > > & | d_maskFFT, | ||
GpuCorrelationAux & | d_correlationAuxTR, | ||
GpuCorrelationAux & | d_correlationAuxRT, | ||
int | firstStep, | ||
bool | mirror, | ||
mycufftHandle & | myhandlePaddedTR, | ||
mycufftHandle & | myhandleMaskTR, | ||
mycufftHandle & | myhandlePolarRT, | ||
StructuresAux & | myStructureAuxTR, | ||
StructuresAux & | myStructureAuxRT, | ||
myStreamHandle & | myStreamTR, | ||
myStreamHandle & | myStreamRT, | ||
GpuMultidimArrayAtCpu< float > & | original_image_stack | ||
) |
Definition at line 207 of file xmipp_gpu_correlation.cpp.
void preprocess_images_reference | ( | MetaDataVec & | SF, |
int | firstIdx, | ||
int | numImages, | ||
Mask & | mask, | ||
GpuCorrelationAux & | d_correlationAux, | ||
mycufftHandle & | myhandlePadded, | ||
mycufftHandle & | myhandleMask, | ||
mycufftHandle & | myhandlePolar, | ||
StructuresAux & | myStructureAux, | ||
MetaDataVec::id_iterator | iter, | ||
myStreamHandle | myStream | ||
) |
Definition at line 90 of file xmipp_gpu_correlation.cpp.
void primeFactors | ( | int | n, |
int * | out | ||
) |
Definition at line 49 of file xmipp_gpu_correlation.cpp.