fixing build of 2.4 branch with VC12 (aka 2013)
(master branch was fixed before, no need to merge this to master!) - disable openexr (numerous undefined std::min & std::max) - workaround for two compilator bugs
This commit is contained in:
@@ -181,7 +181,7 @@ CV_INIT_ALGORITHM(DenseFeatureDetector, "Feature2D.Dense",
|
||||
obj.info()->addParam(obj, "varyImgBoundWithScale", obj.varyImgBoundWithScale));
|
||||
|
||||
CV_INIT_ALGORITHM(GridAdaptedFeatureDetector, "Feature2D.Grid",
|
||||
obj.info()->addParam(obj, "detector", obj.detector);
|
||||
obj.info()->addParam(obj, "detector", (Ptr<Algorithm>&)obj.detector);
|
||||
obj.info()->addParam(obj, "maxTotalKeypoints", obj.maxTotalKeypoints);
|
||||
obj.info()->addParam(obj, "gridRows", obj.gridRows);
|
||||
obj.info()->addParam(obj, "gridCols", obj.gridCols));
|
||||
|
@@ -138,13 +138,16 @@ static void computeOrbDescriptor(const KeyPoint& kpt,
|
||||
const uchar* center = &img.at<uchar>(cvRound(kpt.pt.y), cvRound(kpt.pt.x));
|
||||
int step = (int)img.step;
|
||||
|
||||
#if 1
|
||||
#define GET_VALUE(idx) \
|
||||
center[cvRound(pattern[idx].x*b + pattern[idx].y*a)*step + \
|
||||
cvRound(pattern[idx].x*a - pattern[idx].y*b)]
|
||||
#else
|
||||
float x, y;
|
||||
int ix, iy;
|
||||
#if 1
|
||||
#define GET_VALUE(idx) \
|
||||
(x = pattern[idx].x*a - pattern[idx].y*b, \
|
||||
y = pattern[idx].x*b + pattern[idx].y*a, \
|
||||
ix = cvRound(x), \
|
||||
iy = cvRound(y), \
|
||||
*(center + iy*step + ix) )
|
||||
#else
|
||||
#define GET_VALUE(idx) \
|
||||
(x = pattern[idx].x*a - pattern[idx].y*b, \
|
||||
y = pattern[idx].x*b + pattern[idx].y*a, \
|
||||
|
Reference in New Issue
Block a user