|
|
|
@ -350,7 +350,7 @@ int cornerScore<8>(const uchar* ptr, const int pixel[], int threshold) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
int b0 = -a0; |
|
|
|
|
for( k = 0; k < 12; k += 2 ) |
|
|
|
|
for( k = 0; k < 8; k += 2 ) |
|
|
|
|
{ |
|
|
|
|
int b = std::max((int)d[k+1], (int)d[k+2]); |
|
|
|
|
b = std::max(b, (int)d[k+3]); |
|
|
|
@ -375,7 +375,10 @@ template<int patternSize> |
|
|
|
|
void FAST_t(InputArray _img, std::vector<KeyPoint>& keypoints, int threshold, bool nonmax_suppression) |
|
|
|
|
{ |
|
|
|
|
Mat img = _img.getMat(); |
|
|
|
|
const int K = patternSize/2, N = patternSize + K + 1, quarterPatternSize = patternSize/4; |
|
|
|
|
const int K = patternSize/2, N = patternSize + K + 1; |
|
|
|
|
#if CV_SSE2 |
|
|
|
|
const int quarterPatternSize = patternSize/4; |
|
|
|
|
#endif |
|
|
|
|
int i, j, k, pixel[25]; |
|
|
|
|
makeOffsets(pixel, (int)img.step, patternSize); |
|
|
|
|
for(k = patternSize; k < 25; k++) |
|
|
|
|