bool BinarizationAutoTest(const Func1 & f1, const Func1 & f2) { bool result = true; for(SimdCompareType type = SimdCompareEqual; type <= SimdCompareLesserOrEqual && result; type = SimdCompareType(type + 1)) { result = result && BinarizationAutoTest(ARGS1(W, H, type, f1, f2)); result = result && BinarizationAutoTest(ARGS1(W + O, H - O, type, f1, f2)); result = result && BinarizationAutoTest(ARGS1(W - O, H + O, type, f1, f2)); } return result; }
bool HistogramConditionalDataTest(bool create) { bool result = true; FuncHC f = FUNC_HC(SimdHistogramConditional); for (SimdCompareType type = SimdCompareEqual; type <= SimdCompareLesserOrEqual && result; type = SimdCompareType(type + 1)) { result = result && HistogramConditionalDataTest(create, DW, DH, type, FuncHC(f.func, f.description + Data::Description(type))); } return result; }
bool AveragingBinarizationDataTest(bool create) { bool result = true; Func2 f = FUNC2(SimdAveragingBinarization); for(SimdCompareType type = SimdCompareEqual; type <= SimdCompareLesserOrEqual && result; type = SimdCompareType(type + 1)) { result = result && AveragingBinarizationDataTest(create, DW, DH, type, Func2(f.func, f.description + Data::Description(type))); } return result; }
bool HistogramConditionalAutoTest(const FuncHC & f1, const FuncHC & f2) { bool result = true; for (SimdCompareType type = SimdCompareEqual; type <= SimdCompareLesserOrEqual && result; type = SimdCompareType(type + 1)) { result = result && HistogramConditionalAutoTest(ARGS_HC(W, H, type, f1, f2)); result = result && HistogramConditionalAutoTest(ARGS_HC(W + O, H - O, type, f1, f2)); result = result && HistogramConditionalAutoTest(ARGS_HC(W - O, H + O, type, f1, f2)); } return result; }