Fix a race condition due to "initialized" flag
Fix a race condition due to "initialized" flag

The compiler can generate such optimized code that a thread uses the
cached copy of "initialized" flag.  The result can destroy gweight, xidx
and yidx, if multiple threads invoke Sample_Derivative_Response_Radius6()
at the same time.

There are many ways to avoid the race condition e.g. volatile, mutex,
atomic types.  The class constructor of a static variable has been chosen,
for it is C++98 compatible and simpler to do it correctly.

h2suzuki/fast_akaze,h2suzuki/fast_akaze