8 #ifndef META_OCEAN_TEST_TESTCV_TESTADVANCED_TEST_ADVANCED_SUM_SQUARE_DIFFERENCES_H
9 #define META_OCEAN_TEST_TESTCV_TESTADVANCED_TEST_ADVANCED_SUM_SQUARE_DIFFERENCES_H
29 namespace TestAdvanced
64 static bool test(
const double testDuration);
126 template <
unsigned int tChannels,
unsigned int tPatchSize>
138 template <
unsigned int tChannels,
unsigned int tPatchSize>
150 template <
unsigned int tChannels,
unsigned int tPatchSize>
162 template <
unsigned int tChannels,
unsigned int tPatchSize>
174 template <
unsigned int tChannels,
unsigned int tPatchSize>
186 template <
unsigned int tChannels,
unsigned int tPatchSize>
198 template <
unsigned int tChannels,
unsigned int tPatchSize>
This class implements Ocean's image class.
Definition: Frame.h:1792
This class implements an advanced sum square differences test.
Definition: TestAdvancedSumSquareDifferences.h:37
static bool testTwoPixelPatchWithMask8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function for two pixel accurate patches in combination with a mask.
static bool testTwoSubPixelPatchWithMask8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function for two sub-pixel accurate patches in combination with a ma...
static bool testTwoPixelPatchWithRejectingMask8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function for two pixel accurate patches in combination with a reject...
static bool testTwoSubPixelPatchWithMask8BitPerChannel(const double testDuration)
Tests the sum square differences function for two sub-pixel accurate patches in combination with a ma...
static uint32_t calculateMirroredBorder8BitPerChannel(const Frame &frame0, const Vector2 ¢er0, const uint8_t *buffer1, const unsigned int patchSize)
Calculates the ssd value between one sub-pixel patch (mirrored at the image border) and a buffer.
static bool testPatchBuffer8BitPerChannel(const double testDuration)
Tests the sum square differences function between a sub-pixel image patch and a buffer.
ImplementationType
Definition of individual types of implementation.
Definition: TestAdvancedSumSquareDifferences.h:44
@ IT_NAIVE
The naive implementation.
Definition: TestAdvancedSumSquareDifferences.h:46
@ IT_SSE
The SSE-based implementation.
Definition: TestAdvancedSumSquareDifferences.h:50
@ IT_TEMPLATE
The template-based implementation.
Definition: TestAdvancedSumSquareDifferences.h:48
@ IT_NEON
The NEON-based implementation.
Definition: TestAdvancedSumSquareDifferences.h:52
static bool testPatchBuffer8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function between an image patch and a buffer.
static bool testTwoPixelPatchWithRejectingMask8BitPerChannel(const double testDuration)
Tests the sum square differences function for two pixel accurate patches in combination with a reject...
static bool test(const double testDuration)
Invokes all test functions.
static bool testTwoSubPixelPatch8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function for two sub-pixel accurate patches in two images.
static bool testTwoSubPixelPatch8BitPerChannel(const double testDuration)
Tests the sum square differences function for two sub-pixel accurate patches in two images.
static uint32_t calculate8BitPerChannel(const Frame &frame0, const Frame &frame1, const CV::PixelPosition ¢er0, const Vector2 ¢er1, const unsigned int patchSize)
Calculates the ssd value between one sub-pixel patch and one pixel-accurate patch.
static bool testTwoPixelPatchWithMask8BitPerChannel(const double testDuration)
Tests the sum square differences function for two pixel accurate patches in combination with a mask.
static bool testPatchMirroredBorderBuffer8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function between an image patch (mirrored at the image border) and a...
static IndexPair32 calculateWithMask8BitPerChannel(const Frame &frame0, const Frame &frame1, const Frame &mask0, const Frame &mask1, const Vector2 ¢er0, const Vector2 ¢er1, const CV::PixelCenter pixelCenter, const unsigned int patchSize, const uint8_t validMaskValue)
Calculates the sum of squared differences value between two patches with associated masks.
static bool testOneSubPixelPatch8BitPerChannel(const unsigned int width, const unsigned int height, const double testDuration)
Tests the sum square differences function for one sub-pixel accurate patch and one pixel-accurate pat...
static IndexPair32 calculateWithRejectingMask8BitPerChannel(const Frame &frame0, const Frame &frame1, const Frame &mask0, const Frame &mask1, const CV::PixelPosition ¢er0, const CV::PixelPosition ¢er1, const unsigned int patchSize, const uint8_t maskValue)
Calculates the sum of squared differences value between two patches with associated rejecting masks.
static IndexPair32 calculateWithMask8BitPerChannel(const Frame &frame0, const Frame &frame1, const Frame &mask0, const Frame &mask1, const CV::PixelPosition ¢er0, const CV::PixelPosition ¢er1, const unsigned int patchSize, const uint8_t maskValue)
Calculates the sum of squared differences value between two patches with associated masks.
static uint32_t calculate8BitPerChannel(const Frame &frame0, const Vector2 ¢er0, const uint8_t *buffer1, const unsigned int patchSize)
Calculates the ssd value between one sub-pixel patch and a buffer.
static bool testOneSubPixelPatch8BitPerChannel(const double testDuration)
Tests the sum square differences function for one sub-pixel accurate patch and one pixel-accurate pat...
static uint32_t calculate8BitPerChannel(const Frame &frame0, const Frame &frame1, const Vector2 ¢er0, const Vector2 ¢er1, const unsigned int patchSize)
Calculates the ssd value between two sub-pixel patches.
static bool testPatchMirroredBorderBuffer8BitPerChannel(const double testDuration)
Tests the sum square differences function between a sub-pixel image patch and a buffer.
std::pair< Index32, Index32 > IndexPair32
Definition of a pair holding 32 bit indices.
Definition: Base.h:138
PixelCenter
Definition of individual centers of pixels.
Definition: CV.h:117
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15