Closed tbolten closed 6 years ago
@tbolten Hi, thanks for your questions. The following are the responses.
The raw data obtained using getEventDataVector
does not remove the Fixed Pattern Noise(FPN).
However, in the data directly obtained from interface getEventPicMat
, this noise has been removed already.
The threshold does not indicate the gray value, and there is a complex correspondence between them (hardware related). You can not compare the gray value difference with the threshold to determine whether the pixel should be triggered.
In a certain time interval, a pixel may be triggered multiple times, and it has a corresponding brightness/gray value at each triggering time. In EventDataVector
, it contains all the triggered gray values during this time interval. However, in EventAccumulatedPic
, only the latest triggered gray value at each pixel location is retained. So your comparison method for these two data type is incorrect.
Thanks again. Please feel free to contact us if you have any further questions.
Hi,
I am developing my first application based on the CeleX 04-S DVS sensor. I have a few questions about that.
1) Generation of the EventAccumulatedPic
According to the documentation, the brightness value from each event is taken and saved into a cv::Mat. My own implementation of this procedure:
results in a visible difference compared to the result provided by the SDK
(cv::Mat currentSdkEventAccumulatedMat = pSensorData->getEventPicMat(EventAccumulatedPic); )
. My generated frame seems significantly noisier. Can you explain me the difference in the generation of this accumulated Mat?2) Comparison with the threshold
The documentation of the threshold-function (CeleX4::setThreshold) indicates that the triggering of events is determined by this value. So I'm assuming that each event has a absolute difference to the last known gray-value above this threshold-value.
Comparing the brightness of each event in the EventDataVector to the corresponding pixel in (previous, current and own) EventAccumulatedPic shows, however, that this is not necessarily the case:
Here the example output of a comparison (matching / not matching):
Is my source for the difference calculation wrong?
For a better understanding, I have attached a minimal code example that clarifies my questions and my calculations: