the findTransformECC function in Opencv-3.0.0 returns a NaN as the ECC value
Hi,
I am using findTransformECC function (ecc.cpp) from Opencv-3.0.0 beta version. I have build the libraries with Intel's Integrated Performance Primitives (IPP) libraries. I am using this for image stabilization from a series of frames of a video. Occasionally, the ecc.cpp function returns a nan. It is surprising that when I see the code, there is no where a NaN is returned. I can only see an exception raised, but no where I see the function returns a NaN.
Could some please let me know if they have experienced this behavior before? Is the findTransformECC function thread safe? Are multiple threads manipulating data between them?
Thanks is advance.
I think that is some kind of division by 0. But have no idea about ECC :) Have you tried it on different images? Is it a special case? can you post the images used as input? Or the code and the used images?
Hi,
Thanks for your interest. I share your same opinion that some kind of divide by zero is occurring. However, the occurrence of nan is not systematic. It occurs randomly between a pair of images but not consistently. I am calling the findTransformECC to correct video motion/shake. I am curious when we thread the findTransformECC, the function picks wrong images to compare than what I want to compare.
Unforturnately, I cannot share images with you, as I am working with a confidential material.
Thanks.