Developer Reference for Intel® Integrated Performance Primitives
Calculates the Eucledian distance to the closest zero pixel for all non-zero pixels of the source image.
IppStatus ippiTrueDistanceTransform_8u32f_C1R(const Ipp8u* pSrc, int srcStep, Ipp32f* pDst, int dstStep, IppiSize roiSize, Ipp8u* pBuffer);
ippcv.h
Headers: ippcore.h, ippvm.h, ipps.h, ippi.h
Libraries: ippcore.lib, ippvm.lib, ipps.lib, ippi.lib
This function operates with ROI (see Regions of Interest in Intel IPP).
This function calculates the Eucledian distance to the closest zero pixel for all non-zero pixels of the source image [Felz04].
The figure below shows the result of the integer version of the true distance transform of a 7x7 image with zero point in the center and with the scale factor -5.
136 | 115 | 101 | 96 | 101 | 115 | 136 |
115 | 91 | 72 | 64 | 72 | 91 | 115 |
101 | 72 | 45 | 36 | 45 | 72 | 101 |
96 | 64 | 36 | 0 | 36 | 64 | 96 |
101 | 72 | 45 | 36 | 45 | 72 | 101 |
115 | 91 | 72 | 64 | 72 | 91 | 115 |
136 | 115 | 101 | 96 | 101 | 115 | 136 |
ippStsNoErr |
Indicates no error. Any other value indicates an error or a warning. |
ippStsNullPtrErr |
Indicates an error condition if one of the specified pointers is NULL. |
ippStsSizeErr |
Indicates an error condition if roiSize has a field with zero or negative value. |
ippStsStepErr |
Indicates an error condition if srcStep or dstStep is less than roiSize.width*<pixelSize>. |
ippStsNotEvenStepErr |
Indicates an error condition if step value is not divisible by 2 for 16u images, and by 4 for 32f images. |