54 frame (frame), timestamp(timestamp), zlutIndex(zlutIndex)
86 xc1_profileLength = 128;
87 xc1_profileWidth = 32;
89 zlut_minradius = 1.0f;
90 zlut_angular_coverage = 0.7f;
91 zlut_radial_coverage = 3.0f;
92 zlut_roi_coverage = 1.0f;
95 qi_angular_coverage = 0.7f;
96 qi_radial_coverage = 3.0f;
97 qi_roi_coverage = 1.0f;
98 qi_angstep_factor = 1.0f;
100 com_bgcorrection = 0.0f;
101 gauss2D_iterations = 6;
116 #define QTrkCUDA_UseList -3 117 #define QTrkCUDA_UseAll -2 118 #define QTrkCUDA_UseBest -1 int gauss2D_iterations
Number of times to run the 2D gaussian algorithm.
float zlut_minradius
Distance in pixels from the bead center from which to start sampling profiles. Default 1...
Ignore the first four pixels of a frame. Some cameras save timestamps rather than image data in the f...
CDLL_EXPORT void DLL_CALLCONV QTrkGetComputedConfig(QueuedTracker *qtrk, QTrkComputedConfig *cfg)
vector3f initialPos
Optional (Not used)
float qi_minradius
Distance in pixels from the bead center from which to start sampling profiles. Default 1...
int width
Width of regions of interest to be handled. Typically equals height (square ROI). ...
int downsample
Image downsampling factor. Applied before anything else. 0 = original, 1 = 1x (W=W/2,H=H/2).
Struct used to define the top-left corner position of an ROI within a frame. ROI is [ x ...
int zlutIndex
Bead number of this ROI. Used to get the right ZLUT from memory.
bool testRun
Flag to run a test run.
Structure for job results.
CDLL_EXPORT void DLL_CALLCONV QTrkFinalizeLUT(QueuedTracker *qtrk)
CDLL_EXPORT int DLL_CALLCONV QTrkFetchResults(QueuedTracker *qtrk, LocalizationResult *results, int maxResults)
int height
Height of regions of interest to be handled. Typically equals width (square ROI). ...
CDLL_EXPORT void DLL_CALLCONV QTrkClearResults(QueuedTracker *qtrk)
CDLL_EXPORT QueuedTracker *DLL_CALLCONV QTrkCreateInstance(QTrkSettings *cfg)
Create a QueuedTracker instance and return a pointer to it.
CDLL_EXPORT void DLL_CALLCONV QTrkSetLocalizationMode(QueuedTracker *qtrk, LocMode_t locType)
Select which algorithm is to be used.
vector2< float > vector2f
Structure for the settings used by the algorithms implemented in QueuedTracker.
int zlut_radialsteps
Number of radial steps to sample on.
LocalizationJob(uint frame, uint timestamp, uint zlutPlane, uint zlutIndex)
float imageMean
Average pixel value of the ROI.
uint timestamp
Time stamp of the frame.
uint frame
Frame number this ROI belongs to.
LocalizeModeEnum
Flags for selecting localization type.
CDLL_EXPORT int DLL_CALLCONV QTrkGetResultCount(QueuedTracker *qtrk)
vector2f pos2D()
Final 2D position found.
CDLL_EXPORT void DLL_CALLCONV QTrkFlush(QueuedTracker *qtrk)
CDLL_EXPORT void DLL_CALLCONV QTrkGetWarnings(QueuedTracker *qtrk, char *dst, int maxStrLen)
Make a fourier based lookup table.
vector3f pos
Final 3D position found. If no z localization was performed, the value of z will be 0...
float com_bgcorrection
Background correction factor for COM. Defines the number of standard deviations data needs to be away...
float qi_maxradius
Max radius in pixels of the sampling circle.
Normalize found radial profiles.
CDLL_EXPORT int DLL_CALLCONV QTrkScheduleFrame(QueuedTracker *qtrk, void *imgptr, int pitch, int width, int height, ROIPosition *positions, int numROI, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)
LocalizationJob job
Job metadata. See LocalizationJob.
QTrkComputedConfig cfg
The settings used by this instance of QueuedTracker.
CDLL_EXPORT int DLL_CALLCONV QTrkGetQueueLength(QueuedTracker *qtrk, int *maxQueueLen)
CDLL_EXPORT void DLL_CALLCONV QTrkGetProfileReport(QueuedTracker *qtrk, char *dst, int maxStrLen)
QTRK_PixelDataType
Flags indicating the data type of image data.
float zlut_roi_coverage
Factor of the ROI to include in sampling. Between 0 and 1, default 1. Maxradius = ROI/2*roi_coverage...
CDLL_EXPORT void DLL_CALLCONV QTrkFreeInstance(QueuedTracker *qtrk)
Free a QueuedTracker instance.
int cuda_device
CUDA only. Flag for device selection.
CDLL_EXPORT void DLL_CALLCONV QTrkBuildLUT(QueuedTracker *qtrk, void *data, int pitch, QTRK_PixelDataType pdt, bool imageLUT, int plane)
float qi_radial_coverage
Sampling points per radial pixel. Default 3.0.
Structure for derived settings computed from base settings in QTrkSettings.
float zlut_angular_coverage
Factor of the sampling perimeter to cover with angular sampling steps. Between 0 and 1...
QTrkComputedConfig(const QTrkSettings &base)
int qi_radialsteps
Number of radial steps to sample on.
vector2f firstGuess
(x,y) position found by the COM localization. Used as initial position for the subsequent algorithms...
void WriteToLog(const char *str)
float qi_roi_coverage
Factor of the ROI to include in sampling. Between 0 and 1, default 1. Maxradius = ROI/2*roi_coverage...
CDLL_EXPORT void DLL_CALLCONV QTrkScheduleLocalization(QueuedTracker *qtrk, void *data, int pitch, QTRK_PixelDataType pdt, const LocalizationJob *jobInfo)
Add a job to the queue to be processed. A job entails running the required algorithms on a single reg...
int qi_angstepspq
Number of angular steps to sample on per quadrant.
int qi_iterations
Number of times to run the QI algorithm, sampling around the last found position. ...
int xc1_iterations
Number of times to run the cross correlation algorithm.
float qi_angstep_factor
Factor to reduce angular steps on lower iterations. Default 1.0 (no effect).
CDLL_EXPORT void DLL_CALLCONV QTrkSetRadialZLUT(QueuedTracker *qtrk, float *data, int count, int planes, float *zcmp=0)
CDLL_EXPORT void DLL_CALLCONV QTrkGetRadialZLUTSize(QueuedTracker *qtrk, int *count, int *planes, int *radialsteps)
CDLL_EXPORT bool DLL_CALLCONV QTrkIsIdle(QueuedTracker *qtrk)
int xc1_profileWidth
Profile width for the cross correlation.
float gauss2D_sigma
Standard deviation to use in the 2D gaussian algorithm.
uint error
Flag (boolean) indicating whether the ROI boundary was hit during localization. A 1 indicates a hit...
Abstract tracker interface, implemented by QueuedCUDATracker and QueuedCPUTracker.
int numThreads
Number of threads/streams to use. Defaults differ between CPU and GPU implementations.
float zlut_radial_coverage
Sampling points per radial pixel. Default 3.0.
float qi_angular_coverage
Factor of the sampling perimeter to cover with angular sampling steps. Between 0 and 1...
Structure for region of interest metadata.
int xc1_profileLength
Profile length for the cross correlation.
int zlut_angularsteps
Number of angular steps to sample on.
float zlut_maxradius
Max radius in pixels of the sampling circle.
Do a ZLUT lookup with adjusted weights, for testing purposes.
CDLL_EXPORT void DLL_CALLCONV QTrkGetRadialZLUT(QueuedTracker *qtrk, float *dst)