From 8b6afd697dd6f7f0b9b02a2998146cf2373542e8 Mon Sep 17 00:00:00 2001 From: Vadim Pisarevsky Date: Mon, 22 Jul 2013 14:20:13 +0400 Subject: [PATCH] added call to IPP's ippiDistanceTransform_5x5_8u32f_C1R (by Alexander Kapustin) --- modules/imgproc/src/distransform.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/imgproc/src/distransform.cpp b/modules/imgproc/src/distransform.cpp index d3e6f90..a09b940 100644 --- a/modules/imgproc/src/distransform.cpp +++ b/modules/imgproc/src/distransform.cpp @@ -779,6 +779,16 @@ cvDistTransform( const void* srcarr, void* dstarr, if( !labels ) { + #if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 7) + if( maskSize == CV_DIST_MASK_5 ) + { + IppiSize roi = { src->cols, src->rows }; + if( ippiDistanceTransform_5x5_8u32f_C1R( + src->data.ptr, src->step, + dst->data.fl, dst->step, roi, _mask) >= 0 ) + return; + } + #endif CvDistTransFunc func = maskSize == CV_DIST_MASK_3 ? icvDistanceTransform_3x3_C1R : icvDistanceTransform_5x5_C1R; -- 2.7.4