|
libtcspc C++ API
Streaming TCSPC and time tag data processing
|
Timing generators using a floating-point model with dithering.
Dithering is one way to reduce statistical bias when rounding real (floating point) numbers to integers. It applies noise (the 'dither') to the number before quantization (of which rounding is a special case) so that the quantization error is randomized. This prevents periodic patterns in the error.
In libtcspc dither can be applied when generating timing events based on a timing model defined by floating point factors. This can prevent patterned noise in the result, for example, when the timings denote time bins (such as pixels of a raster-scanned image) and the length of the time bins is not very large compared to the abstime unit.
When the abstime has much higher resolution than the timing signals, dithering is usually not necessary. Also, it is of course best if the processing can be constrained so that time bins are an exact multiple of the abstime unit.
Classes | |
| class | tcspc::dithered_linear_timing_generator< DataTypes > |
| Timing generator that generates a periodic series of timings, with temporal dithering. More... | |
| class | tcspc::dithered_one_shot_timing_generator< DataTypes > |
| Timing generator that generates a single, delayed timing whose abstime is dithered. More... | |
| class | tcspc::dynamic_dithered_linear_timing_generator< DataTypes > |
| Timing generator that generates a periodic series of timings, configured by the trigger event, with temporal dithering. More... | |
| class | tcspc::dynamic_dithered_one_shot_timing_generator< DataTypes > |
| Timing generator that generates a single, delayed timing, configured by the trigger event, whose abstime is dithered. More... | |